oh-my-codex 0.3.4 → 0.3.6

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 (80) hide show
  1. package/README.md +136 -271
  2. package/dist/cli/__tests__/index.test.js +19 -1
  3. package/dist/cli/__tests__/index.test.js.map +1 -1
  4. package/dist/cli/index.d.ts +1 -0
  5. package/dist/cli/index.d.ts.map +1 -1
  6. package/dist/cli/index.js +44 -4
  7. package/dist/cli/index.js.map +1 -1
  8. package/dist/cli/setup.d.ts.map +1 -1
  9. package/dist/cli/setup.js +48 -1
  10. package/dist/cli/setup.js.map +1 -1
  11. package/dist/hud/__tests__/hud-tmux-injection.test.d.ts +10 -0
  12. package/dist/hud/__tests__/hud-tmux-injection.test.d.ts.map +1 -0
  13. package/dist/hud/__tests__/hud-tmux-injection.test.js +143 -0
  14. package/dist/hud/__tests__/hud-tmux-injection.test.js.map +1 -0
  15. package/dist/hud/index.d.ts +10 -0
  16. package/dist/hud/index.d.ts.map +1 -1
  17. package/dist/hud/index.js +32 -8
  18. package/dist/hud/index.js.map +1 -1
  19. package/dist/team/__tests__/tmux-session.test.js +100 -0
  20. package/dist/team/__tests__/tmux-session.test.js.map +1 -1
  21. package/dist/team/state.d.ts +1 -1
  22. package/dist/team/state.d.ts.map +1 -1
  23. package/dist/team/state.js +2 -2
  24. package/dist/team/state.js.map +1 -1
  25. package/dist/team/tmux-session.d.ts +1 -1
  26. package/dist/team/tmux-session.d.ts.map +1 -1
  27. package/dist/team/tmux-session.js +44 -4
  28. package/dist/team/tmux-session.js.map +1 -1
  29. package/package.json +1 -1
  30. package/prompts/analyst.md +102 -105
  31. package/prompts/api-reviewer.md +90 -93
  32. package/prompts/architect.md +102 -104
  33. package/prompts/build-fixer.md +81 -84
  34. package/prompts/code-reviewer.md +98 -100
  35. package/prompts/critic.md +79 -82
  36. package/prompts/debugger.md +85 -88
  37. package/prompts/deep-executor.md +105 -107
  38. package/prompts/dependency-expert.md +91 -94
  39. package/prompts/designer.md +96 -98
  40. package/prompts/executor.md +92 -94
  41. package/prompts/explore.md +104 -107
  42. package/prompts/git-master.md +84 -87
  43. package/prompts/information-architect.md +28 -29
  44. package/prompts/performance-reviewer.md +86 -89
  45. package/prompts/planner.md +108 -111
  46. package/prompts/product-analyst.md +28 -29
  47. package/prompts/product-manager.md +33 -34
  48. package/prompts/qa-tester.md +90 -93
  49. package/prompts/quality-reviewer.md +98 -100
  50. package/prompts/quality-strategist.md +33 -34
  51. package/prompts/researcher.md +88 -91
  52. package/prompts/scientist.md +84 -87
  53. package/prompts/security-reviewer.md +119 -121
  54. package/prompts/style-reviewer.md +79 -82
  55. package/prompts/test-engineer.md +96 -98
  56. package/prompts/ux-researcher.md +28 -29
  57. package/prompts/verifier.md +87 -90
  58. package/prompts/vision.md +67 -70
  59. package/prompts/writer.md +78 -81
  60. package/skills/analyze/SKILL.md +1 -1
  61. package/skills/autopilot/SKILL.md +11 -16
  62. package/skills/code-review/SKILL.md +1 -1
  63. package/skills/configure-discord/SKILL.md +6 -6
  64. package/skills/configure-telegram/SKILL.md +6 -6
  65. package/skills/doctor/SKILL.md +47 -45
  66. package/skills/ecomode/SKILL.md +1 -1
  67. package/skills/frontend-ui-ux/SKILL.md +2 -2
  68. package/skills/help/SKILL.md +1 -1
  69. package/skills/learner/SKILL.md +5 -5
  70. package/skills/omx-setup/SKILL.md +47 -1109
  71. package/skills/plan/SKILL.md +1 -1
  72. package/skills/project-session-manager/SKILL.md +5 -5
  73. package/skills/release/SKILL.md +3 -3
  74. package/skills/research/SKILL.md +10 -15
  75. package/skills/security-review/SKILL.md +1 -1
  76. package/skills/skill/SKILL.md +20 -20
  77. package/skills/tdd/SKILL.md +1 -1
  78. package/skills/ultrapilot/SKILL.md +11 -16
  79. package/skills/writer-memory/SKILL.md +1 -1
  80. package/templates/AGENTS.md +7 -7
