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 wqaetly/nkg-ai-flow --skill nkg-ai-flow-skillgit clone --depth 1 https://github.com/wqaetly/nkg-ai-flowWrote 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/wqaetly/nkg-ai-flow/nkg-ai-flow-skill)<a href="https://agentmods.dev/skills/wqaetly/nkg-ai-flow/nkg-ai-flow-skill"><img src="https://agentmods.dev/badge/skills/wqaetly/nkg-ai-flow/nkg-ai-flow-skill/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/wqaetly/nkg-ai-flow/nkg-ai-flow-skill"><img src="https://agentmods.dev/badge/skills/wqaetly/nkg-ai-flow/nkg-ai-flow-skill.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 MCP Rug Pull · line 197 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
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.00080 | $0.06387 |
| Opus 5 | $0.00040 | $0.03194 |
| Sonnet 5 | $0.00016 | $0.01277 |
| Haiku 4.5 | $0.00008 | $0.00639 |
Grade A, and why
nkg-ai-flow-skill 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 12d 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 — 269 lines — stays where its author put it; the contents beside it link to each section on GitHub.
自定义 Flow 开发规范
硬规矩
把 flow 当作可运行的 app,不是孤立的 JSON。下面这些做不到就别合:
- 用 TypeScript
FlowBuilder写图,JSON 只作为生成产物。 - 优先组合内置节点;只有真的需要复用领域逻辑、严格 schema 校验、复杂解析时才写自定义节点。
- 数据血缘必须显式:每个非根节点都要消费上游输出、累计
context、或显式静态配置,绝不依赖"前一个节点大概干了什么"。 - 文件读写、命令执行、迭代验证、产物落盘走内置
agent节点,确定性节点不要伪装能干这些。 - 严禁造假/fallback 调用第三方依赖:LLM、联网搜索、HTTP/工具调用、向量库、外部服务等节点,任何环境(开发、调试、smoke、单元测试、CI、生产)都必须走真实调用。失败就硬失败,不准 mock、stub、写死返回值、catch 后返回伪造数据。
- 环境变量读取必须走
VariableStore:任何节点、runner、smoke、CLI 都禁止直接读process.env、禁止自己dotenv.config()、禁止在 app/scripts 目录新建.env*文件冒充配置源。 - 配置走 flow 同目录的伴生 JSON,不依赖
.env.local。 - 控制边表达顺序,数据边表达依赖,两者分开。
- 验收用最窄的 build / typecheck / 针对性 smoke,集成 smoke 留到最后。
起步参考
写代码前先看最近的本地范例,凡是已有 app 干过类似的事,扩展它的模式而不是另起炉灶:
| 需求 | 参考 |
|---|---|
| 纯内置节点 flow + build runner | apps/hello-agent/helloagent.flow.ts + build.ts |
| 自定义节点流水线 + 节点示例 | apps/skill-to-flow/build.ts + apps/skill-to-flow/nodes/*.ts |
| Advisor 监督 Flow + gate 示例 | apps/advisor-demo/primary.flow.ts + reviewer.flow.ts + runtime.ts |
| FlowBuilder 契约 | docs/specs/flow-builder.md |
| 图 schema | docs/specs/flow-graph-schema.md |
| Advisor Runtime 契约 | docs/specs/advisor-runtime.md |
| 工作区/应用发现 | docs/specs/workspace-model.md 与现有 anf.app.json |
设计流程
1. 写下 flow 合同(注释或 README,关键是源文件可见):flow_id / purpose / caller_input / final_output / must_use_tools_or_services / must_not_do / acceptance_checks。
2. 选 app 形态:
| 场景 | 形态 |
|---|---|
| 单提示、转换、HTTP/工具调用、简单 agent 任务 | 纯内置节点 flow |
| 复用领域行为、严格输入输出校验、非平凡解析 | 自定义节点 flow |
| 生成文件、修代码、跑 shell、验证产物 | 含 agent 物化的 flow |
| 把高层 skill/工作流转成可运行包 | Planner → Designer → Synthesizer → Validator → Materializer 流水线 |
| 对业务 Run 做旁路审阅、建议或人工门控 | 业务 Flow + 独立 Advisor Flow + 可选 AdvisorRuntime |
不要为普通的 prompt 模板或简单字符串/对象 reshape 写自定义节点,用 llm / text_input / transform。
Advisor 监督 Flow
需要观察、指导或门控业务 Run 时,把 Advisor 当成可选高级运行时能力,不要把监督节点硬塞进业务 Flow:
- 业务 Flow 保持独立可运行;只有确实需要响应建议的 Agent/自定义节点才读取
ctx.guidance。 - 审阅逻辑写成普通、可版本化的 Advisor Flow,再用
createFlowAdvisorReviewer(...)选择其审阅节点。 - 用
AdvisorRuntime在运行入口绑定业务 Flow 与 reviewer;模式按需求选择:observe只记录、steer向后续节点投递 concern/blocker、gate遇 blocker 在安全节点边界暂停。 - Reviewer 输入是增量
AdvisorReviewBatch;输出为单条 advisory 或advisories[],每条至少包含非空code、message,可带severity、suggestion、evidence、dedupeKey。 - Reviewer 每次更新只发一条真正有行动价值的建议;禁止输出
done、complete、LGTM等无内容消息,稳定问题必须设置可复用dedupeKey。 - 可能产生 blocker 时调用
AdvisorRuntime.start(),监听run_suspended后由人工或外部策略调用句柄的resume();不要用invoke()等待一个无人恢复的 gate。 - 暂停只阻止后续节点启动,不中断已经执行的节点;当前是进程内安全边界暂停,不得宣称支持进程重启后恢复。
- Advisor 失败默认 fail-open;不能让观察器故障把主业务 Run 误判为失败,也不能给 Advisor 默认开放写文件或 bash。
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.
- 12d ago First seen · 269 lines · 80 tokens per session scan A d254498c5701
nkg-ai-flow-skill is a skill published in the GitHub repository wqaetly/nkg-ai-flow (49 stars, last pushed 1mo ago), licensed MIT. It adds 80 tokens to every session and 6,387 once invoked, about $0.0004 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
agent-platform-rag-engine-management
Manage and query Agent Platform RAG Engine Corpora and retrieve grounded contexts using the Google GenAI SDK. Use when listing RAG corpora or files, inspecting a corpus, retrieving contexts, or generating content grounded in a RAG corpus. Do not use for standard database queries (use SQL/Spanner skills), Google…
agent-platform-model-registry
Agent Platform Model Registry Management. Use when you need to upload, list, describe, update, or delete machine learning models (and their versions) in the Agent Platform Model Registry. Don't use for model training, model deployment to endpoints, or managing non-Agent Platform models.
foundry-config-setup
Resolve missing setup caused by a hardcoded Foundry project endpoint or model in a sample. Use when a sample fails because it uses a placeholder/hardcoded projectendpoint (for example "https://your-project.services.ai.azure.com") or a hardcoded model instead of reading them from the environment.
google-cloud-solution-agentic-analytics-spark-knowledge-catalog
Discovers requirements and generates guidance to design and deploy a governed, secure agentic-analytics solution for data that's distributed across Google Cloud, other cloud providers, or on-premises. Data that's outside Google Cloud (such as data from Databricks, Snowflake, Salesforce, SAP, or Oracle systems) is…
training-check
Interactively monitor training metrics from the current Codex session, periodically checking WandB or fallback logs for NaN, divergence, plateaus, and broken runs.
nemo-automodel-launcher-config
Configure NeMo AutoModel job launches for interactive runs, Slurm clusters, and SkyPilot cloud execution.