@duypham93/openkit 0.2.0

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 (178) hide show
  1. package/.opencode/README.md +47 -0
  2. package/.opencode/install-manifest.json +41 -0
  3. package/.opencode/lib/artifact-scaffolder.js +111 -0
  4. package/.opencode/lib/contract-consistency.js +218 -0
  5. package/.opencode/lib/parallel-execution-rules.js +261 -0
  6. package/.opencode/lib/runtime-paths.js +95 -0
  7. package/.opencode/lib/runtime-summary.js +82 -0
  8. package/.opencode/lib/state-guard.js +99 -0
  9. package/.opencode/lib/task-board-rules.js +375 -0
  10. package/.opencode/lib/work-item-store.js +280 -0
  11. package/.opencode/lib/workflow-state-controller.js +1739 -0
  12. package/.opencode/lib/workflow-state-rules.js +331 -0
  13. package/.opencode/opencode.json +93 -0
  14. package/.opencode/package.json +3 -0
  15. package/.opencode/tests/artifact-scaffolder.test.js +733 -0
  16. package/.opencode/tests/multi-work-item-runtime.test.js +369 -0
  17. package/.opencode/tests/parallel-execution-runtime.test.js +259 -0
  18. package/.opencode/tests/session-start-hook.test.js +357 -0
  19. package/.opencode/tests/state-guard.test.js +124 -0
  20. package/.opencode/tests/task-board-rules.test.js +204 -0
  21. package/.opencode/tests/work-item-store.test.js +380 -0
  22. package/.opencode/tests/workflow-behavior.test.js +149 -0
  23. package/.opencode/tests/workflow-contract-consistency.test.js +387 -0
  24. package/.opencode/tests/workflow-state-cli.test.js +1275 -0
  25. package/.opencode/tests/workflow-state-controller.test.js +1038 -0
  26. package/.opencode/work-items/feature-001/state.json +70 -0
  27. package/.opencode/work-items/index.json +13 -0
  28. package/.opencode/workflow-state.js +489 -0
  29. package/.opencode/workflow-state.json +70 -0
  30. package/AGENTS.md +265 -0
  31. package/README.md +401 -0
  32. package/agents/architect-agent.md +63 -0
  33. package/agents/ba-agent.md +56 -0
  34. package/agents/code-reviewer.md +77 -0
  35. package/agents/fullstack-agent.md +115 -0
  36. package/agents/master-orchestrator.md +60 -0
  37. package/agents/pm-agent.md +56 -0
  38. package/agents/qa-agent.md +124 -0
  39. package/agents/tech-lead-agent.md +60 -0
  40. package/assets/install-bundle/README.md +7 -0
  41. package/assets/install-bundle/opencode/README.md +11 -0
  42. package/assets/install-bundle/opencode/agents/ArchitectAgent.md +63 -0
  43. package/assets/install-bundle/opencode/agents/BAAgent.md +56 -0
  44. package/assets/install-bundle/opencode/agents/CodeReviewer.md +77 -0
  45. package/assets/install-bundle/opencode/agents/FullstackAgent.md +115 -0
  46. package/assets/install-bundle/opencode/agents/MasterOrchestrator.md +60 -0
  47. package/assets/install-bundle/opencode/agents/PMAgent.md +56 -0
  48. package/assets/install-bundle/opencode/agents/QAAgent.md +124 -0
  49. package/assets/install-bundle/opencode/agents/TechLeadAgent.md +60 -0
  50. package/assets/install-bundle/opencode/commands/brainstorm.md +44 -0
  51. package/assets/install-bundle/opencode/commands/delivery.md +45 -0
  52. package/assets/install-bundle/opencode/commands/execute-plan.md +44 -0
  53. package/assets/install-bundle/opencode/commands/migrate.md +61 -0
  54. package/assets/install-bundle/opencode/commands/quick-task.md +45 -0
  55. package/assets/install-bundle/opencode/commands/task.md +46 -0
  56. package/assets/install-bundle/opencode/commands/write-plan.md +50 -0
  57. package/assets/install-bundle/opencode/context/core/lane-selection.md +54 -0
  58. package/assets/install-bundle/opencode/skills/brainstorming/SKILL.md +51 -0
  59. package/assets/install-bundle/opencode/skills/code-review/SKILL.md +48 -0
  60. package/assets/install-bundle/opencode/skills/subagent-driven-development/SKILL.md +79 -0
  61. package/assets/install-bundle/opencode/skills/systematic-debugging/SKILL.md +61 -0
  62. package/assets/install-bundle/opencode/skills/test-driven-development/SKILL.md +48 -0
  63. package/assets/install-bundle/opencode/skills/using-skills/SKILL.md +39 -0
  64. package/assets/install-bundle/opencode/skills/verification-before-completion/SKILL.md +137 -0
  65. package/assets/install-bundle/opencode/skills/writing-plans/SKILL.md +68 -0
  66. package/assets/install-bundle/opencode/skills/writing-specs/SKILL.md +47 -0
  67. package/assets/opencode.json.template +11 -0
  68. package/assets/openkit-install.json.template +19 -0
  69. package/bin/openkit.js +9 -0
  70. package/commands/brainstorm.md +44 -0
  71. package/commands/delivery.md +45 -0
  72. package/commands/execute-plan.md +44 -0
  73. package/commands/migrate.md +61 -0
  74. package/commands/quick-task.md +45 -0
  75. package/commands/task.md +46 -0
  76. package/commands/write-plan.md +50 -0
  77. package/context/core/approval-gates.md +146 -0
  78. package/context/core/code-quality.md +42 -0
  79. package/context/core/issue-routing.md +85 -0
  80. package/context/core/lane-selection.md +54 -0
  81. package/context/core/project-config.md +143 -0
  82. package/context/core/session-resume.md +85 -0
  83. package/context/core/workflow-state-schema.md +224 -0
  84. package/context/core/workflow.md +442 -0
  85. package/context/navigation.md +94 -0
  86. package/docs/adr/README.md +6 -0
  87. package/docs/architecture/2026-03-20-task-intake-dashboard.md +54 -0
  88. package/docs/architecture/README.md +7 -0
  89. package/docs/briefs/2026-03-20-task-intake-dashboard.md +48 -0
  90. package/docs/briefs/README.md +7 -0
  91. package/docs/governance/README.md +25 -0
  92. package/docs/governance/adr-policy.md +27 -0
  93. package/docs/governance/definition-of-done.md +17 -0
  94. package/docs/governance/naming-conventions.md +21 -0
  95. package/docs/governance/severity-levels.md +12 -0
  96. package/docs/maintainer/README.md +51 -0
  97. package/docs/operations/README.md +79 -0
  98. package/docs/operations/internal-records/2026-03-24-release-checklist.md +79 -0
  99. package/docs/operations/internal-records/2026-03-24-simplified-install-ux.md +36 -0
  100. package/docs/operations/internal-records/README.md +18 -0
  101. package/docs/operations/runbooks/README.md +23 -0
  102. package/docs/operations/runbooks/openkit-daily-usage.md +288 -0
  103. package/docs/operations/runbooks/workflow-state-smoke-tests.md +302 -0
  104. package/docs/operator/README.md +50 -0
  105. package/docs/plans/2026-03-20-task-intake-dashboard.md +49 -0
  106. package/docs/plans/2026-03-21-openkit-full-delivery-multi-task-runtime.md +521 -0
  107. package/docs/plans/2026-03-23-openkit-global-install-runtime.md +157 -0
  108. package/docs/plans/README.md +7 -0
  109. package/docs/qa/2026-03-20-task-intake-dashboard.md +41 -0
  110. package/docs/qa/README.md +7 -0
  111. package/docs/specs/2026-03-20-task-intake-dashboard.md +50 -0
  112. package/docs/specs/2026-03-21-openkit-full-delivery-multi-task-runtime.md +462 -0
  113. package/docs/specs/README.md +7 -0
  114. package/docs/templates/README.md +36 -0
  115. package/docs/templates/adr-template.md +18 -0
  116. package/docs/templates/architecture-template.md +31 -0
  117. package/docs/templates/implementation-plan-template.md +32 -0
  118. package/docs/templates/migration-baseline-checklist.md +48 -0
  119. package/docs/templates/migration-plan-template.md +52 -0
  120. package/docs/templates/migration-report-template.md +74 -0
  121. package/docs/templates/migration-verify-checklist.md +39 -0
  122. package/docs/templates/product-brief-template.md +32 -0
  123. package/docs/templates/qa-report-template.md +37 -0
  124. package/docs/templates/quick-task-template.md +36 -0
  125. package/docs/templates/spec-template.md +31 -0
  126. package/hooks/hooks.json +16 -0
  127. package/hooks/session-start +162 -0
  128. package/package.json +24 -0
  129. package/registry.json +328 -0
  130. package/skills/brainstorming/SKILL.md +51 -0
  131. package/skills/code-review/SKILL.md +48 -0
  132. package/skills/subagent-driven-development/SKILL.md +79 -0
  133. package/skills/systematic-debugging/SKILL.md +61 -0
  134. package/skills/test-driven-development/SKILL.md +48 -0
  135. package/skills/using-skills/SKILL.md +39 -0
  136. package/skills/verification-before-completion/SKILL.md +137 -0
  137. package/skills/writing-plans/SKILL.md +68 -0
  138. package/skills/writing-specs/SKILL.md +47 -0
  139. package/src/audit/vietnamese-detection.js +259 -0
  140. package/src/cli/commands/detect-vietnamese.js +24 -0
  141. package/src/cli/commands/doctor.js +33 -0
  142. package/src/cli/commands/help.js +33 -0
  143. package/src/cli/commands/init.js +25 -0
  144. package/src/cli/commands/install-global.js +26 -0
  145. package/src/cli/commands/install.js +25 -0
  146. package/src/cli/commands/run.js +63 -0
  147. package/src/cli/commands/uninstall.js +32 -0
  148. package/src/cli/commands/upgrade.js +25 -0
  149. package/src/cli/conflict-output.js +19 -0
  150. package/src/cli/index.js +56 -0
  151. package/src/global/doctor.js +101 -0
  152. package/src/global/ensure-install.js +32 -0
  153. package/src/global/install-state.js +73 -0
  154. package/src/global/launcher.js +51 -0
  155. package/src/global/materialize.js +123 -0
  156. package/src/global/paths.js +85 -0
  157. package/src/global/uninstall.js +25 -0
  158. package/src/global/workspace-state.js +63 -0
  159. package/src/install/asset-manifest.js +284 -0
  160. package/src/install/conflicts.js +43 -0
  161. package/src/install/discovery.js +138 -0
  162. package/src/install/install-state.js +136 -0
  163. package/src/install/materialize.js +158 -0
  164. package/src/install/merge-policy.js +145 -0
  165. package/src/runtime/doctor.js +281 -0
  166. package/src/runtime/launcher.js +49 -0
  167. package/src/runtime/opencode-layering.js +135 -0
  168. package/src/runtime/openkit-managed-summary.js +27 -0
  169. package/tests/cli/openkit-cli.test.js +417 -0
  170. package/tests/global/doctor.test.js +130 -0
  171. package/tests/global/ensure-install.test.js +105 -0
  172. package/tests/install/discovery.test.js +124 -0
  173. package/tests/install/install-state.test.js +346 -0
  174. package/tests/install/materialize.test.js +244 -0
  175. package/tests/install/merge-policy.test.js +177 -0
  176. package/tests/runtime/doctor.test.js +430 -0
  177. package/tests/runtime/launcher.test.js +230 -0
  178. package/tests/runtime/module-boundary.test.js +16 -0