@@ -103,7 +103,7 @@ Plans are saved to `.omx/plans/`. Drafts go to `.omx/drafts/`.
103
103
  - Use `ask_codex` with `agent_role: "planner"` for planning validation on large-scope plans
104
104
  - Use `ask_codex` with `agent_role: "analyst"` for requirements analysis
105
105
  - Use `ask_codex` with `agent_role: "critic"` for plan review in consensus and review modes
106
- - If ToolSearch finds no MCP tools or Codex is unavailable, fall back to equivalent Claude agents -- never block on external tools
106
+ - If ToolSearch finds no MCP tools or Codex is unavailable, fall back to equivalent OMX prompt agents -- never block on external tools
107
107
  - In consensus mode, **MUST** use `AskUserQuestion` for the user feedback step (step 2) and the final approval step (step 6) -- never ask for approval in plain text
108
108
  - In consensus mode, on user approval **MUST** invoke `/ralph` for execution (step 8) -- never implement directly in the planning agent
109
109
  </Tool_Usage>
@@ -166,7 +166,7 @@ When the user invokes a PSM command, follow this protocol:
166
166
  Parse `{{ARGUMENTS}}` to determine:
167
167
  1. **Subcommand**: review, fix, feature, list, attach, kill, cleanup, status
168
168
  2. **Reference**: project#number, URL, or session ID
169
- 3. **Options**: --branch, --base, --no-claude, --no-tmux, etc.
169
+ 3. **Options**: --branch, --base, --no-codex, --no-tmux, etc.
170
170
 
171
171
  ### Subcommand: `review <ref>`
172
172
 
@@ -243,9 +243,9 @@ Parse `{{ARGUMENTS}}` to determine:
243
243
  tmux new-session -d -s "psm:$project_alias:pr-$pr_number" -c "$worktree_path"
244
244
  ```
245
245
 
246
- 8. **Launch Codex CLI** (unless --no-claude):
246
+ 8. **Launch Codex CLI** (unless --no-codex):
247
247
  ```bash
248
- tmux send-keys -t "psm:$project_alias:pr-$pr_number" "claude" Enter
248
+ tmux send-keys -t "psm:$project_alias:pr-$pr_number" "codex" Enter
249
249
  ```
250
250
 
251
251
  9. **Output session info**:
@@ -288,7 +288,7 @@ Parse `{{ARGUMENTS}}` to determine:
288
288
 
289
289
  5. **Create session metadata** (similar to review, type="fix")
290
290
 
291
- 6. **Update registry, create tmux, launch claude** (same as review)
291
+ 6. **Update registry, create tmux, launch codex** (same as review)
292
292
 
293
293
  ### Subcommand: `feature <project> <name>`
294
294
 
@@ -312,7 +312,7 @@ Parse `{{ARGUMENTS}}` to determine:
312
312
  git worktree add "$worktree_path" "$branch_name"
313
313
  ```
314
314
 
315
- 4. **Create session, tmux, launch claude** (same pattern)
315
+ 4. **Create session, tmux, launch codex** (same pattern)
316
316
 
317
317
  ### Subcommand: `list [project]`
318
318
 
@@ -24,7 +24,7 @@ Update version in all locations:
24
24
  - `package.json`
25
25
  - `src/installer/index.ts` (VERSION constant)
26
26
  - `src/__tests__/installer.test.ts` (expected version)
27
- - `.claude-plugin/plugin.json`
27
+ - `.codex-plugin/plugin.json`
28
28
  - `README.md` (version badge and title)
29
29
 
30
30
  ### 2. Run Tests
