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 tranfu-labs/tranfu-skills --skill skill-domain-framinggit clone --depth 1 https://github.com/tranfu-labs/tranfu-skillsWrote 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/tranfu-labs/tranfu-skills/skill-domain-framing)<a href="https://agentmods.dev/skills/tranfu-labs/tranfu-skills/skill-domain-framing"><img src="https://agentmods.dev/badge/skills/tranfu-labs/tranfu-skills/skill-domain-framing/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/tranfu-labs/tranfu-skills/skill-domain-framing"><img src="https://agentmods.dev/badge/skills/tranfu-labs/tranfu-skills/skill-domain-framing.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00247 | $0.06885 |
| Opus 5 | $0.00123 | $0.03442 |
| Sonnet 5 | $0.00049 | $0.01377 |
| Haiku 4.5 | $0.00025 | $0.00688 |
Grade A, and why
skill-domain-framing 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 9d 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 — 353 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Skill 任务域框定
目的
当需要基于原始经验、文档、事故记录、issue 记录、PR 记录或 guardrail 创建新的 Codex skill,或把尚未成型材料转成新 skill 前,先使用这个 skill。
IMPORTANT: 输出 MUST 是一个 skill 框架决策,而不是最终的 SKILL.md。NEVER 在 framing 步骤中编写最终 SKILL.md,unless 用户已经接受框架并明确要求继续进入实现阶段。
核心规则
真正的判据是触发对齐: 一个好容器名, 落在未来用户请求这个能力时真会用的词上, 并且边界能把相邻任务排除在外。命名质量看这个, 不看名字"抽象层级够不够高"或"漂不漂亮"。
"按用户期望结果命名、别按事故名词命名" 是这条判据在事故 / 经验沉淀型源材料下的一个代理规则——因为用户请求时不会说事故里那个缓存 / 文件 / 供应商的名字, 只会说他想保证的结果。MUST 在这类材料上遵守它; 但 NEVER 把它当成脱离触发对齐的独立法律 (见 §Skill 分型)。
触发测试 (每个候选都 MUST 跑):
写 2-3 句未来用户真会怎么开口请求这个能力的自然话术,
再看候选名里的关键词, 是不是这些话术里用户真会用的词。
- 用户不会说的词 (事故名词 / 生造短语 / 纯代码位置) → 触发对齐低。
- 用户真会用的词 (无论它落在结果轴还是动作轴) → 触发对齐高。
如果候选名称只是描述“改了什么对象”或“在哪个位置改”,MUST 继续上提一层——但落点是"用户会用来请求它的词", 不一定非得名词化的结果 (动作/编排型 skill 的落点就是那个动词)。
NEVER 让事故里的排查路径自动成为 skill 的主流程。能转成“怎样一开始写对”的经验,MUST 优先写成正向 authoring / maintenance 工作流;把探针、日志、缓存绕过、回滚等手段放到验证或故障排查分支。
Skill 分型 (决定"用户会用哪种词")
命名前 MUST 先判源材料属于哪一类, 因为它决定了用户请求时会用什么词——两类的统一判据都是触发对齐, 只是落点不同:
- 经验 / 事故沉淀型: 材料是复盘 / guardrail / 踩坑 / issue / PR。用户请求时会说他想保证的结果, 不会说事故里的名词。→ 触发对齐落在结果轴; NEVER 用事故名词。
- 动作 / 编排型: skill 本身就是为执行一个明确重复动作而生 (create / review / improve / deploy / publish 一个明确对象)。用户请求时天然是动词句 ("帮我 X 这个 Y")。→ 触发对齐落在那个动词;
<动词>-<对象>/<对象>-<动词>-workflow是正当落点, NEVER 因"是动词"判低触发对齐。
防滥用: 动词泛到无所指 (fix-stuff / handle-things) 或绑事故名词 (fix-cache) 不受动作型豁免——那些词用户请求里同样不会用, 触发对齐照样低。
工作流
CREATE A TODO LIST FOR THE TASKS BELOW before starting. TODO LIST MUST 覆盖步骤 1-9 和失败路径检查,并在每一步完成后更新状态。
- 阅读源材料,直到能列出实际失败、规则或工作流中的至少一种;如果材料不足,进入失败路径。
- 提取原始经验:
- 现象
- 可能原因
- 模型常见错误
- 正确动作
- 验证方法
- 适用条件
- 不应泛化的地方
- 识别表层名词:
- 具名产品、供应商、工具、文件、标签、API、端点、目录、命令、数据结构或代码位置
- 识别用户期望结果:
- 用户想保证什么
- 哪些可观察行为能证明成功
- 这属于哪类重复任务
- 把经验按层级拆开:
- 正常路径:一开始应该如何创建或维护正确产物
- 验证路径:如何证明产物满足要求
- 排障路径:失败后才需要的探针、日志、缓存、回滚或对比方法
- 选择并比较抽象轴。至少生成 4 个候选 skill 容器,分别覆盖:
- 平台 / 供应商轴
- 实现对象轴
- 代码位置轴
- 用户结果轴
- 对候选项做决策前比较:
- 过窄:只会因某一个产品、供应商或事故名词触发
- 过于实现导向:绑定在修复是怎么完成的,而不是重要结果是什么
- 过宽:会吸收成功标准不同的相邻任务
- 过于排障导向:把一次事故中的诊断步骤误当成日常主流程
- 结果导向:有清晰的用户可见成功标准,也有自然的排除边界
- 按 §"候选评分" 给每个候选打 3 维分, 按总分倒序排列, Top1 即推荐容器。如果用户在材料或上文里明确指定了容器名, MUST 把它也纳入评分表 (即使认为不合适)。
- 决定源经验在该 skill 内应放置的位置:
- 主工作流 / 正常路径
- 编写规范 / 维护规范
- 验证清单
- 故障排查
- 条件分支
- 兼容性说明
- 负面示例
- 参考材料
What ships with it
5 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.
- 9d ago First seen · 353 lines · 247 tokens per session scan A eb95c13ff9c0
skill-domain-framing is a skill published in the GitHub repository tranfu-labs/tranfu-skills (2 stars, last pushed 2d ago), licensed MIT. It adds 247 tokens to every session and 6,885 once invoked, about $0.0012 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-09-03.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
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…
insight-error-page
Write or audit an insight-kind error page for the Next.js dev overlay. Use when creating a new errors/ .mdx page, auditing an existing one, or checking that a page matches the framework fix cards. Covers page structure, title alignment, FixCard cards with Copy prompt button, code snippets, terminology verification…