shirabe
CLAUDE.md0 starsChanged 28 days agoApache-2.0View on GitHub
Structured workflow skills for AI coding agents. Powered by koto for structural enforcement. Content must not reference private repos, internal resources, or pre-announcement features. Terms shirabe uses as its own terms of art, which the writing-style rules must not fire on. Tier 1-4 is the decision-complexity vocabulary of docs/designs/current/DESIGN-decision-framework.md; journey is a required section heading in shirabe's own BRIEF format, so the rulebook fires against the repo that wrote it. underscore is banned in its verb sense (to underscore a…
In this repository23 other files it gives its agents.
- AGENTS.mdAGENTS.md
- briefSkill
- charterSkill
- compSkill
- coordinateSkill
- decisionSkill
- deliverSkill
- designSkill
- executeSkill
- exploreSkill
- inflightSkill
- planSkill
- prdSkill
- private-contentSkill
- public-contentSkill
- releaseSkill
- review-planSkill
- roadmapSkill
- scopeSkill
- strategySkill
- visionSkill
- work-onSkill
- writing-styleSkill
The file
We split this CLAUDE.md into the rules it gives an agent
6 rules. About 0 are common, 4 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 31
When running /explore or /plan here:
- Distinctive: line 191
No emojis in code or committed documentation
- Distinctive: line 192
Never add AI attribution or co-author lines to commits or PRs
- Distinctive: line 208
Anti-pattern (do not repeat): do NOT add a CLI subcommand that renders or creates an artifact body.
- Very specific: line 220
Every shirabe skill keeps its intermediate state in koto sessions, under the convention in references/skill-session-convention.md.
- Very specific: line 239
When creating or updating a shirabe skill that calls koto (koto init, koto next, koto context, koto decisions, etc.), consult …
≈ “Common” is an estimate: at least 1 in 5 of the 26,980 CLAUDE.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
shirabe
Structured workflow skills for AI coding agents. Powered by koto for structural enforcement.
Repo Visibility: Public
Content must not reference private repos, internal resources, or pre-announcement features.
Prose Vocabulary: tier, journey, underscore
Terms shirabe uses as its own terms of art, which the writing-style rules
must not fire on. Tier 1-4 is the decision-complexity vocabulary of
docs/designs/current/DESIGN-decision-framework.md; journey is a required
section heading in shirabe's own BRIEF format, so the rulebook fires against
the repo that wrote it. underscore is banned in its verb sense (to
underscore a point) and shirabe uses the noun constantly, for the _
character in filenames and YAML scalars; a matcher cannot tell those apart,
so the term is declared rather than the rule weakened.
Declared here rather than exempted in code, so shirabe uses the same
mechanism an adopting repository uses. Suppression is term-scoped and does
not extend to variants: tier does not suppress tiered. A repository with
no declaration receives findings for every term, and writing a declaration
is an adopter's first action. The rules themselves live in
skills/writing-style/rules.yaml.
Planning Context: Tactical
When running /explore or /plan here:
- Issues represent implementation-level work items
- Designs are scoped to this repo
Release Notes Convention: docs/guides/
Release notes for shirabe land under docs/guides/. The release
workflow targets that directory when emitting per-version notes
and adopter-facing migration guides; the header parallels the
other CLAUDE.md convention headers (Repo Visibility, Planning
Context) so the validator's FC-CONVENTIONS check can find it. See
references/fixes/claude-md-conventions.md for the canonical
header format and the cross-references to the other convention
headers.
PR Grouping Policy: coarsest-legal
The default PR-grouping policy for a coordinated multi-repo effort:
one PR per repository (the coarsest legal unit). A repo splits into
more than one PR only on a recorded trigger. This is a durable
workspace preference, resolved flag > CLAUDE.md-header > default;
the default is coarsest-legal. The header parallels the other
convention headers (Repo Visibility, Planning Context, Release Notes
Convention) so a reader finds the grouping policy in the same place.
The triggers and the rule's semantics are single-sourced in
references/coordination-strategy.md (Coarsest-Legal-Grouping Rule);
this header sets the preference, it does not restate the rule.
Reviewability Ceiling: default
The configured reviewability ceiling for a coordinated effort: the
size at which a single per-repo PR becomes too large to review and
the grouping splits it. This is a durable workspace preference,
resolved flag > CLAUDE.md-header > default; default defers to
the ceiling defined in references/coordination-strategy.md. Set a
concrete value here to override. Exceeding the ceiling is one of the
recorded split triggers named in that contract's
Coarsest-Legal-Grouping Rule; this header configures the threshold,
it does not restate the trigger.
Artifact Lifecycle: per-skill
shirabe artifacts follow a three-rule lifecycle model. Durable
artifacts stay in docs/ after completion and serve as the audit
trail (BRIEF, PRD, DESIGN, VISION, STRATEGY, COMP). Working
artifacts retire on completion — they exist while their job is in
flight and the cascade deletes them when a documented completion
condition holds (PLAN, ROADMAP). Each working-artifact skill names
its completion condition in its own SKILL.md ## Artifact Lifecycle
section, which is the authoritative source for the rule. See the
per-skill sections (skills/<name>/SKILL.md) for the contract
each artifact type binds to.
Artifact Types and When to Use Them
shirabe recognizes seven artifact types across two altitude bands. Reach for the one whose altitude matches your conversation:
- VISION (long-term aspiration, years). Captures WHY a project should exist — thesis, audience, value proposition, org fit. Use when defining or revising a project's long-term identity.
- STRATEGY (medium-term defensibility, quarters to a year or two). Operationalizes a piece of an upstream VISION. Captures what we are betting on, the pieces that have to land for the bet to hold, who else has to move, and what would say it was the wrong call. Use when the work needs medium-term framing without re-justifying the long-term thesis (VISION) and isn't ready for sequenced feature decomposition (ROADMAP).
- ROADMAP (sequenced features). Lists what gets built and in what order, with dependencies between features, and stands as the place anyone reads how far along the work is. One feature is enough; there is no two-feature floor.
- BRIEF (feature framing). Captures a single feature's problem, outcome, user journeys, and scope boundary before requirements exist. Use when a feature is named and its framing has not been written down anywhere durable — including when an issue or a conversation already states the problem, since that source is ephemeral and the BRIEF is the record. Reach for a PRD once the framing is settled and you need to capture requirements.
- PRD (requirements). Captures WHAT a feature does and WHY, user-facing.
- DESIGN (architecture). Captures HOW a feature is built — the
technical approach, trade-offs, components. Use when the
requirements are already settled; a feature that still has to be
worked out from scratch enters at
/scope. - PLAN (execution). Decomposes a design into atomic implementable issues with a dependency graph.
The pipeline runs VISION → STRATEGY → ROADMAP → BRIEF → PRD → DESIGN → PLAN, though authors enter at whichever altitude matches the conversation they need to have. BRIEF is the newest artifact type and sits between ROADMAP and PRD on the tactical chain; use it to frame a feature's problem, outcome, journeys, and scope before writing requirements.
/comp (competitive analysis) is a private-only artifact type
outside the main pipeline. Reach for it when you need to survey
competitors along explicit dimensions, find concrete gaps, and turn
those findings into implications for our own choices — distinct from
a PRD (what one feature does), a BRIEF (a single feature's framing),
or a DESIGN (technical architecture). Because COMP content is
competitive, the artifact is private-only: invoked in a public repo,
/comp warns and emits [/comp] WARNING <topic>: visibility=public,
redirecting the author to a public BRIEF or PRD that references the
competitive question without containing the analysis. The same
private-only contract is enforced at validation time by the R9 check.
Strategic Chain Entry: /charter
/charter is a parent skill that walks an author through the
strategic chain (VISION → STRATEGY → ROADMAP) as a single
conversation, holding state across child boundaries and producing
a durable STRATEGY as its terminal artifact. A full run also
produces a ROADMAP — /roadmap fires on every chain unless the
author declines it — but that ROADMAP is a working artifact that
drives work rather than recording it, which is why the STRATEGY is
the one the chain is named for. Use it when the conversation needs
strategic framing decided in one sitting rather than reached for
child-skill at a time.
Reach for /charter when the question in front of the author is
bigger than one feature and nothing above it is written down:
whether a body of work is worth doing at all, which of several
candidates come first and in what order, or what the bet behind a
quarter's work actually is. A request for a rollout order where
nobody has said why the work matters lands here too — sequencing
on its own produces an order with no bet behind it.
Direct invocation is /charter <topic-slug> (the topic slug
matches the pattern ^[a-z0-9-]+$). The child skills /vision,
/strategy, and /roadmap remain directly invocable for an author
who wants only the thesis, only the bet, or only the sequence — but
reaching for one of them because a conversation sounds strategic
usually lands back here.
Tactical Chain Entry: /scope
/scope is a parent skill that walks an author through the
tactical chain (BRIEF → PRD → DESIGN → PLAN) as a single
conversation, holding state across child boundaries and producing
a PLAN as its terminal artifact. Use it when the conversation
needs feature scope decided in one sitting rather than reached
for child-skill at a time.
Reach for /scope whenever a feature has to be built, added, or
redesigned and its requirements are not already written down —
including when nobody uses the word "scope", and including a
request for a single document, since the chain decides per hop
which documents survive. Deciding a feature by starting to code it
is the failure this entry point exists to prevent.
Direct invocation is /scope <topic-slug> (the topic slug
matches the pattern ^[a-z0-9-]+$). The child skills /brief,
/prd, /design, and /plan remain directly invocable on their
own for authors who already know which altitude they want.
Conventions
- Recipe names: kebab-case
- Conventional commits:
feat:,fix:,docs:,chore: - No emojis in code or committed documentation
- Never add AI attribution or co-author lines to commits or PRs
CLI Surface: author with skills, check with validate
shirabe's CLI splits two jobs cleanly, and new work must respect the split:
- Artifacts are authored by skills, not by CLI subcommands. The agent
writes the doc from the skill's prose and templates. There is no
create/rendersubcommand for any artifact type — noshirabe brief,shirabe prd,shirabe design, and so on. The skill owns the body. shirabe validateis the feedback/correctness engine. It tells the agent what to fix and why. New correctness rules belong here as checks or modes (e.g.--lifecycle,--merge-gate,--coordination-body), never in a renderer.- Lifecycle moves go through
shirabe transition/finalize-chain.
Anti-pattern (do not repeat): do NOT add a CLI subcommand that renders or
creates an artifact body. Rendering a body is authoring, and authoring belongs
in a skill. Compiled CLI logic is justified only for deterministic
validation/feedback and gh-backed live checks. The worked example is the
coordination PR body: it is skill-authored from
references/coordination-strategy.md and checked by shirabe validate
(--coordination-body statically, --merge-gate live). An earlier iteration
shipped a shirabe coordination create/status/sync subcommand that rendered
the body; it was removed for exactly this reason.
Intermediate Storage
Every shirabe skill keeps its intermediate state in koto sessions, under the
convention in references/skill-session-convention.md. koto context stores the
workflow's artifacts with the review and traceability they need, and nothing
intermediate lands in git history. No rule tells a workflow to use the
wip/ staging folder. A committed document still cites no staging path;
references/wip-hygiene.md keeps that rule.
The rule:
- Every workflow uses koto context (
koto context add) for every artifact that should be reviewable or traceable downstream. - Agent-side scratch when assembling content for koto context can
use any on-disk location, but the file must either be explicitly
deleted after
koto context addsucceeds, or live in an auto-wiped location (/tmp/,$TMPDIR,mktemp-produced paths). The invariant: no persistent on-disk shadow of koto-managed content.
Authoring koto-using Skills
When creating or updating a shirabe skill that calls koto (koto
init, koto next, koto context, koto decisions, etc.), consult
/koto-skills:koto-author before prescribing the integration pattern.
The author skill points at koto's canonical references (cli-usage,
custom-skill-authoring, template format) and surfaces idioms that
aren't obvious from reading existing shirabe skills alone. Several
shirabe-side mistakes (over-eager on-disk staging; assumptions about
which env vars are auto-set in the plugin loader) would have been
avoided by checking these references first.
Deciding whether koto should run a command itself, rather than asking the
agent to run it in prose, is a separate question with its own answer:
references/default-action-conversion.md carries shirabe's rule, the
authoring constraints this repo's own linter and templates impose, and
pointers to the states that are already converted. Read it before adding a
default_action to any template, and before writing a new mechanical step
into one.
Whether your skill's koto next calls carry --no-cleanup is a third such
question, and getting it wrong destroys the run's own record at a success
terminal. references/koto-session-retention.md carries that rule, the
koto behaviour behind it — including that a tick does not stop at the state it
routes to — and the position each existing skill takes. Read it before writing
a skill's koto loop, not after.
Skill Evals
Whenever a skill is created or updated, create or update its scenarios in
skills/<name>/evals/evals.json. The pull request doesn't run them: its
definition of done is scripts/check-skill.sh --changed <skill> (see
.claude/shirabe-extensions/README.md), which checks the scenarios' shape
along with the skill's Markdown, templates and the script suites the change
touches. CI runs every suite.
The evals run in the release precondition. /shirabe:release runs the eval
check declared in .claude/shirabe-extensions/release.md on every skill
changed since the last tag and stops on a pass-rate drop.
For a local run, use scripts/run-evals.sh <skill>. It invokes claude -p
with the skill-creator plugin to execute each scenario and grade it, so run it
from a session that has /skill-creator available.
Directory Structure
shirabe/
├── skills/ # Claude Code workflow skills
├── koto-templates/ # Koto YAML workflow templates
├── .github/workflows/ # Reusable CI validation workflows
├── .claude-plugin/ # Plugin manifest and marketplace entry
└── docs/ # Documentation and guidesDoes it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

