oh-my-codex 0.11.4 → 0.11.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.
- package/Cargo.lock +5 -13
- package/Cargo.toml +1 -1
- package/README.md +84 -107
- package/dist/cli/__tests__/doctor-team.test.js +34 -0
- package/dist/cli/__tests__/doctor-team.test.js.map +1 -1
- package/dist/cli/__tests__/team.test.js +22 -0
- package/dist/cli/__tests__/team.test.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +4 -5
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/team.d.ts.map +1 -1
- package/dist/cli/team.js +2 -0
- package/dist/cli/team.js.map +1 -1
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js +111 -3
- package/dist/hooks/__tests__/notify-fallback-watcher.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js +54 -1
- package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js.map +1 -1
- package/dist/scripts/notify-fallback-watcher.js +16 -3
- package/dist/scripts/notify-fallback-watcher.js.map +1 -1
- package/dist/scripts/notify-hook/team-leader-nudge.d.ts.map +1 -1
- package/dist/scripts/notify-hook/team-leader-nudge.js +2 -11
- package/dist/scripts/notify-hook/team-leader-nudge.js.map +1 -1
- package/dist/team/__tests__/leader-activity.test.d.ts +2 -0
- package/dist/team/__tests__/leader-activity.test.d.ts.map +1 -0
- package/dist/team/__tests__/leader-activity.test.js +128 -0
- package/dist/team/__tests__/leader-activity.test.js.map +1 -0
- package/dist/team/leader-activity.d.ts +14 -0
- package/dist/team/leader-activity.d.ts.map +1 -0
- package/dist/team/leader-activity.js +137 -0
- package/dist/team/leader-activity.js.map +1 -0
- package/package.json +1 -3
- package/src/scripts/notify-fallback-watcher.ts +18 -3
- package/src/scripts/notify-hook/team-leader-nudge.ts +2 -8
package/Cargo.lock
CHANGED
|
@@ -32,13 +32,11 @@ checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79"
|
|
|
32
32
|
|
|
33
33
|
[[package]]
|
|
34
34
|
name = "omx-explore-harness"
|
|
35
|
-
|
|
36
|
-
version = "0.11.4"
|
|
35
|
+
version = "0.11.6"
|
|
37
36
|
|
|
38
37
|
[[package]]
|
|
39
38
|
name = "omx-mux"
|
|
40
|
-
version = "0.11.
|
|
41
|
-
|
|
39
|
+
version = "0.11.6"
|
|
42
40
|
dependencies = [
|
|
43
41
|
"serde",
|
|
44
42
|
"serde_json",
|
|
@@ -46,9 +44,7 @@ dependencies = [
|
|
|
46
44
|
|
|
47
45
|
[[package]]
|
|
48
46
|
name = "omx-runtime"
|
|
49
|
-
|
|
50
|
-
version = "0.11.4"
|
|
51
|
-
|
|
47
|
+
version = "0.11.6"
|
|
52
48
|
dependencies = [
|
|
53
49
|
"omx-mux",
|
|
54
50
|
"omx-runtime-core",
|
|
@@ -57,9 +53,7 @@ dependencies = [
|
|
|
57
53
|
|
|
58
54
|
[[package]]
|
|
59
55
|
name = "omx-runtime-core"
|
|
60
|
-
|
|
61
|
-
version = "0.11.4"
|
|
62
|
-
|
|
56
|
+
version = "0.11.6"
|
|
63
57
|
dependencies = [
|
|
64
58
|
"fs2",
|
|
65
59
|
"serde",
|
|
@@ -68,9 +62,7 @@ dependencies = [
|
|
|
68
62
|
|
|
69
63
|
[[package]]
|
|
70
64
|
name = "omx-sparkshell"
|
|
71
|
-
|
|
72
|
-
version = "0.11.4"
|
|
73
|
-
|
|
65
|
+
version = "0.11.6"
|
|
74
66
|
|
|
75
67
|
[[package]]
|
|
76
68
|
name = "proc-macro2"
|
package/Cargo.toml
CHANGED
package/README.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<p align="center">
|
|
4
4
|
<img src="https://yeachan-heo.github.io/oh-my-codex-website/omx-character-nobg.png" alt="oh-my-codex character" width="280">
|
|
5
5
|
<br>
|
|
6
|
-
<em>
|
|
6
|
+
<em>Start Codex stronger, then let OMX add better prompts, workflows, and runtime help when the work grows.</em>
|
|
7
7
|
</p>
|
|
8
8
|
|
|
9
9
|
[](https://www.npmjs.com/package/oh-my-codex)
|
|
@@ -14,161 +14,138 @@
|
|
|
14
14
|
**Website:** https://yeachan-heo.github.io/oh-my-codex-website/
|
|
15
15
|
**Docs:** [Getting Started](./docs/getting-started.html) · [Agents](./docs/agents.html) · [Skills](./docs/skills.html) · [Integrations](./docs/integrations.html) · [Demo](./DEMO.md) · [OpenClaw guide](./docs/openclaw-integration.md)
|
|
16
16
|
|
|
17
|
-
OMX is
|
|
17
|
+
OMX is a workflow layer for [OpenAI Codex CLI](https://github.com/openai/codex).
|
|
18
18
|
|
|
19
|
-
It keeps Codex as the execution engine and
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
-
|
|
23
|
-
- project
|
|
19
|
+
It keeps Codex as the execution engine and makes it easier to:
|
|
20
|
+
- start a stronger Codex session by default
|
|
21
|
+
- reuse good prompts with `/prompts:*`
|
|
22
|
+
- invoke workflows with skills like `$plan`, `$ralph`, and `$team`
|
|
23
|
+
- keep project guidance, plans, logs, and state in `.omx/`
|
|
24
24
|
|
|
25
|
-
##
|
|
25
|
+
## Recommended default flow
|
|
26
26
|
|
|
27
|
-
|
|
28
|
-
- reusable agent prompts such as `/prompts:architect`
|
|
29
|
-
- workflow shortcuts such as `$plan`, `$team`, and `$ralph`
|
|
30
|
-
- a durable team runtime for bigger tasks
|
|
31
|
-
- better visibility into long-running work
|
|
32
|
-
|
|
33
|
-
If you just want plain Codex with no extra workflow layer, you probably do not need OMX.
|
|
34
|
-
|
|
35
|
-
## Quick start
|
|
36
|
-
|
|
37
|
-
### Requirements
|
|
38
|
-
|
|
39
|
-
- Node.js 20+
|
|
40
|
-
- Codex CLI installed: `npm install -g @openai/codex`
|
|
41
|
-
- Codex auth configured
|
|
42
|
-
- `tmux` if you want `omx team` on macOS/Linux
|
|
43
|
-
- `psmux` if you want native Windows team mode
|
|
44
|
-
|
|
45
|
-
### Install
|
|
27
|
+
If you want the default OMX experience, start here:
|
|
46
28
|
|
|
47
29
|
```bash
|
|
48
30
|
npm install -g @openai/codex oh-my-codex
|
|
49
31
|
omx setup
|
|
50
|
-
omx
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
### Fastest useful example
|
|
54
|
-
|
|
55
|
-
Launch Codex with OMX:
|
|
56
|
-
|
|
57
|
-
```bash
|
|
58
|
-
omx
|
|
32
|
+
omx --madmax --high
|
|
59
33
|
```
|
|
60
34
|
|
|
61
|
-
Then
|
|
35
|
+
Then work normally inside Codex:
|
|
62
36
|
|
|
63
37
|
```text
|
|
64
38
|
/prompts:architect "analyze the authentication flow"
|
|
39
|
+
$plan "ship this feature cleanly"
|
|
65
40
|
```
|
|
66
41
|
|
|
67
|
-
That is the
|
|
42
|
+
That is the main path.
|
|
43
|
+
Start OMX strongly, do the work in Codex, and let the agent pull in `$team` or other workflows only when the task actually needs them.
|
|
68
44
|
|
|
69
|
-
|
|
45
|
+
## What OMX is for
|
|
70
46
|
|
|
71
|
-
|
|
47
|
+
Use OMX if you already like Codex and want a better day-to-day runtime around it:
|
|
48
|
+
- reusable role prompts such as `/prompts:architect` and `/prompts:executor`
|
|
49
|
+
- reusable workflows such as `$plan`, `$ralph`, `$team`, and `$deep-interview`
|
|
50
|
+
- project guidance through scoped `AGENTS.md`
|
|
51
|
+
- durable state under `.omx/` for plans, logs, memory, and mode tracking
|
|
72
52
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
53
|
+
If you want plain Codex with no extra workflow layer, you probably do not need OMX.
|
|
54
|
+
|
|
55
|
+
## Quick start
|
|
56
|
+
|
|
57
|
+
### Requirements
|
|
58
|
+
|
|
59
|
+
- Node.js 20+
|
|
60
|
+
- Codex CLI installed: `npm install -g @openai/codex`
|
|
61
|
+
- Codex auth configured
|
|
62
|
+
- `tmux` on macOS/Linux if you later want the durable team runtime
|
|
63
|
+
- `psmux` on native Windows if you later want Windows team mode
|
|
76
64
|
|
|
77
|
-
|
|
65
|
+
### A good first session
|
|
66
|
+
|
|
67
|
+
Launch OMX the recommended way:
|
|
78
68
|
|
|
79
69
|
```bash
|
|
80
|
-
omx
|
|
81
|
-
omx team resume <team-name>
|
|
82
|
-
omx team shutdown <team-name>
|
|
70
|
+
omx --madmax --high
|
|
83
71
|
```
|
|
84
72
|
|
|
85
|
-
|
|
73
|
+
Then try one prompt and one skill:
|
|
86
74
|
|
|
87
|
-
|
|
75
|
+
```text
|
|
76
|
+
/prompts:architect "analyze the authentication flow"
|
|
77
|
+
$plan "map the safest implementation path"
|
|
78
|
+
```
|
|
88
79
|
|
|
89
|
-
|
|
90
|
-
| --- | --- |
|
|
91
|
-
| `omx` | Launch Codex with OMX wiring |
|
|
92
|
-
| `omx setup` | Install prompts, skills, config, and AGENTS scaffolding |
|
|
93
|
-
| `omx doctor` | Verify the install |
|
|
94
|
-
| `omx team 3:executor "..."` | Start a coordinated tmux-based team |
|
|
95
|
-
| `omx team status <team-name>` | Inspect a running team |
|
|
96
|
-
| `omx status` | Show active OMX modes |
|
|
97
|
-
| `omx cancel` | Cancel active modes |
|
|
98
|
-
| `omx explore --prompt "..."` | Read-only repository exploration |
|
|
99
|
-
| `omx sparkshell <command>` | Shell-native inspection helper |
|
|
100
|
-
| `omx version` | Show version info |
|
|
101
|
-
|
|
102
|
-
### Inside Codex
|
|
103
|
-
|
|
104
|
-
| Command | Use it for |
|
|
105
|
-
| --- | --- |
|
|
106
|
-
| `/prompts:architect "..."` | Analysis and boundary review |
|
|
107
|
-
| `/prompts:executor "..."` | Focused implementation work |
|
|
108
|
-
| `/skills` | Browse installed skills |
|
|
109
|
-
| `$plan "..."` | Build a plan before implementation |
|
|
110
|
-
| `$team 3:executor "..."` | Kick off coordinated team execution |
|
|
111
|
-
| `$ralph "..."` | Run persistent sequential execution |
|
|
80
|
+
If the task grows, the agent can escalate to heavier workflows such as `$ralph` for persistent execution or `$team` for coordinated parallel work.
|
|
112
81
|
|
|
113
82
|
## A simple mental model
|
|
114
83
|
|
|
115
84
|
OMX does **not** replace Codex.
|
|
116
85
|
|
|
117
|
-
It adds a
|
|
86
|
+
It adds a better working layer around it:
|
|
118
87
|
- **Codex** does the actual agent work
|
|
119
|
-
- **OMX prompts
|
|
120
|
-
-
|
|
121
|
-
- **`.omx/`** stores
|
|
88
|
+
- **OMX prompts** make useful roles reusable
|
|
89
|
+
- **OMX skills** make common workflows reusable
|
|
90
|
+
- **`.omx/`** stores plans, logs, memory, and runtime state
|
|
91
|
+
|
|
92
|
+
Most users should think of OMX as **better prompting + better workflow + better runtime**, not as a command surface to operate manually all day.
|
|
122
93
|
|
|
123
94
|
## Start here if you are new
|
|
124
95
|
|
|
125
96
|
1. Run `omx setup`
|
|
126
|
-
2.
|
|
127
|
-
3.
|
|
128
|
-
4.
|
|
129
|
-
5.
|
|
97
|
+
2. Launch with `omx --madmax --high`
|
|
98
|
+
3. Ask for analysis with `/prompts:architect "..."`
|
|
99
|
+
4. Ask for planning with `$plan "..."`
|
|
100
|
+
5. Let the agent decide when `$ralph`, `$team`, or another workflow is worth using
|
|
130
101
|
|
|
131
|
-
##
|
|
102
|
+
## Common in-session surfaces
|
|
132
103
|
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
104
|
+
| Surface | Use it for |
|
|
105
|
+
| --- | --- |
|
|
106
|
+
| `/prompts:architect "..."` | analysis, boundaries, tradeoffs |
|
|
107
|
+
| `/prompts:executor "..."` | focused implementation work |
|
|
108
|
+
| `/skills` | browsing installed skills |
|
|
109
|
+
| `$plan "..."` | planning before implementation |
|
|
110
|
+
| `$ralph "..."` | persistent sequential execution |
|
|
111
|
+
| `$team "..."` | coordinated parallel execution when the task is big enough |
|
|
137
112
|
|
|
138
|
-
|
|
113
|
+
## Advanced / operator surfaces
|
|
139
114
|
|
|
140
|
-
|
|
115
|
+
These are useful, but they are not the main onboarding path.
|
|
141
116
|
|
|
142
|
-
|
|
143
|
-
- Use **`omx sparkshell`** when you want direct shell-style inspection or tmux pane capture.
|
|
117
|
+
### Team runtime
|
|
144
118
|
|
|
145
|
-
|
|
119
|
+
Use the team runtime when you specifically need durable tmux/worktree coordination, not as the default way to begin using OMX.
|
|
146
120
|
|
|
147
121
|
```bash
|
|
148
|
-
omx
|
|
149
|
-
omx
|
|
150
|
-
omx
|
|
122
|
+
omx team 3:executor "fix the failing tests with verification"
|
|
123
|
+
omx team status <team-name>
|
|
124
|
+
omx team resume <team-name>
|
|
125
|
+
omx team shutdown <team-name>
|
|
151
126
|
```
|
|
152
127
|
|
|
153
|
-
###
|
|
128
|
+
### Setup, doctor, and HUD
|
|
154
129
|
|
|
155
|
-
|
|
156
|
-
- prompts
|
|
157
|
-
-
|
|
158
|
-
-
|
|
159
|
-
- scope-aware `AGENTS.md` scaffolding
|
|
160
|
-
- runtime state under `.omx/`
|
|
130
|
+
These are operator/support surfaces:
|
|
131
|
+
- `omx setup` installs prompts, skills, config, and AGENTS scaffolding
|
|
132
|
+
- `omx doctor` verifies the install when something seems wrong
|
|
133
|
+
- `omx hud --watch` is a monitoring/status surface, not the primary user workflow
|
|
161
134
|
|
|
162
|
-
###
|
|
135
|
+
### Explore and sparkshell
|
|
163
136
|
|
|
164
|
-
|
|
165
|
-
- `
|
|
166
|
-
- `OMX_DEFAULT_STANDARD_MODEL`
|
|
167
|
-
- `OMX_DEFAULT_SPARK_MODEL`
|
|
137
|
+
- `omx explore --prompt "..."` is for read-only repository lookup
|
|
138
|
+
- `omx sparkshell <command>` is for shell-native inspection and bounded verification
|
|
168
139
|
|
|
169
|
-
|
|
140
|
+
Examples:
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
omx explore --prompt "find where team state is written"
|
|
144
|
+
omx sparkshell git status
|
|
145
|
+
omx sparkshell --tmux-pane %12 --tail-lines 400
|
|
146
|
+
```
|
|
170
147
|
|
|
171
|
-
|
|
148
|
+
### Platform notes for team mode
|
|
172
149
|
|
|
173
150
|
`omx team` needs a tmux-compatible backend:
|
|
174
151
|
|
|
@@ -198,6 +198,40 @@ describe('omx doctor --team', () => {
|
|
|
198
198
|
await rm(wd, { recursive: true, force: true });
|
|
199
199
|
}
|
|
200
200
|
});
|
|
201
|
+
it('does not emit stale_leader when leader recently checked team status', async () => {
|
|
202
|
+
const wd = await mkdtemp(join(tmpdir(), 'omx-doctor-team-'));
|
|
203
|
+
try {
|
|
204
|
+
const stateDir = join(wd, '.omx', 'state');
|
|
205
|
+
const teamRoot = join(stateDir, 'team', 'eta');
|
|
206
|
+
await mkdir(join(teamRoot, 'workers', 'worker-1'), { recursive: true });
|
|
207
|
+
await writeFile(join(teamRoot, 'config.json'), JSON.stringify({
|
|
208
|
+
name: 'eta',
|
|
209
|
+
tmux_session: 'omx-team-eta',
|
|
210
|
+
}));
|
|
211
|
+
await writeFile(join(stateDir, 'hud-state.json'), JSON.stringify({
|
|
212
|
+
last_turn_at: new Date(Date.now() - 300_000).toISOString(),
|
|
213
|
+
turn_count: 5,
|
|
214
|
+
}));
|
|
215
|
+
await writeFile(join(stateDir, 'leader-runtime-activity.json'), JSON.stringify({
|
|
216
|
+
last_activity_at: new Date(Date.now() - 5_000).toISOString(),
|
|
217
|
+
last_source: 'team_status',
|
|
218
|
+
last_team_name: 'eta',
|
|
219
|
+
}));
|
|
220
|
+
const fakeBin = join(wd, 'bin');
|
|
221
|
+
await mkdir(fakeBin, { recursive: true });
|
|
222
|
+
const tmuxPath = join(fakeBin, 'tmux');
|
|
223
|
+
await writeFile(tmuxPath, '#!/bin/sh\nif [ "$1" = "list-sessions" ]; then echo "omx-team-eta"; exit 0; fi\nexit 0\n');
|
|
224
|
+
spawnSync('chmod', ['+x', tmuxPath], { encoding: 'utf-8' });
|
|
225
|
+
const res = runOmx(wd, ['doctor', '--team'], { PATH: `${fakeBin}:${process.env.PATH || ''}` });
|
|
226
|
+
if (shouldSkipForSpawnPermissions(res.error))
|
|
227
|
+
return;
|
|
228
|
+
assert.equal(res.status, 0, res.stderr || res.stdout);
|
|
229
|
+
assert.doesNotMatch(res.stdout, /stale_leader/);
|
|
230
|
+
}
|
|
231
|
+
finally {
|
|
232
|
+
await rm(wd, { recursive: true, force: true });
|
|
233
|
+
}
|
|
234
|
+
});
|
|
201
235
|
it('does not emit orphan_tmux_session when tmux reports no server running', async () => {
|
|
202
236
|
const wd = await mkdtemp(join(tmpdir(), 'omx-doctor-team-'));
|
|
203
237
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-team.test.js","sourceRoot":"","sources":["../../../src/cli/__tests__/doctor-team.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor-team.test.js","sourceRoot":"","sources":["../../../src/cli/__tests__/doctor-team.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1049,6 +1049,28 @@ describe('teamCommand status', () => {
|
|
|
1049
1049
|
await rm(wd, { recursive: true, force: true });
|
|
1050
1050
|
}
|
|
1051
1051
|
});
|
|
1052
|
+
it('records leader runtime activity when team status is read', async () => {
|
|
1053
|
+
const wd = await mkdtemp(join(tmpdir(), 'omx-team-status-activity-'));
|
|
1054
|
+
const previousCwd = process.cwd();
|
|
1055
|
+
const logs = [];
|
|
1056
|
+
const originalLog = console.log;
|
|
1057
|
+
try {
|
|
1058
|
+
process.chdir(wd);
|
|
1059
|
+
await withoutTeamTestWorkerEnv(() => initTeamState('activity-team', 'inspect activity', 'executor', 1, wd));
|
|
1060
|
+
console.log = (...args) => logs.push(args.map(String).join(' '));
|
|
1061
|
+
await withoutTeamTestWorkerEnv(() => teamCommand(['status', 'activity-team', '--json']));
|
|
1062
|
+
const activity = JSON.parse(await readFile(join(wd, '.omx', 'state', 'leader-runtime-activity.json'), 'utf-8'));
|
|
1063
|
+
assert.equal(activity.last_source, 'team_status');
|
|
1064
|
+
assert.equal(activity.last_team_name, 'activity-team');
|
|
1065
|
+
assert.ok(typeof activity.last_activity_at === 'string' && activity.last_activity_at.length > 0);
|
|
1066
|
+
assert.ok(typeof activity.last_team_status_at === 'string' && activity.last_team_status_at.length > 0);
|
|
1067
|
+
}
|
|
1068
|
+
finally {
|
|
1069
|
+
console.log = originalLog;
|
|
1070
|
+
process.chdir(previousCwd);
|
|
1071
|
+
await rm(wd, { recursive: true, force: true });
|
|
1072
|
+
}
|
|
1073
|
+
});
|
|
1052
1074
|
it('supports custom tail lines for generated sparkshell commands', async () => {
|
|
1053
1075
|
const wd = await mkdtemp(join(tmpdir(), 'omx-team-status-tail-lines-'));
|
|
1054
1076
|
const previousCwd = process.cwd();
|