incitaciones 0.2.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/README.md +57 -0
  2. package/content/distilled/close/SKILL.md +68 -0
  3. package/content/distilled/create-issues/SKILL.md +10 -0
  4. package/content/distilled/implement-documentation/SKILL.md +29 -0
  5. package/content/distilled/implement-documentation/references/anti-patterns.md +35 -0
  6. package/content/distilled/implement-documentation/references/diataxis-implementation.md +31 -0
  7. package/content/distilled/implement-documentation/references/templates.md +115 -0
  8. package/content/distilled/implement-documentation/references/tooling-comparison.md +46 -0
  9. package/content/distilled/implement-documentation/references/versioning.md +31 -0
  10. package/content/distilled/issue-review/SKILL.md +5 -4
  11. package/content/distilled/issue-review/references/pass-0-preflight.md +37 -0
  12. package/content/distilled/next/SKILL.md +54 -0
  13. package/content/distilled/park/SKILL.md +98 -0
  14. package/content/distilled/renew/SKILL.md +164 -0
  15. package/content/distilled/research-documentation/SKILL.md +29 -0
  16. package/content/distilled/research-documentation/references/checklist.md +58 -0
  17. package/content/distilled/research-documentation/references/llm-readiness.md +43 -0
  18. package/content/distilled/research-documentation/references/metrics.md +42 -0
  19. package/content/distilled/research-documentation/references/report-template.md +42 -0
  20. package/content/distilled/review-documentation/SKILL.md +49 -0
  21. package/content/distilled/review-documentation/references/ai-readiness-criteria.md +38 -0
  22. package/content/distilled/whisper/SKILL.md +83 -0
  23. package/content/distilled/whisper/references/check.md +33 -0
  24. package/content/distilled/whisper/references/decommission.md +53 -0
  25. package/content/distilled/whisper/references/init.md +103 -0
  26. package/content/distilled/whisper/references/link.md +70 -0
  27. package/content/distilled/whisper/references/status.md +49 -0
  28. package/content/manifest.json +458 -11
  29. package/package.json +2 -1
  30. package/pi-package/prompts/close.md +10 -0
  31. package/pi-package/prompts/next.md +10 -0
  32. package/pi-package/prompts/park.md +10 -0
  33. package/pi-package/prompts/renew.md +10 -0
  34. package/pi-package/prompts/whisper.md +10 -0
  35. package/pi-package/skills/close/SKILL.md +74 -0
  36. package/pi-package/skills/create-issues/SKILL.md +10 -0
  37. package/pi-package/skills/implement-documentation/SKILL.md +18 -57
  38. package/pi-package/skills/implement-documentation/references/anti-patterns.md +35 -0
  39. package/pi-package/skills/implement-documentation/references/diataxis-implementation.md +31 -0
  40. package/pi-package/skills/implement-documentation/references/templates.md +115 -0
  41. package/pi-package/skills/implement-documentation/references/tooling-comparison.md +46 -0
  42. package/pi-package/skills/implement-documentation/references/versioning.md +31 -0
  43. package/pi-package/skills/issue-review/SKILL.md +5 -4
  44. package/pi-package/skills/issue-review/references/pass-0-preflight.md +37 -0
  45. package/pi-package/skills/next/SKILL.md +60 -0
  46. package/pi-package/skills/park/SKILL.md +104 -0
  47. package/pi-package/skills/renew/SKILL.md +170 -0
  48. package/pi-package/skills/research-documentation/SKILL.md +19 -69
  49. package/pi-package/skills/research-documentation/references/checklist.md +58 -0
  50. package/pi-package/skills/research-documentation/references/llm-readiness.md +43 -0
  51. package/pi-package/skills/research-documentation/references/metrics.md +42 -0
  52. package/pi-package/skills/research-documentation/references/report-template.md +42 -0
  53. package/pi-package/skills/review-documentation/SKILL.md +45 -40
  54. package/pi-package/skills/review-documentation/references/ai-readiness-criteria.md +38 -0
  55. package/pi-package/skills/whisper/SKILL.md +89 -0
  56. package/pi-package/skills/whisper/references/check.md +33 -0
  57. package/pi-package/skills/whisper/references/decommission.md +53 -0
  58. package/pi-package/skills/whisper/references/init.md +103 -0
  59. package/pi-package/skills/whisper/references/link.md +70 -0
  60. package/pi-package/skills/whisper/references/status.md +49 -0
  61. package/scripts/generate-pi-resources.mjs +122 -0
  62. package/content/distilled/implement-documentation.md +0 -68
  63. package/content/distilled/research-documentation.md +0 -79
  64. package/content/distilled/review-documentation.md +0 -44
