Record a project design decision into .claude/docs/DESIGN.md through the shared typed writer.

MITAuto-check passedDevelopment

Install Design Tracker

skills CLI
$ npx skills add DeL-TaiseiOzaki/claude-code-orchestra --skill design-tracker -a claude-code

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

GitHub CLI
$ gh skill install DeL-TaiseiOzaki/claude-code-orchestra design-tracker --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/DeL-TaiseiOzaki/claude-code-orchestra.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/design-tracker .claude/skills/design-tracker && 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
design-tracker
GitHub stars
199
Token cost
~2k tokens
SKILL.md length
886 words
Files
1
Skills in repo
15
Repo updated
First seen
Licence
MIT

At a glance

Record a project design decision into .claude/docs/DESIGN.md through the shared typed writer.

  • Works in 4 steps: Decide whether this is a design… → Extract the decision from the… → Map it to a section and to that… → …
  • The user says record this
  • SKILL.md covers Purpose, How This Skill Is Reached, Workflow and Output Format, plus 1 more section
  • Calls python3

What it does

Design Tracker is an agent skill from DeL-TaiseiOzaki/claude-code-orchestra. Record a project design decision into .claude/docs/DESIGN.md through the shared typed writer. Use when the user says "record this", "add to design", "document this", "記録して", or asks what has been decided so far — and when a design decision has just been made and should not be lost.

Its SKILL.md is about 2k 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 Architecture decision records and Design tokens. The licence is MIT.

When your agent uses it

  • The user says record this
  • Asks what has been decided so far — and when a design decision has just been made and should not be lost

Example prompts

  • “record this”
  • “add to design”
  • “document this”
  • “/design-tracker”

