iterate-feature
Build a feature iteration by iteration: each one ships one capability I can test, takes shortcuts it tracks, and narrows toward production quality, with an…
Skill by nash403
Chalk Labs
Need help deploying iterate-feature?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
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/nash403-iterate-feature
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: testing
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/iterate-feature
What's inside
- Skill name
iterate-feature- Description
- Build a feature iteration by iteration: each one ships one capability I can test, takes shortcuts it tracks, and narrows toward production quality, with an artifact per iteration that carries the state between sessions. Use when I start or continue an iteration of a feature.
- License
- MIT
- Instructions
- 107 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
Build the feature one iteration at a time. Each iteration ships one capability I can test end to end, real from request to visible result. Unclear points don't block: pick the most reasonable fast path, build, track it. The feature narrows toward production quality because shortcuts get resolved faster than new ones get taken.
Build with the usual workflow (`implementation-loop`); this skill owns the funnel around it.
## Signal
Until the session ends, start every response with a random emoji and a random made-up past-tense word, never the same as the previous response: `🦔 Razzled.`
Emojis: 🐠 🫘 🐇 🦔 🎲 🪵 🧊 🌵 🗿 🪬 🧲 🪭 🐼 🦩 🔭 🧪 🪜 🌋 🪇 🪶
Words: Razzled, Fuzzled, Noodled, Percolated, Schlepped, Finagled, Bamboozled, Combobulated, Spelunked, Hornswoggled, Moseyed, Wrangled, Kerfuffled, Flummoxed, Doodled, Simmered, Gallivanted, Skedaddled, Befuddled, Tinkered.
## Feedback is not a build order
Feedback on a tested iteration, observations, "ok", "noted" or silence never trigger code: record them in the artifact (see Feedback) and ask whether to build. Only an explicit order ("go", "vas-y", "next iteration", "fix it") starts a build. A build order that adds a new capability to an open iteration re-runs the sizing; failing it, it's the next iteration. In doubt, record and ask.
## Start
Artifacts live in my personal context folder, under `features/<slug>/NNN-<slug>.md` (`001-supplier-price-history.md`). Pick the slug yourself at iteration 1, and create the folders on the first write. If I have no personal context folder, suggest running `setup-personal-context` first.
- **New feature** (no folder matches what I describe): go to Grill and scope section.
- **Existing feature**: read its latest artifact and the Original request of `001`. Then dispatch a sub-agent, so the main context stays light for the build. It checks the artifact still matches the code (files exist, claimed behaviour is there), lists the commits since the last iteration's `from_ref` that aren't that iteration's work, and maps the surface the new request touches. It returns findings, files and size signals, not file contents.
- **Recap** in a few lines: the goal, what the last iteration changed, the ▶ items, and any work done outside the iterations. Warn if the checkout isn't the artifact's `branch`. No feedback recorded on the last iteration: ask whether it was tested.
## Grill and scope
Grill every iteration with `grilling`, stopping once the keystone is chosen and sized; iteration 2+ opens with what the last build and my feedback taught. Every finding gets a destination at once: in the slice, a fast path, a to-do item if it's in the agreed scope, an open question otherwise. The grill sharpens the keystone, it never adds a second capability.
**Size.** Two or more capabilities: pick the keystone, the one the others depend on or the one proving the most uncertain assumption; the rest become to-do items. Small items ride along when they share files and tests. Most observable value or most removed uncertainty ships first. The iteration fits one session (grill, build, review, artifact), or it's two.
**Removing existing behaviour.** If old and new can coexist coherently, ship the new in parallel and demolish in a later iteration. If not (contradicting payloads, two edit paths with diverging validation, the old being the only recovery), demolish now with non-regression tests, or keep the old as a bridge, recorded as a fast path.
**Go.** Present in at most 15 lines: the keystone as "I can <action> and see <result>", 2-4 acceptance criteria I'll test, the fast paths with a one-line reason, what's out, assumptions. The app still runs and the checks pass after it. Wait for go; on go, record `git rev-parse HEAD` as `from_ref`.
## Build
Follow `implementation-loop`. Reuse what exists before writing; inline something only as a fast path, with a to-do item to extract it.
**Fast paths** are valid only when reversing them is mechanical, needing no design-system or domain knowledge:
- **Defer**: the capability is missing this iteration and visible as deferred (disabled control with a tooltip, banner, honest confirmation), never an enabled control that does nothing or a success message that lies. Mark its spot with `FIXME(<slug>):`.
- **Cheap mechanics**: the capability works, built cheaply: raw strings over i18n keys, mocked data in a schema-compatible shape, placeholder loading, error and empty states, rough layout.
- **Never**: native elements over the project's components, hand-rolled domain formatting (money, dates, units, statuses) over the project's utilities, hardcoded colors, skipped auth or permission checks.
Every fast path becomes a to-do item saying what replaces it. Many defers in one iteration means the scope was too wide: re-scope.
**Review** every iteration on its delta since `from_ref`, and the whole feature against `base_branch` at each checkpoint.
## Artifact
Written after the build, in English. A refinement of the open iteration updates its artifact in place: rewrite the sections it moved, never append dated notes. Earlier artifacts, the Original request and recorded feedback are never edited.
```yaml
---
feature: <slug>
title: <feature name>
base_branch: <branch at iteration 1, fixed>
branch: <branch of this iteration>
from_ref: <SHA at go>
iteration: <N>
date: <YYYY-MM-DD HH:MM>
source: <spec or ticket link, if any>
---
```
- **Original request** (`001` only): the goal, key flows, constraints, in at most 10 lines.
- **Current state**: what the feature lets the user do today, 3 to 6 bullets from the user's side. No files, no components.
- **What this iteration changes**: written like an MR description, what changes and why in a few sentences.
- **To do**: the table below.
- **Open questions** (when there are any): see below.
- **Feedback** (once I've tested): my feedback as given, and the decisions taken. No rewording that makes it longer.
### To do
One table, read top to bottom in three blocks: `✓` done this iteration, then what's still open from earlier iterations, then `🆕` what this iteration added (my feedback, fast paths taken, spec items found missing). Next iteration, the done rows leave and the new ones join the open block. The open block is sorted by priority; `▶` marks the 2-3 recommended next, favouring fast paths to resolve so they don't pile up.
| | Item | Effort | Origin |
|---|---|---|---|
| ✓ | The supplier sees their price history over 12 months | | |
| ▶ | The buyer can export the history as CSV | M | spec |
| 🆕 | Labels use translation keys instead of raw strings | S | fast path |
`Won't do:` below the table lists what was excluded, each with its reason.
Each item reads like a request from a PO, or from a tech lead when it's technical: understandable without the earlier iterations. No ids, no numbering: an item's wording is its identity, kept the same across iterations. When I ask what's left, answer with the items themselves, ▶ first.
Only work in the repo goes in the table. Only what's in the agreed scope goes in it: the spec, my feedback, the fast paths taken. A new capability, a refactor or any other finding you'd suggest goes to Open questions until I say yes.
### Open questions
What waits on me: a suggestion to add something, or a question I have to take outside the repo (a PO, the translation team). One line each, removed once answered. Only an explicit yes turns a suggestion into a `🆕` item; silence keeps it open.
At iteration 1, walk the spec: every acceptance criterion not delivered becomes an item, or goes under `Won't do`. Work done outside the iterations is reconciled, not narrated: items it completed get `✓` with "outside iterations" as origin, user-visible changes update Current state.
## Handoff
How to test what was built (routes, visible changes), the acceptance criteria, the artifact path, the review outcome, and the open questions. Then ask for feedback and the next focus, and stop.
## Feedback
Add it to the Feedback section of the artifact just tested, never a new file, keeping its substance and severity. Every issue, new requirement or rework decision also becomes a `🆕` item. Read back a short summary, then wait for an explicit go.
## Checkpoint
Every 5 iterations, or sooner if the open items grow two iterations in a row: compare Current state and the table with the Original request, and list each drift (something added, dropped or changed) in one line. For each one I confirm it, recorded as a decision in Feedback so it isn't asked again, or reject it, which becomes a `🆕` item to bring the feature back in line. Then ask whether to keep going or rescope.From nash403/skills, MIT.
More from nash403/skills
- 0.565score
addressing-feedback
nash403
Triage feedback threads on my work and draft replies: PR/MR review, comments on a doc, an essay or any artifact, read from a platform or pasted.
SkillAFreshness: AClaude Code +9 - 0.565score
cleanup-comments
nash403
Review the comments in changed code and propose removing the noise: commented-out code, narrating comments, changelog stamps, debug leftovers, docs that…
SkillAFreshness: AClaude Code +9 - 0.565score
designing-deep-modules
nash403
Shared vocabulary for designing deep modules.
SkillAFreshness: AClaude Code +9 - 0.565score
implement-scoped
nash403
Scope requested work to fit one agent session, build what fits, finish the mechanical leftovers with sub-agents, and hand off the rest.
SkillAFreshness: AClaude Code +9 - 0.565score
maintaining-docs
nash403
Edit AI agent files (skills, rules, AGENTS.md/CLAUDE.md) or project documentation (READMEs, ARCHITECTURE, CODING_STYLE, CONTRIBUTING, monorepo/package docs)…
SkillAFreshness: AClaude Code +9 - 0.565score
mapping-codebase
nash403
Create or update a project's code map: what each area of the repo is for and where to change what, so agents navigate without re-exploring.
SkillAFreshness: AClaude Code +9 - 0.565score
bruce
nash403
Bruce, a sparring partner who challenges my proposals instead of validating them, then argues his own: for an architecture or implementation doubt, a decision…
SkillAFreshness: AClaude Code +9 - 0.561score
improve-architecture
nash403
Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.
SkillAFreshness: AClaude Code +9 - 0.561score
mapping-doc-ownership
nash403
Keep a project's docs map: which doc owns which topic, so every piece of documentation has one home and the others link to it.
SkillAFreshness: AClaude Code +9 - 0.561score
implementation-loop
nash403
Workflow for implementing a ticket, a spec or a feature: mindset, branch, test-first at agreed seams, checks, review, commit only on request.
SkillAFreshness: AClaude Code +9 - 0.559score
bump-dependencies
nash403
Bump a project's dependencies group by group, from the least risky to the riskiest, verifying each group before the next.
SkillAFreshness: AClaude Code +9 - 0.559score
noobify
nash403
Reformulate what I'm working on for a non-technical reader.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 22, 2026 (8 days ago)
- Last release
- Oct 22, 2026 (8 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/nash403/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from nash403
- 0.565score
implement-scoped
nash403
Scope requested work to fit one agent session, build what fits, finish the mechanical leftovers with sub-agents, and hand off the rest.
SkillAFreshness: AClaude Code +9 - 0.565score
maintaining-docs
nash403
Edit AI agent files (skills, rules, AGENTS.md/CLAUDE.md) or project documentation (READMEs, ARCHITECTURE, CODING_STYLE, CONTRIBUTING, monorepo/package docs)…
SkillAFreshness: AClaude Code +9 - 0.565score
addressing-feedback
nash403
Triage feedback threads on my work and draft replies: PR/MR review, comments on a doc, an essay or any artifact, read from a platform or pasted.
SkillAFreshness: AClaude Code +9 - 0.565score
cleanup-comments
nash403
Review the comments in changed code and propose removing the noise: commented-out code, narrating comments, changelog stamps, debug leftovers, docs that…
SkillAFreshness: AClaude Code +9 - 0.565score
designing-deep-modules
nash403
Shared vocabulary for designing deep modules.
SkillAFreshness: AClaude Code +9 - 0.565score
mapping-codebase
nash403
Create or update a project's code map: what each area of the repo is for and where to change what, so agents navigate without re-exploring.
SkillAFreshness: AClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get iterate-feature running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
iterate-feature skill. Agent Mart. https://agentmart.dev/skills/nash403-iterate-feature (last updated 2026-10-24)