package/README.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # Incitaciones 🤖
2
2
 
3
+ [![npm](https://img.shields.io/npm/v/incitaciones)](https://www.npmjs.com/package/incitaciones)
4
+ [![Publish to npm](https://github.com/charly-vibes/incitaciones/actions/workflows/npm-publish.yml/badge.svg)](https://github.com/charly-vibes/incitaciones/actions/workflows/npm-publish.yml)
5
+
3
6
  A collection of reusable prompts and best practices for CLI LLM tools.
4
7
 
5
8
  ## Quick Install
@@ -87,6 +90,51 @@ The repository includes checked-in pi package resources under `pi-package/`, and
87
90
 
88
91
  After changing distilled content or manifest entries, run `just generate-pi-resources` and commit the updated `pi-package/` files.
89
92
 
93
+ ### Publishing a new version
94
+
95
+ ```bash
96
+ npm version patch # bumps to 0.2.1, creates a git tag
97
+ npm version minor # bumps to 0.3.0
98
+ npm version major # bumps to 1.0.0
99
+
100
+ git push --tags # triggers CI → auto-publishes to npm
101
+ ```
102
+
103
+ CI workflow: `.github/workflows/npm-publish.yml` — runs on `v*` tags, generates pi resources, then publishes.
104
+
105
+ ## Top 10 Most Used Skills
106
+
107
+ Based on analysis of 621 pi sessions across 43 repositories:
108
+
109
+ | Skill | Invocations | Repos | What it does |
110
+ |-------|:-----------:|:-----:|-------------|
111
+ | **commit** | 513 | 41 | Create well-structured, atomic git commits with clear intent |
112
+ | **rule-of-5-universal** | 254 | 35 | 5-stage review for any artifact (Steve Yegge's method) |
113
+ | **tdd** | 168 | 28 | Test-driven development workflow |
114
+ | **issue-review** | 158 | 31 | Review issues for completeness and dependencies |
115
+ | **debug** | 94 | 27 | 7-step diagnostic workflow for debugging issues |
116
+ | **create-issues** | 44 | 19 | Generate trackable issues from implementation plans |
117
+ | **create-handoff** | 31 | 10 | Generate context documents for session continuity |
118
+ | **grill-me** | 28 | 12 | Interview the user relentlessly about a plan or design |
119
+ | **doc-link-verifier** | 27 | 9 | Audit documentation for broken links |
120
+ | **review-documentation** | 27 | 9 | Review docs for cognitive scannability and AI-readiness |
121
+
122
+ ## Session Lifecycle & Knowledge Management
123
+
124
+ Workflow skills that form a complete session lifecycle with persistent operational knowledge:
125
+
126
+ | Skill | When | What it does |
127
+ |-------|------|-------------|
128
+ | **whisper** | Start of project/branch | Manage `~/.whisper/` — global, tiered knowledge directory (init, check, status, link, decommission) |
129
+ | **next** | Quick context switch | Rapid snapshot to `~/.whisper/` — no git, no tickets, just stash |
130
+ | **park** | Thorough context switch | Log to journal, release ticket claims, record to beads epic |
131
+ | **close** | End of day | Log to journal, route knowledge to `~/.whisper/`, commit, clear |
132
+ | **renew** | Start of session | Load journal + whisper + beads context, claim tickets with file conflict detection |
133
+
134
+ Uses `$JOURNAL_PATH` (default `~/dev/status`) for the daily log. See [`content/references-whisper-workflow.md`](content/references-whisper-workflow.md) for the full reference.
135
+
136
+ Full analysis: [`content/research-finding-skill-usage-analysis.md`](content/research-finding-skill-usage-analysis.md)
137
+
90
138
  ## Quick Start
91
139
 
92
140
  ```bash
@@ -113,6 +161,15 @@ Everything lives in `content/` with descriptive filenames:
113
161
  - `example-*.md` - Real-world examples
114
162
  - `template-*.md` - Templates for new content
115
163
 
164
+ Key infrastructure files:
165
+
166
+ - `package.json` — npm package with `pi` manifest and `bin` entry for npx CLI
167
+ - `scripts/cli.mjs` — npx CLI entry point (`npx incitaciones install` / `list` / `info`)
168
+ - `scripts/generate-pi-resources.mjs` — generates `pi-package/` from manifest
169
+ - `pi-package/` — generated pi-compatible skills and prompt templates (gitignored)
170
+ - `.github/workflows/npm-publish.yml` — CI: auto-publishes to npm on `v*` tags
171
+ - `.github/workflows/pages.yml` — CI: deploys GitHub Pages site
172
+
116
173
  See [AGENTS.md](AGENTS.md) for detailed structure and [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
117
174
 
118
175
  ## Commands
@@ -0,0 +1,68 @@
1
+ ---
2
+ name: close
3
+ description: "End-of-session wrap-up. Summarizes what was done, logs it to the daily journal, commits, pushes, and clears context. Trigger when the user says '/close', 'close session', or 'wrap up session'."
4
+ tools: Read, Write, Edit, Glob, Bash
5
+ ---
6
+
7
+ # Close Session
8
+
9
+ End the current session: log what was done, update tasks, route durable knowledge to `~/.whisper/`, commit and push, clear context.
10
+
11
+ Uses `$JOURNAL_PATH` (defaults to `~/dev/status`) for the daily log journal, and `~/.whisper/` for accumulated operational knowledge. The log subdirectory defaults to `log/`; set `$JOURNAL_LOG_SUBDIR` to override (e.g. `areas/log` for the JORNAL layout).
12
+
13
+ ## Steps
14
+
15
+ 1. Pull the journal repo:
16
+ ```bash
17
+ JOURNAL="${JOURNAL_PATH:-$HOME/dev/status}"
18
+ LOG_SUBDIR="${JOURNAL_LOG_SUBDIR:-log}"
19
+ cd "$JOURNAL" && git pull
20
+ ```
21
+
22
+ 2. Get today's date and time (`date +%Y-%m-%d`, `date +%H:%M`).
23
+ Derive the log path: `$JOURNAL/$LOG_SUBDIR/YYYY/YYYY-MM/YYYY-MM-DD.md`
24
+
25
+ 3. If the log file does not exist, create it with the daily log template.
26
+
27
+ 4. Review the full conversation history and write a concise session summary covering:
28
+ - What was worked on (key topics, files, repos)
29
+ - Decisions made
30
+ - Tasks completed or created
31
+ - Any unresolved items or next steps
32
+
33
+ 5. Append the summary to the `## Log` section of today's daily log:
34
+ ```
35
+ ### Session:HH:MM (<context>)
36
+ - bullet point summary entries
37
+ - **Next:** what to pick up next time (if applicable)
38
+ ```
39
+
40
+ 6. Update project/area files if tasks were completed or created:
41
+ - Mark completed tasks `[x]`
42
+ - Add new tasks as `[ ]`
43
+ - Add/update `[~]` waiting items
44
+ - Update `## Notes` with decisions
45
+
46
+ 7. If any tasks or follow-ups came up that aren't in a project/area, add them to `inbox.md`.
47
+
48
+ 8. **Route durable knowledge to `~/.whisper/`.** Scan the session for anything worth keeping and route by scope (skip this step entirely if nothing durable was learned):
49
+ - **Branch-specific finding** → `bd note <beads-epic>` or `~/.whisper/repos/<repo>/branches/<slug>/notes.md`
50
+ - **Repo-wide infra fact** → `~/.whisper/repos/<repo>/env.md`
51
+ - **Universal agent behavior rule** → `bd remember` or `~/.whisper/rules.md`
52
+ - **Worktree setup fact** → `~/.whisper/repos/<repo>/worktrees/<name>/env.md`
53
+ - **No secrets anywhere:** never write tokens, keys, or PII
54
+ - **Extend, don't duplicate:** append to existing notes rather than creating new ones
55
+
56
+ 9. Commit and push. Stage only the files this session touched, explicitly by name:
57
+ ```bash
58
+ cd "$JOURNAL" && git add <log-file> [<files>] && git commit -m "log: YYYY-MM-DD session notes" && git push
59
+ ```
60
+
61
+ 10. As the very last step, run `/clear` to reset the conversation context.
62
+
63
+ ## Rules
64
+
65
+ - Do NOT ask the user any questions. Summarize automatically from conversation context.
66
+ - Keep the summary concise — bullet points, not paragraphs.
67
+ - If today's log already has content, append to it; never overwrite existing entries.
68
+ - Always pull before reading and push after committing.
@@ -54,6 +54,16 @@ You are a Technical Project Manager. Translate a plan, spec, or PRD into thin en
54
54
  - Apply tracker labels such as `needs-triage` when the project uses them.
55
55
  - Wire dependencies using actual captured identifiers or explicit body references.
56
56
  - Verify each creation step succeeded before continuing.
57
+ - **After each successful creation**, extract the `**Files / Systems:**` bullet list from
58
+ the issue description and store it as structured metadata:
59
+ ```bash
60
+ bd update <id> --metadata '{"files": ["path/to/file1.py", "path/to/file2.py"]}'
61
+ ```
62
+ This enables automated file-conflict detection by concurrent agents (see `renew` skill
63
+ **Claiming work** section). If the Files/Systems section is empty or contains only
64
+ subsystem names without concrete paths, **stop and ask the user for specific file paths
65
+ before publishing the ticket** — a ticket without concrete paths cannot participate in
66
+ conflict detection and is incomplete.
57
67
 
58
68
  7. **Final report:**
59
69
  - Summarize the approved slice set, created issues, labels, and dependency links.
@@ -0,0 +1,29 @@
1
+ # Implement Documentation Topic
2
+
3
+ Write a high-signal documentation topic using the Unified Frameworks for Technical Information Architecture.
4
+
5
+ ## Core Rules
6
+
7
+ - Establish context and prerequisites in the first two sentences (EPPO).
8
+ - Lead with the answer or primary assertion in the TL;DR and first paragraph (Pyramid Principle).
9
+ - Use explicit, semantic block labels (descriptive headers) for every 2-3 paragraphs (Info Mapping).
10
+ - Provide a clear "fail-state" or troubleshooting section (Minimalism).
11
+ - Do not mix intents: no deep theory in a How-to. If theory is required, use a Note or Deep Dive sidebar to maintain quadrant purity.
12
+ - Do not use "Next" or "Previous" as the only navigational cues (EPPO).
13
+
14
+ ## Procedure
15
+
16
+ 1. Quadrant check: identify the Diátaxis quadrant and follow its rhetorical rules. Use `references/templates.md` for the matching template (Tutorial, How-to, Reference, or Explanation). Use `references/anti-patterns.md` to avoid common failures for that quadrant.
17
+ 2. EPPO initialization: every topic must stand alone. Start with a clear task- or concept-focused title and a context block ("This topic covers [X]. You should already understand [Y] and have [Z] installed.").
18
+ 3. Information mapping: chunk the body into units under 7 items; label headers by result or content (e.g., "Configuring the API" not "Configuration"); convert complex comparisons or steps into tables and lists.
19
+ 4. AI-first polish: ensure headers are descriptive for RAG indexing and provide a 1-2 sentence TL;DR at the top for LLM ingestion.
20
+ 5. If setting up a new docs site or choosing tooling, use `references/tooling-comparison.md` for platform selection and `references/versioning.md` for versioning and changelog strategy. For a full Diátaxis rollout, use `references/diataxis-implementation.md`.
21
+
22
+ ## Rules
23
+
24
+ - The canonical theory lives in `content/research-documentation-frameworks.md`; the references here are operational excerpts that link back to it.
25
+
26
+ ## Related Skills
27
+
28
+ - `research-documentation` — audit before writing.
29
+ - `review-documentation` — review after writing.
@@ -0,0 +1,35 @@
1
+ # Documentation Anti-Patterns
2
+
3
+ Avoid these during Step 1 (quadrant check) and throughout writing. Source: `content/research-finding-library-docs-best-practices.md` (Section 1, Common Mistakes and Anti-Patterns).
4
+
5
+ ## Leading with explanation instead of action
6
+
7
+ The engineer's impulse is to explain how a system works before showing how to use it. This is backwards for most users. Quickstart then how-to then reference is the ramp-up order. Fix: in Tutorials and How-tos, lead with a runnable result; move "how it works" to Explanation.
8
+
9
+ ## One stream of text serving as THE DOCS
10
+
11
+ A single document trying to teach beginners, guide intermediate users, and serve as expert reference serves none of them. Fix: split by Diátaxis quadrant; each page has one intent.
12
+
13
+ ## FAQ lists as an anti-pattern
14
+
15
+ An FAQ is "the box in the garage where you put things when you can't be bothered to put them in the right place." If information is in the right Diátaxis quadrant, it does not need repeating in an FAQ. Fix: place each answer where it belongs; delete the FAQ or keep only genuinely miscellaneous items.
16
+
17
+ ## The curse of knowledge
18
+
19
+ Experts forget what it was like not to know. They skip "obvious" steps, use undefined jargon, assume context beginners lack. Fix: in Tutorials, state every prerequisite; define jargon on first use; have a non-expert read it.
20
+
21
+ ## Stale documentation
22
+
23
+ Docs not embedded in the development workflow drift from the code. Incorrect docs are worse than missing docs — they waste time and erode trust. Fix: docs-as-code, docs-updated checkboxes in PRs, "you touch it, you document it."
24
+
25
+ ## Knowledge silos
26
+
27
+ Scattered docs across wikis, READMEs, Confluence, Notion create a fragmented experience where users cannot find things and contributors do not know where to put new content. Fix: one canonical location, ideally in the same repo as the code.
28
+
29
+ ## Partial coverage
30
+
31
+ Documenting some but not all of a feature or API creates a false sense of completeness — users assume the undocumented part does not exist or work. Fix: cover a concept fully or not at all; use the completeness checklist (in the `research-documentation` skill's `references/checklist.md`).
32
+
33
+ ## Mixed-intent "Frankenbooks"
34
+
35
+ A page that starts as a tutorial, becomes reference, and ends as explanation. Fix: split into three focused pages; each keeps quadrant purity. Use a Note or Deep Dive sidebar only when a sliver of theory is required inside a task page.
@@ -0,0 +1,31 @@
1
+ # Diátaxis Implementation Guide
2
+
3
+ Six-step rollout for adopting Diátaxis on an existing or new documentation set. Use in Step 5 when the task is a full architecture rollout rather than a single topic. The Diátaxis framework theory is canonical in `content/research-documentation-frameworks.md`; these implementation steps are sourced from `content/research-finding-library-docs-best-practices.md` (Section 3, How to Implement Diátaxis in Practice).
4
+
5
+ ## Step 1: Audit existing documentation
6
+
7
+ Catalog every existing document and classify it as Tutorial, How-to, Reference, or Explanation. The audit typically reveals that most docs are reference, with gaps in tutorials and explanation. (Use the `research-documentation` skill for this.)
8
+
9
+ ## Step 2: Create a directory structure
10
+
11
+ Create four directories or sections: `tutorials/`, `how-to/` (or `guides/`), `reference/`, and `explanation/`. Apply title conventions per type: Explanation titles use "Understanding / Dive into / Introduction to..."; How-to titles start with "How to..."; Tutorial titles use "Getting started with...".
12
+
13
+ ## Step 3: Assign content types and split mixed documents
14
+
15
+ Long mixed-topic documents become multiple short, focused documents. A document that is tutorial then reference then explanation becomes three separate documents, each in its quadrant directory.
16
+
17
+ ## Step 4: Establish contribution guidelines
18
+
19
+ Document the framework for contributors so new docs land in the right place from the start. Without guidelines the four-directory structure fills with misclassified content. Keep the guidelines short: one sentence per quadrant on what belongs there.
20
+
21
+ ## Step 5: Integrate with the development workflow
22
+
23
+ Add architecture specs to Reference alongside code changes. Add technical decision logs to Explanation during feature development. Docs-updated checkboxes in PR templates. This integration is what keeps docs current.
24
+
25
+ ## Step 6: Use Diátaxis as an AI prompt template
26
+
27
+ The clear information patterns make effective AI prompt templates: ask a model to sort unstructured content into the four patterns to accelerate a first draft, then review and refine. (See `templates.md` for the per-quadrant output shapes.)
28
+
29
+ ## Critiques to keep in mind
30
+
31
+ Diátaxis is a guide, not dogma. Forcing every artifact into four rigid buckets produces awkward docs. The terms overlap (tutorial vs. how-to needs editorial judgment). The framework does not address content reuse (DITA's conref may suit enterprise multi-output needs) nor finding aids. For early-stage projects, a single compelling quick start may suffice before the full suite.
@@ -0,0 +1,115 @@
1
+ # Diátaxis Templates
2
+
3
+ One template per quadrant. Match the template to the quadrant identified in Step 1. The canonical theory is `content/research-documentation-frameworks.md`.
4
+
5
+ ## Tutorial (learning-oriented, beginners)
6
+
7
+ Goal: build competency through a guided, safe experience. Show, do not lecture.
8
+
9
+ ```markdown
10
+ # [Getting Started with X]
11
+
12
+ **TL;DR:** [1-sentence outcome for human/AI]
13
+
14
+ ## What You Will Learn
15
+ By the end you will have [concrete result]. No prior knowledge of [X] is assumed.
16
+
17
+ ## Prerequisites
18
+ - [Prerequisite 1]
19
+ - [Prerequisite 2]
20
+
21
+ ## Step 1: [Specific Result]
22
+ [Chunked, do-this-now instructions. Each step yields a visible result.]
23
+
24
+ ## Step 2: [Specific Result]
25
+ [Chunked instructions.]
26
+
27
+ ## Recap & Next Steps
28
+ You built [X]. Next, try [lateral link 1] or [lateral link 2].
29
+ ```
30
+
31
+ ## How-to (task-oriented, assumes baseline competence)
32
+
33
+ Goal: answer a specific question directly. Minimal theory.
34
+
35
+ ```markdown
36
+ # [Task-Focused Title]
37
+
38
+ **TL;DR:** [1-sentence summary for human/AI]
39
+
40
+ ## Context & Prerequisites
41
+ This guide explains how to [Goal]. Before starting, ensure you have:
42
+ - [Prerequisite 1]
43
+ - [Prerequisite 2]
44
+
45
+ ## [Action Step 1: Specific Result]
46
+ [Chunked instructions]
47
+
48
+ ## [Action Step 2: Specific Result]
49
+ [Chunked instructions]
50
+
51
+ ## Troubleshooting: Common Fail-States
52
+ | Symptom | Cause | Fix |
53
+ | :--- | :--- | :--- |
54
+ | [Error] | [Reason] | [Solution] |
55
+
56
+ ## Further Exploration
57
+ - [Lateral Link 1] (Subject affinity)
58
+ - [Lateral Link 2] (Subject affinity)
59
+ ```
60
+
61
+ ## Reference (information-oriented, experienced users)
62
+
63
+ Goal: fast, accurate facts. Scannable tables, no narrative filler.
64
+
65
+ ```markdown
66
+ # [X] Reference
67
+
68
+ **TL;DR:** [1-sentence summary for human/AI]
69
+
70
+ ## [Function/Endpoint/Class Name]
71
+
72
+ **Signature:** `signature`
73
+
74
+ **Parameters:**
75
+ | Name | Type | Required | Description |
76
+ | :--- | :--- | :--- | :--- |
77
+ | [name] | [type] | yes/no | [description] |
78
+
79
+ **Returns:** [type and meaning]
80
+
81
+ **Errors:**
82
+ | Code | Meaning | Remediation |
83
+ | :--- | :--- | :--- |
84
+ | [code] | [meaning] | [fix] |
85
+
86
+ **Example:**
87
+ [Minimal, complete, runnable example]
88
+ ```
89
+
90
+ ## Explanation (understanding-oriented, the "why")
91
+
92
+ Goal: deepen knowledge; no specific task. Discussion, design rationale, trade-offs.
93
+
94
+ ```markdown
95
+ # [Understanding X]
96
+
97
+ **TL;DR:** [1-sentence summary for human/AI]
98
+
99
+ ## Why [X] Exists This Way
100
+ [Design rationale and history. No steps.]
101
+
102
+ ## Key Concepts
103
+ - [Concept 1]: [definition and why it matters]
104
+ - [Concept 2]: [definition and how it relates to Concept 1]
105
+
106
+ ## Trade-offs
107
+ | Approach | Pro | Con |
108
+ | :--- | :--- | :--- |
109
+ | [A] | [pro] | [con] |
110
+ | [B] | [pro] | [con] |
111
+
112
+ ## Further Exploration
113
+ - [Lateral Link 1] (Subject affinity)
114
+ - [Lateral Link 2] (Subject affinity)
115
+ ```
@@ -0,0 +1,46 @@
1
+ # Tooling Comparison & Docs-as-Code
2
+
3
+ Use in Step 5 when choosing a platform or setting up docs infrastructure. Platform selection is an implementation decision, not an audit finding. Source: `content/research-finding-library-docs-best-practices.md` (Section 6, Modern Tooling and Infrastructure).
4
+
5
+ ## Platform comparison
6
+
7
+ | Platform | Best For | Stack | Key Strength |
8
+ | :--- | :--- | :--- | :--- |
9
+ | Docusaurus | Complex OSS docs, versioning | React/JS | Ecosystem, versioning, MDX |
10
+ | MkDocs (Material) | Python projects, simple setup | Python | Simplicity, polished theme |
11
+ | Sphinx | Python API reference | Python | Autodoc, multiple outputs |
12
+ | Read the Docs | OSS hosting, versioning | Agnostic | Free hosting, versioning |
13
+ | GitBook | Team knowledge bases | Agnostic | Editing UX, AI search |
14
+ | Mintlify | API docs, dev portals | Agnostic | Design, AI search, OpenAPI |
15
+ | Starlight | Performance-critical docs | Astro | Performance, accessibility |
16
+ | Nextra | Custom Next.js sites | React/Next.js | Customization, React components |
17
+
18
+ ## How to choose
19
+
20
+ - Python ecosystem or simplicity: MkDocs / Sphinx.
21
+ - API reference that must stay synced to code: Sphinx autodoc, mkdocstrings, or TypeDoc.
22
+ - API docs with interactive playground: Mintlify.
23
+ - Complex OSS docs with versioning and i18n: Docusaurus.
24
+ - Performance and built-in accessibility: Starlight.
25
+ - Free open-source hosting with versioning: Read the Docs.
26
+
27
+ ## Docs-as-code workflow
28
+
29
+ Write docs in plain text (Markdown/AsciiDoc/reST), store in Git, review through pull requests, publish through CI/CD. Core practices:
30
+
31
+ - Store docs in the same repository as the code.
32
+ - Write in plain text (Markdown dominates for developer docs).
33
+ - Review all doc changes through the same PR process as code.
34
+ - Automate builds and deployments via CI/CD (GitHub Actions, GitLab CI).
35
+ - Enforce quality through automation: Vale, markdownlint, link checkers (htmlproofer, lychee), spell checkers on every PR.
36
+ - Generate API reference from OpenAPI/Swagger to keep it synchronized.
37
+
38
+ ## Specification-driven API docs
39
+
40
+ - **OpenAPI** is the standard for REST APIs (YAML/JSON). Use it to auto-generate interactive reference (Swagger UI, Redoc, Stoplight Elements), client SDKs, and mock servers, and to power AI agent tool manifests.
41
+ - **AsyncAPI** extends the approach to event-driven APIs (WebSockets, Kafka, MQTT).
42
+ - Prefer a **design-first** approach: write the spec before the code. This enables early collaboration, immediate mock servers, and ensures docs are never an afterthought.
43
+
44
+ ## Interactive documentation
45
+
46
+ Place the interactive element directly adjacent to the relevant docs, not on a separate playground page. Live code playgrounds (CodeSandbox, StackBlitz), interactive API explorers (Swagger UI, Mintlify), and embedded REPLs reduce time-to-first-success.
@@ -0,0 +1,31 @@
1
+ # Versioning & Changelog Strategy
2
+
3
+ Use in Step 5 when setting up versioned documentation. Source: `content/research-finding-library-docs-best-practices.md` (Section 2, Versioned Documentation Strategies).
4
+
5
+ ## Version-tagged documentation
6
+
7
+ Each major release should have a corresponding docs version. Tools like Read the Docs, Docusaurus, and Sphinx provide built-in versioned docs so users can select the version matching their installed software.
8
+
9
+ ## Version selector in the UI
10
+
11
+ A prominent version selector in navigation lets users switch versions. The current stable version is the default, with clear indicators when a user is viewing an older or pre-release version.
12
+
13
+ ## Deprecation notices
14
+
15
+ When features are deprecated, update docs immediately with a deprecation notice, the version in which deprecation occurred, and a migration path to the replacement.
16
+
17
+ ## Changelog as a first-class document
18
+
19
+ Treat the changelog as a primary artifact, not an afterthought. Link it prominently from the docs home page and update it as part of the release process. Link migration guides from the changelog entries that introduce breaking changes; highlight breaking changes prominently.
20
+
21
+ ## Write version-agnostic content where possible
22
+
23
+ Conceptual and explanation content that does not change between versions should avoid version-specific references. This reduces maintenance burden and prevents confusion.
24
+
25
+ ## Docs-as-code for version control
26
+
27
+ Store docs in the same Git repository as the code (or a closely linked one) so docs version alongside code. Pull requests for code changes include doc updates; CI/CD pipelines can enforce that docs are updated before a release merges.
28
+
29
+ ## Canonical URLs
30
+
31
+ Versioned docs create a risk of duplicate-content search penalties. Use canonical URL tags pointing search engines to the current stable version of each page.
@@ -9,15 +9,16 @@ Read `references/setup.md` for tracker-specific collection commands before revie
9
9
  ## Procedure
10
10
 
11
11
  1. Gather the issue set to review plus the source plan/spec/parent issue when available.
12
- 2. Run the passes in order:
12
+ 2. For Beads trackers, run PASS 0 pre-flight checks first: `references/pass-0-preflight.md`
13
+ 3. Run the content passes in order:
13
14
  - Pass 1: `references/pass-1-clarity.md`
14
15
  - Pass 2: `references/pass-2-scope.md`
15
16
  - Pass 3: `references/pass-3-dependencies.md`
16
17
  - Pass 4: `references/pass-4-alignment.md`
17
18
  - Pass 5: `references/pass-5-executability.md`
18
- 3. After each pass starting with pass 2, evaluate convergence using `references/convergence.md`.
19
- 4. If converged, stop.
20
- 5. Produce the final report using `references/final-report.md`.
19
+ 4. After each pass starting with pass 2, evaluate convergence using `references/convergence.md`.
20
+ 5. If converged, stop.
21
+ 6. Produce the final report using `references/final-report.md`.
21
22
 
22
23
  ## Review Lens
23
24
 
@@ -0,0 +1,37 @@
1
+ # PASS 0: Pre-flight (Beads only)
2
+
3
+ Run before all content passes. Mechanical checks that don't require reading issue bodies.
4
+
5
+ **Check 1 — metadata.files coverage:**
6
+ ```bash
7
+ bd list --format json | python3 -c "
8
+ import json, sys
9
+ issues = json.load(sys.stdin)
10
+ missing = [i['id'] for i in issues
11
+ if not (i.get('metadata') or {}).get('files')]
12
+ if missing: print('Missing metadata.files:', missing)
13
+ "
14
+ ```
15
+ Flag `[PRE-001] MEDIUM` for each ticket missing `metadata.files`.
16
+ Fix: `bd update <id> --set-metadata 'files=["path/to/file.py"]'`
17
+
18
+ **Check 2 — shared-file architecture smell:**
19
+ ```bash
20
+ bd list --format json | python3 -c "
21
+ import json, sys
22
+ from collections import defaultdict
23
+ issues = json.load(sys.stdin)
24
+ owners = defaultdict(list)
25
+ for i in issues:
26
+ for f in (i.get('metadata') or {}).get('files', []):
27
+ owners[f].append(i['id'])
28
+ for f, ids in owners.items():
29
+ if len(ids) >= 3: print(f, '->', ids)
30
+ "
31
+ ```
32
+ Flag `[PRE-002] LOW` for any file claimed by 3+ open tickets.
33
+ Recommendation: consider a decomposition ticket to split `<file>` before these
34
+ tickets run (see navari-a3cv pattern). If not decomposing now, add a
35
+ co-modification note to all affected tickets.
36
+
37
+ **Prefix:** PRE-001, PRE-002, etc.
@@ -0,0 +1,54 @@
1
+ ---
2
+ name: next
3
+ description: "Rapid session snapshot to ~/.whisper/ — no full close ceremony. Trigger when the user says '/next', 'snap', 'quick save', 'stash session', or 'moving on'."
4
+ tools: Read, Write, Edit, Bash
5
+ ---
6
+
7
+ # Next
8
+
9
+ Snapshot the current session to `~/.whisper/` and move on. Fast — no project file updates, no inbox triage, no ticket operations. Pure stash.
10
+
11
+ ## Steps
12
+
13
+ 1. Get timestamp: `date +%Y-%m-%d` and `date +%H:%M`.
14
+
15
+ 2. Detect repo and branch:
16
+ ```bash
17
+ repo_url=$(git remote get-url origin 2>/dev/null | sed 's|https://||;s|git@||;s|\.git$||')
18
+ branch=$(git rev-parse --abbrev-ref HEAD)
19
+ branch_slug=$(echo "$branch" | sed 's|/|--|g')
20
+ notes_path=~/.whisper/repos/"${repo_url}"/branches/"${branch_slug}"/notes.md
21
+ ```
22
+
23
+ 3. If `~/.whisper/` doesn't exist or the branch slot doesn't exist, run `/w check` first (which will offer to init). If the user declines, skip and warn.
24
+
25
+ 4. Scan the last portion of the conversation and write a 2–5 bullet snapshot:
26
+ - What was worked on (files, topics)
27
+ - Key decisions or changes made
28
+ - **Next:** the most logical continuation point
29
+
30
+ 5. Append the snapshot to `notes.md`:
31
+ ```
32
+ ### YYYY-MM-DD HH:MM — snap
33
+ - what was worked on
34
+ - decisions made
35
+ - **Next:** continuation point
36
+ ```
37
+
38
+ 6. No commit, no push, no ticket operations. Just write the file.
39
+
40
+ ## Output
41
+
42
+ ```
43
+ ✓ Snapped to ~/.whisper/repos/<repo>/branches/<slug>/notes.md
44
+
45
+ Use `/renew` later to pick this back up.
46
+ ```
47
+
48
+ ## Rules
49
+
50
+ - Do NOT ask questions — summarize automatically from conversation context.
51
+ - Keep it brief — 2–5 bullets, not paragraphs.
52
+ - Do NOT commit or push anything.
53
+ - Do NOT update project files, inbox, or tickets.
54
+ - Do NOT run `/clear`.