owflow 0.1.10 → 0.3.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 (82) hide show
  1. package/README.md +81 -28
  2. package/dist/agents/code-reviewer.md +1 -1
  3. package/dist/agents/production-readiness-checker.md +1 -1
  4. package/dist/agents/project-analyzer.md +0 -1
  5. package/dist/agents/task-classifier.md +3 -3
  6. package/dist/commands/agents-md-generator.md +36 -0
  7. package/dist/commands/dev-analyze.md +33 -0
  8. package/dist/commands/dev-bugfix.md +37 -0
  9. package/dist/commands/dev-finalize.md +33 -0
  10. package/dist/commands/dev-implement.md +34 -0
  11. package/dist/commands/dev-plan.md +37 -0
  12. package/dist/commands/dev-spec.md +37 -0
  13. package/dist/commands/dev-tdd-red.md +33 -0
  14. package/dist/commands/dev-verify.md +33 -0
  15. package/dist/commands/development.md +11 -12
  16. package/dist/commands/diagrams-mermaid.md +3 -4
  17. package/dist/commands/flow-init.md +3 -4
  18. package/dist/commands/goal-development.md +32 -0
  19. package/dist/commands/html-renderer.md +3 -4
  20. package/dist/commands/migration.md +3 -4
  21. package/dist/commands/performance.md +3 -4
  22. package/dist/commands/research.md +3 -4
  23. package/dist/commands/reviews-code.md +4 -4
  24. package/dist/commands/reviews-pragmatic.md +4 -4
  25. package/dist/commands/reviews-production-readiness.md +4 -4
  26. package/dist/commands/reviews-reality-check.md +4 -4
  27. package/dist/commands/reviews-spec-audit.md +4 -4
  28. package/dist/commands/rule-reviewer.md +38 -0
  29. package/dist/commands/standards-discover.md +3 -4
  30. package/dist/commands/standards-update.md +3 -4
  31. package/dist/commands/work.md +19 -19
  32. package/dist/configuration/agents-config.js +66 -0
  33. package/dist/configuration/commands-config.js +21 -0
  34. package/dist/configuration/skills-config.js +10 -0
  35. package/dist/constants.js +4 -0
  36. package/dist/hooks/before-tool.js +19 -0
  37. package/dist/hooks/session-compaction.js +19 -0
  38. package/dist/index.js +11 -142
  39. package/dist/skills/agents-md-generator/SKILL.md +223 -0
  40. package/dist/skills/codebase-analyzer/SKILL.md +1 -1
  41. package/dist/skills/dev-analyze/SKILL.md +115 -0
  42. package/dist/skills/dev-bugfix/SKILL.md +452 -0
  43. package/dist/skills/dev-finalize/SKILL.md +118 -0
  44. package/dist/skills/dev-implement/SKILL.md +167 -0
  45. package/dist/skills/dev-plan/SKILL.md +147 -0
  46. package/dist/skills/dev-spec/SKILL.md +182 -0
  47. package/dist/skills/dev-tdd-red/SKILL.md +94 -0
  48. package/dist/skills/dev-verify/SKILL.md +160 -0
  49. package/dist/skills/development/SKILL.md +130 -522
  50. package/dist/skills/diagrams-mermaid/SKILL.md +3 -1
  51. package/dist/skills/docs-manager/SKILL.md +4 -4
  52. package/dist/skills/docs-manager/references/agents-md-template.md +1 -1
  53. package/dist/skills/flow-init/SKILL.md +34 -13
  54. package/dist/skills/goal-development/SKILL.md +96 -0
  55. package/dist/skills/html-renderer/SKILL.md +14 -1
  56. package/dist/skills/implementation-plan-executor/SKILL.md +1 -1
  57. package/dist/skills/implementation-verifier/SKILL.md +1 -1
  58. package/dist/skills/migration/SKILL.md +63 -18
  59. package/dist/skills/orchestrator-framework/SKILL.md +1 -1
  60. package/dist/skills/orchestrator-framework/references/command-namespacing.md +7 -0
  61. package/dist/skills/orchestrator-framework/references/confirm-or-revise-exception.md +20 -0
  62. package/dist/skills/orchestrator-framework/references/delegation-rules.md +54 -0
  63. package/dist/skills/orchestrator-framework/references/dispatcher-handoff.md +20 -0
  64. package/dist/skills/orchestrator-framework/references/gate-contract.md +104 -0
  65. package/dist/skills/orchestrator-framework/references/orchestrator-creation-checklist.md +3 -0
  66. package/dist/skills/orchestrator-framework/references/orchestrator-patterns.md +8 -50
  67. package/dist/skills/performance/SKILL.md +52 -18
  68. package/dist/skills/research/SKILL.md +57 -24
  69. package/dist/skills/rule-reviewer/SKILL.md +334 -0
  70. package/dist/skills/standards-discover/SKILL.md +37 -14
  71. package/dist/skills/standards-update/SKILL.md +58 -10
  72. package/dist/templates/orchestrator-state-development.yml +14 -13
  73. package/dist/utils/file-util.js +25 -0
  74. package/package.json +6 -4
  75. package/dist/__tests__/verify_template.test.js +0 -102
  76. package/dist/commands/quick-bugfix.md +0 -37
  77. package/dist/commands/quick-dev.md +0 -182
  78. package/dist/commands/quick-plan.md +0 -167
  79. package/dist/skills/quick-bugfix/SKILL.md +0 -311
  80. package/dist/templates/quick-bugfix-task.yml +0 -10
  81. package/dist/templates/quick-dev-task.yml +0 -10
  82. package/dist/templates/quick-plan-task.yml +0 -11
