claudecode-omc 4.7.4 → 4.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/README.md +50 -0
  3. package/agents/test-engineer.md +74 -0
  4. package/bridge/cli.cjs +1960 -108
  5. package/dist/cli/index.js +181 -0
  6. package/dist/cli/index.js.map +1 -1
  7. package/dist/hud/usage-api.d.ts.map +1 -1
  8. package/dist/hud/usage-api.js +14 -0
  9. package/dist/hud/usage-api.js.map +1 -1
  10. package/dist/testing/analyzers/complexity.d.ts +18 -0
  11. package/dist/testing/analyzers/complexity.d.ts.map +1 -0
  12. package/dist/testing/analyzers/complexity.js +121 -0
  13. package/dist/testing/analyzers/complexity.js.map +1 -0
  14. package/dist/testing/analyzers/coverage.d.ts +13 -0
  15. package/dist/testing/analyzers/coverage.d.ts.map +1 -0
  16. package/dist/testing/analyzers/coverage.js +99 -0
  17. package/dist/testing/analyzers/coverage.js.map +1 -0
  18. package/dist/testing/analyzers/quality-scorer.d.ts +8 -0
  19. package/dist/testing/analyzers/quality-scorer.d.ts.map +1 -0
  20. package/dist/testing/analyzers/quality-scorer.js +128 -0
  21. package/dist/testing/analyzers/quality-scorer.js.map +1 -0
  22. package/dist/testing/analyzers/types.d.ts +56 -0
  23. package/dist/testing/analyzers/types.d.ts.map +1 -0
  24. package/dist/testing/analyzers/types.js +2 -0
  25. package/dist/testing/analyzers/types.js.map +1 -0
  26. package/dist/testing/cli/agent-integration.d.ts +20 -0
  27. package/dist/testing/cli/agent-integration.d.ts.map +1 -0
  28. package/dist/testing/cli/agent-integration.js +60 -0
  29. package/dist/testing/cli/agent-integration.js.map +1 -0
  30. package/dist/testing/cli/commands.d.ts +89 -0
  31. package/dist/testing/cli/commands.d.ts.map +1 -0
  32. package/dist/testing/cli/commands.js +228 -0
  33. package/dist/testing/cli/commands.js.map +1 -0
  34. package/dist/testing/cli/ultraqa-integration.d.ts +13 -0
  35. package/dist/testing/cli/ultraqa-integration.d.ts.map +1 -0
  36. package/dist/testing/cli/ultraqa-integration.js +68 -0
  37. package/dist/testing/cli/ultraqa-integration.js.map +1 -0
  38. package/dist/testing/detectors/go.d.ts +3 -0
  39. package/dist/testing/detectors/go.d.ts.map +1 -0
  40. package/dist/testing/detectors/go.js +38 -0
  41. package/dist/testing/detectors/go.js.map +1 -0
  42. package/dist/testing/detectors/index.d.ts +8 -0
  43. package/dist/testing/detectors/index.d.ts.map +1 -0
  44. package/dist/testing/detectors/index.js +46 -0
  45. package/dist/testing/detectors/index.js.map +1 -0
  46. package/dist/testing/detectors/package-json.d.ts +3 -0
  47. package/dist/testing/detectors/package-json.d.ts.map +1 -0
  48. package/dist/testing/detectors/package-json.js +52 -0
  49. package/dist/testing/detectors/package-json.js.map +1 -0
  50. package/dist/testing/detectors/python.d.ts +3 -0
  51. package/dist/testing/detectors/python.d.ts.map +1 -0
  52. package/dist/testing/detectors/python.js +37 -0
  53. package/dist/testing/detectors/python.js.map +1 -0
  54. package/dist/testing/detectors/rust.d.ts +3 -0
  55. package/dist/testing/detectors/rust.d.ts.map +1 -0
  56. package/dist/testing/detectors/rust.js +39 -0
  57. package/dist/testing/detectors/rust.js.map +1 -0
  58. package/dist/testing/generators/contract.d.ts +14 -0
  59. package/dist/testing/generators/contract.d.ts.map +1 -0
  60. package/dist/testing/generators/contract.js +163 -0
  61. package/dist/testing/generators/contract.js.map +1 -0
  62. package/dist/testing/generators/e2e.d.ts +34 -0
  63. package/dist/testing/generators/e2e.d.ts.map +1 -0
  64. package/dist/testing/generators/e2e.js +74 -0
  65. package/dist/testing/generators/e2e.js.map +1 -0
  66. package/dist/testing/generators/go.d.ts +12 -0
  67. package/dist/testing/generators/go.d.ts.map +1 -0
  68. package/dist/testing/generators/go.js +144 -0
  69. package/dist/testing/generators/go.js.map +1 -0
  70. package/dist/testing/generators/nodejs.d.ts +12 -0
  71. package/dist/testing/generators/nodejs.d.ts.map +1 -0
  72. package/dist/testing/generators/nodejs.js +37 -0
  73. package/dist/testing/generators/nodejs.js.map +1 -0
  74. package/dist/testing/generators/python.d.ts +12 -0
  75. package/dist/testing/generators/python.d.ts.map +1 -0
  76. package/dist/testing/generators/python.js +163 -0
  77. package/dist/testing/generators/python.js.map +1 -0
  78. package/dist/testing/generators/react.d.ts +12 -0
  79. package/dist/testing/generators/react.d.ts.map +1 -0
  80. package/dist/testing/generators/react.js +31 -0
  81. package/dist/testing/generators/react.js.map +1 -0
  82. package/dist/testing/generators/rust.d.ts +11 -0
  83. package/dist/testing/generators/rust.d.ts.map +1 -0
  84. package/dist/testing/generators/rust.js +138 -0
  85. package/dist/testing/generators/rust.js.map +1 -0
  86. package/dist/testing/index.d.ts +6 -0
  87. package/dist/testing/index.d.ts.map +1 -0
  88. package/dist/testing/index.js +11 -0
  89. package/dist/testing/index.js.map +1 -0
  90. package/dist/testing/integrations/autopilot.d.ts +42 -0
  91. package/dist/testing/integrations/autopilot.d.ts.map +1 -0
  92. package/dist/testing/integrations/autopilot.js +55 -0
  93. package/dist/testing/integrations/autopilot.js.map +1 -0
  94. package/dist/testing/integrations/cicd.d.ts +26 -0
  95. package/dist/testing/integrations/cicd.d.ts.map +1 -0
  96. package/dist/testing/integrations/cicd.js +162 -0
  97. package/dist/testing/integrations/cicd.js.map +1 -0
  98. package/dist/testing/integrations/giskard/behavioral-tests.d.ts +4 -0
  99. package/dist/testing/integrations/giskard/behavioral-tests.d.ts.map +1 -0
  100. package/dist/testing/integrations/giskard/behavioral-tests.js +66 -0
  101. package/dist/testing/integrations/giskard/behavioral-tests.js.map +1 -0
  102. package/dist/testing/integrations/giskard/types.d.ts +35 -0
  103. package/dist/testing/integrations/giskard/types.d.ts.map +1 -0
  104. package/dist/testing/integrations/giskard/types.js +2 -0
  105. package/dist/testing/integrations/giskard/types.js.map +1 -0
  106. package/dist/testing/integrations/ralph.d.ts +65 -0
  107. package/dist/testing/integrations/ralph.d.ts.map +1 -0
  108. package/dist/testing/integrations/ralph.js +69 -0
  109. package/dist/testing/integrations/ralph.js.map +1 -0
  110. package/dist/testing/performance/cache-manager.d.ts +16 -0
  111. package/dist/testing/performance/cache-manager.d.ts.map +1 -0
  112. package/dist/testing/performance/cache-manager.js +39 -0
  113. package/dist/testing/performance/cache-manager.js.map +1 -0
  114. package/dist/testing/performance/parallel-generator.d.ts +23 -0
  115. package/dist/testing/performance/parallel-generator.d.ts.map +1 -0
  116. package/dist/testing/performance/parallel-generator.js +31 -0
  117. package/dist/testing/performance/parallel-generator.js.map +1 -0
  118. package/dist/testing/types.d.ts +23 -0
  119. package/dist/testing/types.d.ts.map +1 -0
  120. package/dist/testing/types.js +2 -0
  121. package/dist/testing/types.js.map +1 -0
  122. package/docs/2026-03-06-llm-testing-system-phase1.md +0 -0
  123. package/docs/plans/2026-03-06-llm-testing-system-design.md +311 -0
  124. package/docs/plans/2026-03-06-llm-testing-system-phase1.md +1268 -0
  125. package/docs/plans/2026-03-06-llm-testing-system-phase2.md +3053 -0
  126. package/docs/plans/2026-03-06-llm-testing-system-phase3.md +1830 -0
  127. package/docs/testing/IMPLEMENTATION.md +804 -0
  128. package/docs/testing/PHASE2.md +266 -0
  129. package/docs/testing/PHASE3.md +601 -0
  130. package/docs/testing/README.md +634 -0
  131. package/package.json +1 -1
  132. package/skills/test-gen/skill.md +531 -0
  133. package/skills/ultraqa.md +58 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-claudecode",