package/AGENTS.md ADDED
@@ -0,0 +1,265 @@
1
+ # Repository Agent Guide
2
+
3
+ ## Purpose
4
+
5
+ This repository is currently a minimal documentation-first workspace.
6
+ Its near-term goal is to become an OpenCode kit shaped by two influences:
7
+
8
+ - OpenAgents Control as a reference for agent orchestration concepts
9
+ - superpowers as a reference for agent workflow discipline and reusable skills
10
+
11
+ Treat that direction as a planned target, not as an already implemented stack.
12
+
13
+ ## Current State
14
+
15
+ This repository implements the **OpenKit AI Software Factory**, a mode-aware workflow kit for daily software work:
16
+
17
+ - `Quick Task` for narrow, low-risk tasks that should move fast
18
+ - `Migration` for project upgrades, framework migrations, dependency modernization, and compatibility remediation
19
+ - `Full Delivery` for feature work that benefits from the full multi-role team flow
20
+
21
+ The live quick lane uses `Quick Task+` successor semantics while preserving the dedicated runtime modes: `quick`, `migration`, and `full`. Treat `Quick Task+` as the current semantics of the `quick` lane, not as a third mode.
22
+
23
+ The kit is structured into several core directories:
24
+
25
+ - `agents/`: Definitions for the primary team roles plus helper subagents such as `code-reviewer.md`
26
+ - `skills/`: Composable workflow procedures (TDD, brainstorming, planning, debugging)
27
+ - `commands/`: User-facing triggers such as `/task`, `/quick-task`, `/migrate`, `/delivery`, `/brainstorm`, `/write-plan`, and `/execute-plan`
28
+ - `context/`: Shared intelligence (`navigation.md`, `core/code-quality.md`, `core/workflow.md`)
29
+ - `hooks/`: Session bootstrap integration (`session-start`)
30
+ - `.opencode/`: Configuration for the OpenCode environment
31
+ - `docs/templates/`: Source-of-truth templates for workflow artifacts
32
+ - `docs/tasks/`: Lightweight task cards for quick-mode traceability when needed
33
+ - `docs/operator/`: Operator-facing index layer for daily routing
34
+ - `docs/maintainer/`: Maintainer-facing index layer for repository upkeep routing
35
+ - `docs/governance/`: Naming, severity, ADR, and definition-of-done policy
36
+ - `docs/operations/`: Runbook and operations guidance
37
+
38
+ Current repository facts:
39
+
40
+ - The current workflow contract is the hard-split design described in `context/core/workflow.md`
41
+ - `context/core/workflow.md` is the canonical workflow-semantics document for lane behavior, stages, escalation, approvals, and quick-lane artifact expectations
42
+ - Historical planning and example docs have been intentionally pruned from the working tree; prefer current runtime docs and git history when older rationale is needed
43
+ - `npm install -g openkit`, `openkit run`, `openkit doctor`, `openkit upgrade`, and `openkit uninstall` now define the preferred operator path for the global OpenKit kit
44
+ - `.opencode/opencode.json` is present as the runtime manifest for this kit
45
+ - `.opencode/workflow-state.json` is present as the active external compatibility mirror for the active work item
46
+ - `.opencode/work-items/` is present as the internal per-item workflow backing store for managed runtime state
47
+ - `.opencode/workflow-state.js` now supports the live mode-aware workflow state contract
48
+ - No repo-native build command is currently defined for application code
49
+ - No repo-native lint command is currently defined for application code
50
+ - No repo-native test command is currently defined for application code
51
+ - No `.cursorrules` file was found
52
+ - No `.cursor/rules/` directory was found
53
+ - No `.github/copilot-instructions.md` file was found
54
+
55
+ Do not assume package managers, frameworks, CI workflows, test runners, or deployment tooling that are not explicitly added to the repository.
56
+
57
+ ## Planned Direction
58
+
59
+ The kit foundation is now established. The next phase is to use this team to build actual application source trees, proving the effectiveness of the:
60
+
61
+ - explicit orchestration and handoff points between agents
62
+ - reusable instructions in the `skills/` directory
63
+ - stronger validation loops before work is considered complete
64
+ - quick-lane speed for daily tasks without losing the full-delivery path for feature work
65
+
66
+ Approved follow-on direction from FEATURE-002 also includes:
67
+
68
+ - further refining the existing quick lane after the current `Quick Task+` successor semantics while keeping lane semantics explicit and mode-aware
69
+ - hardening runtime bootstrap, diagnostics, and workflow-level verification
70
+
71
+ The next product-layer direction is the global OpenKit kit layered over OpenCode while preserving the checked-in authoring and compatibility runtime. In this repository today:
72
+
73
+ - the global install path is implemented for the `openkit` CLI and stores the managed kit inside the OpenCode home directory, materializing it automatically on first `openkit run`
74
+ - `.opencode/opencode.json` remains the checked-in authoring and compatibility runtime manifest
75
+ - `registry.json` remains checked-in local metadata describing repository surfaces and profiles
76
+ - `.opencode/install-manifest.json` remains additive local install metadata for this repository
77
+ - project artifacts stay local to the target repository, while kit installation and workspace state are managed through the global OpenKit path
78
+
79
+ Until application code lands, test runners and build tooling remain targets rather than current capabilities.
80
+
81
+ Continue to use the current `Quick Task`, `Migration`, and `Full Delivery` contract, current command names, and current workflow-state enums unless a later implemented change updates them.
82
+
83
+ ## Source Of Truth Files
84
+
85
+ Use the following order when deciding what is authoritative:
86
+
87
+ 1. Direct user instructions in the current session
88
+ 2. Root `AGENTS.md`
89
+ 3. `context/core/workflow.md` for the canonical live workflow contract
90
+ 4. Companion core workflow docs for local operational details:
91
+ - `context/core/approval-gates.md`
92
+ - `context/core/issue-routing.md`
93
+ - `context/core/session-resume.md`
94
+ - `context/core/project-config.md`
95
+ - `context/core/workflow-state-schema.md`
96
+ 5. Repository files that actually exist in the working tree
97
+
98
+ Phase-1 IA note:
99
+
100
+ - `docs/operator/` and `docs/maintainer/` are index layers for audience-specific routing only
101
+ - they do not replace canonical sources under `context/core/`, `docs/governance/`, `docs/operations/`, or the artifact directories
102
+
103
+ Historical and roadmap note for maintainers:
104
+
105
+ - Most historical planning docs were intentionally pruned from the working tree during repository cleanup.
106
+ - If you need older rationale, inspect git history instead of assuming archived docs still exist in-tree.
107
+
108
+ If guidance conflicts with repository state, trust the repository state and update documentation instead of inventing missing pieces.
109
+
110
+ ## Repo Navigation Guidance
111
+
112
+ - Start with `AGENTS.md` for repository-wide rules, then use `context/navigation.md` to locate the specific workflow or standards docs you need
113
+ - Use `docs/operator/README.md` for operator wayfinding and `docs/maintainer/README.md` for maintainer wayfinding when audience-specific routing helps
114
+ - Treat `docs/` as the current center of gravity for repository knowledge
115
+ - Verify file existence before referencing paths in plans or instructions
116
+ - Prefer small, targeted edits over broad speculative restructuring
117
+ - When new top-level areas are introduced, add them to this guide
118
+ - If a task is resumable, read `.opencode/workflow-state.json` as the active compatibility mirror, then inspect `.opencode/work-items/` when task-aware full-delivery context is relevant
119
+ - When resuming workflow, determine `mode` first, then load the mode-appropriate artifact context
120
+
121
+ Because the repository is still minimal, agents should explain assumptions plainly and avoid acting as if hidden infrastructure exists.
122
+
123
+ ## Build, Lint, And Test Commands
124
+
125
+ Current state:
126
+
127
+ - No repository-native build command is currently defined for application code
128
+ - No repository-native lint command is currently defined for application code
129
+ - No repository-native test command is currently defined for application code
130
+ - No single canonical package manager or language toolchain has been established for future generated applications
131
+ - Node.js is a documented runtime dependency for the workflow-state utility only, not for future application code by default
132
+ - The workflow-state CLI exists and is aligned with the live stage and approval model documented in this repository
133
+ - The repository-local runtime still boots from `.opencode/opencode.json`; do not claim that a root `opencode.json` entrypoint already exists unless the file is added
134
+
135
+ Rules for agents:
136
+
137
+ - Do not claim that `npm`, `pnpm`, `bun`, `yarn`, `pytest`, `cargo`, `go test`, or similar commands are available unless supporting files are added
138
+ - When introducing tooling in the future, document the actual command in this file and in `context/core/project-config.md` at the same time
139
+ - If validation is not possible because tooling does not exist yet, say so explicitly in your report
140
+ - Use `.opencode/workflow-state.js` for workflow-state inspection and mutation when you need explicit state operations
141
+
142
+ Future patterns to adopt once tooling exists:
143
+
144
+ - JavaScript example only: `pnpm build`
145
+ - JavaScript example only: `pnpm lint`
146
+ - JavaScript example only: `pnpm test`
147
+ - Python example only: `pytest`
148
+ - Rust example only: `cargo test`
149
+
150
+ These are illustrative patterns, not current repository commands.
151
+
152
+ ## Workflow Artifacts And State
153
+
154
+ The operating system layer is file-backed and should stay explicit.
155
+
156
+ - Runtime manifest: `.opencode/opencode.json`
157
+ - Runtime manifest for the checked-in authoring surface: `.opencode/opencode.json`
158
+ - Active compatibility mirror: `.opencode/workflow-state.json`
159
+ - Per-item backing store: `.opencode/work-items/`
160
+ - Workflow-state CLI: `node .opencode/workflow-state.js ...`
161
+ - Artifact templates: `docs/templates/`
162
+ - Operational runbooks: `docs/operations/runbooks/`
163
+
164
+ Global-kit compatibility contract:
165
+
166
+ - Treat the global OpenKit install path as additive over the checked-in runtime surfaces.
167
+ - Do not describe registry or install-manifest metadata as plugin-only, remote-only, or destructive-install machinery.
168
+ - Keep docs and metadata aligned about what exists now versus what is only planned.
169
+
170
+ Required artifact outputs by mode:
171
+
172
+ - Quick Task -> optional `docs/tasks/YYYY-MM-DD-<task>.md`; bounded planning happens in the live `quick_plan` stage and does not require a separate mandatory doc artifact
173
+ - Migration -> optional `docs/architecture/YYYY-MM-DD-<migration>.md` and `docs/plans/YYYY-MM-DD-<migration>.md` when baseline and staged strategy need durable artifacts
174
+ - Full Delivery / PM -> `docs/briefs/YYYY-MM-DD-<feature>.md`
175
+ - Full Delivery / BA -> `docs/specs/YYYY-MM-DD-<feature>.md`
176
+ - Full Delivery / Architect -> `docs/architecture/YYYY-MM-DD-<feature>.md`
177
+ - Full Delivery / Tech Lead -> `docs/plans/YYYY-MM-DD-<feature>.md`
178
+ - Full Delivery / QA -> `docs/qa/YYYY-MM-DD-<feature>.md`
179
+ - Architect decisions -> `docs/adr/YYYY-MM-DD-<decision>.md`
180
+ - Full Delivery execution task board -> `.opencode/work-items/<work_item_id>/tasks.json` when the implemented runtime creates one
181
+
182
+ Quick lane note:
183
+
184
+ - `Quick Task+` successor semantics are live in the current `quick` lane
185
+ - `quick_plan` is a required quick stage
186
+ - task cards remain optional unless a later implemented change makes them mandatory
187
+ - quick mode still has no task board; execution task boards belong only to full-delivery work items
188
+
189
+ Migration lane note:
190
+
191
+ - migration mode uses `migration_*` stages for baseline, strategy, upgrade, and verification work
192
+ - migration mode is the right lane when compatibility risk and staged upgrade sequencing dominate the task
193
+ - migration mode is not TDD-first by default; validation centers on baseline evidence, regression checks, and compatibility verification
194
+ - migration mode is behavior-preserving by default; refactor only to create seams or adapters that make the upgrade safe
195
+ - migration mode still has no task board; execution task boards belong only to full-delivery work items
196
+
197
+ ## Single-Test Guidance
198
+
199
+ There is no current repo-native single-test command because no test toolchain is defined yet.
200
+
201
+ When a test framework is added, document exact single-test commands here. Until then, future maintainers may use patterns like these as references only:
202
+
203
+ - JavaScript example only: `pnpm test -- --runInBand path/to/test`
204
+ - JavaScript example only: `pnpm vitest path/to/test`
205
+ - Python example only: `pytest path/to/test.py -k name`
206
+ - Rust example only: `cargo test test_name`
207
+
208
+ Label any such command as an example until the repository adopts that toolchain.
209
+
210
+ ## Code Style And Engineering Standards
211
+
212
+ These standards are intentionally conservative so they are useful before a full codebase exists.
213
+
214
+ - **Imports:** Import only what a file uses. Prefer explicit imports over wildcard imports. Keep import groups stable and easy to scan. Remove unused imports in the same change that introduces them.
215
+ - **Formatting:** Follow the configured formatter or linter once one exists. Before that, favor readable defaults: consistent indentation and predictable line wrapping. Do not reformat unrelated files just because you touched the repository.
216
+ - **Type discipline:** Prefer explicit types, schemas, or contracts when the language supports them. Avoid broad `any`-style escapes unless the surrounding codebase already relies on them and the reason is documented. Make nullability, optional fields, and error cases explicit.
217
+ - **Naming:** Use descriptive names that reflect domain intent. Avoid abbreviations unless they are already standard in the repository or ecosystem. Match existing naming patterns before introducing new ones.
218
+ - **Function and file scope:** Keep files focused on one primary responsibility. Keep functions small enough that intent is obvious without heavy commentary. Split large or mixed-responsibility work into smaller units when that reduces ambiguity.
219
+ - **Error handling:** Fail loudly enough that the next agent can diagnose the issue. Do not swallow errors without recording why that is safe. Return or raise structured errors when the surrounding stack supports it.
220
+ - **Tests:** Add or update tests when behavior changes and a test framework exists. If no test framework exists yet, describe the missing validation path in your report. Prefer tests that validate behavior and acceptance criteria rather than implementation trivia.
221
+ - **Documentation updates:** Update relevant docs when commands, workflows, assumptions, or architecture change. Keep `AGENTS.md` aligned with the real repository state. Do not leave future agents to infer decisions from code alone.
222
+ - **Avoid hidden assumptions:** State assumptions directly when requirements or tooling are incomplete. Do not claim integrations, services, folders, or automation that are not present. Prefer factual wording over aspirational wording in current-state sections.
223
+
224
+ ## Workflow Expectations
225
+
226
+ Use `context/core/workflow.md` as the canonical workflow reference and adapt it to the repository's current scale.
227
+
228
+ - Choose the lane early: `Quick Task` for bounded low-risk work, `Migration` for upgrades and modernization, `Full Delivery` for feature and higher-risk work
229
+ - Record and respect the routing profile behind the lane choice: work intent, behavior delta, dominant uncertainty, and scope shape should support the chosen mode instead of contradicting it
230
+ - Treat `Quick Task+` as the live successor semantics of the existing quick lane, not as permission to invent a third mode, rename commands, or change enums unless the repository explicitly does so
231
+ - Plan before coding. Even quick tasks need a clear objective, acceptance bullets, and validation path
232
+ - Keep responsibilities explicit. Quick mode follows the canonical `quick_*` stage chain in `context/core/workflow.md`, migration mode follows the canonical `migration_*` stage chain, and full mode uses the broader delivery team
233
+ - In the implemented full runtime, feature-level ownership still follows the stage owner while task-level ownership may be distributed through the full-delivery execution task board
234
+ - Use feedback loops. Implementation is not complete until validation has run or the lack of validation tooling has been called out clearly
235
+ - Do not skip review or validation because a task looks simple
236
+ - Route issues by type and by mode: quick bugs loop within quick mode, migration bugs and compatibility flaws loop within migration mode, but product or requirement ambiguity must escalate to full delivery
237
+ - Treat parallel support conservatively: only rely on task-board coordination, active-work-item switching, and task-level owner commands that the checked-in runtime actually enforces
238
+ - Do not create commits unless the user explicitly asks for them, even if agent-level instructions mention frequent commit opportunities
239
+
240
+ In a minimal repository, one agent may perform several roles. Preserve the role boundaries conceptually even when one worker executes multiple steps.
241
+
242
+ ## Cursor And Copilot Rules Status
243
+
244
+ Current known status:
245
+
246
+ - `.cursorrules` is absent
247
+ - `.cursor/rules/` is absent
248
+ - `.github/copilot-instructions.md` is absent
249
+
250
+ Do not claim editor-specific rule coverage until those files are added.
251
+
252
+ ## Maintenance Instructions
253
+
254
+ - Update this file when new tooling, directories, workflows, or rule files are introduced
255
+ - Replace example commands with actual commands as soon as the repository adopts a concrete stack
256
+ - Keep the distinction between current state and planned direction obvious
257
+ - Prefer small factual updates over long narrative rewrites
258
+ - If another document becomes authoritative for workflow, name it explicitly here
259
+
260
+ ## Working Agreement For Future Contributors
261
+
262
+ - Be accurate first
263
+ - Be explicit about what exists today
264
+ - Be clear about what is planned but not yet implemented
265
+ - Leave the repository easier for the next agent to understand