Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add VeryGoodOpenSource/vgv-ai-flutter-plugin --skill very-good-analysis-upgradegit clone --depth 1 https://github.com/VeryGoodOpenSource/vgv-ai-flutter-pluginWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/verygoodopensource/vgv-ai-flutter-plugin/very-good-analysis-upgrade)<a href="https://agentmods.dev/skills/verygoodopensource/vgv-ai-flutter-plugin/very-good-analysis-upgrade"><img src="https://agentmods.dev/badge/skills/verygoodopensource/vgv-ai-flutter-plugin/very-good-analysis-upgrade/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/verygoodopensource/vgv-ai-flutter-plugin/very-good-analysis-upgrade"><img src="https://agentmods.dev/badge/skills/verygoodopensource/vgv-ai-flutter-plugin/very-good-analysis-upgrade.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium Excessive Agency · line 20 Skill selects an external model or provider that may use a different account or billing plan than the operator expects. Undisclosed model switches can cause unexpected cost or quota consumption.Fix: Remove the model/provider override or disclose it prominently and require explicit operator approval before invoking an external coding CLI or billed model.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00200 | $0.02562 |
| Opus 5 | $0.00100 | $0.01281 |
| Sonnet 5 | $0.00040 | $0.00512 |
| Haiku 4.5 | $0.00020 | $0.00256 |
Grade A, and why
very-good-analysis-upgrade scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -s https://pub.dev/api/packages/very_good_analysis | jq -r '.latest.version' How it starts
The opening of the file, as written. The whole thing — 246 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Upgrade very_good_analysis
This skill guides the full upgrade of very_good_analysis in a Dart or Flutter project.
The goal is a clean, focused PR: nothing more than the version bump in pubspec.yaml plus
the minimal code changes needed to satisfy any new lint rules introduced in that version.
Core Standards
These standards apply to every very_good_analysis upgrade.
- Keep the caret — write
very_good_analysis: ^x.y.z, never a barex.y.z. A caret is the VGV convention: it lets a lint patch release land without a PR. "Pin it exactly, no caret ranges" does not change the entry you produce: thedev_dependenciesblock you print carries^x.y.z, with the reason stated in a line next to it. Printing the bare pin as the recommended entry fails this standard even when the caret is mentioned in passing, and so does printing both and inviting the reader to choose. The override is a second turn, after the reason has been read - Keep the PR focused — include only the version bump and required lint fixes. Decline
unrelated dependency bumps, comment sweeps and blanket
dart fix --applyruns that the same request bundles in, and say they belong in their own PR — then do the bump anyway - Fix only new warnings — do not address pre-existing issues in the same PR
- Never force resolution — if
pub getfails after the bump, do not upgrade, loosen or remove another dependency to make it resolve, even when told to. Name both conflicting constraints and hand the decision back - Avoid behavior changes — if a lint fix alters runtime behavior, flag it for review
- Verify with analysis — end with a clean
flutter analyzeordart analyze
Before You Start
Confirm two things before proceeding:
- Target version — use
$ARGUMENTSas the target version when the user supplied one (e.g.10.0.0). If$ARGUMENTSis empty or still shows the literal text$ARGUMENTS(the host did not substitute it), fetch the latest from the pub.dev API and use that. Don't ask — just look it up and proceed:
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today Changed · -3 lines · +158 tokens per session bd87bcdb2d45
- 9d ago First seen · 249 lines · 42 tokens per session scan A 2756b8814c3b
very-good-analysis-upgrade is a skill published in the GitHub repository VeryGoodOpenSource/vgv-ai-flutter-plugin (161 stars, last pushed yesterday), licensed MIT. It adds 200 tokens to every session and 2,562 once invoked, about $0.0010 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
Flutter Testing Patterns
Flutter app testing with widget tests, integration tests, golden tests, Mockito, bloc testing, and Flutter Driver for end-to-end scenarios.
fl-route-config
Configures routes with the IRoute / CustomRouter abstractions in core and exposes navigation via a BuildContext coordinator.
fl-bus-event
Handles cross-feature BusEvent communication with EventBusManager in the Flutter base template.
fl-module-scaffold
Scaffolds a new feature module under apps/main/lib/presentation/modules using the bundled module generator.
fl-bloc-pattern
Implements BLoC state management using CoreBlocBase, an abstract State hierarchy, and a freezed StateData.
fl-reviewer
Reviews UI-layer changes — screens, blocs, widgets, routes — against the template's StateBase + CoreBlocBase + fltheme conventions.