@vpxa/aikit 0.1.73 → 0.1.75

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 (142) hide show
  1. package/package.json +9 -1
  2. package/packages/cli/dist/index.js +2 -2
  3. package/packages/cli/dist/{init-D_OGLUN1.js → init-CuRXmyD9.js} +4 -4
  4. package/packages/cli/dist/scaffold-WMQ2uQ48.js +2 -0
  5. package/packages/cli/dist/{templates-DJ7EC5vw.js → templates-ArdAVWoY.js} +13 -3
  6. package/packages/cli/dist/user-vbJwa7x2.js +5 -0
  7. package/packages/dashboard/dist/assets/index-C6D-PCp0.js.map +1 -1
  8. package/packages/flows/dist/index.d.ts +29 -0
  9. package/packages/flows/dist/index.js +1 -1
  10. package/packages/server/dist/index.js +1 -1
  11. package/packages/server/dist/{server-B9Mx1aK-.js → server-CVhVH5cT.js} +127 -127
  12. package/packages/tools/dist/index.d.ts +19 -1
  13. package/packages/tools/dist/index.js +39 -39
  14. package/scaffold/dist/adapters/claude-code.mjs +4 -0
  15. package/scaffold/dist/adapters/copilot.mjs +75 -0
  16. package/scaffold/dist/adapters/flows.mjs +1 -0
  17. package/scaffold/dist/adapters/skills.mjs +1 -0
  18. package/scaffold/dist/compiled/flows-data.mjs +1429 -0
  19. package/scaffold/dist/compiled/skills-data.mjs +9951 -0
  20. package/scaffold/dist/definitions/agents.mjs +9 -0
  21. package/scaffold/{definitions → dist/definitions}/bodies.mjs +6 -229
  22. package/scaffold/dist/definitions/exclusions.mjs +1 -0
  23. package/scaffold/dist/definitions/hooks.mjs +1 -0
  24. package/scaffold/dist/definitions/models.mjs +1 -0
  25. package/scaffold/dist/definitions/plugins.mjs +1 -0
  26. package/scaffold/{definitions → dist/definitions}/prompts.mjs +9 -149
  27. package/scaffold/{definitions → dist/definitions}/protocols.mjs +9 -37
  28. package/scaffold/dist/definitions/tools.mjs +1 -0
  29. package/packages/cli/dist/scaffold-CJwkHf-q.js +0 -2
  30. package/packages/cli/dist/user-BEmVW8Tp.js +0 -5
  31. package/scaffold/adapters/claude-code.mjs +0 -73
  32. package/scaffold/adapters/copilot.mjs +0 -292
  33. package/scaffold/definitions/agents.mjs +0 -266
  34. package/scaffold/definitions/hooks.mjs +0 -43
  35. package/scaffold/definitions/models.mjs +0 -84
  36. package/scaffold/definitions/plugins.mjs +0 -147
  37. package/scaffold/definitions/tools.mjs +0 -250
  38. package/scaffold/flows/_epilogue/steps/docs-sync/README.md +0 -120
  39. package/scaffold/flows/aikit-advanced/README.md +0 -70
  40. package/scaffold/flows/aikit-advanced/flow.json +0 -69
  41. package/scaffold/flows/aikit-advanced/steps/design/README.md +0 -178
  42. package/scaffold/flows/aikit-advanced/steps/execute/README.md +0 -145
  43. package/scaffold/flows/aikit-advanced/steps/plan/README.md +0 -122
  44. package/scaffold/flows/aikit-advanced/steps/spec/README.md +0 -121
  45. package/scaffold/flows/aikit-advanced/steps/task/README.md +0 -119
  46. package/scaffold/flows/aikit-advanced/steps/verify/README.md +0 -145
  47. package/scaffold/flows/aikit-basic/README.md +0 -51
  48. package/scaffold/flows/aikit-basic/flow.json +0 -45
  49. package/scaffold/flows/aikit-basic/steps/assess/README.md +0 -109
  50. package/scaffold/flows/aikit-basic/steps/design/README.md +0 -116
  51. package/scaffold/flows/aikit-basic/steps/implement/README.md +0 -131
  52. package/scaffold/flows/aikit-basic/steps/verify/README.md +0 -123
  53. package/scaffold/general/agents/Architect-Reviewer-Alpha.agent.md +0 -132
  54. package/scaffold/general/agents/Architect-Reviewer-Beta.agent.md +0 -132
  55. package/scaffold/general/agents/Code-Reviewer-Alpha.agent.md +0 -112
  56. package/scaffold/general/agents/Code-Reviewer-Beta.agent.md +0 -112
  57. package/scaffold/general/agents/Debugger.agent.md +0 -412
  58. package/scaffold/general/agents/Documenter.agent.md +0 -468
  59. package/scaffold/general/agents/Explorer.agent.md +0 -76
  60. package/scaffold/general/agents/Frontend.agent.md +0 -440
  61. package/scaffold/general/agents/Implementer.agent.md +0 -425
  62. package/scaffold/general/agents/Orchestrator.agent.md +0 -452
  63. package/scaffold/general/agents/Planner.agent.md +0 -481
  64. package/scaffold/general/agents/README.md +0 -57
  65. package/scaffold/general/agents/Refactor.agent.md +0 -435
  66. package/scaffold/general/agents/Researcher-Alpha.agent.md +0 -151
  67. package/scaffold/general/agents/Researcher-Beta.agent.md +0 -152
  68. package/scaffold/general/agents/Researcher-Delta.agent.md +0 -153
  69. package/scaffold/general/agents/Researcher-Gamma.agent.md +0 -152
  70. package/scaffold/general/agents/Security.agent.md +0 -433
  71. package/scaffold/general/agents/_shared/architect-reviewer-base.md +0 -104
  72. package/scaffold/general/agents/_shared/code-agent-base.md +0 -366
  73. package/scaffold/general/agents/_shared/code-reviewer-base.md +0 -87
  74. package/scaffold/general/agents/_shared/decision-protocol.md +0 -27
  75. package/scaffold/general/agents/_shared/forge-protocol.md +0 -90
  76. package/scaffold/general/agents/_shared/researcher-base.md +0 -114
  77. package/scaffold/general/agents/templates/adr-template.md +0 -28
  78. package/scaffold/general/agents/templates/execution-state.md +0 -26
  79. package/scaffold/general/prompts/aikit-ask.prompt.md +0 -13
  80. package/scaffold/general/prompts/aikit-debug.prompt.md +0 -15
  81. package/scaffold/general/prompts/aikit-design.prompt.md +0 -15
  82. package/scaffold/general/prompts/aikit-flow-add.prompt.md +0 -84
  83. package/scaffold/general/prompts/aikit-flow-create.prompt.md +0 -80
  84. package/scaffold/general/prompts/aikit-flow-manage.prompt.md +0 -24
  85. package/scaffold/general/prompts/aikit-implement.prompt.md +0 -17
  86. package/scaffold/general/prompts/aikit-plan.prompt.md +0 -15
  87. package/scaffold/general/prompts/aikit-review.prompt.md +0 -24
  88. package/scaffold/general/skills/adr-skill/SKILL.md +0 -335
  89. package/scaffold/general/skills/adr-skill/assets/templates/adr-madr.md +0 -89
  90. package/scaffold/general/skills/adr-skill/assets/templates/adr-readme.md +0 -20
  91. package/scaffold/general/skills/adr-skill/assets/templates/adr-simple.md +0 -46
  92. package/scaffold/general/skills/adr-skill/references/adr-conventions.md +0 -95
  93. package/scaffold/general/skills/adr-skill/references/examples.md +0 -193
  94. package/scaffold/general/skills/adr-skill/references/review-checklist.md +0 -77
  95. package/scaffold/general/skills/adr-skill/references/template-variants.md +0 -52
  96. package/scaffold/general/skills/adr-skill/scripts/bootstrap_adr.js +0 -259
  97. package/scaffold/general/skills/adr-skill/scripts/new_adr.js +0 -391
  98. package/scaffold/general/skills/adr-skill/scripts/set_adr_status.js +0 -169
  99. package/scaffold/general/skills/aikit/SKILL.md +0 -754
  100. package/scaffold/general/skills/brainstorming/SKILL.md +0 -265
  101. package/scaffold/general/skills/brainstorming/spec-document-reviewer-prompt.md +0 -49
  102. package/scaffold/general/skills/c4-architecture/SKILL.md +0 -389
  103. package/scaffold/general/skills/c4-architecture/references/advanced-patterns.md +0 -552
  104. package/scaffold/general/skills/c4-architecture/references/c4-syntax.md +0 -510
  105. package/scaffold/general/skills/c4-architecture/references/common-mistakes.md +0 -437
  106. package/scaffold/general/skills/c4-architecture/references/html-design-system.md +0 -337
  107. package/scaffold/general/skills/c4-architecture/references/html-template.html +0 -627
  108. package/scaffold/general/skills/docs/SKILL.md +0 -553
  109. package/scaffold/general/skills/docs/references/diataxis-anti-patterns.md +0 -147
  110. package/scaffold/general/skills/docs/references/diataxis-compass.md +0 -123
  111. package/scaffold/general/skills/docs/references/diataxis-quadrants.md +0 -192
  112. package/scaffold/general/skills/docs/references/diataxis-quality.md +0 -76
  113. package/scaffold/general/skills/docs/references/diataxis-templates.md +0 -120
  114. package/scaffold/general/skills/docs/references/flow-artifacts-guide.md +0 -70
  115. package/scaffold/general/skills/docs/references/project-knowledge-gotchas.md +0 -32
  116. package/scaffold/general/skills/docs/references/project-knowledge-templates.md +0 -281
  117. package/scaffold/general/skills/docs/references/project-knowledge-workflow.md +0 -80
  118. package/scaffold/general/skills/frontend-design/SKILL.md +0 -237
  119. package/scaffold/general/skills/lesson-learned/SKILL.md +0 -113
  120. package/scaffold/general/skills/lesson-learned/references/anti-patterns.md +0 -55
  121. package/scaffold/general/skills/lesson-learned/references/se-principles.md +0 -109
  122. package/scaffold/general/skills/multi-agents-development/SKILL.md +0 -448
  123. package/scaffold/general/skills/multi-agents-development/architecture-review-prompt.md +0 -81
  124. package/scaffold/general/skills/multi-agents-development/code-quality-review-prompt.md +0 -91
  125. package/scaffold/general/skills/multi-agents-development/implementer-prompt.md +0 -93
  126. package/scaffold/general/skills/multi-agents-development/parallel-dispatch-example.md +0 -167
  127. package/scaffold/general/skills/multi-agents-development/spec-review-prompt.md +0 -81
  128. package/scaffold/general/skills/present/SKILL.md +0 -616
  129. package/scaffold/general/skills/react/SKILL.md +0 -309
  130. package/scaffold/general/skills/repo-access/SKILL.md +0 -178
  131. package/scaffold/general/skills/repo-access/references/error-patterns.md +0 -116
  132. package/scaffold/general/skills/repo-access/references/platform-matrix.md +0 -142
  133. package/scaffold/general/skills/requirements-clarity/SKILL.md +0 -333
  134. package/scaffold/general/skills/session-handoff/SKILL.md +0 -199
  135. package/scaffold/general/skills/session-handoff/references/handoff-template.md +0 -139
  136. package/scaffold/general/skills/session-handoff/references/resume-checklist.md +0 -80
  137. package/scaffold/general/skills/session-handoff/scripts/check_staleness.js +0 -269
  138. package/scaffold/general/skills/session-handoff/scripts/create_handoff.js +0 -299
  139. package/scaffold/general/skills/session-handoff/scripts/list_handoffs.js +0 -113
  140. package/scaffold/general/skills/session-handoff/scripts/validate_handoff.js +0 -241
  141. package/scaffold/general/skills/typescript/SKILL.md +0 -405
  142. package/scaffold/generate.mjs +0 -82
