shape
Shape a problem with the human into one accepted spec: what to build, what success means, and how to prove it, before anyone writes production code.
Skill by taecontrol
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/taecontrol-shape
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/shape
What's inside
- Skill name
shape- Description
- Shape a problem with the human into one accepted spec: what to build, what success means, and how to prove it, before anyone writes production code. Invoke when the user brings an issue or feature to work on, or opens its design phase.
- License
- MIT
- Instructions
- 31 lines in SKILL.md · view on GitHub
Files (3)
- SKILL.md
- openai.yaml · agents/
- spec.md · templates/
SKILL.md (first lines)
# Shape Shaping decides **what**, **how we will know**, the **one-way doors**, and, when the change warrants it, the shape of the code; the rest of how to build it belongs to delivery. The result is one short spec, accepted by the human, that holds or points to everything an agent needs to deliver it without asking again. Write in the user's language. ## Roles The human decides the problem, the scope, the examples that define success, and every cut. You settle facts: read the code, issues, data, and history; run experiments; prepare options. A question whose answer you could observe is yours, not the human's. ## Process 1. **Understand the problem.** Who has it, even when that is the owner or their agents, as with slow feedback, CI minutes, or confidence to merge; what it costs them; how they cope today; and the evidence, labeled `observed`, `reported`, or `assumed`. Read the issue, the affected code, related and duplicate issues, and where the system actually runs. Before converging, zoom out: list the options, including an existing tool or package and doing nothing. Then agree on the **outcome** with the human: what will be true for whoever has the problem when this is done. Every example and every number in the spec derives from it. Done when every claim about the problem carries a label, the options are listed, and the human has agreed on the outcome. 2. **Size it.** The spec must fit one pull request. When it does not, propose a split into separate issues, each shippable and verifiable on its own; create them after the human agrees, then shape one. 3. **Settle every decision the examples depend on, and every one-way door.** A one-way door is a decision the change would make that is costly to reverse: persisted data or its schema, a contract that writes (an API, CLI, or MCP operation, or a file users commit), a security boundary, or a seam an accepted ADR governs. Size each for the open issues that will share it, not only this one. Run `architect` on each one-way door: its gate closes one within minutes when evidence shows it is reversible, and only that gate decides so. Settle facts with the cheapest faithful evidence: `spike` for feasibility or tool behavior, `research` for outside facts, `prototype` for a logic model. A question whose options differ in what someone sees or does is a UI question, even when it also changes a rule or an API: answer it with a `prototype` of the options and let the human choose while looking at it. Put the remaining decisions to the human: load `grilling` and ask in its rounds. Done when its frontier is empty, every one-way door has an `architect` result, and every fact the spec depends on is observed rather than left for delivery: a risk whose failure would send the work back to design is an open question, and a `spike` settles it now. 4. **Write the examples.** They are the definition of success. Cover the happy path, the edges, the failures, and what must never happen. When state interacts (concurrency, retries, ordering, partial failure, fields that change other fields) or the change writes data, enumerate the **state space**, the states against the operations, so the edge cases come from the table, not from memory. For a write, the operations include a lost response and its retry and a concurrent writer in every order the platform allows, and the states include what exists when the change lands: data written before it, queued work, and the previous version still running. When performance matters, add the budgets the change must hold, as counts a check can enforce, such as queries or round trips per operation; when a budget can only be a time, measure its spread on the real target, such as CI's runners, and set its margin from that spread. Every number a check imposes that costs run time or confidence, such as a budget, a margin, a repetition count, or a sample size, and every check the change adds to CI, states the outcome it protects, its evidence, what one run costs locally and in CI, measured rather than guessed, and what getting it wrong would cost. A number the evidence does not settle is the human's decision, not a default: put it in a `grilling` round with what each candidate value costs and how much confidence it buys. Mark each example `test` when it can be automated at the test boundary, or `capture` when a person or agent must look at the running product, such as fidelity to the chosen prototype. 5. **Fix the test boundary.** Name where the acceptance tests run (UI, API, CLI, or a module seam) and the real target conditions they must hold under, in an instance isolated from the owner's own data, credentials, and session: the actual app and runtime mode, data shaped like the real data including its extremes, such as the shortest history a real user has, and the platforms CI uses. Use the project's verification method from its agent instructions; when it has none that can run these examples, `setup-verification` comes first. 6. **Shape the code.** Run `program-design`; its gate decides whether the change needs one. Done when it returns a gated-out line or a program design ready to present. 7. **Accept.** Present the spec through a `walkthrough` page, with the program design as one of its chapters: the problem and the bet first, then the examples, then decisions and cuts. Resolve every open question. Mark it `Accepted` only after the human explicitly accepts what they saw on the page; when a later change alters the examples or scope, present it and ask again. Publish what later work needs from it, as [the spec](#the-spec) says, then give the spec's absolute path and stop: `deliver` takes it from here. ## The spec Write it from [the template](templates/spec.md) at the path the user gives, an established convention for local work files, or `.work/specs/<slug>.md`. It stays out of version control: when nothing ignores it, add its directory to the repository's exclude file, `$(git rev-parse --git-common-dir)/info/exclude`. Keep it short; point to sources instead of restating them. The spec dies with the worktree. What another issue, pull request, or worktree needs from it, such as the accepted examples and decisions a later issue builds on, goes into that issue or into durable documentation, so each issue stands on its own. Anything that outlives the worktree, such as an issue, a commit, or a pull request, cites only what outlives it too: never a `.work/` path or an unmerged branch. ## Done An accepted spec states the problem with labeled evidence, the examples that define success with their test boundary and real target, the decisions with pointers to their evidence, and what is out of scope, with no open questions left. No production code was written.
From taecontrol/skills, MIT.
More from taecontrol/skills
- 0.592score
architect
taecontrol
Settle a one-way door before code locks it: a change to persisted data or its schema, a contract that writes, a security boundary, an ownership model, or a…
SkillAFreshness: A★ 1Claude Code +9 - 0.592score
strategic-programming
taecontrol
Apply strategic programming to non-trivial implementation and repair work when green tests alone cannot establish a maintainable design.
SkillAFreshness: A★ 1Claude Code +9 - 0.592score
prototype
taecontrol
Make a design question tangible before committing to it: compare production-representative UI directions for a screen, component, or short flow, or drive a…
SkillAFreshness: A★ 1Claude Code +9 - 0.589score
refine
taecontrol
Review a working change with fresh eyes against its spec, then make it right and make it fast without changing the behavior its acceptance tests lock, in at…
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
spike
taecontrol
Run a bounded technical experiment when observation is needed to settle feasibility, integration, performance, or tool behavior.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
research
taecontrol
Investigate a bounded question against high-trust primary sources through parallel independent research, then produce a cross-checked Markdown report.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
ship
taecontrol
Publish finished work as a pull request and drive its CI checks to green.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
setup-verification
taecontrol
Give agents hands and eyes on a project: one way to launch, drive, and observe the real product, and acceptance tests that run fast and the same locally and…
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
deliver
taecontrol
Deliver an accepted spec autonomously, from failing acceptance tests to a pull request with green checks.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
diagnosing-bugs
taecontrol
Establish the mechanism behind a hard, intermittent, recurring, or performance failure from a faithful reproduction or distinguishing runtime evidence.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
garden
taecontrol
Tend a codebase between features: find drift in one area, group it by cause, and fix the causes worth their cost in one behavior-preserving pull request.
SkillAFreshness: A★ 1Claude Code +9 - 0.584score
skill-guide
taecontrol
Explain available skills, compare their boundaries, or recommend what the user should invoke next.
SkillAFreshness: A★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 23, 2026 (5 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/taecontrol/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from taecontrol
- 0.592score
architect
taecontrol
Settle a one-way door before code locks it: a change to persisted data or its schema, a contract that writes, a security boundary, an ownership model, or a…
SkillAFreshness: A★ 1Claude Code +9 - 0.592score
prototype
taecontrol
Make a design question tangible before committing to it: compare production-representative UI directions for a screen, component, or short flow, or drive a…
SkillAFreshness: A★ 1Claude Code +9 - 0.592score
strategic-programming
taecontrol
Apply strategic programming to non-trivial implementation and repair work when green tests alone cannot establish a maintainable design.
SkillAFreshness: A★ 1Claude Code +9 - 0.589score
refine
taecontrol
Review a working change with fresh eyes against its spec, then make it right and make it fast without changing the behavior its acceptance tests lock, in at…
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
deliver
taecontrol
Deliver an accepted spec autonomously, from failing acceptance tests to a pull request with green checks.
SkillAFreshness: A★ 1Claude Code +9 - 0.587score
diagnosing-bugs
taecontrol
Establish the mechanism behind a hard, intermittent, recurring, or performance failure from a faithful reproduction or distinguishing runtime evidence.
SkillAFreshness: A★ 1Claude Code +9
Cite this page
shape skill. Agent Mart. https://agentmart.dev/skills/taecontrol-shape (last updated 2026-10-24)