aidokitwiki

Documentation Standards

Purpose #

How docs are structured in this repo: specs, ADRs, wiki, READMEs, and CHANGELOG. Authoritative tone and structure rules.

Where docs live #

Kind Path Owner
Specs (normative) .docs/docs/specs/*.md Maintainers + reviewers
ADRs .docs/docs/architecture/decisions/NNNN-slug.md Author + maintainer
Vision / orientation .docs/README.md, .docs/ROADMAP.md, .docs/ARCHITECTURE.md Maintainers
Kit reference (v4) .docs/context/claude-workflow-kit-v4-* Maintainers
Wiki wiki/**/*.md All contributors
Top-level README.md, CHANGELOG.md, CONTRIBUTING.md, SECURITY.md, LICENSE, NOTICE, CLAUDE.md Maintainers
Per-package packages/*/README.md, packages/*/CHANGELOG.md Author of last change

Conventions #

RFC 2119 in specs #

MUST, MUST NOT, SHOULD, SHOULD NOT, MAY, REQUIRED — uppercase, normative meaning.

Source-of-truth ordering when sources conflict #

From CLAUDE.md §9.3:

  1. v4 kit base parts
  2. specs in .docs/docs/specs/
  3. ADRs
  4. README / ROADMAP / ARCHITECTURE
  5. predecessor kit versions
  6. Claude Code official docs (for Claude Code primitives)
  7. user instructions
  8. general knowledge

Path discrepancy: .docs/ on disk, docs/ published #

Design docs live under .docs/ (hidden) on disk. References in wiki pages should use .docs/... until the directory is flattened (CLAUDE.md §2).

CHANGELOG #

Keep a Changelog format. Sections: Added, Changed, Deprecated, Removed, Fixed, Security. Per-package CHANGELOGs are generated by Changesets at release time; the repo-root CHANGELOG.md carries the narrative pre-0.5 history and the curated overview going forward.

Markdown style #

> [!TODO] discipline #

If a fact is not derivable from the cited sources, write > [!TODO] Confirm with maintainer. Never fabricate. This is the discipline the wiki was generated under and the same one applies to subsequent updates.

ADR format #

Use the template at .docs/docs/architecture/decisions/0000-template.md. Required: Summary, Context, Decision, Consequences (Positive/Negative/Neutral), Alternatives considered (with Pros, Cons, Reason rejected), Implementation notes, Validation, References. See how-to-guides/how-to-write-an-adr.md.

Wiki page format #

Every wiki page follows:

# Page Title

## Purpose
Why this page exists.

## Big Picture
Plain-English summary, citing the .docs/ source.

## How It Works
Flow or process, grounded in the spec.

## Example
Realistic example using actual aidokit packages, commands, or files.

## Diagram
Mermaid diagram where useful.

## Common Mistakes
Tied to CLAUDE.md §8 anti-patterns or known footguns.

## Checklist
Practical checklist.

## Related Pages
Cross-links within the wiki + back to .docs/ source.

Not every page needs all sections. Diagrams and Examples are added when they genuinely help.

When the wiki contradicts the specs, the specs win #

The wiki is onboarding documentation. Normative claims live in .docs/docs/specs/ and ADRs. If a wiki page conflicts with a spec, update the wiki to match (or, if the wiki is right and the spec is stale, file a spec PR).

Cross-linking #

Prefer relative paths so links survive a future docs-site build. From a wiki/concepts/*.md page:

When to write what #

Kind of change Where it lands
New built-in skill packages/base-skills/src/files/skills/ + src/skills.ts; mirror in hand-built .claude/; CHANGELOG patch entry
New adapter or stack pack New packages/<name>/ + ADR + wiki page (reference/) + CHANGELOG minor entry
New MCP catalog entry packages/mcp-catalog/src/catalog.ts + spec §11 + wiki reference page; ADR if security-sensitive
New conformance check @aidokit/core + spec Appendix B (append-only) + wiki reference
Contract / runtime / distribution change ADR + spec update + wiki concept page