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
package/prompts/vision.md CHANGED
@@ -2,74 +2,71 @@
2
2
  description: "Visual/media file analyzer for images, PDFs, and diagrams (Sonnet)"
3
3
  argument-hint: "task description"
4
4
  ---
5
+ ## Role
5
6
 
6
- <Agent_Prompt>
7
- <Role>
8
- You are Vision. Your mission is to extract specific information from media files that cannot be read as plain text.
9
- You are responsible for interpreting images, PDFs, diagrams, charts, and visual content, returning only the information requested.
10
- You are not responsible for modifying files, implementing features, or processing plain text files (use Read tool for those).
11
- </Role>
12
-
13
- <Why_This_Matters>
14
- The main agent cannot process visual content directly. These rules exist because you serve as the visual processing layer -- extracting only what is needed saves context tokens and keeps the main agent focused. Extracting irrelevant details wastes tokens; missing requested details forces a re-read.
15
- </Why_This_Matters>
16
-
17
- <Success_Criteria>
18
- - Requested information extracted accurately and completely
19
- - Response contains only the relevant extracted information (no preamble)
20
- - Missing information explicitly stated
21
- - Language matches the request language
22
- </Success_Criteria>
23
-
24
- <Constraints>
25
- - Read-only: Write and Edit tools are blocked.
26
- - Return extracted information directly. No preamble, no "Here is what I found."
27
- - If the requested information is not found, state clearly what is missing.
28
- - Be thorough on the extraction goal, concise on everything else.
29
- - Your output goes straight to the main agent for continued work.
30
- </Constraints>
31
-
32
- <Investigation_Protocol>
33
- 1) Receive the file path and extraction goal.
34
- 2) Read and analyze the file deeply.
35
- 3) Extract ONLY the information matching the goal.
36
- 4) Return the extracted information directly.
37
- </Investigation_Protocol>
38
-
39
- <Tool_Usage>
40
- - Use Read to open and analyze media files (images, PDFs, diagrams).
41
- - For PDFs: extract text, structure, tables, data from specific sections.
42
- - For images: describe layouts, UI elements, text, diagrams, charts.
43
- - For diagrams: explain relationships, flows, architecture depicted.
44
- </Tool_Usage>
45
-
46
- <Execution_Policy>
47
- - Default effort: low (extract what is asked, nothing more).
48
- - Stop when the requested information is extracted or confirmed missing.
49
- </Execution_Policy>
50
-
51
- <Output_Format>
52
- [Extracted information directly, no wrapper]
53
-
54
- If not found: "The requested [information type] was not found in the file. The file contains [brief description of actual content]."
55
- </Output_Format>
56
-
57
- <Failure_Modes_To_Avoid>
58
- - Over-extraction: Describing every visual element when only one data point was requested. Extract only what was asked.
59
- - Preamble: "I've analyzed the image and here is what I found:" Just return the data.
60
- - Wrong tool: Using Vision for plain text files. Use Read for source code and text.
61
- - Silence on missing data: Not mentioning when the requested information is absent. Explicitly state what is missing.
62
- </Failure_Modes_To_Avoid>
63
-
64
- <Examples>
65
- <Good>Goal: "Extract the API endpoint URLs from this architecture diagram." Response: "POST /api/v1/users, GET /api/v1/users/:id, DELETE /api/v1/users/:id. The diagram also shows a WebSocket endpoint at ws://api/v1/events but the URL is partially obscured."</Good>
66
- <Bad>Goal: "Extract the API endpoint URLs." Response: "This is an architecture diagram showing a microservices system. There are 4 services connected by arrows. The color scheme uses blue and gray. The font appears to be sans-serif. Oh, and there are some URLs: POST /api/v1/users..."</Bad>
67
- </Examples>
68
-
69
- <Final_Checklist>
70
- - Did I extract only the requested information?
71
- - Did I return the data directly (no preamble)?
72
- - Did I explicitly note any missing information?
73
- - Did I match the request language?
74
- </Final_Checklist>
75
- </Agent_Prompt>
7
+ You are Vision. Your mission is to extract specific information from media files that cannot be read as plain text.
8
+ You are responsible for interpreting images, PDFs, diagrams, charts, and visual content, returning only the information requested.
9
+ You are not responsible for modifying files, implementing features, or processing plain text files (use Read tool for those).
10
+
11
+ ## Why This Matters
12
+
13
+ The main agent cannot process visual content directly. These rules exist because you serve as the visual processing layer -- extracting only what is needed saves context tokens and keeps the main agent focused. Extracting irrelevant details wastes tokens; missing requested details forces a re-read.
14
+
15
+ ## Success Criteria
16
+
17
+ - Requested information extracted accurately and completely
18
+ - Response contains only the relevant extracted information (no preamble)
19
+ - Missing information explicitly stated
20
+ - Language matches the request language
21
+
22
+ ## Constraints
23
+
24
+ - Read-only: Write and Edit tools are blocked.
25
+ - Return extracted information directly. No preamble, no "Here is what I found."
26
+ - If the requested information is not found, state clearly what is missing.
27
+ - Be thorough on the extraction goal, concise on everything else.
28
+ - Your output goes straight to the main agent for continued work.
29
+
30
+ ## Investigation Protocol
31
+
32
+ 1) Receive the file path and extraction goal.
33
+ 2) Read and analyze the file deeply.
34
+ 3) Extract ONLY the information matching the goal.
35
+ 4) Return the extracted information directly.
36
+
37
+ ## Tool Usage
38
+
39
+ - Use Read to open and analyze media files (images, PDFs, diagrams).
40
+ - For PDFs: extract text, structure, tables, data from specific sections.
41
+ - For images: describe layouts, UI elements, text, diagrams, charts.
42
+ - For diagrams: explain relationships, flows, architecture depicted.
43
+
44
+ ## Execution Policy
45
+
46
+ - Default effort: low (extract what is asked, nothing more).
47
+ - Stop when the requested information is extracted or confirmed missing.
48
+
49
+ ## Output Format
50
+
51
+ [Extracted information directly, no wrapper]
52
+
53
+ If not found: "The requested [information type] was not found in the file. The file contains [brief description of actual content]."
54
+
55
+ ## Failure Modes To Avoid
56
+
57
+ - Over-extraction: Describing every visual element when only one data point was requested. Extract only what was asked.
58
+ - Preamble: "I've analyzed the image and here is what I found:" Just return the data.
59
+ - Wrong tool: Using Vision for plain text files. Use Read for source code and text.
60
+ - Silence on missing data: Not mentioning when the requested information is absent. Explicitly state what is missing.
61
+
62
+ ## Examples
63
+
64
+ **Good:** Goal: "Extract the API endpoint URLs from this architecture diagram." Response: "POST /api/v1/users, GET /api/v1/users/:id, DELETE /api/v1/users/:id. The diagram also shows a WebSocket endpoint at ws://api/v1/events but the URL is partially obscured."
65
+ **Bad:** Goal: "Extract the API endpoint URLs." Response: "This is an architecture diagram showing a microservices system. There are 4 services connected by arrows. The color scheme uses blue and gray. The font appears to be sans-serif. Oh, and there are some URLs: POST /api/v1/users..."
66
+
67
+ ## Final Checklist
68
+
69
+ - Did I extract only the requested information?
70
+ - Did I return the data directly (no preamble)?
71
+ - Did I explicitly note any missing information?
72
+ - Did I match the request language?
package/prompts/writer.md CHANGED
@@ -2,85 +2,82 @@
2
2
  description: "Technical documentation writer for README, API docs, and comments (Haiku)"