@@ -1,311 +0,0 @@
1
- ---
2
- name: quick-bugfix
3
- description: Quick bug fix with TDD red/green gates and complexity escalation
4
- argument-hint: "[bug description]"
5
- user-invocable: true
6
- ---
7
-
8
- # Quick Bug Fix
9
-
10
- Lightweight TDD-driven bug fix workflow with planning mode. Analyze the bug, present a fix plan for approval, then reproduce with a failing test, fix, and verify. No orchestrator state, no subagents. Creates lightweight task directory for artifact anchoring.
11
-
12
- For complex bugs that grow beyond a quick fix, suggests escalating to the full development workflow (`/development`).
13
-
14
- ## Usage
15
-
16
- ```bash
17
- /quick-bugfix "Login form submits twice on slow connections"
18
- /quick-bugfix "API returns 500 when email contains special characters"
19
- /quick-bugfix "Dark mode toggle doesn't persist after refresh"
20
- ```
21
-
22
- ## When to Use
23
-
24
- **Use `/quick-bugfix` when:**
25
-
26
- - Bug is reasonably scoped and reproducible
27
- - You have a clear description of expected vs actual behavior
28
- - Fix likely touches a small number of files
29
-
30
- **Use `/development` instead when:**
31
-
32
- - Bug requires architectural changes
33
- - Multiple subsystems are involved
34
- - You need formal specification and planning
35
-
36
- ---
37
-
38
- ## Workflow
39
-
40
- ### Step 1: Parse Input
41
-
42
- **Get the bug description:**
43
-
44
- - If provided as argument, use it directly
45
- - If not provided, scan the recent conversation for bug context (error messages, reproduction steps, discussed symptoms). If found, use that as the bug description.
46
- - Only if no argument AND no bug context in session, use question:
47
- ```
48
- "Describe the bug — what's the expected behavior vs actual behavior?"
49
- ```
50
-
51
- ### Step 2: Create Task Directory
52
-
53
- **Create a lightweight task directory for artifact anchoring.**
54
-
55
- 1. Generate a task name from the bug description:
56
- - Extract 3–5 key words, convert to lowercase kebab-case
57
- - Prepend today's date: `YYYY-MM-DD-kebab-name`
58
- - Examples: "Fix login timeout bug" → `2026-05-28-fix-login-timeout`, "Login form submits twice on slow connections" → `2026-05-28-login-double-submit`
59
- 2. Create directory: `.owflow/tasks/quick-bugfix/YYYY-MM-DD-task-name/`
60
- 3. Create `analysis/` subdirectory inside it
61
- 4. Write `task.yml` with initial state using the template [src/templates/quick-bugfix-task.yml](../../templates/quick-bugfix-task.yml).
62
- 5. **CRITICAL**: Use the `verify_template` tool immediately after creation to check YAML validity against `quick-bugfix-task.yml`.
63
-
64
- ### Step 3: Discover Standards
65
-
66
- **CRITICAL: This step MUST complete before entering plan mode.**
67
-
68
- **Check if `.owflow/docs/INDEX.md` exists:**
69
-
70
- **If exists:**
71
-
72
- 1. Read INDEX.md to discover available documentation and standards
73
- 2. Identify which standards are relevant based on:
74
- - The categories and files listed in INDEX.md
75
- - The area of the bug (e.g., API, frontend, database)
76
- - Keywords in the bug description
77
- 3. **READ the applicable standard files** (see Standards Reading Enforcement below)
78
- 4. **Update `task.yml`**: Add paths of standards read to `standards_applied` list
79
-
80
- **If not exists:**
81
-
82
- - Note that no standards are available
83
- - Suggest running `/flow-init` in completion message
84
-
85
- ### Standards Reading Enforcement (MANDATORY)
86
-
87
- **BLOCKING**: Reading INDEX.md alone is NOT sufficient. You MUST read actual standard files.
88
-
89
- **Enforcement Process**:
90
-
91
- 1. Read INDEX.md to discover available standards
92
- 2. Identify which standards apply based on the bug area
93
- 3. **READ each applicable standard file** using Read tool (not just note it exists)
94
- 4. Apply standards during fix implementation
95
- 5. List applied standards in completion summary
96
-
97
- **Examples of standard discovery**:
98
-
99
- - Bug in API handler → Read API and error-handling standards
100
- - Bug in form validation → Read validation and frontend standards
101
- - Bug in database query → Read database and backend standards
102
-
103
- ### Step 4: Analyze & Assess Complexity
104
-
105
- **Explore the codebase to understand the bug:**
106
-
107
- 1. Search for relevant files (Glob, Grep, Read)
108
- 2. Trace the code path where the bug occurs
109
- 3. Identify: likely root cause, affected files, existing tests
110
- 4. Form a root cause hypothesis
111
-
112
- **Complexity Escalation Check:**
113
-
114
- Assess whether this bug exceeds quick-fix scope. If **2 or more** of these signals are detected, suggest escalation:
115
-
116
- | Signal | Example |
117
- | ----------------------------------------------------------- | ---------------------------------------------------------------- |
118
- | Changes span 5+ files across multiple modules | Bug in shared utility affects API, frontend, and background jobs |
119
- | Requires database schema or data model changes | Missing column, wrong relationship, migration needed |
120
- | Multiple valid fix approaches with architectural trade-offs | Could fix at API layer, middleware layer, or client layer |
121
- | Security-sensitive code | Auth, crypto, permissions, input sanitization |
122
- | Root cause unclear after initial analysis | Symptoms don't point to a single location |
123
-
124
- **If escalation triggered:**
125
-
126
- **Write `analysis/findings.md`** in the task directory with the analysis captured so far:
127
-
128
- ```markdown
129
- # Bug Analysis
130
-
131
- ## Root Cause
132
- [Root cause hypothesis with evidence — file paths, code references]
133
-
134
- ## Affected Files
135
- - `path/to/file` — reason
136
-
137
- ## Complexity Assessment
138
- - [ ] Changes span 5+ files across multiple modules
139
- - [ ] Requires database schema changes
140
- - [ ] Multiple valid fix approaches with architectural trade-offs
141
- - [ ] Security-sensitive code
142
- - [ ] Root cause unclear after initial analysis
143
-
144
- Signals detected: X of 5
145
-
146
- ## Test Strategy
147
- [How the bug will be reproduced with a failing test]
148
-
149
- ## Standards Referenced
150
- - [standard file]: [key guideline applied]
151
- ```
152
-
153
- Use question:
154
-
155
- - Question: "This bug appears more complex than a quick fix — [describe why]. How would you like to proceed?"
156
- - Options:
157
- 1. "Continue with quick fix" — proceed, accepting the complexity
158
- 2. "Switch to full development workflow" — escalate (see below)
159
-
160
- **If user chooses to escalate:**
161
-
162
- 1. Ensure `analysis/findings.md` is written (above)
163
- 2. Update `task.yml`: set `status: escalated`, `escalation_reason: "[signals detected]"`, `updated: [now]`
164
- 3. Tell the user: "Run `/development .owflow/tasks/quick-bugfix/YYYY-MM-DD-task-name` to continue with full workflow."
165
- 4. Do NOT set `escalated_to` — the development orchestrator will set it
166
- 5. `summary.md` is NOT written on escalation
167
-
168
- **If no escalation needed or user chooses to continue:**
169
-
170
- Write `analysis/findings.md` (same template above — captures analysis for auditability), then proceed to Step 5.
171
-
172
- ### Step 5: Enter Planning Mode
173
-
174
- **Use the `Plan Agent` to present the fix plan for user approval.**
175
-
176
- Standards context from Step 3 and analysis from Step 4 MUST inform the plan.
177
-
178
- **Plan file content:**
179
-
180
- ```markdown
181
- ## Bug Analysis
182
-
183
- **Root Cause**: [hypothesis with evidence — file paths, code references]
184
- **Affected Files**: [list of files that need changes]
185
-
186
- ## Proposed Fix
187
-
188
- [Description of the fix approach — what changes, why this approach]
189
-
190
- ## Test Strategy
191
-
192
- [What the failing test will assert — setup conditions, expected behavior]
193
-
194
- ## Applicable Standards
195
-
196
- [List each standard file read, with key guidelines extracted from each.
197
- If no standards exist: "No AI SDLC standards found. Consider running `/flow-init`."]
198
-
199
- ## Standards Compliance Checklist
200
-
201
- - [ ] [Guideline from standard file] (from `standards/[path]`)
202
- - [ ] [Guideline from standard file] (from `standards/[path]`)
203
- ```
204
-
205
- ### User approval gate: Mandatory Sections
206
-
207
- **BLOCKING: Do NOT ask for user approval until the plan file contains:**
208
-
209
- 1. **"## Bug Analysis"** — root cause hypothesis with evidence
210
- 2. **"## Proposed Fix"** — what changes and why
211
- 3. **"## Test Strategy"** — what the TDD red test will assert
212
- 4. **"## Applicable Standards"** — standards read and key guidelines
213
- 5. **"## Standards Compliance Checklist"** — checkboxes for applicable guidelines
214
-
215
- If any section is missing, add it before asking for user approval.
216
-
217
- ### Step 6: TDD Red Gate
218
-
219
- **Write a failing test that reproduces the bug.**
220
-
221
- 1. Identify the appropriate test file (existing test suite or create new test file following project conventions)
222
- 2. Write a test that:
223
- - Sets up the conditions that trigger the bug
224
- - Asserts the **correct** (expected) behavior
225
- - Should FAIL with current code (proving the bug exists)
226
- 3. Run the test
227
-
228
- **The test MUST fail.** This proves the bug is real and reproducible.
229
-
230
- **If the test passes:**
231
-
232
- - The bug may not be what we think, or it's already fixed
233
- - Investigate further — re-read the bug description, check if conditions are correct
234
- - Use question: "The reproduction test passes — the expected behavior already works under these conditions. Is the bug description accurate, or are there additional conditions?"
235
-
236
- ### Step 7: Fix & Verify (TDD Green)
237
-
238
- **Implement the fix:**
239
-
240
- 1. Apply the fix based on the approved plan from Step 5
241
- 2. **Apply discovered standards** from Step 3
242
- 3. Run the failing test — it MUST now pass
243
- 4. Run the full test file and related test files to check for regressions
244
-
245
- **If tests fail after fix:**
246
-
247
- - Analyze the failure
248
- - Adjust the fix
249
- - Re-run tests
250
- - Maximum 3 fix-and-verify iterations
251
-
252
- **If still failing after 3 attempts:**
253
-
254
- - Stop and present findings to the user
255
- - Suggest escalating to `/development` for a more thorough approach
256
-
257
- ### Step 8: Summary
258
-
259
- **Write `summary.md`** in the task directory:
260
-
261
- ```markdown
262
- # Task Summary
263
-
264
- **Command**: quick-bugfix
265
- **Date**: YYYY-MM-DD
266
- **Status**: completed
267
-
268
- ## What Was Done
269
- [Root cause and fix description]
270
-
271
- ## Files Modified
272
- - `path/to/file`
273
-
274
- ## Standards Applied
275
- - [standard]: [guideline]
276
-
277
- ## Tests
278
- - [test file] — [result]
279
-
280
- ## Commit Suggestion
281
- [conventional commit message]
282
- ```
283
-
284
- **Update `task.yml`**: set `status: completed`, `updated: [now]`.
285
-
286
- **Post-implementation: verify standards compliance using the checklist from the plan file.**
287
-
288
- ---
289
-
290
- ## What This Does
291
-
292
- 1. **Parses** bug description from user input
293
- 2. **Creates** lightweight task directory with `task.yml` for artifact anchoring
294
- 3. **Discovers** applicable standards from `.owflow/docs/INDEX.md`
295
- 4. **Analyzes** codebase to find root cause, writes `analysis/findings.md`, and assesses complexity
296
- 5. **Escalates** to full development workflow if bug is too complex (updates `task.yml` status to `escalated`)
297
- 6. **Plans** the fix and presents for user approval via planning mode
298
- 7. **Reproduces** bug with a failing test (TDD Red)
299
- 8. **Fixes** the bug and verifies test passes (TDD Green)
300
- 9. **Summarizes** in `summary.md`, updates `task.yml` status to `completed`
301
-
302
- ## Graceful Fallback
303
-
304
- **If `.owflow/docs/` does not exist:**
305
-
306
- Proceed with the bug fix normally, then note:
307
-
308
- ```
309
- "No AI SDLC standards found. Consider running `/flow-init` to initialize
310
- project documentation and coding standards for better consistency."
311
- ```
@@ -1,10 +0,0 @@
1
- command: quick-bugfix
2
- title: "Short title from bug description"
3
- description: "Full bug description as provided by user"
4
- status: in_progress
5
- created: "YYYY-MM-DDTHH:MM:SSZ"
6
- updated: "YYYY-MM-DDTHH:MM:SSZ"
7
- task_path: .owflow/tasks/quick-bugfix/YYYY-MM-DD-task-name
8
- escalated_to: null
9
- escalation_reason: null
10
- standards_applied: []
@@ -1,10 +0,0 @@
1
- command: quick-dev
2
- title: "Short title from task description"
3
- description: "Full task description as provided by user"
4
- status: in_progress
5
- created: "YYYY-MM-DDTHH:MM:SSZ"
6
- updated: "YYYY-MM-DDTHH:MM:SSZ"
7
- task_path: .owflow/tasks/quick-dev/YYYY-MM-DD-task-name
8
- escalated_to: null
9
- escalation_reason: null
10
- standards_applied: []
@@ -1,11 +0,0 @@
1
- command: quick-plan
2
- title: "Short title from task description"
3
- description: "Full task description as provided by user"
4
- status: in_progress
5
- created: "YYYY-MM-DDTHH:MM:SSZ"
6
- updated: "YYYY-MM-DDTHH:MM:SSZ"
7
- task_path: .owflow/tasks/quick-plan/YYYY-MM-DD-task-name
8
- escalated_to: null
9
- escalation_reason: null
10
- standards_applied: []
11
- plan_path: null