/create-docs
Create or update .meridian/docs/ knowledge files for a module or directory. Produces reference docs with frontmatter for context routing.
$ npx -y skills add markmdev/meridian --skill create-docs --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/create-docs
Context preview
The summary Claude sees to decide when to auto-load this skill.
Create or update .meridian/docs/ knowledge files for a module or directory. Produces reference docs with frontmatter for context routing.
SKILL.md
create-docs.SKILL.mdname: create-docs
description: Create or update .meridian/docs/ knowledge files for a module or directory. Produces reference docs with frontmatter for context routing.
Docs
Document a module so future agents (and humans) understand it without re-reading the code. Every doc must be worth the context window space it occupies.
Process
1. Scope
Identify the module or directory the user specified. Verify it exists. If ambiguous, clarify before proceeding.
2. Check existing docs
Search `.meridian/docs/` for docs already covering this area — grep for the module name, read matches. Understand what's documented, what's missing, what's stale.
3. Explore the module
Launch Explore agents to build deep understanding:
- **Entry points** — what starts execution? Exports, routes, handlers, CLI commands
- **Data flow** — what comes in, how it transforms, where it goes
- **Dependencies** — what this module uses, what depends on it
- **Patterns** — conventions, unusual approaches, implicit contracts
- **Gotchas** — non-obvious behavior that would trip someone up
- **Integration points** — connections to other modules, services, external APIs
Spawn multiple Explore agents in parallel for different aspects. Follow up on findings — expect 2+ rounds.
4. Identify topics
Each doc covers one topic a future agent would need. Split by topic, not by file. Common categories:
- **Architecture/overview** — how the module works as a whole
- **Integration guide** — external API, service, or cross-module connection
- **Non-obvious behavior** — gotchas, sharp edges, implicit contracts
- **Complex workflow** — multi-step process, state machine, async flow
Small modules might produce one doc. Large modules might produce three or four.
5. Write docs
For each topic, create a file in `.meridian/docs/`:
- **Filename**: kebab-case reflecting the topic (`billing-architecture.md`, `stripe-webhook-handling.md`)
- **Frontmatter**: `summary` (one line) and `read_when` (2-5 keywords matching task contexts where an agent would need this)
- **Content**: what it is, how it works, why it's designed this way, gotchas
- **References**: point at code with `file:line`, not code snippets (snippets go stale)
- **Length**: under ~100 lines per doc — if longer, split into multiple topics
If a doc already exists for a topic, update it. Don't create duplicates.
6. Validate `read_when` keywords
For each keyword, ask: "What would someone be doing when they need this?" Good keywords describe tasks, not topics:
- "modifying billing logic" — specific, matches real tasks
- "debugging webhook failures" — describes a situation
- "working with code" — too vague, matches everything
What NOT to document
- Function signatures and parameter lists — that's what code is for
- What the code already says clearly — focus on the non-obvious
- Every file in the module — only what's worth context window space
- Style or formatting conventions — that's for linters and CLAUDE.md
Checklist
- [ ] Every doc has `summary` and `read_when` frontmatter?
- [ ] `read_when` keywords match real task contexts?
- [ ] Content is non-obvious knowledge, not code restated in English?
- [ ] File:line references instead of code snippets?
- [ ] Each doc covers one focused topic?
- [ ] Existing docs updated rather than duplicated?
Read more
name: create-docs description: Create or update .meridian/docs/ knowledge files for a module or directory. Produces reference docs with frontmatter for context routing.
Docs
Document a module so future agents (and humans) understand it without re-reading the code. Every doc must be worth the context window space it occupies.
Process
1. Scope
Identify the module or directory the user specified. Verify it exists. If ambiguous, clarify before proceeding.
2. Check existing docs
Search `.meridian/docs/` for docs already covering this area — grep for the module name, read matches. Understand what's documented, what's missing, what's stale.
3. Explore the module
Launch Explore agents to build deep understanding:
- **Entry points** — what starts execution? Exports, routes, handlers, CLI commands
- **Data flow** — what comes in, how it transforms, where it goes
- **Dependencies** — what this module uses, what depends on it
- **Patterns** — conventions, unusual approaches, implicit contracts
- **Gotchas** — non-obvious behavior that would trip someone up
- **Integration points** — connections to other modules, services, external APIs
Spawn multiple Explore agents in parallel for different aspects. Follow up on findings — expect 2+ rounds.
4. Identify topics
Each doc covers one topic a future agent would need. Split by topic, not by file. Common categories:
- **Architecture/overview** — how the module works as a whole
- **Integration guide** — external API, service, or cross-module connection
- **Non-obvious behavior** — gotchas, sharp edges, implicit contracts
- **Complex workflow** — multi-step process, state machine, async flow
Small modules might produce one doc. Large modules might produce three or four.
5. Write docs
For each topic, create a file in `.meridian/docs/`:
- **Filename**: kebab-case reflecting the topic (`billing-architecture.md`, `stripe-webhook-handling.md`)
- **Frontmatter**: `summary` (one line) and `read_when` (2-5 keywords matching task contexts where an agent would need this)
- **Content**: what it is, how it works, why it's designed this way, gotchas
- **References**: point at code with `file:line`, not code snippets (snippets go stale)
- **Length**: under ~100 lines per doc — if longer, split into multiple topics
If a doc already exists for a topic, update it. Don't create duplicates.
6. Validate `read_when` keywords
For each keyword, ask: "What would someone be doing when they need this?" Good keywords describe tasks, not topics:
- "modifying billing logic" — specific, matches real tasks
- "debugging webhook failures" — describes a situation
- "working with code" — too vague, matches everything
What NOT to document
- Function signatures and parameter lists — that's what code is for
- What the code already says clearly — focus on the non-obvious
- Every file in the module — only what's worth context window space
- Style or formatting conventions — that's for linters and CLAUDE.md
Checklist
- [ ] Every doc has `summary` and `read_when` frontmatter?
- [ ] `read_when` keywords match real task contexts?
- [ ] Content is non-obvious knowledge, not code restated in English?
- [ ] File:line references instead of code snippets?
- [ ] Each doc covers one focused topic?
- [ ] Existing docs updated rather than duplicated?
Meridian makes Claude Code more reliable on real projects. It adds persistent project context, smarter session handoff, and lightweight workflow enforcement so Claude is less likely to lose the plot halfway through a long task.
Other skills on meridian.
- /add-frontmatter
Scan all .md files in the project and add or fix YAML frontmatter (summary + read_when) so they can be discovered by context routers like Reflex.
Open skill - /error-audit
Audit code for silent error swallowing, fallbacks to degraded alternatives, backwards compatibility shims, and UI that fails to show errors to the user. Finds and fixes all occurrences in the specified scope.
Open skill - /observability-audit
Audit code for observability gaps — debug logs left in, errors caught without being logged, missing context on log entries, untracked slow operations. Uses the app's existing observability tooling exclusively.
Open skill - /planning
Interview-driven planning methodology that produces implementation-ready plans. Always use this skill INSTEAD of EnterPlanMode — it provides structured interviewing (20-40 clarifying questions), exhaustive parallel codebase exploration (5-15 Explore agents), verbatim
Open skill - /ux-states-audit
Audit UI code for missing loading states, empty states, and error states. Every async operation and data-driven UI must handle all three. Finds gaps and implements the missing states using the app's existing patterns.
Open skill

