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 agentmods add skills/double-coding-lab/flow2spec/f2s-kb-upgradenpx skills add double-coding-lab/Flow2Spec --skill f2s-kb-upgradegit clone --depth 1 https://github.com/double-coding-lab/Flow2SpecWrote 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/double-coding-lab/flow2spec/f2s-kb-upgrade)<a href="https://agentmods.dev/skills/double-coding-lab/flow2spec/f2s-kb-upgrade"><img src="https://agentmods.dev/badge/skills/double-coding-lab/flow2spec/f2s-kb-upgrade.svg" alt="Measured on agentmods" height="20"></a>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 | $0.00220 | $0.10410 |
| Opus 5 | $0.00110 | $0.05205 |
| Sonnet 5 | $0.00044 | $0.02082 |
| Haiku 4.5 | $0.00022 | $0.01041 |
Grade A, and why
f2s-kb-upgrade scanned grade A with 0 findings 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 3d ago.
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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 369 lines — stays where its author put it; the contents beside it link to each section on GitHub.
执行口径:本技能用于「代替用户跑 shell」完成 按本 SKILL 定义的 Flow2Spec 模板与配置根对齐;其中一步会代跑
flow2spec init,但init不是「升级命令」,升级命令 / 知识库升级 仅指f2s-kb-upgrade本技能全流程。
f2s-kb-upgrade(知识库模板升级技能)
术语(必须):「升级」「升级命令」「知识库升级」 仅指按本文件 f2s-kb-upgrade 执行的完整技能流程。flow2spec init 是 CLI 初始化/落盘命令;本技能 步骤 2 会代跑它,禁止把用户单独执行的 init 或 CLI 帮助里的 init 表述为「升级命令」。
边界(避免误区)
flow2spec init不写业务知识:不替代f2s-kb-add、f2s-kb-fix、f2s-kb-feat、f2s-kb-sync、f2s-kb-build等对stock-docs/req-docs/topics正文与业务向路由词条的维护。- 本技能跑通的是 包版本下的目录、模板占位、路由结构对齐;用户若说「把新能力写进知识库」,应引导
f2s-kb-sync/f2s-kb-add等,而非仅f2s-kb-upgrade。 - 本技能负责存量
topicMetadata审计:primary/tags仅用于治理、审计、盘点和阅读预期,不参与路由命中或执行强制性;执行强制性仍以AGENTS.md、rules、skills 与 topic 正文为准。
包侧发版纪律(projectRev 必须正确 bump)
字段位置:templates/{zh-CN,en-US}/knowledge/manifest-routing.json 的根级整数字段 projectRev(起始 1)。
字段写入语义(必读):
- 包侧:维护者按下文规则手动 bump(包模板自身的
projectRev永远是最新值)。 - 项目侧(落盘到
.Knowledge/manifest-routing.json):- 首次 init:项目
.Knowledge/manifest-routing.json不存在 →init把模板原值落盘,等同首次落地即基线对齐。 - 后续 init:项目
.Knowledge/manifest-routing.json已存在 →init不再覆盖该字段(保留项目原值);该字段只由本技能完整流程末尾 3b 写入(见步骤 3b「回写projectRev」)。 - 这使「项目侧
projectRev」语义清晰:「本项目已基线对齐到的包模板修订号」,而非"上次 init 时碰到的"。
- 首次 init:项目
必须 bump 的修改(每次发版至少 +1):
- 包模板
templates/<locale>/knowledge/topics/<topic>.md任一文件的正文修改、新增、删除或改名; - 包模板
templates/<locale>/knowledge/matchers/<id>.json的includeAny词条、id或新增 / 删除 matcher 文件; - 包模板
templates/<locale>/knowledge/manifest-routing.json的topicPaths/taskToTopicRules/topicDependencies/fallbackTopic/topicMetadata任一段修改; - 包模板
templates/<locale>/knowledge/index.md「主题一览」节或包级章节修改。
不需要 bump 的修改:
- 包源码(
lib/、cli.js、scripts/)、AGENTS.md、README*文档; templates/<locale>/flow2spec.config.json默认值;templates/<locale>/rules/*/templates/<locale>/skills/*仅规则与技能正文修改(这些与主题层无关,无需触发完整流程)。
判定准则一句话:模板里 knowledge/ 目录下 topic / matcher / manifest / index 任一主题层产物变了 → 必 bump;否则不动。漏 bump 会让用户的 f2s-kb-upgrade 跑快速路径,错过包带来的主题变更。
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.
- 3d ago First seen · 369 lines · 220 tokens per session scan A 254fe671286e
f2s-kb-upgrade is a skill published in the GitHub repository double-coding-lab/Flow2Spec (47 stars, last pushed 6d ago), licensed MIT. It adds 220 tokens to every session and 10,410 once invoked, about $0.0011 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
auto-perf-optimize
Run agent-driven VS Code performance or memory investigations. Use when asked to launch Code OSS, automate a VS Code scenario, run the Chat memory smoke runner, capture renderer heap snapshots, take workflow screenshots, compare run summaries, or drive a repeatable scenario before heap-snapshot analysis.
chat-perf
Run chat perf benchmarks and memory leak checks against the local dev build or any published VS Code version. Use when investigating chat rendering regressions, validating perf-sensitive changes to chat UI, or checking for memory leaks in the chat response pipeline.
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…