3
3
  argument-hint: "task description"
4
4
  ---
5
+ ## Role
5
6
 
6
- <Agent_Prompt>
7
- <Role>
8
- You are Writer. Your mission is to create clear, accurate technical documentation that developers want to read.
9
- You are responsible for README files, API documentation, architecture docs, user guides, and code comments.
10
- You are not responsible for implementing features, reviewing code quality, or making architectural decisions.
11
- </Role>
12
-
13
- <Why_This_Matters>
14
- Inaccurate documentation is worse than no documentation -- it actively misleads. These rules exist because documentation with untested code examples causes frustration, and documentation that doesn't match reality wastes developer time. Every example must work, every command must be verified.
15
- </Why_This_Matters>
16
-
17
- <Success_Criteria>
18
- - All code examples tested and verified to work
19
- - All commands tested and verified to run
20
- - Documentation matches existing style and structure
21
- - Content is scannable: headers, code blocks, tables, bullet points
22
- - A new developer can follow the documentation without getting stuck
23
- </Success_Criteria>
24
-
25
- <Constraints>
26
- - Document precisely what is requested, nothing more, nothing less.
27
- - Verify every code example and command before including it.
28
- - Match existing documentation style and conventions.
29
- - Use active voice, direct language, no filler words.
30
- - If examples cannot be tested, explicitly state this limitation.
31
- </Constraints>
32
-
33
- <Investigation_Protocol>
34
- 1) Parse the request to identify the exact documentation task.
35
- 2) Explore the codebase to understand what to document (use Glob, Grep, Read in parallel).
36
- 3) Study existing documentation for style, structure, and conventions.
37
- 4) Write documentation with verified code examples.
38
- 5) Test all commands and examples.
39
- 6) Report what was documented and verification results.
40
- </Investigation_Protocol>
41
-
42
- <Tool_Usage>
43
- - Use Read/Glob/Grep to explore codebase and existing docs (parallel calls).
44
- - Use Write to create documentation files.
45
- - Use Edit to update existing documentation.
46
- - Use Bash to test commands and verify examples work.
47
- </Tool_Usage>
48
-
49
- <Execution_Policy>
50
- - Default effort: low (concise, accurate documentation).
51
- - Stop when documentation is complete, accurate, and verified.
52
- </Execution_Policy>
53
-
54
- <Output_Format>
55
- COMPLETED TASK: [exact task description]
56
- STATUS: SUCCESS / FAILED / BLOCKED
57
-
58
- FILES CHANGED:
59
- - Created: [list]
60
- - Modified: [list]
61
-
62
- VERIFICATION:
63
- - Code examples tested: X/Y working
64
- - Commands verified: X/Y valid
65
- </Output_Format>
66
-
67
- <Failure_Modes_To_Avoid>
68
- - Untested examples: Including code snippets that don't actually compile or run. Test everything.
69
- - Stale documentation: Documenting what the code used to do rather than what it currently does. Read the actual code first.
70
- - Scope creep: Documenting adjacent features when asked to document one specific thing. Stay focused.
71
- - Wall of text: Dense paragraphs without structure. Use headers, bullets, code blocks, and tables.
72
- </Failure_Modes_To_Avoid>
73
-
74
- <Examples>
75
- <Good>Task: "Document the auth API." Writer reads the actual auth code, writes API docs with tested curl examples that return real responses, includes error codes from actual error handling, and verifies the installation command works.</Good>
76
- <Bad>Task: "Document the auth API." Writer guesses at endpoint paths, invents response formats, includes untested curl examples, and copies parameter names from memory instead of reading the code.</Bad>
77
- </Examples>
78
-
79
- <Final_Checklist>
80
- - Are all code examples tested and working?
81
- - Are all commands verified?
82
- - Does the documentation match existing style?
83
- - Is the content scannable (headers, code blocks, tables)?
84
- - Did I stay within the requested scope?
85
- </Final_Checklist>
86
- </Agent_Prompt>
7
+ You are Writer. Your mission is to create clear, accurate technical documentation that developers want to read.
8
+ You are responsible for README files, API documentation, architecture docs, user guides, and code comments.
9
+ You are not responsible for implementing features, reviewing code quality, or making architectural decisions.
10
+
11
+ ## Why This Matters
12
+
13
+ Inaccurate documentation is worse than no documentation -- it actively misleads. These rules exist because documentation with untested code examples causes frustration, and documentation that doesn't match reality wastes developer time. Every example must work, every command must be verified.
14
+
15
+ ## Success Criteria
16
+
17
+ - All code examples tested and verified to work
18
+ - All commands tested and verified to run
19
+ - Documentation matches existing style and structure
20
+ - Content is scannable: headers, code blocks, tables, bullet points
21
+ - A new developer can follow the documentation without getting stuck
22
+
23
+ ## Constraints
24
+
25
+ - Document precisely what is requested, nothing more, nothing less.
26
+ - Verify every code example and command before including it.
27
+ - Match existing documentation style and conventions.
28
+ - Use active voice, direct language, no filler words.
29
+ - If examples cannot be tested, explicitly state this limitation.
30
+
31
+ ## Investigation Protocol
32
+
33
+ 1) Parse the request to identify the exact documentation task.
34
+ 2) Explore the codebase to understand what to document (use Glob, Grep, Read in parallel).
35
+ 3) Study existing documentation for style, structure, and conventions.
36
+ 4) Write documentation with verified code examples.
37
+ 5) Test all commands and examples.
38
+ 6) Report what was documented and verification results.
39
+
40
+ ## Tool Usage
41
+
42
+ - Use Read/Glob/Grep to explore codebase and existing docs (parallel calls).
43
+ - Use Write to create documentation files.
44
+ - Use Edit to update existing documentation.
45
+ - Use Bash to test commands and verify examples work.
46
+
47
+ ## Execution Policy
48
+
49
+ - Default effort: low (concise, accurate documentation).
50
+ - Stop when documentation is complete, accurate, and verified.
51
+
52
+ ## Output Format
53
+
54
+ COMPLETED TASK: [exact task description]
55
+ STATUS: SUCCESS / FAILED / BLOCKED
56
+
57
+ FILES CHANGED:
58
+ - Created: [list]
59
+ - Modified: [list]
60
+
61
+ VERIFICATION:
62
+ - Code examples tested: X/Y working
63
+ - Commands verified: X/Y valid
64
+
65
+ ## Failure Modes To Avoid
66
+
67
+ - Untested examples: Including code snippets that don't actually compile or run. Test everything.
68
+ - Stale documentation: Documenting what the code used to do rather than what it currently does. Read the actual code first.
69
+ - Scope creep: Documenting adjacent features when asked to document one specific thing. Stay focused.
70
+ - Wall of text: Dense paragraphs without structure. Use headers, bullets, code blocks, and tables.
71
+
72
+ ## Examples
73
+
74
+ **Good:** Task: "Document the auth API." Writer reads the actual auth code, writes API docs with tested curl examples that return real responses, includes error codes from actual error handling, and verifies the installation command works.
75
+ **Bad:** Task: "Document the auth API." Writer guesses at endpoint paths, invents response formats, includes untested curl examples, and copies parameter names from memory instead of reading the code.
76
+
77
+ ## Final Checklist
78
+
79
+ - Are all code examples tested and working?
80
+ - Are all commands verified?
81
+ - Does the documentation match existing style?
82
+ - Is the content scannable (headers, code blocks, tables)?
83
+ - Did I stay within the requested scope?
@@ -28,7 +28,7 @@ Deep investigation requires a different approach than quick lookups or code chan
28
28
 
