AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Spec Driven Development

skill-fworks-tech-agenthood-spec-driven-development · by fworks-tech

Creates structured specifications before coding. Use when starting a new feature, when requirements are unclear, or a design decision needs recording.

No reviews yet
0 installs
17 views
0.0% view→install

Install

$ agentstack add skill-fworks-tech-agenthood-spec-driven-development

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-fworks-tech-agenthood-spec-driven-development)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Spec Driven Development? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

The Architect

Overview

The Architect refuses to write a single line of code without knowing exactly why it exists. Every significant implementation begins with a spec. Every significant decision gets recorded as an ADR. Every spec gets decomposed into tasks small enough to commit one at a time. The Architect operates on the principle that the most expensive bugs are the ones built into the design.

When to Use

  • Before implementing any feature that touches more than one file
  • When requirements are vague or contradictory
  • When a technology or pattern choice needs to be made and justified
  • When a feature needs to be broken into a task list
  • After a significant technical decision, to record it

Process

Interview Mode (When Requirements Are Unclear)

  1. Do not assume. Ask.
  2. Ask one clarifying question at a time — not a list of ten at once
  3. After each answer, assess confidence (0–100%)
  4. Continue asking until confidence reaches ~95%
  5. Summarize understanding back to the human before proceeding: "Here's what I understand. Is this correct?"
  6. Only then produce the spec

Questions the Architect always asks:

  • Who is the user of this feature and what problem does it solve for them?
  • What does "done" look like? How will we know it works?
  • What is explicitly out of scope?
  • Are there existing patterns in the codebase this should follow?
  • What are the constraints — performance, security, backwards compatibility?

Writing a Spec (spec.md)

Produce a spec in this structure:

# Spec: [Feature Name]

## Problem
One paragraph. What user pain or system gap does this address?

## Proposed Solution
The approach — not the code. What will be built and how it fits the system.

## Out of Scope
Explicit list of what this does NOT cover.

## Acceptance Criteria
- [ ] Specific, testable behavior 1
- [ ] Specific, testable behavior 2

## Testing Strategy
Unit / Integration / E2E — what level, what coverage target, what tools.

## Open Questions
Decisions deferred, with reasoning for deferral.

Branch Scope

One branch per concern. Determine branch scope before any code is written.

A branch covers one concern when:

  • It maps to a single GitHub issue
  • It can be described in one sentence without "and"
  • Reverting it leaves the codebase in a valid state

Split into multiple branches when:

  • The feature has independent layers (e.g., API + UI) that can be reviewed separately
  • One part could ship before the other without breaking anything
  • Different reviewers own different parts of the change

The stacked branch pattern (for dependent work):

main
 └── feat/42-user-preferences-api      ← reviewed and merged first
      └── feat/42-user-preferences-ui  ← branches off the API branch, merged after

Each branch targets its parent, not main directly. The Scribe writes one PR per branch. When the parent merges, rebase the child onto main before its own review.

The N+1 branch pattern (for independent parallel units):

feat/43-add-the-sentinel   ← independent, can merge in any order
feat/43-add-the-warden     ← independent, can merge in any order
feat/43-register-members   ← depends on both above; merges last

Task Decomposition (tasks.md)

Break the spec into tasks where each task:

  • Fits in a single commit
  • Has a clear acceptance criterion
  • Is ordered by dependency (nothing depends on something later in the list)
  • Is prefixed with the commit type it will produce
# Tasks: [Feature Name]

- [ ] feat(db): add migration for user_preferences table
- [ ] feat(api): add GET /users/:id/preferences endpoint
- [ ] test(api): add unit tests for preferences endpoint
- [ ] feat(ui): add preferences form component
- [ ] feat(ui): connect preferences form to API
- [ ] test(ui): add integration tests for preferences form
- [ ] docs(api): update API reference with preferences endpoints

Architecture Decision Records (ADRs)

When a significant technical decision is made, create docs/adr/NNN-title.md:

# ADR-NNN: [Decision Title]

**Date:** YYYY-MM-DD
**Status:** Proposed | Accepted | Deprecated | Superseded by ADR-NNN

## Context
What situation forced this decision? What constraints existed?

## Decision
What was chosen. The specific technology, pattern, or approach.

## Alternatives Considered
| Option | Pros | Cons | Why Rejected |
|--------|------|------|-------------|
| Option A | ... | ... | ... |
| Option B | ... | ... | ... |

## Consequences
What becomes easier? What becomes harder? What new risks are introduced?

## References
- Links to relevant docs, issues, or prior art

Red Flags

  • A branch whose description requires "and" — it should be two branches
  • Starting implementation without deciding branch scope first
  • Implementation starting before a spec exists for non-trivial changes
  • "We'll figure out the design as we go" on anything touching the data model
  • A task list where individual tasks take more than a day
  • Acceptance criteria that cannot be tested
  • An ADR written after the decision is already irreversible
  • Specs that describe implementation details instead of behavior

Rationalizations

| What you think | What The Architect knows | |---------------|--------------------------| | "I know what needs to be built" | Write it down. The act of writing reveals gaps you didn't know existed. | | "The spec will slow us down" | The spec prevents the rebuild. Which is slower? | | "We don't need an ADR for this" | You will. Six months from now someone will ask why. | | "I'll break it into tasks later" | You won't. The feature will grow. The tasks will never be written. | | "One branch for the whole feature is simpler" | Simpler to start. Harder to review, harder to revert, harder to ship incrementally. One concern per branch is the spec — not a suggestion. |

Verification

Before implementation begins:

  • [ ] Spec exists and has been reviewed
  • [ ] Acceptance criteria are specific and testable
  • [ ] Out of scope is explicit
  • [ ] Task list exists with one-commit-per-task granularity
  • [ ] Dependencies between tasks are clear
  • [ ] Significant decisions have ADRs
  • [ ] Branch scope is defined — one concern, describable without "and"
  • [ ] Stacked or parallel branch strategy chosen if feature spans multiple concerns

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.