agentleFS
siarhei-belavussiarhei-belavus/agent-smitt/skills/engineering/to-spec/SKILL.md

to-spec

Skill4 starsChanged 16 days agoMITView on GitHub

Synthesize accepted planning authority into a Work Tracker specification.

194 other projects use a version of this, 152 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use setup-ts-deep-modules, loop-me and 7 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • liufeng1976Skill

    setup-ts-deep-modules

    Wire dependency-cruiser into a TypeScript repo so each package is a deep module — implementation hidden in subfolders, reachable only through its entry-point files. User-invoked.

    Also in 43 projects that use this

  • RoentekSkill

    loop-me

    Grill me about specs for the workflows I want to build, within this workspace.

    Also in 49 projects that use this

  • ryotaroh180105Skill

    claude-handoff

    Hand the current conversation off to a fresh background agent that picks up the work immediately.

    Also in 39 projects that use this

  • LesaniSkill

    writing-beats

    Shape an article as a journey of beats, choose-your-own-adventure style. The user picks a starting beat from the raw material, you write only that beat, then offer options for where to pivot next, beat by beat, until the article reaches a natural end. Use when the user has raw material and wants to assemble it as a narrative rather than an argument.

    Also in 51 projects that use this

  • AWSSkill

    implement-spec

    Implement the result of /to-spec and /to-tickets in code.

    Also in 71 projects that use this

  • LesaniSkill

    writing-shape

    Take a markdown file of raw material and shape it into an article through a conversational session — drafting candidate openings, growing the piece paragraph by paragraph, arguing about format (lists, tables, callouts, quotes) at each step. Use when the user has a pile of notes, fragments, or a rough draft and wants help turning it into something publishable.

    Also in 49 projects that use this

  • +1 more from Lesani

The file

We split this skill into the rules it gives an agent

10 rules. 1 is common, 8 are distinctive, and 1 is very specific to this project.

  • 1

    Common

    Most of the 182 edited versions we read keep these.

  • 8

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Read planning artifact contracts and Work Tracker context assembly before producing the specification.

    line 9
  2. Distinctive:

    Use the configured Work Tracker and Domain Orientation when their bindings exist.

    line 10
  3. Very specific:

    When revising or reviewing an existing Specification, invoke the shared contract with the Ticket Origin Repository, Decision Context, and …

    line 18
  4. Distinctive:

    When conversation and durable sources are both supplied, use the accepted Context Pack file unchanged as the baseline and add only …

    line 19
  5. Distinctive:

    Keep behavioral detail in Acceptance criteria and technical detail in the applicable decisions below.

    line 57
  6. Distinctive:

    Write the complete source-authorized behavior using the shared acceptance criteria contract.

    line 61
  7. Distinctive:

    Use a short descriptive heading or list entry for each identifier.

    line 63
  8. Distinctive:

    When a user exports a report with an active filter, the downloaded file contains exactly the rows matching that filter.

    line 67
  9. Common:

    Do NOT include specific file paths or code snippets.

    line 98
  10. Distinctive:

    Every repository-local and cross-repository Settled Seam record

    line 107

“Common” is measured: kept by at least 6 in 10 of the 182 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Synthesize a specification from accepted planning authority and codebase understanding. Planning authority may be the current conversation, a supplied Wayfinder map reference, or both. Do not interview the user; use only what the selected sources establish.

Read planning artifact contracts and Work Tracker context assembly before producing the specification. Use the configured Work Tracker and Domain Orientation when their bindings exist; preserve standalone behavior when they do not.

Process

  1. Select and load the planning source:

    • With no Work Tracker reference, use the accepted decisions and Domain Model Deltas in the current conversation. This path needs no Wayfinder Map.
    • With a Wayfinder Map reference, invoke the shared Context Assembly contract with the Ticket Origin Repository, Map Context, and the Map's permanent reference. Accept only Complete. If the destination still has open decision tickets or material fog, return it to Wayfinder instead of guessing.
    • When revising or reviewing an existing Specification, invoke the shared contract with the Ticket Origin Repository, Decision Context, and that artifact's permanent reference. Accept only Complete.
    • When conversation and durable sources are both supplied, use the accepted Context Pack file unchanged as the baseline and add only explicitly accepted decisions from the current conversation. Do not repeat provider reads. Return contradictions to planning instead of choosing silently.

    Source selection is complete when every accepted conversation decision remains explicit in the session and every required Context Assembly gate has passed.

  2. Perform configured Domain Orientation, then explore the referenced repositories only as needed to understand current state. Use the loaded effective planning language and applicable ADRs throughout.
  3. Materialize the complete solution-level Repository References and exhaustive Context Scope established by discovery or planning. Use bounded source validation to resolve their pointers; do not begin new open-ended discovery. Return unresolved material questions to discovery or planning.
  4. Sketch out the complete set of 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.

When materially different caller-facing ownership, interface, seam, or contract choices remain possible, use the codebase-design skill before proposing the set. For each seam, propose the smallest faithful repository-native test approach and its nearest prior art. Check with the user that the complete seam set and proposed approaches match their expectations; the confirmed records are settled.

  1. Record every confirmed repository-local and cross-repository Settled Seam only in Testing Decisions. Preserve full-fidelity Domain Model Deltas, architecture rationale, provenance, and canonical documentation obligations in Context Scope and the applicable decisions.
  2. Write the spec using the template below. Before publication, validate the complete settled payload against the planning artifact contracts and publish only when it passes. Use the confirmed artifact mapping to retain a selected Map as the Specification or publish a separate Specification with its selected Authority Sources. A specification is planning authority, not an executable delivery ticket; do not apply an execution Routing Label solely because the specification was published.
  3. Invoke fresh shared Context Assembly with the Ticket Origin Repository, Decision Context, and the published artifact's permanent reference. Return a non-complete result to the source or publication step that caused it.
<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 concise numbered list of distinct actor goals and benefits established by the accepted sources. 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>

Keep behavioral detail in Acceptance criteria and technical detail in the applicable decisions below. Shortening this list must preserve every source requirement under the planning artifact contracts.

Acceptance criteria

Write the complete source-authorized behavior using the shared acceptance criteria contract. Keep this section after User Stories; retain the existing sections below in full.

Use a short descriptive heading or list entry for each identifier. For example:

AC-1. Preserve the selected rows in an export

When a user exports a report with an active filter, the downloaded file contains exactly the rows matching that filter. Other rows are absent.

This example illustrates presentation only; use the behavior and verification details established by the actual authority.

Repository References

The complete confirmed solution-level set of Repository Reference records. References grant no write authority.

Authority Sources

Permanent references to every governing Map or other planning artifact, or None — direct accepted authority is fully materialized in this Specification.

Context Scope

The complete relevant Context Scope record. If no canonical context applies, write None — <reason>.

Implementation Decisions

Record the accepted implementation decisions. This can include:

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

Identify the owning Repository ID for every repository-owned decision. Preserve applicable accepted architecture rationale and rejected alternatives in full.

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)
  • Every repository-local and cross-repository Settled Seam record

Connect every acceptance criterion to its verification through the existing Settled Seams and Validation Obligations. Identify automated, manual, or combined verification only as established by accepted testing decisions. Retain their complete contracts, owners, methods, prerequisites, prior art, and required evidence. Keep run-specific build references, environment instances, and results in verification requests and evidence; accepted environment constraints remain here.

This is the sole specification section that owns settled seams. Do not add Repository Scope or a separate Cross-Repository Seams section to a specification.

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>

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.