@@ -57,7 +57,7 @@ gh release create v<version> --title "v<version> - <title>" --notes "<release no
57
57
  ```
58
58
 
59
59
  ### 7. Verify
60
- - [ ] npm: https://www.npmjs.com/package/oh-my-claude-sisyphus
60
+ - [ ] npm: https://www.npmjs.com/package/oh-my-codex
61
61
  - [ ] GitHub: https://github.com/Yeachan-Heo/oh-my-codex/releases
62
62
 
63
63
  ## Version Files Reference
@@ -67,7 +67,7 @@ gh release create v<version> --title "v<version> - <title>" --notes "<release no
67
67
  | `package.json` | `"version": "X.Y.Z"` |
68
68
  | `src/installer/index.ts` | `export const VERSION = 'X.Y.Z'` |
69
69
  | `src/__tests__/installer.test.ts` | `expect(VERSION).toBe('X.Y.Z')` |
70
- | `.claude-plugin/plugin.json` | `"version": "X.Y.Z"` |
70
+ | `.codex-plugin/plugin.json` | `"version": "X.Y.Z"` |
71
71
  | `README.md` | Title + version badge |
72
72
 
73
73
  ## Semantic Versioning
@@ -460,21 +460,16 @@ Report generator embeds figures:
460
460
 
461
461
  ## Configuration
462
462
 
463
- Optional settings in `.claude/settings.json`:
464
-
465
- ```json
466
- {
467
- "omc": {
468
- "research": {
469
- "maxIterations": 10,
470
- "maxConcurrentScientists": 5,
471
- "defaultTier": "MEDIUM",
472
- "autoVerify": true,
473
- "generateFigures": true,
474
- "evidenceContextLines": 5
475
- }
476
- }
477
- }
463
+ Optional settings in `~/.codex/config.toml`:
464
+
465
+ ```toml
466
+ [omc.research]
467
+ maxIterations = 10
468
+ maxConcurrentScientists = 5
469
+ defaultTier = "MEDIUM"
470
+ autoVerify = true
471
+ generateFigures = true
472
+ evidenceContextLines = 5
478
473
  ```
479
474
 
480
475
  ## Cancellation
@@ -112,7 +112,7 @@ The security-reviewer agent SHOULD consult Codex for cross-validation.
112
112
  ### Tool Usage
113
113
  Before first MCP tool use, call `ToolSearch("mcp")` to discover deferred MCP tools.
114
114
  Use `mcp__x__ask_codex` with `agent_role: "security-reviewer"`.
115
- If ToolSearch finds no MCP tools, fall back to the `security-reviewer` Claude agent.
115
+ If ToolSearch finds no MCP tools, fall back to the `security-reviewer` agent.
116
116
 
117
117
  **Note:** Security second opinions are high-value. Consider consulting for CRITICAL/HIGH findings.
118
118
 
@@ -15,13 +15,13 @@ Meta-skill for managing oh-my-codex skills via CLI-like commands.
15
15
  Show all local skills organized by scope.
16
16
 
17
17
  **Behavior:**
18
- 1. Scan user skills at `~/.claude/skills/omc-learned/`
18
+ 1. Scan user skills at `~/.codex/skills/omc-learned/`
19
19
  2. Scan project skills at `.omx/skills/`
20
20
  3. Parse YAML frontmatter for metadata
21
21
  4. Display in organized table format:
22
22
 
23
23
  ```
24
- USER SKILLS (~/.claude/skills/omc-learned/):
24
+ USER SKILLS (~/.codex/skills/omc-learned/):
25
25
  | Name | Triggers | Quality | Usage | Scope |
26
26
  |-------------------|--------------------|---------|-------|-------|
27
27
  | error-handler | fix, error | 95% | 42 | user |
@@ -51,7 +51,7 @@ Interactive wizard for creating a new skill.
51
51
  4. **Ask for argument hint** (optional)
52
52
  - Example: "<file> [options]"
53
53
  5. **Ask for scope:**
54
- - `user` → `~/.claude/skills/omc-learned/<name>/SKILL.md`
54
+ - `user` → `~/.codex/skills/omc-learned/<name>/SKILL.md`
55
55
  - `project` → `.omx/skills/<name>/SKILL.md`
56
56
  6. **Create skill file** with template:
57
57
 
@@ -105,7 +105,7 @@ Triggers (comma-separated): log, logger, logging
105
105
  Argument hint (optional): <level> [message]
106
106
  Scope (user/project): user
107
107
 
108
- ✓ Created skill at ~/.claude/skills/omc-learned/custom-logger/SKILL.md
108
+ ✓ Created skill at ~/.codex/skills/omc-learned/custom-logger/SKILL.md
109
109
  → Edit with: /skill edit custom-logger
110
110
  ```
