To Spec

作者 mattpocockc55ee46073ed無授權條款收錄於 2026年10月8日更新於 2026年10月8日

Turn the current conversation into a spec and publish it to the project issue tracker: no interview, just synthesis of what you've already discussed.

僅含說明AI & Agents
AI 產生的概覽

把目前的對話與程式碼庫脈絡整理成規格,並發佈到專案議題追蹤器。

功能
這個技能不會訪談使用者,而是把既有對話與對程式碼庫的理解綜整成一份功能規格。它會先瀏覽程式碼庫,提出測試接縫並與使用者確認,再依固定範本撰寫規格,涵蓋問題陳述、解決方案、使用者故事、實作決策、測試決策、範圍之外與補充說明。完成後把規格發佈到專案議題追蹤器,並標上 ready-for-agent 分類標籤。
適用情境
適合功能已經討論過、希望把討論直接整理成結構化規格,而不是繼續提問的情況。也適合已設定好議題追蹤器與分類標籤詞彙的專案。
執行需求
需要事先提供議題追蹤器與分類標籤詞彙,並需要程式碼庫存取權限以便瀏覽。此技能僅為指示文件,不附帶指令碼;若追蹤器設定缺少,會請使用者執行安裝指令。

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.

The issue tracker and triage label vocabulary should have been provided to you. If not, tell the user to run /setup-matt-pocock-skills.

Process

  1. Explore the repo to understand the current state of the codebase, if you haven't already. Use the project's domain glossary vocabulary throughout the spec, and respect any ADRs in the area you're touching.

  2. 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.

  1. 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-template>

Problem Statement

The problem that the user is facing, from the user's perspective.

Solution

The solution to the problem, from the user's perspective.

User Stories

A LONG, numbered list of user stories. Each user story should be in the format of:

  1. As an <actor>, I want a <feature>, so that <benefit>

<user-story-example>

  1. As a mobile bank customer, I want to see balance on my accounts, so that I can make better informed decisions about my spending

</user-story-example>

This list of user stories should be extremely extensive and cover all aspects of the feature.

Implementation Decisions

A list of implementation decisions that were made. This can include:

  • The modules that will be built/modified
  • The interfaces of those modules that will be modified
  • Technical clarifications from the developer
  • Architectural decisions
  • Schema changes
  • API contracts
  • Specific interactions

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. Trim to the decision-rich parts, not a working demo, just the important bits.

Testing Decisions

A list of testing decisions that were made. Include:

  • A description of what makes a good test (only test external behavior, not implementation details)
  • Which modules will be tested
  • Prior art for the tests (i.e. similar types of tests in the codebase)

Out of Scope

A description of the things that are out of scope for this spec.

Further Notes

Any further notes about the feature.

</spec-template>

來源與署名

來源:mattpocock/skills位於skills/engineering/to-spec提交c55ee46

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架