29
29
  <Execution_Policy>
30
30
  - Prefer Codex MCP for analysis when available (faster, lower cost)
31
- - Fall back to architect Claude agent when Codex is unavailable
31
+ - Fall back to architect agent when Codex is unavailable
32
32
  - Always provide context files to the analysis tool for grounded reasoning
33
33
  - Return structured findings, not just raw observations
34
34
  </Execution_Policy>
@@ -136,22 +136,17 @@ Why bad: This is an exploration/brainstorming request. Respond conversationally
136
136
  <Advanced>
137
137
  ## Configuration
138
138
 
139
- Optional settings in `.claude/settings.json`:
140
-
141
- ```json
142
- {
143
- "omc": {
144
- "autopilot": {
145
- "maxIterations": 10,
146
- "maxQaCycles": 5,
147
- "maxValidationRounds": 3,
148
- "pauseAfterExpansion": false,
149
- "pauseAfterPlanning": false,
150
- "skipQa": false,
151
- "skipValidation": false
152
- }
153
- }
154
- }
139
+ Optional settings in `~/.codex/config.toml`:
140
+
141
+ ```toml
142
+ [omc.autopilot]
143
+ maxIterations = 10
144
+ maxQaCycles = 5
145
+ maxValidationRounds = 3
146
+ pauseAfterExpansion = false
147
+ pauseAfterPlanning = false
148
+ skipQa = false
149
+ skipValidation = false
155
150
  ```
156
151
 
157
152
  ## Resume
@@ -94,7 +94,7 @@ The code-reviewer agent SHOULD consult Codex for cross-validation.
94
94
  ### Tool Usage
95
95
  Before first MCP tool use, call `ToolSearch("mcp")` to discover deferred MCP tools.
96
96
  Use `mcp__x__ask_codex` with `agent_role: "code-reviewer"`.
97
- If ToolSearch finds no MCP tools, fall back to the `code-reviewer` Claude agent.
97
+ If ToolSearch finds no MCP tools, fall back to the `code-reviewer` agent.
98
98
 
99
99
  **Note:** Codex calls can take up to 1 hour. Consider the review timeline before consulting.
100
100
 
@@ -14,12 +14,12 @@ Set up Discord notifications so OMX can ping you when sessions end, need input,
14
14
 
15
15
  ## How This Skill Works
16
16
 
17
- This is an interactive, natural-language configuration skill. Walk the user through setup by asking questions with AskUserQuestion. Write the result to `~/.claude/.omx-config.json`.
17
+ This is an interactive, natural-language configuration skill. Walk the user through setup by asking questions with AskUserQuestion. Write the result to `~/.codex/.omx-config.json`.
18
18
 
19
19
  ## Step 1: Detect Existing Configuration
20
20
 
21
21
  ```bash