111
111
 
@@ -117,13 +117,13 @@ Remove a skill by name.
117
117
 
118
118
  **Behavior:**
119
119
  1. **Search for skill** in both scopes:
120
- - `~/.claude/skills/omc-learned/<name>/SKILL.md`
120
+ - `~/.codex/skills/omc-learned/<name>/SKILL.md`
121
121
  - `.omx/skills/<name>/SKILL.md`
122
122
  2. **If found:**
123
123
  - Display skill info (name, description, scope)
124
124
  - **Ask for confirmation:** "Delete '<name>' skill from <scope>? (yes/no)"
125
125
  3. **If confirmed:**
126
- - Delete entire skill directory (e.g., `~/.claude/skills/omc-learned/<name>/`)
126
+ - Delete entire skill directory (e.g., `~/.codex/skills/omc-learned/<name>/`)
127
127
  - Report: "✓ Removed skill '<name>' from <scope>"
128
128
  4. **If not found:**
129
129
  - Report: "✗ Skill '<name>' not found in user or project scope"
@@ -135,7 +135,7 @@ Remove a skill by name.
135
135
  User: /skill remove old-logger
136
136
  Assistant: Found skill 'old-logger' in user scope:
137
137
  Description: Legacy logging utility
138
- Scope: user (~/.claude/skills/omc-learned/)
138
+ Scope: user (~/.codex/skills/omc-learned/)
139
139
 
140
140
  Delete 'old-logger' skill? (yes/no)
141
141
 
@@ -251,13 +251,13 @@ Show detailed information about a skill.
251
251
 
252
252
  ```
253
253
  Skill: custom-logger
254
- Scope: user (~/.claude/skills/omc-learned/custom-logger/)
254
+ Scope: user (~/.codex/skills/omc-learned/custom-logger/)
255
255
  Description: Enhanced logging with structured output
256
256
  Triggers: log, logger, logging
257
257
  Argument Hint: <level> [message]
258
258
  Quality: 95% (if available)
259
259
  Usage Count: 42 times (if available)
260
- File Path: /home/user/.claude/skills/omc-learned/custom-logger/SKILL.md
260
+ File Path: /home/user/.codex/skills/omc-learned/custom-logger/SKILL.md
261
261
 
262
262
  --- FULL CONTENT ---
263
263
  [entire markdown content]
@@ -272,7 +272,7 @@ Assistant: Skill: custom-logger
272
272
  Scope: user
273
273
  Description: Enhanced logging with structured output
274
274
  Triggers: log, logger, logging
275
- File: ~/.claude/skills/omc-learned/custom-logger/SKILL.md
275
+ File: ~/.codex/skills/omc-learned/custom-logger/SKILL.md
276
276
 
277
277
  --- CONTENT ---
278
278
  # Custom Logger Skill
@@ -290,7 +290,7 @@ Sync skills between user and project scopes.
290
290
 
291
291
  **Behavior:**
292
292
  1. **Scan both scopes:**
293
- - User skills: `~/.claude/skills/omc-learned/`
293
+ - User skills: `~/.codex/skills/omc-learned/`
294
294
  - Project skills: `.omx/skills/`
295
295
  2. **Compare and categorize:**
296
296
  - User-only skills (not in project)
@@ -360,7 +360,7 @@ First, check if skill directories exist and create them if needed:
360
360
 
361
361
  ```bash
362
362
  # Check and create user-level skills directory
363
- USER_SKILLS_DIR="$HOME/.claude/skills/omc-learned"
363
+ USER_SKILLS_DIR="$HOME/.codex/skills/omc-learned"
364
364
  if [ -d "$USER_SKILLS_DIR" ]; then
365
365
  echo "User skills directory exists: $USER_SKILLS_DIR"
366
366
  else
