NOT auto-invoked. Shared documentation-canon hub for the aidex-* family — holds the .context/ convention references (references/*.md) that the single-purpose sibling skills delegate into. Routing — plan multi-step work → plan; record a decision/ADR → decision; capture a stakeholder/client request → request; investigate/research how something works → research; document a settled system reference → reference; defer/park an idea for later → backlog; capture/draft a communication received or to s...
Pro scans all 20 files and shows the line behind each finding
Scanned 9/29/2026
npx -y skills add yacb2/aidex --skill conventions --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Conventions?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/yacb2-conventions)More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.
---
name: conventions
description: NOT auto-invoked. Shared documentation-canon hub for the aidex-* family — holds the .context/ convention references (references/*.md) that the single-purpose sibling skills delegate into. Routing — plan multi-step work → plan; record a decision/ADR → decision; capture a stakeholder/client request → request; investigate/research how something works → research; document a settled system reference → reference; defer/park an idea for later → backlog; capture/draft a communication received or to send → comm; check a skill against house conventions → skill. This skill is the canon home, not an entry point; the siblings are the entry points.
disable-model-invocation: true
user-invocable: false
---
# Documentation Standards
> **Canon hub — NOT model-invoked (`disable-model-invocation: true`).** This
> skill is no longer an entry point. It exists to **own and host the shared
> `.context/` convention canon** in `references/*.md`, which the single-purpose
> sibling skills read and delegate into. To actually create an artifact, the
> matching sibling fires: planning → **plan**, decisions →
> **decision**, requests → **request**, research →
> **research**, references → **reference**, skill-conventions
> checks → **skill**. Everything below is the canon index, not an
> active workflow.
Standards for consistent documentation structure in Claude Code projects.
## Overview
This skill defines conventions for thirteen documentation types:
| Type | Purpose | Structure |
|------|---------|-----------|
| **References** | Project-specific guides (deployment, architecture) | Numbered files (`00-index.md`, `01-topic.md`) |
| **Docs** | Library/dependency documentation | Same as references |
| **Skills** | Claude capability extensions | `SKILL.md` + `references/`, <500 lines, tested triggers, gotchas, behavioral evals via `skill-creator` |
| **Plans** | Multi-session implementation tracking | Phases with checkboxes |
| **Requests** | Incoming tasks and product requirements | Single dated file |
| **Decisions** | Architecture/product decision records | Single dated file with context, options, outcome |
| **Backlog** | Deferred/parked ideas queued for later | Single dated file (`YYYY-MM-DD-bl-nnn-<slug>.md`) |
| **Research** | Investigation/spike notes captured before planning | Numbered files in a dated topic folder |
| **Audits** | State-of-project catalogs with inventory + dated runs | `<methodology>/` with `00-inventory.md` + `00-methodology.md` + `00-changelog.md` + `YYYY-MM-DD-<slug>/` runs |
| **Communications** | Log of emails/messages/calls/meetings received, sent, or held | `{received,sent,meetings}/<YYYY-MM-DD>-<slug>/body.md` (native language) |
| **Loops** | Agentic loop-specs (goal + stop condition + engine) | Single dated file, via `loop` |
| **Worktrees** | Per-project worktree/isolation procedure | Evergreen `worktrees/00-index.md`, via `worktree` |
| **CLAUDE.md** | Project context for Claude | Concise knowledge base |
## Quick Reference
**This table is a dispatch table, not a reading list.** Find the row for the artifact
kind you are about to write or judge, and **read that one file in full before writing
anything** — the files live in `${CLAUDE_PLUGIN_ROOT}/skills/conventions/references/`. There
is no always-on summary any more (the `rules/` folder retired with the plugin migration):
this skill carries the recognition itself, and the sibling entry-point skills' own
descriptions are what fire on a `.context/` ask. [`00-global.md`](references/00-global.md)
is the recognition surface — read it to know *that* a convention applies — and the per-type
file below is the application surface: it owns the front-matter schema, the status
vocabulary and the archive rule that `validate.py` actually enforces.
| Type | Conventions |
|------|-------------|
| Global rules (all types) | [00-global.md](references/00-global.md) |
| Reference module | [reference-conventions.md](references/reference-conventions.md) |
| Skill | [skill-conventions.md](references/skill-conventions.md) |
| Skill trigger evals | [skill-trigger-eval-methodology.md](references/skill-trigger-eval-methodology.md) |
| Implementation plan | [plan-conventions.md](references/plan-conventions.md) |
| Request / Decision | [request-decision-conventions.md](references/request-decision-conventions.md) |
| Audit | [audit-conventions.md](references/audit-conventions.md) |
| Communication | [communication-conventions.md](references/communication-conventions.md) |
| Autonomy (proceed vs. pause) | [autonomy-conventions.md](references/autonomy-conventions.md) |
| Database lifecycle (real vs. disposable) | [database-protection.md](references/database-protection.md) |
| Worktrees & isolation (parallel work) | [worktree-conventions.md](references/worktree-conventions.md) |
| Worklist (run-queue) | [worklist-conventions.md](references/worklist-conventions.md) |
| Workflow CORE (single-sourced blocks) | [workflow-core.md](references/workflow-core.md) |
| Review scope (what am I reviewing?) | [review-scope-conventions.md](references/review-scope-conventions.md) |
| Between-unit checkpoint (review · commit · defer · handoff) | [checkpoint-conventions.md](references/checkpoint-conventions.md) |
| Human verification (what only a person can judge) | [human-verification-conventions.md](references/human-verification-conventions.md) |
| Measurement (machine load, unattended stop conditions) | [measurement-conventions.md](references/measurement-conventions.md) |
| Library docs | Uses reference conventions |
| CLAUDE.md | [claudemd-conventions.md](references/claudemd-conventions.md) |
## Migrating an existing `.context/` to the unified canon
For a project that pre-dates these conventions — mixed `YYYYMMDD-` filenames, missing
front-matter, legacy status terms, no roll-up indexes — **read**
`${CLAUDE_PLUGIN_ROOT}/skills/conventions/references/migration-guide.md` **and follow it**.
It holds the `migrate-conventions.py` invocation and its dry-run-by-default contract,
what the migration does and deliberately does not restructure, the manual-review cases
it declines out loud, and the separate backfill for `plans/00-index.md` and
`audits/00-index.md` including the safety rule that a hand-made index is skipped, not
clobbered.
## Core Principles
### Progressive Disclosure
1. **Index/overview first** - Always visible, provides navigation
2. **Detailed modules** - Loaded as needed
3. **Cross-references** - Enable discovery without bloating context
### Front-matter
Every file-based artifact carries the D-07 minimum ([`00-global.md` §7](references/00-global.md#7-front-matter-minimum-d-07)) — the four fields `validate.py` requires:
```yaml
---
title: "Human-readable, quoted"
status: <per-type vocabulary>
created: YYYY-MM-DD
updated: YYYY-MM-DD
---
```
### Cross-References
Use relative markdown links with anchors:
```markdown
[Description](./NN-filename.md#section-anchor)
```
### Language
Language is **scoped by artifact kind** (see [`00-global.md` §4](references/00-global.md#4-language-d-04)):
- **Knowledge artifacts → English (always):** plans, decisions, requests, research, references, docs, audits, backlog, loops, CLAUDE.md, and skill prose. This keeps cross-project uniformity and skill matching predictable.
- **Communications → the language of the communication:** `communications/` bodies follow the interlocutor's language (never translate a Spanish client email to English). Front-matter keys stay English; values are as-is. See [communication-conventions.md](references/communication-conventions.md).
- **Code + code comments → English** (unchanged).
Skill **descriptions** stay English-only regardless (D-11). The assistant continues to *reply* in the user's spoken language; only the written artifacts above are constrained.
## Canonical File Locations
| Type | Location | Naming |
|------|----------|--------|
| Global skills | `${CLAUDE_PLUGIN_ROOT}/skills/<name>/` | kebab-case |
| Project skills | `.claude/skills/<name>/` | kebab-case |
| Shared skills (aidex) | `${CLAUDE_PLUGIN_ROOT}/skills/<name>/` | kebab-case |
| Plans | `.context/plans/` | `YYYY-MM-DD-<feature>.md` or `YYYY-MM-DD-<feature>/` |
| Issues | `.context/issues/` | `ISSUE-NNN-description.md` + `00-index.md` |
| Roadmap | `.context/roadmap/` | `README.md` + `NN-phase-name.md` |
| Requests | `.context/requests/` | `YYYY-MM-DD-description.md` + `_archive/` |
| Decisions | `.context/decisions/` | `YYYY-MM-DD-description.md` + `_archive/` |
| Backlog | `.context/backlog/` | `YYYY-MM-DD-bl-nnn-<slug>.md` + `_archive/` |
| Research | `.context/research/` | `<topic>/` with numbered files (`00-index.md`, `01-*.md`) |
| Audits | `.context/audits/` | `<methodology>/` with `00-inventory.md` + `00-methodology.md` + `00-changelog.md` + `YYYY-MM-DD-<slug>/` |
| Communications | `.context/communications/` | `{received,sent,meetings}/<YYYY-MM-DD>-<slug>/body.md` |
| Global references | `~/.context/references/<topic>/` | Numbered (00-index.md, 01-*.md) |
| Project references | `.context/references/<topic>/` | Numbered |
| Library docs | `.context/docs/<library>/` | Numbered |
| Global CLAUDE.md | `~/.claude/CLAUDE.md` | - |
| Project CLAUDE.md | `./CLAUDE.md` or `.claude/CLAUDE.md` | - |
> **Resolution:** Project-level skills override global skills of the same name. When updating a skill, verify its location first.
## When to Use Each Type
### References
Project-specific multi-step guides: deployment procedures, architecture documentation, setup/configuration guides, operational runbooks.
**Characteristics:** Numbered files, sequential or modular organization, verification steps.
### Docs
Library or dependency documentation: API reference, integration guides, framework-specific patterns.
**Characteristics:** Same as references, focused on external tools.
### Skills
Claude capability extensions: domain expertise, workflow automation, tool integrations.
**Characteristics:** SKILL.md entry point, references/ for details, <500 lines, negative triggers in description, testing & validation guidance.
### Plans
Complex multi-session work: feature implementations, large refactoring projects, migration tasks.
**Characteristics:** Checkboxes for tracking, phases, exact file paths.
### CLAUDE.md
Project context: tech stack overview, critical conventions, links to detailed docs.
**Characteristics:** Concise (<300 lines), reference-focused.
### Requests
Incoming tasks, product requirements, or change requests from stakeholders. A request is a **single document** — if it needs deeper analysis, escalate to a plan or research.
**Characteristics:** Dated file, origin (who asked), description, priority/urgency, outcome (became plan, dropped).
### Decisions
Architecture or product decision records. Documents **what** was decided, **why**, what alternatives were considered, and the outcome. Prevents revisiting the same debates.
**Characteristics:** Dated file, context/problem, options considered, decision taken, rationale, status (accepted/superseded/dropped).
### Audits
State-of-project catalogs. An audit describes what **is** (findings, gaps, risks, opportunities), distinct from plans which describe what **will be**. Every finding lives in a canonical `00-inventory.md` and is referenced (not copied) from per-run `findings.md` views.
**Characteristics:** per-methodology `00-inventory.md` as source of truth, `00-methodology.md` as living playbook with `00-changelog.md`, dated per-run folders (`YYYY-MM-DD-<slug>/`), ready-made playbooks (ux, ai-opportunities, retest, security, perf, a11y, hitl, test-coverage, docs-coverage, rule-ablation).
Audits differ from issues (already-triaged and scoped to fix) and from plans (active work). Scaffolding and validation belong to the `audit` skill.
### Backlog
Deferred or parked ideas: work the team intends to do later but is not acting on now. A backlog entry captures the idea, why it is deferred, and what would trigger picking it up — created via the `backlog` skill.
**Characteristics:** Single dated file, `status` lifecycle (`open` → `doing` → `done`/`dropped`), priority, optional link to the plan or loop-spec that picks it up.
### Research
Investigation or spike notes captured before a plan or implementation exists: how something works, what the options are, what an experiment found — created via the `research` skill.
**Characteristics:** Numbered files in a dated topic folder (`<topic>/00-index.md`, `01-*.md`), findings referenced (not duplicated) by later plans/decisions.
### Communications
A log of emails, WhatsApp messages, calls, and meetings — received from or sent to a stakeholder/client, or held synchronously — captured so the thread is searchable and cross-linkable to plans/decisions/requests. Created via the `comm` skill.
**Characteristics:** `{received,sent,meetings}/<YYYY-MM-DD>-<slug>/body.md` (attachments alongside; synchronous records live in `meetings/` with a `participants` list instead of `direction`/`from`/`to`), front-matter (`channel`, `direction`, `from`/`to`, `subject`, `date`, `status` for the sent side, `related: []`, `created`, `updated`). Body text is in the **native language of the communication** — communications are exempt from the English-only rule (front-matter keys stay English). See [communication-conventions.md](references/communication-conventions.md).
### Plan: Modular vs Single-File
**Single-file** (default):
- Up to 4 phases
- Less than 20 tasks total
- Small-medium project
**Multi-file** (directory with 00-index.md):
- 5+ phases
- 20+ tasks
- Large or multi-layer project (backend + frontend + infra)
- Phases executed by different sessions/teammates
## Workflow Integration
conventions provides structural conventions for documentation. To create or validate documentation:
- **Plans:** Read [plan-conventions.md](references/plan-conventions.md), follow the template, save to `.context/plans/`
- **Skills:** Read [skill-conventions.md](references/skill-conventions.md), follow the template
- **References/Docs:** Read [reference-conventions.md](references/reference-conventions.md), follow numbered file structure
- **Requests/Decisions:** Read [request-decision-conventions.md](references/request-decision-conventions.md), follow the template
- **Audits:** Read [audit-conventions.md](references/audit-conventions.md); for scaffolding and validation, delegate to the `audit` skill
- **CLAUDE.md:** Read [claudemd-conventions.md](references/claudemd-conventions.md), validate against conventions
Complementary skills (e.g., skill-creator for behavioral testing, TDD workflows) can extend these conventions with execution tracking.
## Syncing Documentation
When documentation needs updating from official sources:
**For skills:** Extract version + Resources section from SKILL.md → resolve Context7 library ID → fetch latest → compare → report changes → apply with approval.
**For references (code-based):** Compare documented file paths and code snippets against actual project code → flag drift.
**For docs (library-based):** Compare documented library version against package.json/pyproject.toml → detect minor/feature/major version changes → incremental sync or full regeneration.
## Related
- **Auditing and fixing:** Use the `aidex` skill (`/aidex:aidex`) for ecosystem audits and automated fixes
- **Agent definitions:** `aidex` skill contains the subagent specifications used during audits
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!