1仕組みと動作原理
完全なプロンプトオーケストレーション:スキルの全機能はモデルに対する指示テキストのみで構成され、ディレクトリ内には SKILL.md と1つのインターフェース宣言ファイルのみが存在し、スクリプトやコードは一切ありません。「議論済みの内容を spec にまとめる」という振る舞いを、規律あるドキュメント作成フローとしてモデル化しています。
This skill takes the current conversation context and codebase understanding and produces a spec. Do NOT interview the user; just synthesize what you already know.
リポジトリ内のエンジニアリングスキル群とランタイム規約を共有:イシュートラッカーやトリアージ用のラベル語彙はこのスキル内にハードコードされず、setup-matt-pocock-skills によって一度設定されて docs/agents/*.md に書き出され、to-spec が必要に応じて読み取ります。これにより、自身にコードを持たずに GitHub/GitLab/ローカル markdown を切り替えられます。
Skills like `to-tickets`, `triage`, and `to-spec` read from and write to it. They need to know whether to call `gh issue create`, write a markdown file under `.scratch/`, or follow some other workflow you describe.
公開アクションとラベル付けがプロセスの終点:テンプレートを記入した後にトラッカーへ公開し、ready-for-agent ラベルを付与します。ラベル文字列は triage-labels.md の「ロール→実際の文字列」マッピングを介して解決されるため、ユーザー定義の語彙(例:bug:triage)にも対応します。
Write the spec using the template below, then publish it to the project issue tracker. Apply the `ready-for-agent` triage label - no need for additional triage.
仕様本文に対する厳格なコンテンツ規律:spec は設計判断を記録するものであり、コードのダンプではありません。テンプレートでは陳腐化を防ぐためファイルパスやコードスニペットの記述を明示的に禁止し、散文よりも正確なプロトタイプ由来の決定事項の断片(ステートマシン、reducer、スキーマ、型の形状など)のみ例外的にインライン記述を許可しています。
Do NOT include specific file paths or code snippets. They may end up being outdated very quickly. Exception: if a prototype produced a snippet that encodes a decision more precisely than prose can (state machine, reducer, schema, type shape), inline it within the relevant decision and note briefly that it came from a prototype.
テスタビリティの先行設計:フローのステップ2では、spec を書く前にテストシーム(既存のシームを優先、より上位レイヤー、リポジトリ全体で理想的には1つ)の設計を要求し、そのシームが期待通りであるかをユーザーに確認することを義務付けています。「どうテストするか」を仕様出力前の人間による確認ポイントとして組み込んでいます。
Sketch out the seams at which you're going to test the feature. Existing seams should be preferred to new ones. Use the highest seam possible. If new seams are needed, propose them at the highest point you can. The fewer seams across the codebase, the better - the ideal number is one. Check with the user that these seams match their expectations.
2コア機能
3外部依存関係
| Kind | Dependency / Endpoint |
|---|---|
| cli | gh (GitHub CLI) |
| cli | glab 或自定义工作流(GitLab/其他 tracker 场景) |
| network | 用户自有的 issue tracker 端点(GitHub 默认:github.com API) |
4推奨統制措置と判定根拠
- 外部服务: ホストのネットワークツールまたは外部 API 取得に依存
5二重目の独立検証
- [ok] 文件清单:skills/engineering/to-spec/ 恰为 SKILL.md + agents/openai.yaml 两文件,无隐藏脚本 — gh api 递归树确认;本地工作树 engineering/to-spec/ 同构(本地为 skills/ 子目录内容平铺)
- [ok] 外部依赖 gh CLI:to-spec 自身不含调用 — to-spec 两文件全文重读,确实零 gh/命令引用;gh 命令只存在于 setup 的 issue-tracker-github.md 种子与 setup 流程产出的 docs/agents/issue-tracker.md——引用关系真实存在(setup SKILL.md: 'Skills like to-tickets, triage, and to-spec read from and write to it')
- [ok] ready-for-agent 标签与词表映射 — triage-labels.md 五行词表中 ready-for-agent 存在,映射语义='Fully specified, ready for an AFK agent',与 to-spec『spec 发布后免额外 triage』自洽
- [ok] 触发限制声明 — SKILL.md frontmatter disable-model-invocation: true 与 openai.yaml allow_implicit_invocation: false 两份文件均实读确认
- [ok] 功能声明 vs 实际能力相符性 — 描述称『publish to the project issue tracker』,实际靠 setup 预置文档提供通道,流程第 1 行也明说词表应已提供、缺失则叫用户跑 /setup-matt-pocock-skills——有条件前提但如实声明,无夸大
- [ok] 网络端点/凭据读取反例搜索 — 两文件内无 URL、无 env/keychain 读取、无文件写入指令;唯一外发是经宿主 CLI 到用户自有 tracker
- [ok] LICENSE/元数据 — gh api: license MIT(仓库根 LICENSE)、stars 253957(2026-09-06 实时快照值)、pushed_at 2026-09-04T08:45:43Z
6結論
3a4ea2541cdd9f0b…