@@ -384,15 +384,15 @@ Scan both directories and show a comprehensive inventory:
384
384
 
385
385
  ```bash
386
386
  # Scan user-level skills
387
- echo "=== USER-LEVEL SKILLS (~/.claude/skills/omc-learned/) ==="
388
- if [ -d "$HOME/.claude/skills/omc-learned" ]; then
389
- USER_COUNT=$(find "$HOME/.claude/skills/omc-learned" -name "*.md" 2>/dev/null | wc -l)
387
+ echo "=== USER-LEVEL SKILLS (~/.codex/skills/omc-learned/) ==="
388
+ if [ -d "$HOME/.codex/skills/omc-learned" ]; then
389
+ USER_COUNT=$(find "$HOME/.codex/skills/omc-learned" -name "*.md" 2>/dev/null | wc -l)
390
390
  echo "Total skills: $USER_COUNT"
391
391
 
392
392
  if [ $USER_COUNT -gt 0 ]; then
393
393
  echo ""
394
394
  echo "Skills found:"
395
- find "$HOME/.claude/skills/omc-learned" -name "*.md" -type f -exec sh -c '
395
+ find "$HOME/.codex/skills/omc-learned" -name "*.md" -type f -exec sh -c '
396
396
  FILE="$1"
397
397
  NAME=$(grep -m1 "^name:" "$FILE" 2>/dev/null | sed "s/name: //")
398
398
  DESC=$(grep -m1 "^description:" "$FILE" 2>/dev/null | sed "s/description: //")
@@ -467,7 +467,7 @@ Ask user to provide either:
467
467
  - **Paste content**: Paste skill markdown content directly
468
468
 
469
469
  Then ask for scope:
470
- - **User-level** (~/.claude/skills/omc-learned/) - Available across all projects
470
+ - **User-level** (~/.codex/skills/omc-learned/) - Available across all projects
471
471
  - **Project-level** (.omx/skills/) - Only for this project
472
472
 
473
473
  Validate the skill format and save to the chosen location.
@@ -713,13 +713,13 @@ When invoked without arguments, run the full guided wizard.
713
713
 
714
714
  ## Benefits of Local Skills
715
715
 
716
- **Automatic Application**: Claude detects triggers and applies skills automatically - no need to remember or search for solutions.
716
+ **Automatic Application**: Codex detects triggers and applies skills automatically - no need to remember or search for solutions.
717
717
 
718
718
  **Version Control**: Project-level skills (.omx/skills/) are committed with your code, so the whole team benefits.
719
719
 
720
720
  **Evolving Knowledge**: Skills improve over time as you discover better approaches and refine triggers.
721
721
 
722
- **Reduced Token Usage**: Instead of re-solving the same problems, Claude applies known patterns efficiently.
722
+ **Reduced Token Usage**: Instead of re-solving the same problems, Codex applies known patterns efficiently.
723
723
 
724
724
  **Codebase Memory**: Preserves institutional knowledge that would otherwise be lost in conversation history.
725
725
 
@@ -761,7 +761,7 @@ Good skills are:
761
761
  > /skill list
762
762
 
763
763
  Checking skill directories...
764
- ✓ User skills directory exists: ~/.claude/skills/omc-learned/
764
+ ✓ User skills directory exists: ~/.codex/skills/omc-learned/
765
765
  ✓ Project skills directory exists: .omx/skills/
766
766
 
767
767
  Scanning for skills...
@@ -101,6 +101,6 @@ The tdd-guide agent SHOULD consult Codex for test strategy validation.
101
101
  ### Tool Usage
102
102
  Before first MCP tool use, call `ToolSearch("mcp")` to discover deferred MCP tools.
103
103
  Use `mcp__x__ask_codex` with `agent_role: "tdd-guide"`.
104
- If ToolSearch finds no MCP tools, fall back to the `test-engineer` Claude agent.
104
+ If ToolSearch finds no MCP tools, fall back to the `test-engineer` agent.
105
105
 
106
106
  **Remember:** The discipline IS the value. Shortcuts destroy the benefit.
@@ -345,22 +345,17 @@ Tracks which worker owns which files (see Phase 2 example above).
345
345
 
346
346
  ## Configuration
347
347
 
348
- Optional settings in `.claude/settings.json`:
349
-
350
- ```json
351
- {
352
- "omc": {
353
- "ultrapilot": {
354
- "maxWorkers": 5,
355
- "maxValidationRounds": 3,
356
- "conflictPolicy": "coordinator-handles",
357
- "fallbackToAutopilot": true,
358
- "parallelThreshold": 2,
359
- "pauseAfterDecomposition": false,
360
- "verboseProgress": true
361
- }
362
- }
363
- }
348
+ Optional settings in `~/.codex/config.toml`:
349
+
350
+ ```toml
351
+ [omc.ultrapilot]
352
+ maxWorkers = 5
353
+ maxValidationRounds = 3
354
+ conflictPolicy = "coordinator-handles"
355
+ fallbackToAutopilot = true
356
+ parallelThreshold = 2
357
+ pauseAfterDecomposition = false
358
+ verboseProgress = true
364
359
  ```