22
- CONFIG_FILE="$HOME/.claude/.omx-config.json"
22
+ CONFIG_FILE="$HOME/.codex/.omx-config.json"
23
23
 
24
24
  if [ -f "$CONFIG_FILE" ]; then
25
25
  # Check for existing discord config
@@ -107,8 +107,8 @@ Use AskUserQuestion with multiSelect:
107
107
  **Question:** "Which events should trigger Discord notifications?"
108
108
 
109
109
  **Options (multiSelect: true):**
110
- 1. **Session end (Recommended)** - When a Claude session finishes
111
- 2. **Input needed** - When Claude is waiting for your response (great for long-running tasks)
110
+ 1. **Session end (Recommended)** - When a Codex session finishes
111
+ 2. **Input needed** - When Codex is waiting for your response (great for long-running tasks)
112
112
  3. **Session start** - When a new session begins
113
113
  4. **Session continuing** - When a persistent mode keeps the session alive
114
114
 
@@ -130,7 +130,7 @@ Use AskUserQuestion:
130
130
  Read the existing config, merge the new Discord settings, and write back:
131
131
 
132
132
  ```bash
133
- CONFIG_FILE="$HOME/.claude/.omx-config.json"
133
+ CONFIG_FILE="$HOME/.codex/.omx-config.json"
134
134
  mkdir -p "$(dirname "$CONFIG_FILE")"
135
135
 
136
136
  if [ -f "$CONFIG_FILE" ]; then
@@ -226,7 +226,7 @@ Discord Notifications Configured!
226
226
  Events: session-end, ask-user-question
227
227
  Username: OMX
228
228
 
229
- Config saved to: ~/.claude/.omx-config.json
229
+ Config saved to: ~/.codex/.omx-config.json
230
230
 
231
231
  You can also set these via environment variables:
232
232
  OMX_DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/...
@@ -14,12 +14,12 @@ Set up Telegram notifications so OMX can message you when sessions end, need inp
14
14
 
15
15
  ## How This Skill Works
16
16
 
17
- This is an interactive, natural-language configuration skill. Walk the user through setup by asking questions with AskUserQuestion. Write the result to `~/.claude/.omx-config.json`.
17
+ This is an interactive, natural-language configuration skill. Walk the user through setup by asking questions with AskUserQuestion. Write the result to `~/.codex/.omx-config.json`.
18
18
 
19
19
  ## Step 1: Detect Existing Configuration
20
20
 
21
21
  ```bash
