oh-my-codex 0.1.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.
- package/README.md +269 -0
- package/bin/omx.js +25 -0
- package/dist/agents/definitions.d.ts +22 -0
- package/dist/agents/definitions.d.ts.map +1 -0
- package/dist/agents/definitions.js +235 -0
- package/dist/agents/definitions.js.map +1 -0
- package/dist/cli/doctor.d.ts +11 -0
- package/dist/cli/doctor.d.ts.map +1 -0
- package/dist/cli/doctor.js +157 -0
- package/dist/cli/doctor.js.map +1 -0
- package/dist/cli/index.d.ts +6 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +266 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/setup.d.ts +12 -0
- package/dist/cli/setup.d.ts.map +1 -0
- package/dist/cli/setup.js +175 -0
- package/dist/cli/setup.js.map +1 -0
- package/dist/cli/version.d.ts +2 -0
- package/dist/cli/version.d.ts.map +1 -0
- package/dist/cli/version.js +17 -0
- package/dist/cli/version.js.map +1 -0
- package/dist/config/generator.d.ts +14 -0
- package/dist/config/generator.d.ts.map +1 -0
- package/dist/config/generator.js +106 -0
- package/dist/config/generator.js.map +1 -0
- package/dist/hooks/__tests__/agents-overlay.test.d.ts +8 -0
- package/dist/hooks/__tests__/agents-overlay.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/agents-overlay.test.js +148 -0
- package/dist/hooks/__tests__/agents-overlay.test.js.map +1 -0
- package/dist/hooks/agents-overlay.d.ts +34 -0
- package/dist/hooks/agents-overlay.d.ts.map +1 -0
- package/dist/hooks/agents-overlay.js +265 -0
- package/dist/hooks/agents-overlay.js.map +1 -0
- package/dist/hooks/emulator.d.ts +44 -0
- package/dist/hooks/emulator.d.ts.map +1 -0
- package/dist/hooks/emulator.js +108 -0
- package/dist/hooks/emulator.js.map +1 -0
- package/dist/hooks/keyword-detector.d.ts +27 -0
- package/dist/hooks/keyword-detector.d.ts.map +1 -0
- package/dist/hooks/keyword-detector.js +63 -0
- package/dist/hooks/keyword-detector.js.map +1 -0
- package/dist/hooks/session.d.ts +38 -0
- package/dist/hooks/session.d.ts.map +1 -0
- package/dist/hooks/session.js +135 -0
- package/dist/hooks/session.js.map +1 -0
- package/dist/hud/colors.d.ts +26 -0
- package/dist/hud/colors.d.ts.map +1 -0
- package/dist/hud/colors.js +71 -0
- package/dist/hud/colors.js.map +1 -0
- package/dist/hud/index.d.ts +12 -0
- package/dist/hud/index.d.ts.map +1 -0
- package/dist/hud/index.js +107 -0
- package/dist/hud/index.js.map +1 -0
- package/dist/hud/render.d.ts +9 -0
- package/dist/hud/render.d.ts.map +1 -0
- package/dist/hud/render.js +192 -0
- package/dist/hud/render.js.map +1 -0
- package/dist/hud/state.d.ts +21 -0
- package/dist/hud/state.d.ts.map +1 -0
- package/dist/hud/state.js +101 -0
- package/dist/hud/state.js.map +1 -0
- package/dist/hud/types.d.ts +87 -0
- package/dist/hud/types.d.ts.map +1 -0
- package/dist/hud/types.js +8 -0
- package/dist/hud/types.js.map +1 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/code-intel-server.d.ts +7 -0
- package/dist/mcp/code-intel-server.d.ts.map +1 -0
- package/dist/mcp/code-intel-server.js +567 -0
- package/dist/mcp/code-intel-server.js.map +1 -0
- package/dist/mcp/memory-server.d.ts +7 -0
- package/dist/mcp/memory-server.d.ts.map +1 -0
- package/dist/mcp/memory-server.js +359 -0
- package/dist/mcp/memory-server.js.map +1 -0
- package/dist/mcp/state-server.d.ts +7 -0
- package/dist/mcp/state-server.d.ts.map +1 -0
- package/dist/mcp/state-server.js +181 -0
- package/dist/mcp/state-server.js.map +1 -0
- package/dist/mcp/trace-server.d.ts +7 -0
- package/dist/mcp/trace-server.d.ts.map +1 -0
- package/dist/mcp/trace-server.js +205 -0
- package/dist/mcp/trace-server.js.map +1 -0
- package/dist/modes/base.d.ts +50 -0
- package/dist/modes/base.d.ts.map +1 -0
- package/dist/modes/base.js +140 -0
- package/dist/modes/base.js.map +1 -0
- package/dist/notifications/notifier.d.ts +30 -0
- package/dist/notifications/notifier.d.ts.map +1 -0
- package/dist/notifications/notifier.js +124 -0
- package/dist/notifications/notifier.js.map +1 -0
- package/dist/team/orchestrator.d.ts +54 -0
- package/dist/team/orchestrator.d.ts.map +1 -0
- package/dist/team/orchestrator.js +106 -0
- package/dist/team/orchestrator.js.map +1 -0
- package/dist/utils/package.d.ts +9 -0
- package/dist/utils/package.d.ts.map +1 -0
- package/dist/utils/package.js +31 -0
- package/dist/utils/package.js.map +1 -0
- package/dist/utils/paths.d.ts +27 -0
- package/dist/utils/paths.d.ts.map +1 -0
- package/dist/utils/paths.js +60 -0
- package/dist/utils/paths.js.map +1 -0
- package/dist/verification/verifier.d.ts +32 -0
- package/dist/verification/verifier.d.ts.map +1 -0
- package/dist/verification/verifier.js +81 -0
- package/dist/verification/verifier.js.map +1 -0
- package/package.json +54 -0
- package/prompts/analyst.md +110 -0
- package/prompts/api-reviewer.md +98 -0
- package/prompts/architect.md +109 -0
- package/prompts/build-fixer.md +89 -0
- package/prompts/code-reviewer.md +105 -0
- package/prompts/critic.md +87 -0
- package/prompts/debugger.md +93 -0
- package/prompts/deep-executor.md +112 -0
- package/prompts/dependency-expert.md +99 -0
- package/prompts/designer.md +103 -0
- package/prompts/executor.md +99 -0
- package/prompts/explore.md +112 -0
- package/prompts/git-master.md +92 -0
- package/prompts/information-architect.md +267 -0
- package/prompts/performance-reviewer.md +94 -0
- package/prompts/planner.md +116 -0
- package/prompts/product-analyst.md +299 -0
- package/prompts/product-manager.md +255 -0
- package/prompts/qa-tester.md +98 -0
- package/prompts/quality-reviewer.md +105 -0
- package/prompts/quality-strategist.md +227 -0
- package/prompts/researcher.md +96 -0
- package/prompts/scientist.md +92 -0
- package/prompts/security-reviewer.md +125 -0
- package/prompts/style-reviewer.md +87 -0
- package/prompts/test-engineer.md +103 -0
- package/prompts/ux-researcher.md +282 -0
- package/prompts/verifier.md +95 -0
- package/prompts/vision.md +75 -0
- package/prompts/writer.md +86 -0
- package/scripts/notify-hook.js +237 -0
- package/skills/analyze/SKILL.md +93 -0
- package/skills/autopilot/SKILL.md +175 -0
- package/skills/build-fix/SKILL.md +123 -0
- package/skills/cancel/SKILL.md +387 -0
- package/skills/code-review/SKILL.md +208 -0
- package/skills/configure-discord/SKILL.md +256 -0
- package/skills/configure-telegram/SKILL.md +232 -0
- package/skills/deepinit/SKILL.md +320 -0
- package/skills/deepsearch/SKILL.md +38 -0
- package/skills/doctor/SKILL.md +193 -0
- package/skills/ecomode/SKILL.md +114 -0
- package/skills/frontend-ui-ux/SKILL.md +34 -0
- package/skills/git-master/SKILL.md +29 -0
- package/skills/help/SKILL.md +192 -0
- package/skills/hud/SKILL.md +97 -0
- package/skills/learn-about-omx/SKILL.md +37 -0
- package/skills/learner/SKILL.md +135 -0
- package/skills/note/SKILL.md +62 -0
- package/skills/omx-setup/SKILL.md +1147 -0
- package/skills/pipeline/SKILL.md +407 -0
- package/skills/plan/SKILL.md +223 -0
- package/skills/project-session-manager/SKILL.md +560 -0
- package/skills/psm/SKILL.md +20 -0
- package/skills/ralph/SKILL.md +197 -0
- package/skills/ralph-init/SKILL.md +38 -0
- package/skills/ralplan/SKILL.md +34 -0
- package/skills/release/SKILL.md +83 -0
- package/skills/research/SKILL.md +510 -0
- package/skills/review/SKILL.md +30 -0
- package/skills/security-review/SKILL.md +284 -0
- package/skills/skill/SKILL.md +837 -0
- package/skills/swarm/SKILL.md +25 -0
- package/skills/tdd/SKILL.md +106 -0
- package/skills/team/SKILL.md +860 -0
- package/skills/trace/SKILL.md +33 -0
- package/skills/ultrapilot/SKILL.md +632 -0
- package/skills/ultraqa/SKILL.md +130 -0
- package/skills/ultrawork/SKILL.md +143 -0
- package/skills/writer-memory/SKILL.md +443 -0
- package/templates/AGENTS.md +326 -0
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ultraqa
|
|
3
|
+
description: QA cycling workflow - test, verify, fix, repeat until goal met
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# UltraQA Skill
|
|
7
|
+
|
|
8
|
+
[ULTRAQA ACTIVATED - AUTONOMOUS QA CYCLING]
|
|
9
|
+
|
|
10
|
+
## Overview
|
|
11
|
+
|
|
12
|
+
You are now in **ULTRAQA** mode - an autonomous QA cycling workflow that runs until your quality goal is met.
|
|
13
|
+
|
|
14
|
+
**Cycle**: qa-tester → architect verification → fix → repeat
|
|
15
|
+
|
|
16
|
+
## Goal Parsing
|
|
17
|
+
|
|
18
|
+
Parse the goal from arguments. Supported formats:
|
|
19
|
+
|
|
20
|
+
| Invocation | Goal Type | What to Check |
|
|
21
|
+
|------------|-----------|---------------|
|
|
22
|
+
| `/ultraqa --tests` | tests | All test suites pass |
|
|
23
|
+
| `/ultraqa --build` | build | Build succeeds with exit 0 |
|
|
24
|
+
| `/ultraqa --lint` | lint | No lint errors |
|
|
25
|
+
| `/ultraqa --typecheck` | typecheck | No TypeScript errors |
|
|
26
|
+
| `/ultraqa --custom "pattern"` | custom | Custom success pattern in output |
|
|
27
|
+
|
|
28
|
+
If no structured goal provided, interpret the argument as a custom goal.
|
|
29
|
+
|
|
30
|
+
## Cycle Workflow
|
|
31
|
+
|
|
32
|
+
### Cycle N (Max 5)
|
|
33
|
+
|
|
34
|
+
1. **RUN QA**: Execute verification based on goal type
|
|
35
|
+
- `--tests`: Run the project's test command
|
|
36
|
+
- `--build`: Run the project's build command
|
|
37
|
+
- `--lint`: Run the project's lint command
|
|
38
|
+
- `--typecheck`: Run the project's type check command
|
|
39
|
+
- `--custom`: Run appropriate command and check for pattern
|
|
40
|
+
- `--interactive`: Use qa-tester for interactive CLI/service testing:
|
|
41
|
+
```
|
|
42
|
+
spawn_sub_agent(subagent_type="oh-my-codex:qa-tester", model="sonnet", prompt="TEST:
|
|
43
|
+
Goal: [describe what to verify]
|
|
44
|
+
Service: [how to start]
|
|
45
|
+
Test cases: [specific scenarios to verify]")
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
2. **CHECK RESULT**: Did the goal pass?
|
|
49
|
+
- **YES** → Exit with success message
|
|
50
|
+
- **NO** → Continue to step 3
|
|
51
|
+
|
|
52
|
+
3. **ARCHITECT DIAGNOSIS**: Spawn architect to analyze failure
|
|
53
|
+
```
|
|
54
|
+
spawn_sub_agent(subagent_type="oh-my-codex:architect", model="opus", prompt="DIAGNOSE FAILURE:
|
|
55
|
+
Goal: [goal type]
|
|
56
|
+
Output: [test/build output]
|
|
57
|
+
Provide root cause and specific fix recommendations.")
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
4. **FIX ISSUES**: Apply architect's recommendations
|
|
61
|
+
```
|
|
62
|
+
spawn_sub_agent(subagent_type="oh-my-codex:executor", model="sonnet", prompt="FIX:
|
|
63
|
+
Issue: [architect diagnosis]
|
|
64
|
+
Files: [affected files]
|
|
65
|
+
Apply the fix precisely as recommended.")
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
5. **REPEAT**: Go back to step 1
|
|
69
|
+
|
|
70
|
+
## Exit Conditions
|
|
71
|
+
|
|
72
|
+
| Condition | Action |
|
|
73
|
+
|-----------|--------|
|
|
74
|
+
| **Goal Met** | Exit with success: "ULTRAQA COMPLETE: Goal met after N cycles" |
|
|
75
|
+
| **Cycle 5 Reached** | Exit with diagnosis: "ULTRAQA STOPPED: Max cycles. Diagnosis: ..." |
|
|
76
|
+
| **Same Failure 3x** | Exit early: "ULTRAQA STOPPED: Same failure detected 3 times. Root cause: ..." |
|
|
77
|
+
| **Environment Error** | Exit: "ULTRAQA ERROR: [tmux/port/dependency issue]" |
|
|
78
|
+
|
|
79
|
+
## Observability
|
|
80
|
+
|
|
81
|
+
Output progress each cycle:
|
|
82
|
+
```
|
|
83
|
+
[ULTRAQA Cycle 1/5] Running tests...
|
|
84
|
+
[ULTRAQA Cycle 1/5] FAILED - 3 tests failing
|
|
85
|
+
[ULTRAQA Cycle 1/5] Architect diagnosing...
|
|
86
|
+
[ULTRAQA Cycle 1/5] Fixing: auth.test.ts - missing mock
|
|
87
|
+
[ULTRAQA Cycle 2/5] Running tests...
|
|
88
|
+
[ULTRAQA Cycle 2/5] PASSED - All 47 tests pass
|
|
89
|
+
[ULTRAQA COMPLETE] Goal met after 2 cycles
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## State Tracking
|
|
93
|
+
|
|
94
|
+
Use `omx_state` MCP tools for UltraQA lifecycle state.
|
|
95
|
+
|
|
96
|
+
- **On start**:
|
|
97
|
+
`state_write({mode: "ultraqa", active: true, current_phase: "qa", iteration: 1, started_at: "<now>"})`
|
|
98
|
+
- **On each cycle**:
|
|
99
|
+
`state_write({mode: "ultraqa", current_phase: "qa", iteration: <cycle>})`
|
|
100
|
+
- **On diagnose/fix transitions**:
|
|
101
|
+
`state_write({mode: "ultraqa", current_phase: "diagnose"})`
|
|
102
|
+
`state_write({mode: "ultraqa", current_phase: "fix"})`
|
|
103
|
+
- **On completion**:
|
|
104
|
+
`state_write({mode: "ultraqa", active: false, current_phase: "complete", completed_at: "<now>"})`
|
|
105
|
+
- **For resume detection**:
|
|
106
|
+
`state_read({mode: "ultraqa"})`
|
|
107
|
+
|
|
108
|
+
## Cancellation
|
|
109
|
+
|
|
110
|
+
User can cancel with `/cancel` which clears the state file.
|
|
111
|
+
|
|
112
|
+
## Important Rules
|
|
113
|
+
|
|
114
|
+
1. **PARALLEL when possible** - Run diagnosis while preparing potential fixes
|
|
115
|
+
2. **TRACK failures** - Record each failure to detect patterns
|
|
116
|
+
3. **EARLY EXIT on pattern** - 3x same failure = stop and surface
|
|
117
|
+
4. **CLEAR OUTPUT** - User should always know current cycle and status
|
|
118
|
+
5. **CLEAN UP** - Clear state file on completion or cancellation
|
|
119
|
+
|
|
120
|
+
## STATE CLEANUP ON COMPLETION
|
|
121
|
+
|
|
122
|
+
When goal is met OR max cycles reached OR exiting early, run `$cancel` or call:
|
|
123
|
+
|
|
124
|
+
`state_clear({mode: "ultraqa"})`
|
|
125
|
+
|
|
126
|
+
Use MCP state cleanup rather than deleting files directly.
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
Begin ULTRAQA cycling now. Parse the goal and start cycle 1.
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ultrawork
|
|
3
|
+
description: Parallel execution engine for high-throughput task completion
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<Purpose>
|
|
7
|
+
Ultrawork is a parallel execution engine that runs multiple agents simultaneously for independent tasks. It is a component, not a standalone persistence mode -- it provides parallelism and smart model routing but not persistence, verification loops, or state management.
|
|
8
|
+
</Purpose>
|
|
9
|
+
|
|
10
|
+
<Use_When>
|
|
11
|
+
- Multiple independent tasks can run simultaneously
|
|
12
|
+
- User says "ulw", "ultrawork", or wants parallel execution
|
|
13
|
+
- You need to delegate work to multiple agents at once
|
|
14
|
+
- Task benefits from concurrent execution but the user will manage completion themselves
|
|
15
|
+
</Use_When>
|
|
16
|
+
|
|
17
|
+
<Do_Not_Use_When>
|
|
18
|
+
- Task requires guaranteed completion with verification -- use `ralph` instead (ralph includes ultrawork)
|
|
19
|
+
- Task requires a full autonomous pipeline -- use `autopilot` instead (autopilot includes ralph which includes ultrawork)
|
|
20
|
+
- There is only one sequential task with no parallelism opportunity -- delegate directly to an executor agent
|
|
21
|
+
- User needs session persistence for resume -- use `ralph` which adds persistence on top of ultrawork
|
|
22
|
+
</Do_Not_Use_When>
|
|
23
|
+
|
|
24
|
+
<Why_This_Exists>
|
|
25
|
+
Sequential task execution wastes time when tasks are independent. Ultrawork enables firing multiple agents simultaneously and routing each to the right model tier, reducing total execution time while controlling token costs. It is designed as a composable component that ralph and autopilot layer on top of.
|
|
26
|
+
</Why_This_Exists>
|
|
27
|
+
|
|
28
|
+
<Execution_Policy>
|
|
29
|
+
- Fire all independent agent calls simultaneously -- never serialize independent work
|
|
30
|
+
- Always pass the `model` parameter explicitly when delegating
|
|
31
|
+
- Read `docs/shared/agent-tiers.md` before first delegation for agent selection guidance
|
|
32
|
+
- Use `run_in_background: true` for operations over ~30 seconds (installs, builds, tests)
|
|
33
|
+
- Run quick commands (git status, file reads, simple checks) in the foreground
|
|
34
|
+
</Execution_Policy>
|
|
35
|
+
|
|
36
|
+
<Steps>
|
|
37
|
+
1. **Read agent reference**: Load `docs/shared/agent-tiers.md` for tier selection
|
|
38
|
+
2. **Classify tasks by independence**: Identify which tasks can run in parallel vs which have dependencies
|
|
39
|
+
3. **Route to correct tiers**:
|
|
40
|
+
- Simple lookups/definitions: LOW tier (Haiku)
|
|
41
|
+
- Standard implementation: MEDIUM tier (Sonnet)
|
|
42
|
+
- Complex analysis/refactoring: HIGH tier (Opus)
|
|
43
|
+
4. **Fire independent tasks simultaneously**: Launch all parallel-safe tasks at once
|
|
44
|
+
5. **Run dependent tasks sequentially**: Wait for prerequisites before launching dependent work
|
|
45
|
+
6. **Background long operations**: Builds, installs, and test suites use `run_in_background: true`
|
|
46
|
+
7. **Verify when all tasks complete** (lightweight):
|
|
47
|
+
- Build/typecheck passes
|
|
48
|
+
- Affected tests pass
|
|
49
|
+
- No new errors introduced
|
|
50
|
+
</Steps>
|
|
51
|
+
|
|
52
|
+
<Tool_Usage>
|
|
53
|
+
- Use `spawn_sub_agent(subagent_type="oh-my-codex:executor-low", model="haiku", ...)` for simple changes
|
|
54
|
+
- Use `spawn_sub_agent(subagent_type="oh-my-codex:executor", model="sonnet", ...)` for standard work
|
|
55
|
+
- Use `spawn_sub_agent(subagent_type="oh-my-codex:executor-high", model="opus", ...)` for complex work
|
|
56
|
+
- Use `run_in_background: true` for package installs, builds, and test suites
|
|
57
|
+
- Use foreground execution for quick status checks and file operations
|
|
58
|
+
</Tool_Usage>
|
|
59
|
+
|
|
60
|
+
## State Management
|
|
61
|
+
|
|
62
|
+
Use `omx_state` MCP tools for ultrawork lifecycle state.
|
|
63
|
+
|
|
64
|
+
- **On start**:
|
|
65
|
+
`state_write({mode: "ultrawork", active: true, reinforcement_count: 1, started_at: "<now>"})`
|
|
66
|
+
- **On each reinforcement/loop step**:
|
|
67
|
+
`state_write({mode: "ultrawork", reinforcement_count: <current>})`
|
|
68
|
+
- **On completion**:
|
|
69
|
+
`state_write({mode: "ultrawork", active: false})`
|
|
70
|
+
- **On cancellation/cleanup**:
|
|
71
|
+
run `$cancel` (which should call `state_clear(mode="ultrawork")`)
|
|
72
|
+
|
|
73
|
+
<Examples>
|
|
74
|
+
<Good>
|
|
75
|
+
Three independent tasks fired simultaneously:
|
|
76
|
+
```
|
|
77
|
+
spawn_sub_agent(subagent_type="oh-my-codex:executor-low", model="haiku", prompt="Add missing type export for Config interface")
|
|
78
|
+
spawn_sub_agent(subagent_type="oh-my-codex:executor", model="sonnet", prompt="Implement the /api/users endpoint with validation")
|
|
79
|
+
spawn_sub_agent(subagent_type="oh-my-codex:executor", model="sonnet", prompt="Add integration tests for the auth middleware")
|
|
80
|
+
```
|
|
81
|
+
Why good: Independent tasks at appropriate tiers, all fired at once.
|
|
82
|
+
</Good>
|
|
83
|
+
|
|
84
|
+
<Good>
|
|
85
|
+
Correct use of background execution:
|
|
86
|
+
```
|
|
87
|
+
spawn_sub_agent(subagent_type="oh-my-codex:executor", model="sonnet", prompt="npm install && npm run build", run_in_background=true)
|
|
88
|
+
spawn_sub_agent(subagent_type="oh-my-codex:executor-low", model="haiku", prompt="Update the README with new API endpoints")
|
|
89
|
+
```
|
|
90
|
+
Why good: Long build runs in background while short task runs in foreground.
|
|
91
|
+
</Good>
|
|
92
|
+
|
|
93
|
+
<Bad>
|
|
94
|
+
Sequential execution of independent work:
|
|
95
|
+
```
|
|
96
|
+
result1 = spawn_sub_agent(executor-low, "Add type export") # wait...
|
|
97
|
+
result2 = spawn_sub_agent(executor, "Implement endpoint") # wait...
|
|
98
|
+
result3 = spawn_sub_agent(executor, "Add tests") # wait...
|
|
99
|
+
```
|
|
100
|
+
Why bad: These tasks are independent. Running them sequentially wastes time.
|
|
101
|
+
</Bad>
|
|
102
|
+
|
|
103
|
+
<Bad>
|
|
104
|
+
Wrong tier selection:
|
|
105
|
+
```
|
|
106
|
+
spawn_sub_agent(subagent_type="oh-my-codex:executor-high", model="opus", prompt="Add a missing semicolon")
|
|
107
|
+
```
|
|
108
|
+
Why bad: Opus is expensive overkill for a trivial fix. Use executor-low with Haiku instead.
|
|
109
|
+
</Bad>
|
|
110
|
+
</Examples>
|
|
111
|
+
|
|
112
|
+
<Escalation_And_Stop_Conditions>
|
|
113
|
+
- When ultrawork is invoked directly (not via ralph), apply lightweight verification only -- build passes, tests pass, no new errors
|
|
114
|
+
- For full persistence and comprehensive architect verification, recommend switching to `ralph` mode
|
|
115
|
+
- If a task fails repeatedly across retries, report the issue rather than retrying indefinitely
|
|
116
|
+
- Escalate to the user when tasks have unclear dependencies or conflicting requirements
|
|
117
|
+
</Escalation_And_Stop_Conditions>
|
|
118
|
+
|
|
119
|
+
<Final_Checklist>
|
|
120
|
+
- [ ] All parallel tasks completed
|
|
121
|
+
- [ ] Build/typecheck passes
|
|
122
|
+
- [ ] Affected tests pass
|
|
123
|
+
- [ ] No new errors introduced
|
|
124
|
+
</Final_Checklist>
|
|
125
|
+
|
|
126
|
+
<Advanced>
|
|
127
|
+
## Relationship to Other Modes
|
|
128
|
+
|
|
129
|
+
```
|
|
130
|
+
ralph (persistence wrapper)
|
|
131
|
+
\-- includes: ultrawork (this skill)
|
|
132
|
+
\-- provides: parallel execution only
|
|
133
|
+
|
|
134
|
+
autopilot (autonomous execution)
|
|
135
|
+
\-- includes: ralph
|
|
136
|
+
\-- includes: ultrawork (this skill)
|
|
137
|
+
|
|
138
|
+
ecomode (token efficiency)
|
|
139
|
+
\-- modifies: ultrawork's model selection
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Ultrawork is the parallelism layer. Ralph adds persistence and verification. Autopilot adds the full lifecycle pipeline. Ecomode adjusts ultrawork's model routing to favor cheaper models.
|
|
143
|
+
</Advanced>
|