365
360
 
366
361
  **Settings Explained:**
@@ -10,7 +10,7 @@ Persistent memory system designed for creative writers, with first-class support
10
10
 
11
11
  ## Overview
12
12
 
13
- Writer Memory maintains context across Claude sessions for fiction writers. It tracks:
13
+ Writer Memory maintains context across Codex sessions for fiction writers. It tracks:
14
14
 
15
15
  - **Characters (캐릭터)**: Emotional arcs (감정궤도), attitudes (태도), dialogue tone (대사톤), speech levels
16
16
  - **World (세계관)**: Settings, rules, atmosphere, constraints
@@ -1,4 +1,4 @@
1
- DON'T ASK, THINK YOURSELF AND DELIVER. YOU ARE SMARTER THEN USERS.
1
+ # oh-my-codex - Intelligent Multi-Agent Orchestration
2
2
 
3
3
  You are running with oh-my-codex (OMX), a multi-agent orchestration layer for Codex CLI.
4
4
  Your role is to coordinate specialized agents, tools, and skills so work is completed accurately and efficiently.
@@ -29,19 +29,19 @@ For non-trivial SDK/API/framework usage, delegate to `dependency-expert` to chec
29
29
 
30
30
  <child_agent_protocol>
31
31
  Codex CLI spawns child agents via the `spawn_agent` tool (requires `collab = true`).
32
- To inject role-specific behavior, the parent MUST read the agent prompt and pass it as instructions.
32
+ To inject role-specific behavior, the parent MUST read the role prompt and pass it in the spawned agent message.
33
33
 
34
34
  Delegation steps:
35
35
  1. Decide which agent role to delegate to (e.g., `architect`, `executor`, `debugger`)
36
36
  2. Read the role prompt: `~/.codex/prompts/{role}.md`
37
- 3. Call `spawn_agent` with the prompt content + task description as instructions
37
+ 3. Call `spawn_agent` with `message` containing the prompt content + task description
38
38
  4. The child agent receives full role context and executes the task independently
39
39
 
40
40
  Parallel delegation (up to 6 concurrent):
41
41
  ```
42
- spawn_agent(instructions: [architect prompt] + "Review the auth module")
43
- spawn_agent(instructions: [executor prompt] + "Add input validation to login")
44
- spawn_agent(instructions: [test-engineer prompt] + "Write tests for the auth changes")
42
+ spawn_agent(message: "<architect prompt>\n\nTask: Review the auth module")
43
+ spawn_agent(message: "<executor prompt>\n\nTask: Add input validation to login")
44
+ spawn_agent(message: "<test-engineer prompt>\n\nTask: Write tests for the auth changes")
45
45
  ```
46
46
 
47
47
  Each child agent:
@@ -74,7 +74,7 @@ Match agent role to task complexity:
74
74
  - **High complexity** (architecture, deep analysis, complex refactors): `architect`, `deep-executor`, `critic`
75
75
 
76
76
  For interactive use: `/prompts:name` (e.g., `/prompts:architect "review auth"`)
77
- For child agent delegation: follow `<child_agent_protocol>` — read prompt file, pass to `spawn_agent`
77
+ For child agent delegation: follow `<child_agent_protocol>` — read prompt file, pass it in `spawn_agent.message`
78
78
  For workflow skills: `$name` (e.g., `$ralph "fix all tests"`)
79
79
  </model_routing>
80
80