3
- "version": "4.7.4",
3
+ "version": "4.8.1",
4
4
  "description": "Multi-agent orchestration system for Claude Code",
5
5
  "author": {
6
6
  "name": "oh-my-claudecode contributors"
package/README.md CHANGED
@@ -311,10 +311,60 @@ Tag behavior:
311
311
 
312
312
  ---
313
313
 
314
+ ## Testing
315
+
316
+ oh-my-claudecode now supports advanced test generation across multiple languages:
317
+
318
+ ```bash
319
+ # Node.js/TypeScript
320
+ omc test gen src/utils/math.ts
321
+
322
+ # Python
323
+ omc test gen src/utils/math.py
324
+
325
+ # Go
326
+ omc test gen pkg/math/math.go
327
+
328
+ # Rust
329
+ omc test gen src/math.rs
330
+
331
+ # Coverage analysis
332
+ omc test analyze
333
+
334
+ # Contract testing
335
+ omc test contract api/openapi.yaml
336
+
337
+ # Detect project tech stack
338
+ omc test detect-stack
339
+
340
+ # Phase 3: Advanced features
341
+ omc test promptfoo src/prompts/code-review.txt
342
+ omc test e2e "User logs in, navigates to dashboard"
343
+ omc test giskard src/models/classifier.ts
344
+ omc test cicd -l nodejs
345
+ omc test quality tests/utils/parser.test.ts
346
+
347
+ # Use the skill for advanced features
348
+ /test-gen src/services/payment.ts --coverage-analysis
349
+ ```
350
+
351
+ **Features:**
352
+ - Multi-language support (Node.js, Python, Go, Rust)
353
+ - Coverage analysis and gap identification
354
+ - Complexity-based test generation routing
355
+ - API contract testing (Pact/Supertest/MSW)
356
+ - **Phase 3**: Promptfoo LLM testing, E2E generation, Giskard behavioral tests, CI/CD workflows, test quality scoring
357
+ - Integrated with `/ultraqa`, `/tdd`, and `/autopilot` workflows
358
+
359
+ See [Testing Documentation](docs/testing/README.md) for details.
360
+
361
+ ---
362
+
314
363
  ## Documentation
315
364
 
316
365
  - **[Full Reference](docs/REFERENCE.md)** - Complete feature documentation
317
366
  - **[CLI Reference](https://yeachan-heo.github.io/oh-my-claudecode-website/docs.html#cli-reference)** - All `omc` commands, flags, and tools
367
+ - **[Testing Guide](docs/testing/README.md)** - LLM-driven test generation system
318
368
  - **[Notifications Guide](https://yeachan-heo.github.io/oh-my-claudecode-website/docs.html#notifications)** - Discord, Telegram, Slack, and webhook setup
319
369
  - **[Recommended Workflows](https://yeachan-heo.github.io/oh-my-claudecode-website/docs.html#workflows)** - Battle-tested skill chains for common tasks
320
370
  - **[Release Notes](https://yeachan-heo.github.io/oh-my-claudecode-website/docs.html#release-notes)** - What's new in each version
@@ -11,6 +11,23 @@ model: claude-sonnet-4-6
11
11
  You are not responsible for feature implementation (executor), code quality review (quality-reviewer), or security testing (security-reviewer).
12
12
  </Role>
13
13
 
14
+ <Integration_With_Test_Gen_Skill>
15
+ When user asks to "generate tests" or "add tests", prefer using the `/test-gen` skill:
16
+
17
+ - `/test-gen` handles tech stack detection and complexity analysis automatically
18
+ - For simple code, `/test-gen` generates tests directly using CLI commands
19
+ - For complex code, `/test-gen` will delegate to test-engineer with enriched context (detected stack, complexity metrics)
20
+ - For test strategy and planning, use test-engineer directly
21
+ - For test debugging and flaky test fixes, use test-engineer directly
22
+
23
+ When invoked by `/test-gen` for complex code, you will receive:
24
+ - Detected tech stack (frontend/backend frameworks, test frameworks, databases, APIs)
25
+ - Complexity analysis (function size, cyclomatic complexity, dependencies)
26
+ - Generated test framework (basic structure to build upon)
27
+
28
+ Use this context to generate comprehensive test cases that cover edge cases, error scenarios, and business logic validation.
29
+ </Integration_With_Test_Gen_Skill>
30
+
14
31
  <Why_This_Matters>
15
32
  Tests are executable documentation of expected behavior. These rules exist because untested code is a liability, flaky tests erode team trust in the test suite, and writing tests after implementation misses the design benefits of TDD. Good tests catch regressions before users do.
16
33
  </Why_This_Matters>
@@ -101,3 +118,60 @@ model: claude-sonnet-4-6
101
118
  - For TDD: did I write the failing test first?
102
119
  </Final_Checklist>
103
120
  </Agent_Prompt>
121
+
122
+ ## Enhanced Integration with Test Generation System
123
+
124
+ ### Automatic Context Enrichment
125
+
126
+ When invoked for test generation, test-engineer receives enriched context:
127
+
128
+ - **Tech Stack**: Detected frameworks, languages, and test tools
129
+ - **Complexity Analysis**: Metrics including cyclomatic complexity, nesting levels, external dependencies
130
+ - **Suggested Approach**:
131
+ - `auto-generate`: Simple code, generate tests automatically
132
+ - `guided`: Complex code, ask user for clarification
133
+ - `manual`: Very complex, provide framework and guidance only
134
+
135
+ ### Workflow for Complex Code
136
+
137
+ When complexity is `complex`:
138
+
139
+ 1. **Review Context**: Examine complexity metrics and reasons
140
+ 2. **Ask Questions**: Use pre-generated questions based on complexity reasons
141
+ 3. **Generate Test Framework**: Create test structure with placeholders
142
+ 4. **Fill in Details**: Based on user answers, complete test cases
143
+ 5. **Verify Coverage**: Ensure all identified complexity factors are tested
144
+
145
+ ### Example Invocation
146
+
147
+ ```typescript
148
+ const context = await prepareTestEngineerContext({
149
+ filePath: 'src/services/payment.ts',
150
+ code: paymentServiceCode,
151
+ projectRoot: '/project/root',
152
+ });
153
+
154
+ // Context includes:
155
+ // - techStack: { backend: { language: 'nodejs', testFramework: 'vitest' } }
156
+ // - complexity: 'complex'
157
+ // - complexityMetrics: { lines: 75, cyclomaticComplexity: 15, ... }
158
+ // - suggestedApproach: 'guided'
159
+ // - questionsForUser: ['What payment flows...', 'Should I mock...']
160
+ ```
161
+
162
+ ### Integration with /test-gen Skill
163
+
164
+ The `/test-gen` skill automatically prepares this context before delegating to test-engineer:
165
+
166
+ 1. User runs `/test-gen src/services/payment.ts`
167
+ 2. System detects tech stack and analyzes complexity
168
+ 3. If complex, prepares questions and delegates to test-engineer
169
+ 4. Test-engineer asks questions and generates comprehensive tests
170
+ 5. System verifies tests and commits
171
+
172
+ ### Success Criteria
173
+
174
+ - [ ] Context preparation includes all necessary information
175
+ - [ ] Questions are relevant to complexity reasons
176
+ - [ ] Test-engineer can generate appropriate tests for both simple and complex code
177
+ - [ ] Integration with /test-gen skill is seamless