The Spec-Driven Development pipeline for ZettelFlow — the end-to-end flow (constitution → specify → plan → tasks → implement → verify) and which skill/agent owns each stage.

MITAuto-check passedDevelopment

Install Sdd

skills CLI
$ npx skills add RafaelGB/Obsidian-ZettelFlow --skill sdd -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install RafaelGB/Obsidian-ZettelFlow sdd --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/RafaelGB/Obsidian-ZettelFlow.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/sdd .claude/skills/sdd && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
sdd
GitHub stars
174
Token cost
~842 tokens
SKILL.md length
359 words
Files
1
Skills in repo
9
Repo updated
First seen
Licence
MIT

At a glance

The Spec-Driven Development pipeline for ZettelFlow — the end-to-end flow (constitution → specify → plan → tasks → implement → verify) and which skill/agent owns each stage.

  • Starting any non-trivial change
  • SKILL.md covers Why spec-first here, The stages (invoke in order), How to drive it and Non-negotiables the pipeline…, plus 1 more section
  • Calls npm
  • Picking up an issue (especially obsidian-score work)

What it does

Sdd is an agent skill from RafaelGB/Obsidian-ZettelFlow. The Spec-Driven Development pipeline for ZettelFlow — the end-to-end flow (constitution → specify → plan → tasks → implement → verify) and which skill/agent owns each stage. Use when starting any non-trivial change, picking up an issue (especially obsidian-score work), or when the user asks to "follow the process", "spec this out", "how do we build features here", or "set up spec-driven development".

Its SKILL.md is about 840 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Spec-driven development. It works with Obsidian. The repository describes itself as: ZettelFlow is a plugin for Obsidian that helps you to create and manage your notes in a Zettelkasten way. The licence is MIT.

When your agent uses it

  • Starting any non-trivial change
  • Picking up an issue (especially obsidian-score work)
  • The user asks to follow the process
  • How do we build features here

Example prompts

  • “follow the process”
  • “spec this out”
  • “how do we build features here”
  • “/sdd”

What it can do on your machine

Read from SKILL.md and the folder at commit 0676350. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Sdd loads about 842 tokens when it runs. Until then it costs about 102 tokens; SKILL.md has 359 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~102
When it runs · the whole SKILL.md, loaded when a task matches
~842

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from RafaelGB/Obsidian-ZettelFlow at commit 0676350, republished under its MIT licence (© RafaelGB). 359 words, ~842 tokens.