@@ -1,147 +0,0 @@
1
- # Diátaxis Anti-Patterns
2
-
3
- Five common documentation anti-patterns that violate Diátaxis quadrant boundaries. Each pattern includes detection signals, a violation/compliant example pair, and remediation.
4
-
5
- ## Anti-Pattern 1: Tutorial with Explanation
6
-
7
- **Detection signals:** "This is because...", conceptual paragraphs between steps, "Let's understand why..." mid-tutorial.
8
-
9
- **Failure mode:** Learner loses momentum; cognitive load increases; tutorial becomes reference-like.
10
-
11
- **Violation example:**
12
-
13
- > Step 4: Exchange the authorization code for a token.
14
- >
15
- > The authorization code grant exists because the client and server need a temporary credential that can be verified before issuing a bearer token. In OAuth 2.0, this protects the user agent from exposing long-lived credentials and supports redirect-based trust establishment. The protocol also separates authentication from authorization, which matters when multiple identity providers are involved.
16
- >
17
- > Now paste the token into the next command.
18
-
19
- **Compliant example:**
20
-
21
- > Step 4: Exchange the authorization code for a token.
22
- >
23
- > Note: For why this works, see [Explanation: Authentication Flow].
24
-
25
- **Fix:** Extract all "why" content to a separate explanation document. Leave only the action and the minimum guidance needed to complete the learning exercise.
26
-
27
- ## Anti-Pattern 2: How-To That Teaches
28
-
29
- **Detection signals:** "Let's learn...", "First, understand that...", explanations of basic concepts, beginner-level framing.
30
-
31
- **Failure mode:** Experienced users waste time reading fundamentals they already know.
32
-
33
- **Violation example:**
34
-
35
- > # How to Deploy
36
- >
37
- > Before we deploy, let's learn what Docker is. Docker is a containerization platform that packages software with its dependencies so it can run consistently across environments. Containers differ from virtual machines because they share the host kernel...
38
-
39
- **Compliant example:**
40
-
41
- > # How to Deploy
42
- >
43
- > Prerequisites: Docker installed. If you need setup help, see [Tutorial: Getting Started with Docker].
44
- >
45
- > 1. Build the image.
46
- > 2. Push it to the registry.
47
- > 3. Roll out the new version.
48
-
49
- **Fix:** Assume competence. Split foundational teaching into a tutorial for learners and keep the how-to focused on completing a task for someone who already knows the basics.
50
-
51
- ## Anti-Pattern 3: Reference with Narrative
52
-
53
- **Detection signals:** First-person voice ("I recommend..."), opinions, step-by-step instructions in a reference table, anecdotes.
54
-
55
- **Failure mode:** Reference becomes unreliable for quick lookup; opinions pollute facts.
56
-
57
- **Violation example:**
58
-
59
- > | Parameter | Type | Description |
60
- > |-----------|------|-------------|
61
- > | `retry` | `number` | I usually set this to `5` because it feels safer in production, and in my experience lower values make operators nervous. |
62
-
63
- **Compliant example:**
64
-
65
- > | Parameter | Type | Default | Constraints |
66
- > |-----------|------|---------|-------------|
67
- > | `retry` | `number` | `3` | Integer, `0-10` |
68
- >
69
- > For recommended usage patterns, see [How-To: Retry Configuration Best Practices].
70
-
71
- **Fix:** Strip opinions into explanation content and move procedures into a how-to. Keep the reference page factual, terse, and optimized for lookup.
72
-
73
- ## Anti-Pattern 4: Explanation with Procedures
74
-
75
- **Detection signals:** Numbered steps, imperative commands, "Step 1:", code blocks with instructions to run.
76
-
77
- **Failure mode:** Reader expecting understanding gets confused by action items; the document serves neither purpose well.
78
-
79
- **Violation example:**
80
-
81
- > # Why We Use Microservices
82
- >
83
- > Our architecture separates services by deployment boundary and ownership model.
84
- >
85
- > Step 1: Create a new service directory under `services/`.
86
- > Step 2: Copy the standard Dockerfile.
87
- > Step 3: Register the service in the gateway config.
88
-
89
- **Compliant example:**
90
-
91
- > # Why We Use Microservices
92
- >
93
- > This architecture reduces coupling between release cycles, lets teams own isolated domains, and supports scaling services unevenly.
94
- >
95
- > For the practical workflow, see [How-To: Create a New Service].
96
-
97
- **Fix:** Move procedures to a how-to or tutorial. Keep explanation documents discursive, interpretive, and focused on reasoning rather than execution.
98
-
99
- ## Anti-Pattern 5: Mixed-Mode Document
100
-
101
- **Detection signals:** Multiple quadrant signals in one document; tutorial narration plus reference tables plus explanation prose; a page with more than two distinct purposes.
102
-
103
- **Failure mode:** The document serves no single purpose well, becomes impossible to maintain, and grows without bound.
104
-
105
- **Violation example:**
106
-
107
- > # Authentication Guide
108
- >
109
- > OAuth lets users delegate access without sharing passwords. Here is a beginner-friendly walkthrough of the handshake. Below is the full endpoint matrix and token schema. Next, compare session cookies with JWTs and evaluate the security trade-offs. Finally, follow these steps to configure SSO in production.
110
-
111
- **Compliant example:**
112
-
113
- Split the material into four documents:
114
-
115
- 1. Tutorial: Getting Started with Authentication
116
- 2. Reference: Authentication API
117
- 3. Explanation: Authentication Architecture Decisions
118
- 4. How-To: Configure SSO
119
-
120
- **Fix:** Split the page into separate documents, one per quadrant. Cross-link them so readers can move between learning, doing, understanding, and lookup without mode-switching inside a single page.
121
-
122
- ## Blur Zones
123
-
124
- Common cases where the boundary between two quadrants is genuinely ambiguous:
125
-
126
- | Content | Looks Like | Actually Is | Disambiguation |
127
- |---------|-----------|-------------|----------------|
128
- | Getting Started | Tutorial or How-to | Ask whether there is a learning journey. If yes, it is a Tutorial. If it is just "get it running", it is a How-to. | Look for staged learning versus immediate task completion. |
129
- | Architecture Overview | Explanation or Reference | If it explains why the system is shaped this way, it is Explanation. If it lists components, schemas, or interfaces, it is Reference. | Ask whether the page interprets or inventories. |
130
- | Troubleshooting | How-to or Reference | If it says "do X when Y happens", it is a How-to. If it is a lookup table of error codes or symptoms, it is Reference. | Ask whether the reader is acting or checking. |
131
- | Best Practices | Explanation or How-to | If it explains reasoning and trade-offs, it is Explanation. If it gives actionable steps to follow, it is a How-to. | Ask whether the content persuades or instructs. |
132
- | Changelog | Reference or Explanation | It is almost always Reference because it is a factual record. It only becomes Explanation when it includes design rationale and interpretation. | Ask whether the entry records changes or argues for them. |
133
-
134
- ## Common Mistakes
135
-
136
- | Mistake | Why It's Wrong | Fix |
137
- |---------|----------------|-----|
138
- | Writing a tutorial that tries to be comprehensive | Tutorials should teach one thing well, not cover everything. | Narrow the scope and link to reference for completeness. |
139
- | Embedding opinions in reference docs | Reference must be factual and trustworthy. | Move opinions to explanation docs. |
140
- | Creating empty four-section structures | Diátaxis is a quality framework, not a template to fill. | Let structure emerge from actual content needs. |
141
- | Making how-to guides that explain everything | How-to assumes competence; explanations break flow. | Link to tutorials for prerequisites and explanations for context. |
142
- | Writing explanation that lacks opinion or perspective | Good explanation connects concepts and provides insight. | Take a position and explain trade-offs and reasoning. |
143
- | Trying to classify every page | Some pages, such as README or index pages, are navigation rather than content. | Navigation pages do not need quadrant classification. |
144
-
145
- ## Attribution
146
-
147
- This reference adapts concepts from the Diátaxis framework at diataxis.fr and from keithpatton/diataxis-agent-skill. Diátaxis framework content is licensed under CC-BY-SA 4.0; retain attribution and share-alike terms for further adaptations.
@@ -1,123 +0,0 @@
1
- # The Diataxis Compass
2
-
3
- The Diataxis Compass is a simple classification aid for documentation. It reduces classification to two axes so an author can decide what kind of document they are writing before structure and tone drift across quadrants.
4
-
5
- Use it when a draft feels mixed, when a request could fit more than one documentation type, or when you need a quick check before creating a new document.
6
-
7
- ## The Two Axes
8
-
9
- The compass uses two independent axes:
10
-
11
- | Axis | Question | Poles | What it tells you |
12
- |------|----------|-------|-------------------|
13
- | Horizontal | Is the reader trying to do something or understand something? | Action vs Cognition | Whether the content should guide behavior or develop understanding |
14
- | Vertical | Is the reader learning or working? | Study vs Work | Whether the content serves acquisition or application |
15
-
16
- Interpret the axes this way:
17
-
18
- - **Action** means practical doing, following steps, executing work, or completing a task.
19
- - **Cognition** means understanding, context, concepts, relationships, or meaning.
20
- - **Study** means the reader is acquiring skill or knowledge.
21
- - **Work** means the reader is applying skill or knowledge to a real task.
22
-
23
- ## ASCII Quadrant Diagram
24
-
25
- ```text
26
- ACTION COGNITION
27
- +--------------------------------+--------------------------------+
28
- STUDY | Tutorial | Explanation |
29
- | Learn by doing | Learn by understanding |
30
- +--------------------------------+--------------------------------+
31
- WORK | How-to Guide | Reference |
32
- | Accomplish a specific task | Consult facts while working |
33
- +--------------------------------+--------------------------------+
34
- ```
35
-
36
- ## Two-Question Decision Tree
37
-
38
- Ask these questions in order:
39
-
40
- 1. Is the reader trying to **DO** something or **UNDERSTAND** something?
41
- 2. Is the reader **LEARNING** or **WORKING**?
42
-
43
- Answer matrix:
44
-
45
- | Q1 | Q2 | Result |
46
- |----|----|--------|
47
- | Action | Study | Tutorial |
48
- | Action | Work | How-to guide |
49
- | Cognition | Work | Reference |
50
- | Cognition | Study | Explanation |
51
-
52
- Short version:
53
-
54
- - Action + Study = **Tutorial**
55
- - Action + Work = **How-to guide**
56
- - Cognition + Work = **Reference**
57
- - Cognition + Study = **Explanation**
58
-
59
- ## Content Type Signals
60
-
61
- Trigger phrases are not absolute rules, but they are strong signals.
62
-
63
- | Quadrant | Typical trigger phrases or patterns | What they usually indicate |
64
- |----------|-------------------------------------|----------------------------|
65
- | Tutorial | `build your first`, `getting started`, `learn`, `introduction to`, `beginner`, `walkthrough` | A guided learning path with a defined outcome |
66
- | How-to guide | `how to`, `configure`, `deploy`, `set up`, `integrate`, `migrate`, `troubleshoot` | A task-focused guide for a user trying to solve a real problem |
67
- | Reference | `API`, `parameters`, `options`, `schema`, `configuration`, `specification`, `returns` | Structured factual material consulted during work |
68
- | Explanation | `why`, `how it works`, `overview`, `trade-offs`, `background`, `concepts`, `design` | Material meant to increase understanding and context |
69
-
70
- Signals become more reliable when they align across title, headings, verbs, and document structure.
71
-
72
- ## Confidence Calibration
73
-
74
- Use confidence to decide whether to classify, split, or rewrite.
75
-
76
- | Confidence | Interpretation | Recommended action |
77
- |------------|----------------|--------------------|
78
- | High | All signals match one quadrant | Classify directly and write fully in that mode |
79
- | Medium | Signals match one quadrant but the topic could span two | Classify to the dominant quadrant and cross-link the adjacent need |
80
- | Low | Mixed signals across quadrants | Split the document rather than forcing one label |
81
-
82
- Practical rule:
83
-
84
- - **High** means title, tone, structure, and user need all point the same way.
85
- - **Medium** means one quadrant clearly dominates, but a neighboring quadrant is tempting.
86
- - **Low** means the document is trying to teach, guide, explain, and describe at once.
87
-
88
- ## Edge Cases
89
-
90
- Some common document labels are ambiguous on their face. Classify by function, not by title alone.
91
-
92
- | Content label | Recommended classification | Reasoning |
93
- |---------------|----------------------------|-----------|
94
- | README | Reference | Usually a project summary and entry point, not a discursive explanation |
95
- | FAQ | Split per question | Each answer may belong to a different quadrant |
96
- | Getting Started | Tutorial or How-to guide | Tutorial if aimed at learning; How-to if aimed at competent users getting started in work |
97
- | Troubleshooting | How-to guide | It is task-oriented problem solving |
98
- | Changelog | Reference | It is a factual record |
99
- | Architecture overview | Explanation | It exists to help the reader understand system design |
100
- | Migration guide | How-to guide | It helps the reader complete a concrete transition task |
101
-
102
- ## Ambiguity Protocol
103
-
104
- When classification is uncertain:
105
-
106
- 1. Default to the quadrant that serves the reader's immediate need.
107
- 2. If it is still unclear, split the document by quadrant.
108
- 3. If splitting is not worth the cost, classify it by the dominant quadrant and explicitly note the secondary one.
109
-
110
- Useful signs that a split is warranted:
111
-
112
- - the introduction promises learning, but the body is a task checklist
113
- - the document alternates between step-by-step actions and API facts
114
- - the writer keeps adding “why” digressions to operational instructions
115
- - headings naturally group into two different quadrant modes
116
-
117
- ## Attribution
118
-
119
- This document adapts concepts from the Diataxis framework at [diataxis.fr](https://diataxis.fr/), especially the Compass and related quadrant descriptions.
120
-
121
- Source material is licensed under **CC-BY-SA 4.0**.
122
-
123
- Attribution: Daniele Procida, *Diataxis*, [https://diataxis.fr/](https://diataxis.fr/).
@@ -1,192 +0,0 @@
1
- # Diataxis Quadrants
2
-
3
- This reference describes the four documentation quadrants in Diataxis: Tutorial, How-to guide, Reference, and Explanation. Use it when a document has already been classified, or when you need boundary tests to decide whether content belongs in one quadrant or has drifted into another.
4
-
5
- ## Tutorial
6
-
7
- ### Definition
8
-
9
- A tutorial is a guided learning experience. It helps a reader acquire competence by doing something meaningful in a controlled path toward a defined outcome.
10
-
11
- ### Tutorial Is / Is Not
12
-
13
- | IS | IS NOT |
14
- |----|--------|
15
- | Learning-oriented | A reference to consult |
16
- | Practical and guided | A set of independent steps |
17
- | Structured as a path | Complete coverage of a topic |
18
- | Built around a defined outcome | A free-form discussion |
19
-
20
- ### Defining Characteristics
21
-
22
- - It is designed for a reader who is still learning.
23
- - It follows a deliberate path from start to finish.
24
- - It creates a successful encounter with the product or skill.
25
- - It limits choices so the learner can focus.
26
- - It optimizes for confidence, momentum, and visible progress.
27
-
28
- ### Language Patterns
29
-
30
- Tutorial language is guided, concrete, and supportive. It commonly uses second person and first-person plural.
31
-
32
- - `In this tutorial, you will ...`
33
- - `You'll see ...`
34
- - `Next, we ...`
35
- - `Notice that ...`
36
- - `The output should look something like ...`
37
-
38
- The tone should reduce uncertainty, set expectations, and keep the learner on a single path.
39
-
40
- ### Boundary Tests
41
-
42
- - If the steps can be done in any order, it is probably **not** a tutorial.
43
- - If there is no learning outcome, it is probably a **How-to guide**.
44
- - If the content starts listing all options and variants, it is drifting toward **Reference**.
45
- - If the content spends time on rationale and design history, it is drifting toward **Explanation**.
46
-
47
- ## How-to Guide
48
-
49
- ### Definition
50
-
51
- A how-to guide is a task-oriented document for someone trying to solve a specific problem or complete a real piece of work. It assumes the reader already has enough competence to act on concise guidance.
52
-
53
- ### How-to Is / Is Not
54
-
55
- | IS | IS NOT |
56
- |----|--------|
57
- | Task-oriented | A lesson |
58
- | Practical | An explanation of concepts |
59
- | Focused on a specific problem | A comprehensive reference |
60
- | Written for application in real work | A broad introduction |
61
-
62
- ### Defining Characteristics
63
-
64
- - It starts from a concrete goal or problem.
65
- - It is written for readers who are already doing work.
66
- - It emphasizes action, judgement, and usable sequence.
67
- - It avoids digressions into fundamentals unless strictly necessary.
68
- - It may branch for real-world conditions and alternatives.
69
-
70
- ### Language Patterns
71
-
72
- How-to language is direct and imperative. It should sound executable.
73
-
74
- - `Configure X.`
75
- - `Deploy to Y.`
76
- - `Set up the service account.`
77
- - `If you need Z, do ...`
78
- - `To migrate safely, first ...`
79
-
80
- Good how-to writing is short, concrete, and free of conceptual detours.
81
-
82
- ### Boundary Tests
83
-
84
- - If it teaches fundamentals before the task, it is drifting toward **Tutorial**.
85
- - If it mostly describes available options rather than choosing a path, it is drifting toward **Reference**.
86
- - If it answers `why` more than `what to do`, it is drifting toward **Explanation**.
87
- - If success depends on following a pedagogical sequence rather than solving a task, it belongs in **Tutorial**.
88
-
89
- ## Reference
90
-
91
- ### Definition
92
-
93
- Reference is factual documentation consulted during work. It describes the machinery, interface, structure, or behavior of the system as clearly and consistently as possible.
94
-
95
- ### Reference Is / Is Not
96
-
97
- | IS | IS NOT |
98
- |----|--------|
99
- | Information-oriented | A guide |
100
- | Austere and factual | Opinionated |
101
- | Comprehensive within scope | Narrative |
102
- | Structured consistently | Selective in the style of a lesson |
103
-
104
- ### Defining Characteristics
105
-
106
- - It is optimized for lookup, not for linear reading.
107
- - It presents facts, interfaces, constraints, and structure.
108
- - It uses a consistent pattern so readers can find answers quickly.
109
- - It aims for completeness inside a defined scope.
110
- - It avoids persuasion, instruction-heavy flow, and discursive context.
111
-
112
- ### Language Patterns
113
-
114
- Reference language is descriptive, factual, and usually third person.
115
-
116
- - `Returns {type}.`
117
- - `Accepts the following parameters ...`
118
- - `Option values are ...`
119
- - `The schema contains ...`
120
- - `Configuration keys include ...`
121
-
122
- Warnings and constraints are fine, but they should remain factual rather than tutorial or argumentative.
123
-
124
- ### Boundary Tests
125
-
126
- - If the content explains why a design exists, it belongs in **Explanation**.
127
- - If the content shows how to accomplish a task with the feature, it belongs in **How-to guide**.
128
- - If the content walks a newcomer through a first success path, it belongs in **Tutorial**.
129
- - If the content becomes selective and outcome-driven rather than complete and structured, it is no longer pure reference.
130
-
131
- ## Explanation
132
-
133
- ### Definition
134
-
135
- Explanation is understanding-oriented documentation. It connects concepts, provides rationale and background, and helps the reader build a mental model of the system or topic.
136
-
137
- ### Explanation Is / Is Not
138
-
139
- | IS | IS NOT |
140
- |----|--------|
141
- | Understanding-oriented | Step-by-step instructions |
142
- | Discursive and connective | A lookup table |
143
- | Rich in context | A tutorial |
144
- | Concerned with reasons and implications | A terse list of facts |
145
-
146
- ### Defining Characteristics
147
-
148
- - It provides context, rationale, and conceptual framing.
149
- - It connects details into a broader mental model.
150
- - It can discuss trade-offs, history, alternatives, and design intent.
151
- - It supports reflection more than immediate action.
152
- - It is bounded by topic rather than by task or API surface.
153
-
154
- ### Language Patterns
155
-
156
- Explanation language is descriptive, interpretive, and often comparative.
157
-
158
- - `The reason for ...`
159
- - `This approach was chosen because ...`
160
- - `Consider the trade-off ...`
161
- - `Historically, the system evolved this way because ...`
162
- - `An X in this system is analogous to ...`
163
-
164
- It is acceptable here to surface perspective, evaluation, and multiple interpretations.
165
-
166
- ### Boundary Tests
167
-
168
- - If the document has numbered operational steps, it likely belongs in **How-to guide** or **Tutorial**.
169
- - If it lists facts without context, it likely belongs in **Reference**.
170
- - If it promises a concrete outcome the reader will build, it likely belongs in **Tutorial**.
171
- - If it exists mainly to solve an immediate operational problem, it belongs in **How-to guide**.
172
-
173
- ## Cross-Linking Rules
174
-
175
- Quadrants should cooperate rather than compete. Each document should point to adjacent documentation types when a different reader need appears.
176
-
177
- | From | Cross-link pattern |
178
- |------|--------------------|
179
- | Tutorial | `For the full API, see [Reference].` |
180
- | How-to guide | `To understand why, see [Explanation].` |
181
- | Reference | `For a guide on using this, see [How-to].` |
182
- | Explanation | `To get started, see [Tutorial].` |
183
-
184
- Use cross-links when content would otherwise drift into the wrong quadrant. Link instead of absorbing the adjacent material.
185
-
186
- ## Attribution
187
-
188
- This document adapts concepts from the Diataxis framework at [diataxis.fr](https://diataxis.fr/), especially the quadrant descriptions and distinction pages.
189
-
190
- Source material is licensed under **CC-BY-SA 4.0**.
191
-
192
- Attribution: Daniele Procida, *Diataxis*, [https://diataxis.fr/](https://diataxis.fr/).
@@ -1,76 +0,0 @@
1
- # Diataxis Quality & Iteration
2
-
3
- How to assess and improve documentation quality using the Diátaxis framework.
4
-
5
- ## Quality Checklist
6
-
7
- Run this checklist against every document created or updated during `_docs-sync`:
8
-
9
- ### Quadrant Purity
10
- - [ ] Document serves exactly ONE Diátaxis quadrant
11
- - [ ] No mixed-mode content (tutorial narration + reference tables + explanation prose)
12
- - [ ] Language patterns match the quadrant (see diataxis-quadrants.md)
13
- - [ ] If content from another quadrant is needed, it's linked — not embedded
14
-
15
- ### Structure & Completeness
16
- - [ ] All required template sections are present (see diataxis-templates.md)
17
- - [ ] No empty placeholder sections
18
- - [ ] Cross-references to related docs in other quadrants exist
19
- - [ ] `type:` frontmatter tag matches the actual content quadrant
20
-
21
- ### Evidence & Accuracy
22
- - [ ] Claims are traceable to source files, config, or AI Kit tool output
23
- - [ ] Unknowns are marked `[TODO]`, not guessed
24
- - [ ] Team-intent items are marked `[ASK USER]`
25
- - [ ] No stale information (version numbers, deprecated APIs, removed features)
26
-
27
- ### Audience Fit
28
- - [ ] Tutorial: assumes beginner, teaches one skill, shows visible results at each step
29
- - [ ] How-To: assumes competence, addresses specific task, no unnecessary explanation
30
- - [ ] Reference: factual, comprehensive, consistent structure, austere
31
- - [ ] Explanation: provides context, takes a position, connects concepts
32
-
33
- ## Iterative Improvement Process
34
-
35
- Documentation improves incrementally. Don't try to perfect everything at once.
36
-
37
- ### The Loop
38
-
39
- ```
40
- 1. Pick one document (or section, or paragraph)
41
- 2. Classify it → which Diátaxis quadrant?
42
- 3. Check → does it serve that quadrant well? (use checklist above)
43
- 4. Make one improvement
44
- 5. Repeat
45
- ```
46
-
47
- ### When to Iterate
48
-
49
- | Trigger | Action |
50
- |---------|--------|
51
- | New doc created during `_docs-sync` | Run full checklist before committing |
52
- | Existing doc updated | Check only the modified sections |
53
- | Docs audit requested | Run checklist on all docs; prioritize by staleness |
54
- | Content feels wrong but works | Classify first — often the issue is quadrant mixing |
55
-
56
- ### Organic Growth (from diataxis.fr)
57
-
58
- - Let documentation structure emerge from content needs — don't create empty four-section structures
59
- - A project with no tutorials doesn't need a `tutorials/` directory
60
- - Add documentation types as the project actually needs them
61
- - Perfect is the enemy of good — a correct how-to guide is better than no documentation
62
-
63
- ### Scoring (optional, for audits)
64
-
65
- Per document, count how many checklist items pass out of the total applicable items.
66
-
67
- | Score | Quality | Action |
68
- |-------|---------|--------|
69
- | 100% | Excellent | No action needed |
70
- | 75-99% | Good | Fix during next relevant change |
71
- | 50-74% | Needs work | Schedule improvement |
72
- | <50% | Poor | Rewrite or split immediately |
73
-
74
- ---
75
-
76
- *Quality framework follows the Diátaxis documentation framework (CC-BY-SA 4.0, Daniele Procida).*
@@ -1,120 +0,0 @@
1
- # Diataxis Templates
2
-
3
- Templates for Tutorial and Explanation documents. For How-To and Reference templates, see the main docs SKILL.md.
4
-
5
- ## Tutorial Template
6
-
7
- **Location**: `docs/guides/tutorials/{topic}.md`
8
- **Quadrant**: Tutorial (learning-oriented, practical)
9
-
10
- ```markdown
11
- ---
12
- type: tutorial
13
- ---
14
-
15
- # Tutorial: {Title — Start with a Verb Phrase}
16
-
17
- > **What you'll build/learn**: One sentence describing the concrete outcome.
18
-
19
- ## Prerequisites
20
-
21
- - {Prerequisite 1} — [install guide](link)
22
- - {Prerequisite 2}
23
-
24
- ## Steps
25
-
26
- ### 1. {First Visible Result}
27
-
28
- {Concrete action with immediate, visible output.}
29
-
30
- ```bash
31
- {command or code}
32
- ```
33
-
34
- > **You'll see**: {expected output — always show what success looks like}
35
-
36
- ### 2. {Build on Step 1}
37
-
38
- {Next concrete action that builds on the previous result.}
39
-
40
- > **You'll see**: {expected output}
41
-
42
- ### 3. {Complete the Goal}
43
-
44
- {Final action that achieves the tutorial's stated outcome.}
45
-
46
- > **You'll see**: {final result matching the "What you'll build" promise}
47
-
48
- ## What You Learned
49
-
50
- {One-paragraph summary of skills acquired. No new concepts here.}
51
-
52
- ## Next Steps
53
-
54
- - [How to {related task}](../guides/{topic}.md) — apply what you learned
55
- - [{Topic} Reference](../../reference/{topic}.md) — full API details
56
- - [About {concept}](../../architecture/{topic}.md) — understand the design
57
- ```
58
-
59
- ### Tutorial Rules
60
-
61
- 1. **Always show results** — every step must have a "You'll see" block
62
- 2. **Linear path only** — no branching, no optional steps, no alternatives
63
- 3. **No explanations** — if the reader asks "why?", link to an Explanation doc
64
- 4. **Concrete outcome** — the tutorial must produce something visible (output, file, running service)
65
- 5. **Minimum viable scope** — teach ONE thing; link to other tutorials for more
66
-
67
- ## Explanation Template
68
-
69
- **Location**: `docs/architecture/{topic}.md` or `docs/decisions/NNN-{title}.md`
70
- **Quadrant**: Explanation (understanding-oriented, theoretical)
71
-
72
- ```markdown
73
- ---
74
- type: explanation
75
- ---
76
-
77
- # About {Topic}
78
-
79
- ## Context
80
-
81
- {Why this topic matters. What problem or question it addresses. Set the stage.}
82
-
83
- ## Background
84
-
85
- {Historical context, prior art, or constraints that shaped the current approach.}
86
-
87
- ## How It Works
88
-
89
- {Discursive description — connections between components, data flow, design reasoning.}
90
- {NO step-by-step procedures — link to How-To guides for that.}
91
-
92
- ## Design Decisions
93
-
94
- {Why this approach was chosen over alternatives.}
95
- {Link to ADRs where they exist: [ADR-NNN](../decisions/NNN-{title}.md)}
96
-
97
- ## Trade-Offs
98
-
99
- | Gained | Sacrificed |
100
- |--------|-----------|
101
- | {benefit} | {cost} |
102
-
103
- ## Related
104
-
105
- - [How to {task}](../guides/{topic}.md) — practical application
106
- - [{API} Reference](../reference/{topic}.md) — technical details
107
- - [Tutorial: {topic}](../guides/tutorials/{topic}.md) — hands-on introduction
108
- ```
109
-
110
- ### Explanation Rules
111
-
112
- 1. **Take a position** — good explanation has perspective and opinion
113
- 2. **Connect concepts** — show relationships, not isolated facts
114
- 3. **No procedures** — if you write "Step 1:", move it to a How-To doc
115
- 4. **Bounded scope** — explain ONE concept/decision/pattern per document
116
- 5. **Link to evidence** — reference ADRs, code, or analysis tool output
117
-
118
- ---
119
-
120
- *Templates follow the Diátaxis documentation framework (CC-BY-SA 4.0, Daniele Procida).*