@comfanion/workflow 4.36.45 → 4.36.47

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@comfanion/workflow",
3
- "version": "4.36.45",
3
+ "version": "4.36.47",
4
4
  "description": "Initialize OpenCode Workflow system for AI-assisted development with semantic code search",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "4.36.45",
3
- "buildDate": "2026-01-25T01:56:04.257Z",
2
+ "version": "4.36.47",
3
+ "buildDate": "2026-01-25T02:32:44.569Z",
4
4
  "files": [
5
5
  "config.yaml",
6
6
  "FLOW.yaml",
@@ -416,6 +416,27 @@ agents:
416
416
  - Following existing patterns
417
417
  personality: Fast, no questions, executes or fails
418
418
 
419
+ reviewer:
420
+ name: Marcus
421
+ title: Code Reviewer
422
+ icon: "🔍"
423
+ description: Code Reviewer - security-focused review, bug finding, test coverage
424
+ mode: subagent
425
+ model: openai/gpt-5.2-codex # Best at finding bugs and security issues
426
+ temperature: 0.1
427
+ file: agents/reviewer.md
428
+ expertise:
429
+ - Security review
430
+ - Bug finding
431
+ - Test coverage analysis
432
+ - Code quality
433
+ personality: Thorough, security-paranoid, always suggests fixes
434
+ skills_used:
435
+ - code-review
436
+ auto_invoke:
437
+ trigger: story_tasks_complete # Called automatically when all story tasks done
438
+ before: story_marked_done
439
+
419
440
  # Supporting Agents (not in main pipeline)
420
441
  researcher:
421
442
  name: Kristina
@@ -454,312 +475,6 @@ agents:
454
475
  skills_used:
455
476
  - change-management
456
477
 
457
- # =============================================================================
458
- # SKILLS (Knowledge - HOW to do things)
459
- # =============================================================================
460
- skills:
461
- # Requirements Skills
462
- requirements-gathering:
463
- description: How to interview stakeholders, extract FR/NFR
464
- file: skills/requirements-gathering/SKILL.md
465
- used_by: [analyst]
466
- produces: docs/requirements/requirements.md
467
-
468
- requirements-validation:
469
- description: How to validate requirements (SMART, no conflicts)
470
- file: skills/requirements-validation/SKILL.md
471
- used_by: [analyst, architect]
472
- produces: docs/validation/requirements-validation-*.md
473
-
474
- # PRD Skills
475
- prd-writing:
476
- description: How to write PRD (template, sections, examples)
477
- file: skills/prd-writing/SKILL.md
478
- used_by: [pm]
479
- produces: docs/prd.md
480
-
481
- prd-validation:
482
- description: How to validate PRD completeness
483
- file: skills/prd-validation/SKILL.md
484
- used_by: [architect]
485
- produces: docs/validation/prd-validation-*.md
486
-
487
- acceptance-criteria:
488
- description: How to write testable AC (Given/When/Then)
489
- file: skills/acceptance-criteria/SKILL.md
490
- used_by: [analyst, pm]
491
-
492
- # Architecture Skills
493
- architecture-design:
494
- description: How to design system architecture
495
- file: skills/architecture-design/SKILL.md
496
- used_by: [architect]
497
- produces: docs/architecture.md
498
-
499
- architecture-validation:
500
- description: How to validate architecture
501
- file: skills/architecture-validation/SKILL.md
502
- used_by: [architect]
503
- produces: docs/validation/architecture-validation-*.md
504
-
505
- adr-writing:
506
- description: How to write Architecture Decision Records
507
- file: skills/adr-writing/SKILL.md
508
- used_by: [architect]
509
- produces: docs/architecture/adr/*.md
510
-
511
- coding-standards:
512
- description: How to define coding patterns and conventions
513
- file: skills/coding-standards/SKILL.md
514
- used_by: [architect]
515
- produces: docs/coding-standards/
516
-
517
- # Sprint Skills
518
- epic-writing:
519
- description: How to write epics with AC
520
- file: skills/epic-writing/SKILL.md
521
- used_by: [pm]
522
- produces: docs/sprint-artifacts/*/epic-*.md
523
-
524
- story-writing:
525
- description: How to write user stories with AC and tasks
526
- file: skills/story-writing/SKILL.md
527
- used_by: [pm]
528
- produces: docs/sprint-artifacts/*/stories/story-*.md
529
-
530
- sprint-planning:
531
- description: How to plan and organize sprints
532
- file: skills/sprint-planning/SKILL.md
533
- used_by: [pm]
534
- produces: docs/sprint-artifacts/sprint-status.yaml
535
-
536
- jira-integration:
537
- description: Bidirectional Jira sync with development control
538
- file: skills/jira-integration/SKILL.md
539
- used_by: [pm, dev]
540
- cache: "{project-root}/.opencode/jira-cache.yaml"
541
- produces: docs/sprint-artifacts/jira-sync-report.md
542
- modes:
543
- - with_links # User provides Jira links
544
- - auto_create # Agent creates in project
545
- - mixed # Sync existing with local
546
- features:
547
- - cache_system # Local cache for speed
548
- - find_related # Find parent/children
549
- - control_development # Manage statuses, branches
550
- - status_validation # Ensure workflow statuses exist
551
-
552
- # Implementation Skills
553
- dev-story:
554
- description: How to implement stories using red-green-refactor
555
- file: skills/dev-story/SKILL.md
556
- used_by: [dev]
557
-
558
- code-review:
559
- description: How to perform code reviews
560
- file: skills/code-review/SKILL.md
561
- used_by: [dev]
562
-
563
- test-design:
564
- description: How to design and write tests
565
- file: skills/test-design/SKILL.md
566
- used_by: [dev]
567
-
568
- # Utility Skills
569
- research-methodology:
570
- description: How to conduct technical, market, domain research
571
- file: skills/research-methodology/SKILL.md
572
- used_by: [researcher]
573
- produces: docs/research/
574
-
575
- unit-writing:
576
- description: How to document modules, domains, entities, services, features using Universal Unit format
577
- file: skills/unit-writing/SKILL.md
578
- used_by: [analyst, architect, pm]
579
- produces: docs/units/[unit-name]/
580
-
581
- archiving:
582
- description: How to archive documents properly
583
- file: skills/archiving/SKILL.md
584
- used_by: [pm, architect]
585
- produces: docs/archive/
586
-
587
- diagram-creation:
588
- description: How to create C4, sequence, ER, flowchart diagrams
589
- file: skills/diagram-creation/SKILL.md
590
- used_by: [architect]
591
- produces: docs/diagrams/
592
-
593
- methodologies:
594
- description: Structured methods for requirements, analysis, problem-solving
595
- file: skills/methodologies/SKILL.md
596
- used_by: [analyst, pm, architect, researcher]
597
- methods:
598
- analyst: [User Interviews, Empathy Mapping, Journey Mapping, Affinity Clustering, Five Whys, Fishbone]
599
- pm: [Problem Framing, HMW, POV Statement, JTBD, Brainstorming, SCAMPER]
600
- architect: [Systems Thinking, Fishbone, Is/Is Not Analysis, Decision Matrix]
601
- researcher: [Analogous Inspiration, Five Whys, Systems Thinking, Is/Is Not]
602
-
603
- doc-todo:
604
- description: Incremental document writing with TODO placeholders
605
- file: skills/doc-todo/SKILL.md
606
- used_by: [analyst, pm, architect]
607
- types:
608
- - DRAFT # Section is draft, needs review
609
- - EXPAND # Section needs more detail
610
- - RESEARCH # Needs research/investigation
611
- - REVIEW # Needs stakeholder review
612
- - DECISION # Decision needed
613
- - DEPENDENCY # Waiting on other document
614
- - EXAMPLE # Add examples
615
- - DIAGRAM # Add diagram
616
- - NUMBERS # Add metrics/numbers
617
- - LINK # Add links/references
618
-
619
- changelog:
620
- description: Maintain changelogs for repository and documents
621
- file: skills/changelog/SKILL.md
622
- used_by: [dev, pm, architect]
623
- mandatory: true
624
- artifacts:
625
- repo: CHANGELOG.md
626
- docs: "## Changelog section in each document"
627
- format:
628
- repo: keepachangelog
629
- docs: table
630
-
631
- translation:
632
- description: Translate docs to user language, export to Confluence
633
- file: skills/translation/SKILL.md
634
- used_by: [pm, analyst]
635
- output_folder: "docs/confluence/"
636
- formats: [confluence, markdown, html]
637
- rules:
638
- - "Technical docs (docs/) ALWAYS in English"
639
- - "Translations go to docs/confluence/"
640
- - "Preserve technical terms in English"
641
- - "Keep code blocks unchanged"
642
-
643
- # =============================================================================
644
- # COMMANDS (Entry Points)
645
- # =============================================================================
646
- commands:
647
- # Planning Commands
648
- requirements:
649
- description: Gather FR/NFR requirements
650
- agent: analyst
651
- file: commands/requirements.md
652
- skills_loaded: [requirements-gathering, acceptance-criteria]
653
-
654
- prd:
655
- description: Create/edit PRD
656
- agent: pm
657
- file: commands/prd.md
658
- skills_loaded: [prd-writing, acceptance-criteria]
659
-
660
- coding-standards:
661
- description: Define coding standards
662
- agent: architect
663
- file: commands/coding-standards.md
664
- skills_loaded: [coding-standards]
665
-
666
- architecture:
667
- description: Create/edit architecture
668
- agent: architect
669
- file: commands/architecture.md
670
- skills_loaded: [architecture-design, adr-writing]
671
-
672
- # Sprint Commands
673
- epics:
674
- description: Create epics from PRD
675
- agent: pm
676
- file: commands/epics.md
677
- skills_loaded: [epic-writing, acceptance-criteria]
678
-
679
- stories:
680
- description: Create stories for epic
681
- agent: pm
682
- file: commands/stories.md
683
- arguments:
684
- - name: epic-id
685
- required: true
686
- skills_loaded: [story-writing, acceptance-criteria]
687
-
688
- sprint-plan:
689
- description: Plan sprints
690
- agent: pm
691
- file: commands/sprint-plan.md
692
- skills_loaded: [sprint-planning]
693
-
694
- jira-sync:
695
- description: Sync to Jira
696
- agent: pm
697
- file: commands/jira-sync.md
698
- skills_loaded: [jira-integration]
699
-
700
- # Implementation Commands
701
- dev-story:
702
- description: Implement a story
703
- agent: dev
704
- file: commands/dev-story.md
705
- arguments:
706
- - name: story-path
707
- required: false
708
- skills_loaded: [dev-story, test-design]
709
-
710
- code-review:
711
- description: Review implemented code
712
- agent: dev
713
- file: commands/code-review.md
714
- arguments:
715
- - name: story-path
716
- required: false
717
- skills_loaded: [code-review]
718
-
719
- # Utility Commands
720
- validate:
721
- description: Validate artifacts
722
- agent: architect
723
- file: commands/validate.md
724
- arguments:
725
- - name: type
726
- values: [requirements, prd, architecture, epics, stories, all]
727
- skills_loaded: [requirements-validation, prd-validation, architecture-validation]
728
-
729
- workflow-status:
730
- description: Show workflow status
731
- agent: pm
732
- file: commands/workflow-status.md
733
-
734
- research:
735
- description: Conduct research
736
- agent: researcher
737
- file: commands/research.md
738
- arguments:
739
- - name: type
740
- values: [market, technical, domain, competitive]
741
- - name: topic
742
- required: true
743
-
744
- unit-docs:
745
- description: Document module/domain/service/feature using Universal Unit format
746
- agent: architect
747
- file: commands/unit-docs.md
748
- arguments:
749
- - name: unit-type
750
- values: [module, domain, service, entity, feature]
751
- - name: unit-name
752
- required: true
753
- skills_loaded: [unit-writing]
754
-
755
- change:
756
- description: Manage documentation changes
757
- agent: change-manager
758
- file: commands/change.md
759
- arguments:
760
- - name: action
761
- values: [propose, review, apply, reject]
762
-
763
478
  # =============================================================================
764
479
  # ARTIFACTS
765
480
  # =============================================================================
@@ -0,0 +1,170 @@
1
+ <agent id="reviewer" name="Marcus" title="Code Reviewer" icon="🔍">
2
+
3
+ <activation critical="MANDATORY">
4
+ <step n="1">Load persona from this agent file</step>
5
+ <step n="2">IMMEDIATE: Load .opencode/config.yaml - store {user_name}, {communication_language}</step>
6
+ <step n="3">Greet user by {user_name}, communicate in {communication_language}</step>
7
+ <step n="4">Load .opencode/skills/code-review/SKILL.md</step>
8
+ <step n="5">Find and load docs/coding-standards/ files</step>
9
+
10
+ <rules>
11
+ <r>ALWAYS communicate in {communication_language}</r>
12
+ <r>Focus on finding bugs, security issues, and code smells</r>
13
+ <r>Be thorough - you are the last line of defense before merge</r>
14
+ <r>Prioritize: Security > Correctness > Performance > Style</r>
15
+ <r>Provide specific fixes, not just complaints</r>
16
+ <r>Use GPT-5.2 Codex strengths: bug finding, edge cases, test gaps</r>
17
+ </rules>
18
+ </activation>
19
+
20
+ <workflow hint="How I approach code review">
21
+ <phase name="1. Understand">
22
+ <action>Read the story file completely</action>
23
+ <action>Understand what was supposed to be built</action>
24
+ <action>Load coding-standards for this project</action>
25
+ </phase>
26
+
27
+ <phase name="2. Security First">
28
+ <action>Check for hardcoded secrets</action>
29
+ <action>Verify input validation on all user inputs</action>
30
+ <action>Check SQL injection, XSS vulnerabilities</action>
31
+ <action>Verify auth/authz on protected endpoints</action>
32
+ <action>Check if sensitive data is logged</action>
33
+ </phase>
34
+
35
+ <phase name="3. Correctness">
36
+ <action>Verify all acceptance criteria are met</action>
37
+ <action>Check edge cases and error handling</action>
38
+ <action>Look for logic errors and race conditions</action>
39
+ <action>Verify tests cover critical paths</action>
40
+ </phase>
41
+
42
+ <phase name="4. Code Quality">
43
+ <action>Check architecture compliance</action>
44
+ <action>Look for code duplication</action>
45
+ <action>Verify naming conventions</action>
46
+ <action>Check for N+1 queries, performance issues</action>
47
+ </phase>
48
+
49
+ <phase name="5. Report">
50
+ <action>Categorize issues: High/Medium/Low</action>
51
+ <action>Provide specific fixes for each issue</action>
52
+ <action>Update story file with review outcome</action>
53
+ </phase>
54
+ </workflow>
55
+
56
+ <persona>
57
+ <role>Senior Code Reviewer / Security Specialist</role>
58
+ <identity>10+ years experience, seen every type of bug. Paranoid about security. Uses GPT-5.2 Codex for deep analysis.</identity>
59
+ <communication_style>Direct and specific. Points to exact lines. Always suggests how to fix, not just what's wrong.</communication_style>
60
+ <principles>
61
+ - Security issues are always HIGH priority
62
+ - Every bug found saves users from pain
63
+ - Tests are as important as production code
64
+ - If it's not tested, it's broken
65
+ - Be thorough but not pedantic
66
+ </principles>
67
+ </persona>
68
+
69
+ <skills hint="Load from .opencode/skills/">
70
+ <skill name="code-review">Complete code review methodology</skill>
71
+ </skills>
72
+
73
+ <review_checklist>
74
+ <category name="Security (HIGH)">
75
+ <item>No hardcoded secrets, API keys, passwords</item>
76
+ <item>All user inputs validated and sanitized</item>
77
+ <item>Parameterized queries (no SQL injection)</item>
78
+ <item>Auth required on protected endpoints</item>
79
+ <item>Authorization checks before data access</item>
80
+ <item>Sensitive data not logged</item>
81
+ <item>Error messages don't leak internal details</item>
82
+ </category>
83
+
84
+ <category name="Correctness (HIGH)">
85
+ <item>All acceptance criteria satisfied</item>
86
+ <item>Edge cases handled</item>
87
+ <item>Error scenarios have proper handling</item>
88
+ <item>No obvious logic errors</item>
89
+ <item>No race conditions</item>
90
+ </category>
91
+
92
+ <category name="Testing (HIGH)">
93
+ <item>Unit tests exist for new code</item>
94
+ <item>Tests cover happy path and errors</item>
95
+ <item>No flaky tests</item>
96
+ <item>Test names are descriptive</item>
97
+ </category>
98
+
99
+ <category name="Performance (MEDIUM)">
100
+ <item>No N+1 query issues</item>
101
+ <item>Appropriate indexing</item>
102
+ <item>No unnecessary loops</item>
103
+ <item>Caching where appropriate</item>
104
+ </category>
105
+
106
+ <category name="Code Quality (MEDIUM)">
107
+ <item>Follows project architecture</item>
108
+ <item>Clear naming conventions</item>
109
+ <item>No code duplication</item>
110
+ <item>Functions are focused and small</item>
111
+ <item>Proper error wrapping</item>
112
+ </category>
113
+
114
+ <category name="Style (LOW)">
115
+ <item>Consistent formatting</item>
116
+ <item>No commented-out code</item>
117
+ <item>Proper documentation</item>
118
+ </category>
119
+ </review_checklist>
120
+
121
+ <output_format>
122
+ ## Code Review: {{story_title}}
123
+
124
+ **Reviewer:** @reviewer (Marcus)
125
+ **Date:** {{date}}
126
+ **Model:** GPT-5.2 Codex
127
+
128
+ ### Verdict: {{APPROVE | CHANGES_REQUESTED | BLOCKED}}
129
+
130
+ ### Summary
131
+ {{1-2 sentence summary}}
132
+
133
+ ### Issues Found
134
+
135
+ #### HIGH Priority (Must Fix)
136
+ - **[Security]** `path/file.ts:42` - {{issue}}
137
+ - **Fix:** {{specific fix}}
138
+
139
+ #### MEDIUM Priority (Should Fix)
140
+ - **[Performance]** `path/file.ts:100` - {{issue}}
141
+ - **Fix:** {{specific fix}}
142
+
143
+ #### LOW Priority (Nice to Have)
144
+ - **[Style]** `path/file.ts:15` - {{issue}}
145
+
146
+ ### What's Good
147
+ - {{positive feedback}}
148
+
149
+ ### Action Items
150
+ - [ ] [HIGH] Fix {{issue}}
151
+ - [ ] [MED] Add {{test/improvement}}
152
+ </output_format>
153
+
154
+ </agent>
155
+
156
+ ## Quick Reference
157
+
158
+ **What I Do:**
159
+ - Deep code review with security focus
160
+ - Find bugs, vulnerabilities, edge cases
161
+ - Check test coverage and quality
162
+ - Verify architecture compliance
163
+ - Provide specific fixes
164
+
165
+ **What I Don't Do:**
166
+ - Write production code (→ @dev, @coder)
167
+ - Make architecture decisions (→ @architect)
168
+ - Write documentation (→ @pm)
169
+
170
+ **My Model:** GPT-5.2 Codex (best at finding bugs)
@@ -0,0 +1,134 @@
1
+ ---
2
+ description: Review completed story for security, correctness, and quality before marking as done
3
+ agent: reviewer
4
+ ---
5
+
6
+ # /review-story Command
7
+
8
+ Review a completed story using @reviewer agent (GPT-5.2 Codex) for deep security and quality analysis.
9
+
10
+ ## Usage
11
+
12
+ ```
13
+ /review-story [story-path]
14
+ ```
15
+
16
+ ## Arguments
17
+
18
+ - `story-path` (optional): Path to story file. If not provided, finds stories in `review` status.
19
+
20
+ ## Agent
21
+
22
+ This command invokes the **Reviewer** agent (Marcus) with GPT-5.2 Codex model - best at finding bugs and security issues.
23
+
24
+ ## When to Use
25
+
26
+ 1. **After `/dev-story`** completes all tasks (auto-invoked if `auto_review: true`)
27
+ 2. **Manually** when you want a fresh review
28
+ 3. **After fixing** issues from previous review
29
+
30
+ ## Process
31
+
32
+ ```
33
+ 1. Load story file
34
+ 2. Identify all changed files from File List
35
+ 3. Security Review (HIGH priority):
36
+ - Hardcoded secrets
37
+ - Input validation
38
+ - SQL injection
39
+ - Auth/authz
40
+ - Sensitive data logging
41
+ 4. Correctness Review:
42
+ - All AC satisfied
43
+ - Edge cases handled
44
+ - Error handling
45
+ 5. Test Review:
46
+ - Coverage
47
+ - Quality
48
+ - No flaky tests
49
+ 6. Code Quality Review:
50
+ - Architecture compliance
51
+ - No duplication
52
+ - Performance
53
+ 7. Generate verdict and action items
54
+ ```
55
+
56
+ ## Skills Loaded
57
+
58
+ - `code-review` - Review checklist and methodology
59
+
60
+ ## Verdicts
61
+
62
+ | Verdict | Meaning | Next Step |
63
+ |---------|---------|-----------|
64
+ | ✅ **APPROVE** | All checks pass | Mark story `done` |
65
+ | 🔄 **CHANGES_REQUESTED** | Issues found | Fix and re-run `/review-story` |
66
+ | ❌ **BLOCKED** | Critical issues | Cannot proceed until fixed |
67
+
68
+ ## Output
69
+
70
+ Updates story file with:
71
+
72
+ ```markdown
73
+ ## Story Review
74
+
75
+ **Reviewer:** @reviewer (Marcus)
76
+ **Date:** 2026-01-25
77
+ **Model:** GPT-5.2 Codex
78
+ **Verdict:** APPROVE | CHANGES_REQUESTED | BLOCKED
79
+
80
+ ### Issues Found
81
+
82
+ #### HIGH Priority (Must Fix)
83
+ - [Security] `path/file.ts:42` - Issue description
84
+ - **Fix:** Specific fix suggestion
85
+
86
+ #### MEDIUM Priority (Should Fix)
87
+ - [Performance] `path/file.ts:100` - Issue description
88
+
89
+ ### What's Good
90
+ - Positive feedback
91
+
92
+ ### Action Items
93
+ - [ ] [HIGH] Fix issue X
94
+ - [ ] [MED] Add test Y
95
+ ```
96
+
97
+ ## Config Options
98
+
99
+ In `.opencode/config.yaml`:
100
+
101
+ ```yaml
102
+ development:
103
+ methodology: tdd
104
+ auto_review: true # Auto-invoke @reviewer after /dev-story completes
105
+ ```
106
+
107
+ ## Example
108
+
109
+ ```bash
110
+ # Review stories in 'review' status
111
+ /review-story
112
+
113
+ # Review specific story
114
+ /review-story docs/sprint-artifacts/sprint-1/stories/story-01-user-auth.md
115
+ ```
116
+
117
+ ## Flow with /dev-story
118
+
119
+ ```
120
+ /dev-story
121
+
122
+ All tasks complete
123
+
124
+ Status → "review"
125
+
126
+ (auto_review: true) → /review-story auto-invoked
127
+
128
+ APPROVE → Status → "done"
129
+ CHANGES_REQUESTED → New tasks added → /dev-story again
130
+ ```
131
+
132
+ ## Best Practice
133
+
134
+ > **Tip:** @reviewer uses GPT-5.2 Codex which excels at finding bugs that other models miss. Trust its security findings.
@@ -157,6 +157,11 @@ development:
157
157
  # STUB: Interface → Stub Implementation → Test → Full Implementation
158
158
  methodology: tdd
159
159
 
160
+ # Auto-invoke @reviewer after /dev-story completes all tasks
161
+ # When true: story tasks complete → auto /review-story → APPROVE → done
162
+ # When false: story tasks complete → status "review" → manual /review-story
163
+ auto_review: true
164
+
160
165
  # Task structure
161
166
  task:
162
167
  max_hours: 2 # Maximum hours per atomic task