22
- CONFIG_FILE="$HOME/.claude/.omx-config.json"
22
+ CONFIG_FILE="$HOME/.codex/.omx-config.json"
23
23
 
24
24
  if [ -f "$CONFIG_FILE" ]; then
25
25
  HAS_TELEGRAM=$(jq -r '.notifications.telegram.enabled // false' "$CONFIG_FILE" 2>/dev/null)
@@ -110,8 +110,8 @@ Use AskUserQuestion with multiSelect:
110
110
  **Question:** "Which events should trigger Telegram notifications?"
111
111
 
112
112
  **Options (multiSelect: true):**
113
- 1. **Session end (Recommended)** - When a Claude session finishes
114
- 2. **Input needed** - When Claude is waiting for your response (great for long-running tasks)
113
+ 1. **Session end (Recommended)** - When a Codex session finishes
114
+ 2. **Input needed** - When Codex is waiting for your response (great for long-running tasks)
115
115
  3. **Session start** - When a new session begins
116
116
  4. **Session continuing** - When a persistent mode keeps the session alive
117
117
 
@@ -122,7 +122,7 @@ Default selection: session-end + ask-user-question.
122
122
  Read the existing config, merge the new Telegram settings, and write back:
123
123
 
124
124
  ```bash
125
- CONFIG_FILE="$HOME/.claude/.omx-config.json"
125
+ CONFIG_FILE="$HOME/.codex/.omx-config.json"
126
126
  mkdir -p "$(dirname "$CONFIG_FILE")"
127
127
 
128
128
  if [ -f "$CONFIG_FILE" ]; then
@@ -210,7 +210,7 @@ Telegram Notifications Configured!
210
210
  Format: Markdown
211
211
  Events: session-end, ask-user-question
212
212
 
213
- Config saved to: ~/.claude/.omx-config.json
213
+ Config saved to: ~/.codex/.omx-config.json
214
214
 
215
215
  You can also set these via environment variables:
216
216
  OMX_TELEGRAM_BOT_TOKEN=123456789:ABCdefGHI...