Download SKILL.mdSave it as .claude/skills/sdd/SKILL.md (or your agent's skills folder).
name
sdd
description
The Spec-Driven Development pipeline for ZettelFlow — the end-to-end flow (constitution → specify → plan → tasks → implement → verify) and which skill/agent owns each stage. Use when starting any non-trivial change, picking up an issue (especially obsidian-score work), or when the user asks to "follow the process", "spec this out", "how do we build features here", or "set up spec-driven development".

Spec-Driven Development (SDD) — the ZettelFlow pipeline

ZettelFlow is built spec-first: intent → spec in the GitHub issue → plan comment → tasks comment → code test-first → reviewed against the Obsidian quality score. This skill is the map. The invariants are in docs/development/constitution.md; the narrative is docs/development/spec-driven-development.md.

Everything lives in GitHub Issues — the spec is the issue body; the plan and tasks are issue comments. No local specs/ directory.

Why spec-first here

The expensive part of a ZettelFlow change is not the code — it's shipping something that keeps the Obsidian score up, stays cross-platform, keeps en/es in sync, updates docs, and doesn't break the fragile Canvas patcher. Those are cheap to honor in a spec and expensive to retrofit. The pipeline front-loads them as gates.

The stages (invoke in order)

#StageSkill to invokeOwner agentProduces
0Constitution— (read it)—docs/development/constitution.md
1Specifyspecifyspec-authorIssue body (spec)
2Planplanimplementation-plannerIssue comment (plan)
3Taskstasksimplementation-plannerIssue comment (task checklist)
4Implementimplement (+ tdd)main assistantcode, tests, commits
5Verify & reviewobsidian-plugin-quality + obsidian-plugin-reviewerreviewer agentreview comment, PR Closes #N
Show full SKILL.md (179 more words)Show less

How to drive it

  • Starting an issue: specify <issue # or description> → plan <issue #> → tasks <issue #> → implement <issue #> → run the quality audit + reviewer → open PR with Closes #N.
  • Tiny, no-behavior change (typo, dep bump): skip to implement. Anything touching behavior, a public surface, UI text, or the score runs the full flow.
  • Branch & CI discipline (constitution §IX): one feature/* branch; each commit is a coherent advance that leaves npm run verify green.

Non-negotiables the pipeline enforces (constitution)

Score is a release gate (§I) · test-first (§II) · facades not globals, no innerHTML, no inline styles (§III) · sentence-case i18n in en+es, clean commands/headings (§IV) · cross-platform (§V) · defensive Canvas patcher (§VI) · disclose capabilities (§VII) · docs ship with the change (§VIII) · small conventional single-branch commits (§IX) · issues close via PR merge, not manually (§X) · every spec ends with a walkable How to verify script, and finishing means having walked it (§XIV) · the user's theme wins: no hardcoded colour, no off-grid pixel, Obsidian's classes first (§XV).

tdd (stage-4 discipline) · obsidian-plugin-quality (stage-5 score audit) · new-action (scaffold for adding a new action) · release (shipping a version).

© RafaelGB, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/sdd of RafaelGB/Obsidian-ZettelFlow.

Open the folder on GitHubat commit 0676350

Compare with similar skills

Sdd next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Sdd compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Sdd this skillRafaelGB/Obsidian-ZettelFlow174—~842Automated safety check: PassMIT
JSON Canvasheyitsnoah/claudesidian2.6k18 repos~3.5kAutomated safety check: PassMIT
OpenSpec Bulk Change ArchiverFission-AI/OpenSpec71k3 repos~5.6kAutomated safety check: PassMIT
Speckit ConstitutionWeihanLi/WeihanLi.Common24211 repos~2.1kAutomated safety check: PassApache-2.0
Excalidraw Diagrambreferrari/obsidian-mind4.9k—~3.9kAutomated safety check: PassMIT
Speckit Taskstoissueskunstmusik/blue15419 repos~2kAutomated safety check: PassGPL-3.0

Similar skills

  • JSON Canvas

    heyitsnoah/claudesidian

    Create and edit JSON Canvas files (.canvas) with nodes, edges, groups, and connections.

    2.6k GitHub starsUsed in 18 repos~3.5k tokens
    DevelopmentAuto-check passed
  • Archives several completed OpenSpec changes in one operation, checking the codebase to resolve spec conflicts rather than archiving blindly.

    71k GitHub starsUsed in 3 repos~5.6k tokens
    DevelopmentAuto-check passed
  • Speckit Constitution

    WeihanLi/WeihanLi.Common

    Create or update the project constitution from interactive or provided principle inputs, ensuring all dependent templates stay in sync.

    242 GitHub starsUsed in 11 repos~2.1k tokens
    DevelopmentAuto-check passed
  • Excalidraw Diagram

    breferrari/obsidian-mind

    Generate Excalidraw diagrams from text content. An agent skill from breferrari/obsidian-mind.

    4.9k GitHub stars~3.9k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Speckit Taskstoissues

    kunstmusik/blue

    Convert existing tasks into actionable, dependency-ordered GitHub issues for the feature based on available design artifacts.

    154 GitHub starsUsed in 19 repos~2k tokens
    DevelopmentAuto-check passed
  • Release Notes

    RAIT-09/obsidian-agent-client

    Generate a GitHub release note draft for this Obsidian plugin repository.

    2.4k GitHub stars~4.2k tokensUpdated 6 days ago
    DevelopmentAuto-check passed

More from RafaelGB/Obsidian-ZettelFlow

All 9 skills in this repo
  • New Action

    RafaelGB/Obsidian-ZettelFlow

    Scaffold a new ZettelFlow action following the project's 4-file convention (Action / Component / Settings / SettingsReader), register it, and document it.

    174 GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Obsidian Plugin Quality

    RafaelGB/Obsidian-ZettelFlow

    Audit ZettelFlow against the official Obsidian plugin guidelines and the Community-hub automated review / quality score.

    174 GitHub stars~1.6k tokensUpdated today
    Auto-check passed
  • Release

    RafaelGB/Obsidian-ZettelFlow

    Cut a compliant ZettelFlow plugin release — version bump, versions.json, build, tag, and a GitHub Release whose notes follow the house format.

    174 GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Specify

    RafaelGB/Obsidian-ZettelFlow

    Stage 1 of the SDD pipeline — write a ZettelFlow spec into a GitHub issue body (problem, value, functional requirements, testable acceptance criteria, capability disclosure, out-of-scope).

    174 GitHub stars~759 tokensUpdated today
    Auto-check passed
  • TDD

    RafaelGB/Obsidian-ZettelFlow

    The test-driven development workflow for ZettelFlow — write a failing test first, run jest, use the Obsidian mock and the bare-specifier alias mappings, and know which code is unit-testable.

    174 GitHub stars~724 tokensUpdated today
    Auto-check passed
  • Implement

    RafaelGB/Obsidian-ZettelFlow

    Stage 4 of the SDD pipeline — execute a ZettelFlow task checklist (in a GitHub issue comment) test-first (red → green → refactor), one commit per advance, keeping npm run verify green and CI green…

    174 GitHub stars~1.7k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Sdd

What does Sdd do?

The Spec-Driven Development pipeline for ZettelFlow — the end-to-end flow (constitution → specify → plan → tasks → implement → verify) and which skill/agent owns each stage. Sdd is an agent skill from RafaelGB/Obsidian-ZettelFlow. The Spec-Driven Development pipeline for ZettelFlow — the end-to-end flow (constitution → specify → plan → tasks → implement → verify) and which skill/agent owns each stage.

When should I use Sdd?

Sdd fits situations like: starting any non-trivial change; picking up an issue (especially obsidian-score work); the user asks to follow the process; how do we build features here.

How do I install Sdd in Claude Code?

Run `npx skills add RafaelGB/Obsidian-ZettelFlow --skill sdd -a claude-code`. Or copy the skill folder (.claude/skills/sdd in RafaelGB/Obsidian-ZettelFlow) into .claude/skills/sdd in your project. Claude Code loads it when a task matches its description.

How do I install Sdd in Codex?

Run `npx skills add RafaelGB/Obsidian-ZettelFlow --skill sdd -a codex`. Or copy the skill folder (.claude/skills/sdd in RafaelGB/Obsidian-ZettelFlow) into .agents/skills/sdd in your project. Codex loads it when a task matches its description.

Can I use Sdd in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add RafaelGB/Obsidian-ZettelFlow --skill sdd -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sdd, .gemini/skills/sdd, .github/skills/sdd and .opencode/skills/sdd in your project.

What does Sdd need to run?

Going by SKILL.md and its folder, Sdd needs the command-line tools its instructions call (npm).

Does Sdd access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Sdd safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Sdd use?

Sdd is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Sdd use?

About 842 tokens (SKILL.md is roughly 3.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Sdd?

Skills that share tags, products or a category with Sdd: JSON Canvas (heyitsnoah/claudesidian, 2.6k stars), OpenSpec Bulk Change Archiver (Fission-AI/OpenSpec, 71k stars), Speckit Constitution (WeihanLi/WeihanLi.Common, 242 stars) and Excalidraw Diagram (breferrari/obsidian-mind, 4.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Sdd?

RafaelGB (a GitHub user) maintains it in RafaelGB/Obsidian-ZettelFlow, which has 174 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 8, 2026.

Source: RafaelGB/Obsidian-ZettelFlow on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.