Requirements

  • Python 3

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Decide whether this is a design decision, and whether it is already
  2. Extract the decision from the conversation.
  3. Map it to a section and to that section's typed input key (table below).
  4. Write a per-invocation input JSON and run the shared writer (see Mechanical

What it can do on your machine

Read from SKILL.md and the folder at commit ef0d8f8. 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:

    • python3

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

  • Network

    No URLs in SKILL.md.

    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

Design Tracker loads about 2k tokens when it runs. Until then it costs about 74 tokens; SKILL.md has 886 words of instructions outside code blocks.

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

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 DeL-TaiseiOzaki/claude-code-orchestra at commit ef0d8f8, republished under its MIT licence (© DeL-TaiseiOzaki). 886 words, ~1,960 tokens.

Download SKILL.mdSave it as .claude/skills/design-tracker/SKILL.md (or your agent's skills folder).
name
design-tracker
description
Record a project design decision into .claude/docs/DESIGN.md through the shared typed writer. Use when the user says "record this", "add to design", "document this", "記録して", or asks what has been decided so far — and when a design decision has just been made and should not be lost.

Design Tracker Skill

Purpose

This skill keeps the project's 要件定義書 (.claude/docs/DESIGN.md) current. DESIGN.md is the macro requirements & design document (what the project builds and why); micro work progress lives in PROGRESS.md. It covers:

  • Background & purpose, scope
  • Functional & non-functional requirements
  • Architecture (including agent roles)
  • Tech stack choices and their rationale
  • Constraints, key decisions, and open questions

How This Skill Is Reached

Read this before relying on it: nothing in the repository activates this skill automatically. The description above is the entire trigger surface, and it works only through the runtime's own description-based skill selection.

  • Explicit request — "record this", "add to design", "update DESIGN", "記録して", /design-tracker. This is the reliable path.
  • Model invocation from the description, at the runtime's discretion. Claude Code discovers the skill through .claude/skills → .claude/skills; Codex through .codex/config.toml's path = ".claude/skills/design-tracker".
  • No hook mechanism. .claude/hooks/ contains no design-tracker branch, and the words a design conversation actually uses (設計 / design / architecture) are claimed by CODEX_TRIGGERS in agent-router.py, which injects a Codex consultation nudge instead. check-codex-before-write.py also nudges when DESIGN.md is edited, but it blocks nothing — a freehand edit still lands.

So an agent in a design conversation must decide to record the decision; no automation will decide for it. If a decision was made and this skill was not reached, record it at the next checkpoint — /checkpointing describes recording decisions via update_design.py for exactly that reason.

Previous versions of this file promised proactive, automatic activation ("Do NOT wait for user to ask"). That promise was enforced by nothing, so it has been removed rather than left as a false statement in a normative document.

Workflow

Recording Decisions
  1. Decide whether this is a design decision, and whether it is already recorded. Grep the target table (e.g. grep -n "^| " .claude/docs/DESIGN.md) instead of reading the whole document — the writer locates the table and heading itself.
  2. Extract the decision from the conversation.
  3. Map it to a section and to that section's typed input key (table below).
  4. Write a per-invocation input JSON and run the shared writer (see Mechanical Update).
Sections to Update

DESIGN.md uses these fixed sections (Japanese + English headings). Every target has a typed input key, so no markdown row is ever hand-written:

Conversation TopicTarget SectionInput keyFields
Project goals, problem, stakeholders## 背景・目的 (Background & Purpose)section_updatesheading, content (prose)
What is / isn't covered## スコープ (Scope) — In / Out of Scopesection_updatesheading, content (bullets)
A feature the system must provide## 機能要件 (Functional Requirements)requirementsid, requirement, priority, notes
Performance, security, availability, maintainability targets## 非機能要件 (Non-Functional Requirements)nfrcategory, requirement, metric
System structure, components, agent roles## アーキテクチャ (Architecture) — overview + Agent Roles tablesection_updates for the overview prose, agent_roles for the tableagent, role, responsibilities
Library / framework / infra choice + why## 技術選定 (Tech Stack & Rationale)tech_choicesarea, technology, rationale, alternatives
Hard limits (technical, org, compatibility)## 制約 (Constraints) bulletssection_updatesheading, content (bullets)
Why we chose X over Y (significant)## Key Decisionsdecisionsdecision, rationale, alternatives (the date is stamped by the writer)
Things to do later, unresolved questions## TODO / Open Questionssection_updatesheading, content (checklist)

The four prose sections have no typed key because they have no fixed shape — their content is a sentence or a bullet an agent writes, and there is no correct rendering for a script to own. Every section that does have a fixed shape (a table) has a typed key, and the writer refuses table rows passed through section_updates: it exits 2 naming the key you should have used, so the unescaped-cell and orphaned-row corruptions are now unreachable from this skill.

Choosing the section stays judgment. Rendering the row does not.

Show full SKILL.md (292 more words)Show less
Mechanical Update

Use a per-invocation input path, never a shared one: this skill can run concurrently with other work (and inside a subagent), and two recordings sharing one input file overwrite each other. Resolve the path from the shared workspace registry rather than deriving it by hand, so the slug rule is the same one every other skill uses:

bash
python3 .claude/skills/_shared/workspace.py \
  --skill design-tracker --title "{decision topic}" --create

That prints one JSON object whose paths.design_input is .claude/logs/design-input-{slug}.json. Use it verbatim as ${input} below. Exit 0 resolved/created · 1 bad args · 3 .claude/logs/ could not be created.

Example input (use only the keys you need):

json
{
  "decisions": [
    {"decision": "Use ReAct pattern", "rationale": "Better tool-use control", "alternatives": "Function calling only"}
  ],
  "tech_choices": [
    {"area": "Agent loop", "technology": "ReAct", "rationale": "Tool-use control", "alternatives": "Function calling only"}
  ],
  "section_updates": [
    {"heading": "## TODO / Open Questions", "content": "- [ ] Evaluate streaming support"}
  ]
}

Run dry-run, read the preview, then apply:

bash
python3 .claude/skills/_shared/update_design.py --input "${input}"
# Read the file named by preview_file in the JSON output, then:
python3 .claude/skills/_shared/update_design.py --input "${input}" --apply --require-change

Completion test. "ok": true alone is not it — a duplicate or empty entry used to return ok: true with result: "no-op" and exit 0 while nothing was written. Require all of:

  • result == "applied", and
  • decisions_appended > 0 or some rows_appended value > 0 or sections_updated non-empty.

Always report skipped_duplicates when it is non-zero — that is the honest "already recorded" answer. --require-change makes the writer enforce the same thing: a no-op becomes ok: false and exit 2, so "recorded" can never be reported for a run that wrote nothing.

Other exit codes: 1 bad arguments or input-schema violation · 2 DESIGN.md structure invalid or missing (run /init first), a duplicate requirement ID, a table row passed through section_updates, or a no-op under --require-change · 3 DESIGN.md changed while the writer held it, or the write failed — re-read and retry.

Output Format

When recording, report concisely:

  • What was recorded, and into which DESIGN.md section
  • The writer's result, the appended counts, and skipped_duplicates
  • Anything you decided not to record, and why

Language Rules

  • Reasoning / code examples: English
  • Document content: English (technical terms); Japanese descriptions are acceptable to match the existing 要件定義書 headings
  • Report to the user: per .claude/rules/language.md

© DeL-TaiseiOzaki, 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/design-tracker of DeL-TaiseiOzaki/claude-code-orchestra.

Open the folder on GitHubat commit ef0d8f8

Compare with similar skills

Design Tracker 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.

Design Tracker compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Design Tracker this skillDeL-TaiseiOzaki/claude-code-orchestra199—~2kAutomated safety check: PassMIT
Aceharness Spec CodingTheAceTeam/AceHarness105—~2.7kAutomated safety check: PassCustom licence
Design Tokensmobazha/mobazha-unified165—~2kAutomated safety check: PassMPL-2.0
Design Standardsrampstackco/claude-skills945—~2.4kAutomated safety check: PassMIT
Verifying Modulestelagod/code-abyss244—~431Automated safety check: NotesMIT
Form Tokensjeremylongshore/tons-of-skills-marketplace2.8k—~6.9kAutomated safety check: NotesMIT

Similar skills

  • Aceharness Spec Coding

    TheAceTeam/AceHarness

    ACEHarness Spec Coding skill for generating, reviewing, revising, and executing spec-first requirements/design/tasks artifacts tied to workflow steps.

    105 GitHub stars~2.7k tokensUpdated 1 mo ago
    DevelopmentAuto-check passed
  • Design Tokens

    mobazha/mobazha-unified

    Comprehensive design token system for Mobazha including color system, typography scale, spacing grid, border radius, elevation, and icon sizes.

    165 GitHub stars~2k tokensUpdated 7 days ago
    Frontend & DesignAuto-check passed
  • Design Standards

    rampstackco/claude-skills

    Apply production-grade design standards when building or reviewing pages, components, or UI.

    945 GitHub stars~2.4k tokensUpdated 4 days ago
    Frontend & DesignAuto-check passed
  • Verifying Modules

    telagod/code-abyss

    Scans directory structure, detects missing documentation, and verifies code-doc synchronization.

    244 GitHub stars~431 tokensUpdated 2 mo ago
    DevelopmentAuto-check: notes
  • Form Tokens

    jeremylongshore/tons-of-skills-marketplace

    A skill your agent uses when asked to define a design token system, create tokens, document tokens, set up CSS custom properties, build a Tailwind token config, establish a spacing scale, define…

    2.8k GitHub stars~6.9k tokensUpdated yesterday
    Frontend & DesignAuto-check: notes
  • Yoga Go Desktop UI

    chapar-rest/chapar

    Guides building desktop interfaces with the Yoga Go framework: Body views, layout nodes, widgets, dialogs and headless builds.

    714 GitHub stars~2.8k tokensUpdated 5 days ago
    DevelopmentAuto-check passed

More from DeL-TaiseiOzaki/claude-code-orchestra

All 15 skills in this repo
  • Codex System

    DeL-TaiseiOzaki/claude-code-orchestra

    Codex CLI handles planning, design, and complex code implementation.

    199 GitHub stars~4.2k tokensUpdated 20 days ago
    Auto-check passed
  • Feature

    DeL-TaiseiOzaki/claude-code-orchestra

    Unified feature planning & implementation skill — replaces the old /add-feature and /start-feature skills (both trigger phrases still apply here).

    199 GitHub stars~9.4k tokensUpdated 20 days ago
    Auto-check passed
  • Plan

    DeL-TaiseiOzaki/claude-code-orchestra

    Create a detailed implementation plan for a feature or task.

    199 GitHub stars~2.1k tokensUpdated 20 days ago
    Auto-check passed
  • Catchup

    DeL-TaiseiOzaki/claude-code-orchestra

    Comprehensive onboarding for new or returning contributors. An agent skill from DeL-TaiseiOzaki/claude-code-orchestra.

    199 GitHub stars~1.8k tokensUpdated 20 days ago
    Auto-check passed
  • Checkpointing

    DeL-TaiseiOzaki/claude-code-orchestra

    Save session activity, rebuild rolling PROGRESS.md, and compact stale working blocks in .claude/STATE.md.

    199 GitHub stars~1.8k tokensUpdated 20 days ago
    Auto-check passed
  • Context Loader

    DeL-TaiseiOzaki/claude-code-orchestra

    ALWAYS activate this skill at the start of every task. An agent skill from DeL-TaiseiOzaki/claude-code-orchestra.

    199 GitHub stars~1.3k tokensUpdated 20 days ago
    Auto-check passed

Questions about Design Tracker

What does Design Tracker do?

Record a project design decision into .claude/docs/DESIGN.md through the shared typed writer. Design Tracker is an agent skill from DeL-TaiseiOzaki/claude-code-orchestra.md through the shared typed writer.

When should I use Design Tracker?

Design Tracker fits situations like: the user says record this; asks what has been decided so far — and when a design decision has just been made and should not be lost.

How do I install Design Tracker in Claude Code?

Run `npx skills add DeL-TaiseiOzaki/claude-code-orchestra --skill design-tracker -a claude-code`. Or copy the skill folder (.claude/skills/design-tracker in DeL-TaiseiOzaki/claude-code-orchestra) into .claude/skills/design-tracker in your project. Claude Code loads it when a task matches its description.

How do I install Design Tracker in Codex?

Run `npx skills add DeL-TaiseiOzaki/claude-code-orchestra --skill design-tracker -a codex`. Or copy the skill folder (.claude/skills/design-tracker in DeL-TaiseiOzaki/claude-code-orchestra) into .agents/skills/design-tracker in your project. Codex loads it when a task matches its description.

Can I use Design Tracker 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 DeL-TaiseiOzaki/claude-code-orchestra --skill design-tracker -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/design-tracker, .gemini/skills/design-tracker, .github/skills/design-tracker and .opencode/skills/design-tracker in your project.

What does Design Tracker need to run?

Going by SKILL.md and its folder, Design Tracker needs the command-line tools its instructions call (python3). Our summary lists: Python 3.

Does Design Tracker access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Design Tracker 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 Design Tracker use?

Design Tracker 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 Design Tracker use?

About 2k tokens (SKILL.md is roughly 7.8k 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 Design Tracker?

Skills that share tags, products or a category with Design Tracker: Aceharness Spec Coding (TheAceTeam/AceHarness, 105 stars), Design Tokens (mobazha/mobazha-unified, 165 stars), Design Standards (rampstackco/claude-skills, 945 stars) and Verifying Modules (telagod/code-abyss, 244 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Design Tracker?

DeL-TaiseiOzaki (a GitHub user) maintains it in DeL-TaiseiOzaki/claude-code-orchestra, which has 199 GitHub stars. The repository holds 15 skills in this directory. The repository was last updated on September 20, 2026.

Source: DeL-TaiseiOzaki/claude-code-orchestra on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.