oh-my-codex 0.7.6 → 0.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.
- package/README.de.md +315 -0
- package/README.es.md +296 -17
- package/README.fr.md +315 -0
- package/README.it.md +315 -0
- package/README.ja.md +297 -18
- package/README.ko.md +296 -17
- package/README.md +110 -13
- package/README.pt.md +296 -17
- package/README.ru.md +296 -17
- package/README.tr.md +315 -0
- package/README.vi.md +297 -18
- package/README.zh-TW.md +362 -0
- package/README.zh.md +293 -17
- package/dist/catalog/__tests__/generator.test.js +2 -0
- package/dist/catalog/__tests__/generator.test.js.map +1 -1
- package/dist/catalog/__tests__/schema.test.js +7 -0
- package/dist/catalog/__tests__/schema.test.js.map +1 -1
- package/dist/cli/__tests__/ask.test.d.ts +2 -0
- package/dist/cli/__tests__/ask.test.d.ts.map +1 -0
- package/dist/cli/__tests__/ask.test.js +236 -0
- package/dist/cli/__tests__/ask.test.js.map +1 -0
- package/dist/cli/__tests__/doctor-warning-copy.test.d.ts +2 -0
- package/dist/cli/__tests__/doctor-warning-copy.test.d.ts.map +1 -0
- package/dist/cli/__tests__/doctor-warning-copy.test.js +45 -0
- package/dist/cli/__tests__/doctor-warning-copy.test.js.map +1 -0
- package/dist/cli/__tests__/index.test.js +85 -2
- package/dist/cli/__tests__/index.test.js.map +1 -1
- package/dist/cli/__tests__/ralph-prd-deep-interview.test.d.ts +2 -0
- package/dist/cli/__tests__/ralph-prd-deep-interview.test.d.ts.map +1 -0
- package/dist/cli/__tests__/ralph-prd-deep-interview.test.js +15 -0
- package/dist/cli/__tests__/ralph-prd-deep-interview.test.js.map +1 -0
- package/dist/cli/__tests__/ralph.test.js +19 -43
- package/dist/cli/__tests__/ralph.test.js.map +1 -1
- package/dist/cli/__tests__/setup-scope.test.js +2 -0
- package/dist/cli/__tests__/setup-scope.test.js.map +1 -1
- package/dist/cli/__tests__/team.test.js +219 -1
- package/dist/cli/__tests__/team.test.js.map +1 -1
- package/dist/cli/__tests__/version.test.d.ts +2 -0
- package/dist/cli/__tests__/version.test.d.ts.map +1 -0
- package/dist/cli/__tests__/version.test.js +21 -0
- package/dist/cli/__tests__/version.test.js.map +1 -0
- package/dist/cli/ask.d.ts +13 -0
- package/dist/cli/ask.d.ts.map +1 -0
- package/dist/cli/ask.js +174 -0
- package/dist/cli/ask.js.map +1 -0
- package/dist/cli/constants.d.ts +10 -0
- package/dist/cli/constants.d.ts.map +1 -0
- package/dist/cli/constants.js +10 -0
- package/dist/cli/constants.js.map +1 -0
- package/dist/cli/doctor.js +16 -5
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/index.d.ts +8 -2
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +150 -52
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/ralph.d.ts +3 -11
- package/dist/cli/ralph.d.ts.map +1 -1
- package/dist/cli/ralph.js +64 -45
- package/dist/cli/ralph.js.map +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +17 -18
- package/dist/cli/setup.js.map +1 -1
- package/dist/cli/team.d.ts.map +1 -1
- package/dist/cli/team.js +257 -0
- package/dist/cli/team.js.map +1 -1
- package/dist/hooks/__tests__/deep-interview-contract.test.d.ts +2 -0
- package/dist/hooks/__tests__/deep-interview-contract.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/deep-interview-contract.test.js +55 -0
- package/dist/hooks/__tests__/deep-interview-contract.test.js.map +1 -0
- package/dist/hooks/__tests__/emulator.test.js +6 -0
- package/dist/hooks/__tests__/emulator.test.js.map +1 -1
- package/dist/hooks/__tests__/keyword-detector.test.js +44 -22
- package/dist/hooks/__tests__/keyword-detector.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js +23 -7
- package/dist/hooks/__tests__/notify-hook-all-workers-idle.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-session-scope.test.js +59 -0
- package/dist/hooks/__tests__/notify-hook-session-scope.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js +264 -1
- package/dist/hooks/__tests__/notify-hook-team-dispatch.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js +61 -1
- package/dist/hooks/__tests__/notify-hook-team-leader-nudge.test.js.map +1 -1
- package/dist/hooks/__tests__/notify-hook-worker-idle.test.js +17 -7
- package/dist/hooks/__tests__/notify-hook-worker-idle.test.js.map +1 -1
- package/dist/hooks/__tests__/openclaw-setup-contract.test.d.ts +2 -0
- package/dist/hooks/__tests__/openclaw-setup-contract.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/openclaw-setup-contract.test.js +61 -0
- package/dist/hooks/__tests__/openclaw-setup-contract.test.js.map +1 -0
- package/dist/hooks/__tests__/pre-context-gate-skills.test.d.ts +2 -0
- package/dist/hooks/__tests__/pre-context-gate-skills.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/pre-context-gate-skills.test.js +34 -0
- package/dist/hooks/__tests__/pre-context-gate-skills.test.js.map +1 -0
- package/dist/hooks/__tests__/visual-verdict-loop.test.d.ts +2 -0
- package/dist/hooks/__tests__/visual-verdict-loop.test.d.ts.map +1 -0
- package/dist/hooks/__tests__/visual-verdict-loop.test.js +35 -0
- package/dist/hooks/__tests__/visual-verdict-loop.test.js.map +1 -0
- package/dist/hooks/agents-overlay.d.ts.map +1 -1
- package/dist/hooks/agents-overlay.js +18 -16
- package/dist/hooks/agents-overlay.js.map +1 -1
- package/dist/hooks/codebase-map.d.ts.map +1 -1
- package/dist/hooks/codebase-map.js +6 -2
- package/dist/hooks/codebase-map.js.map +1 -1
- package/dist/hooks/emulator.d.ts.map +1 -1
- package/dist/hooks/emulator.js +2 -0
- package/dist/hooks/emulator.js.map +1 -1
- package/dist/hooks/extensibility/sdk.d.ts.map +1 -1
- package/dist/hooks/extensibility/sdk.js +2 -1
- package/dist/hooks/extensibility/sdk.js.map +1 -1
- package/dist/hooks/keyword-registry.d.ts.map +1 -1
- package/dist/hooks/keyword-registry.js +6 -0
- package/dist/hooks/keyword-registry.js.map +1 -1
- package/dist/hud/index.d.ts.map +1 -1
- package/dist/hud/index.js +2 -24
- package/dist/hud/index.js.map +1 -1
- package/dist/mcp/__tests__/path-traversal.test.js +9 -227
- package/dist/mcp/__tests__/path-traversal.test.js.map +1 -1
- package/dist/mcp/__tests__/state-server-schema.test.js +16 -20
- package/dist/mcp/__tests__/state-server-schema.test.js.map +1 -1
- package/dist/mcp/__tests__/state-server-team-tools.test.js +30 -487
- package/dist/mcp/__tests__/state-server-team-tools.test.js.map +1 -1
- package/dist/mcp/code-intel-server.d.ts.map +1 -1
- package/dist/mcp/code-intel-server.js +18 -8
- package/dist/mcp/code-intel-server.js.map +1 -1
- package/dist/mcp/memory-server.js +72 -11
- package/dist/mcp/memory-server.js.map +1 -1
- package/dist/mcp/state-paths.d.ts.map +1 -1
- package/dist/mcp/state-paths.js +4 -1
- package/dist/mcp/state-paths.js.map +1 -1
- package/dist/mcp/state-server.d.ts +179 -0
- package/dist/mcp/state-server.d.ts.map +1 -1
- package/dist/mcp/state-server.js +221 -1111
- package/dist/mcp/state-server.js.map +1 -1
- package/dist/mcp/team-server.d.ts.map +1 -1
- package/dist/mcp/team-server.js +9 -3
- package/dist/mcp/team-server.js.map +1 -1
- package/dist/mcp/trace-server.d.ts.map +1 -1
- package/dist/mcp/trace-server.js +8 -3
- package/dist/mcp/trace-server.js.map +1 -1
- package/dist/notifications/__tests__/dispatch-cooldown.test.d.ts +5 -0
- package/dist/notifications/__tests__/dispatch-cooldown.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/dispatch-cooldown.test.js +100 -0
- package/dist/notifications/__tests__/dispatch-cooldown.test.js.map +1 -0
- package/dist/notifications/__tests__/temp-mode.test.d.ts +2 -0
- package/dist/notifications/__tests__/temp-mode.test.d.ts.map +1 -0
- package/dist/notifications/__tests__/temp-mode.test.js +172 -0
- package/dist/notifications/__tests__/temp-mode.test.js.map +1 -0
- package/dist/notifications/config.d.ts.map +1 -1
- package/dist/notifications/config.js +67 -7
- package/dist/notifications/config.js.map +1 -1
- package/dist/notifications/dispatch-cooldown.d.ts +36 -0
- package/dist/notifications/dispatch-cooldown.d.ts.map +1 -0
- package/dist/notifications/dispatch-cooldown.js +109 -0
- package/dist/notifications/dispatch-cooldown.js.map +1 -0
- package/dist/notifications/dispatcher.d.ts.map +1 -1
- package/dist/notifications/dispatcher.js +4 -4
- package/dist/notifications/dispatcher.js.map +1 -1
- package/dist/notifications/index.d.ts +5 -0
- package/dist/notifications/index.d.ts.map +1 -1
- package/dist/notifications/index.js +39 -8
- package/dist/notifications/index.js.map +1 -1
- package/dist/notifications/reply-listener.d.ts.map +1 -1
- package/dist/notifications/reply-listener.js +6 -2
- package/dist/notifications/reply-listener.js.map +1 -1
- package/dist/notifications/session-registry.d.ts.map +1 -1
- package/dist/notifications/session-registry.js +2 -2
- package/dist/notifications/session-registry.js.map +1 -1
- package/dist/notifications/temp-contract.d.ts +22 -0
- package/dist/notifications/temp-contract.d.ts.map +1 -0
- package/dist/notifications/temp-contract.js +147 -0
- package/dist/notifications/temp-contract.js.map +1 -0
- package/dist/notifications/tmux.js +2 -2
- package/dist/notifications/tmux.js.map +1 -1
- package/dist/notifications/types.d.ts +18 -0
- package/dist/notifications/types.d.ts.map +1 -1
- package/dist/openclaw/__tests__/config.test.js +81 -0
- package/dist/openclaw/__tests__/config.test.js.map +1 -1
- package/dist/openclaw/__tests__/dispatcher.test.js +40 -1
- package/dist/openclaw/__tests__/dispatcher.test.js.map +1 -1
- package/dist/openclaw/config.d.ts +4 -0
- package/dist/openclaw/config.d.ts.map +1 -1
- package/dist/openclaw/config.js +110 -16
- package/dist/openclaw/config.js.map +1 -1
- package/dist/openclaw/dispatcher.d.ts +9 -3
- package/dist/openclaw/dispatcher.d.ts.map +1 -1
- package/dist/openclaw/dispatcher.js +42 -9
- package/dist/openclaw/dispatcher.js.map +1 -1
- package/dist/openclaw/types.d.ts +5 -1
- package/dist/openclaw/types.d.ts.map +1 -1
- package/dist/ralph/__tests__/persistence.test.js +28 -1
- package/dist/ralph/__tests__/persistence.test.js.map +1 -1
- package/dist/ralph/persistence.d.ts +21 -0
- package/dist/ralph/persistence.d.ts.map +1 -1
- package/dist/ralph/persistence.js +85 -2
- package/dist/ralph/persistence.js.map +1 -1
- package/dist/state/paths.d.ts +3 -0
- package/dist/state/paths.d.ts.map +1 -0
- package/dist/state/paths.js +2 -0
- package/dist/state/paths.js.map +1 -0
- package/dist/team/__tests__/api-interop.test.d.ts +2 -0
- package/dist/team/__tests__/api-interop.test.d.ts.map +1 -0
- package/dist/team/__tests__/api-interop.test.js +1052 -0
- package/dist/team/__tests__/api-interop.test.js.map +1 -0
- package/dist/team/__tests__/idle-nudge.test.d.ts +2 -0
- package/dist/team/__tests__/idle-nudge.test.d.ts.map +1 -0
- package/dist/team/__tests__/idle-nudge.test.js +225 -0
- package/dist/team/__tests__/idle-nudge.test.js.map +1 -0
- package/dist/team/__tests__/mcp-comm.test.js +30 -0
- package/dist/team/__tests__/mcp-comm.test.js.map +1 -1
- package/dist/team/__tests__/runtime.test.js +33 -26
- package/dist/team/__tests__/runtime.test.js.map +1 -1
- package/dist/team/__tests__/state-root.test.d.ts +2 -0
- package/dist/team/__tests__/state-root.test.d.ts.map +1 -0
- package/dist/team/__tests__/state-root.test.js +9 -0
- package/dist/team/__tests__/state-root.test.js.map +1 -0
- package/dist/team/__tests__/state.test.js +52 -17
- package/dist/team/__tests__/state.test.js.map +1 -1
- package/dist/team/__tests__/team-ops-contract.test.d.ts +2 -0
- package/dist/team/__tests__/team-ops-contract.test.d.ts.map +1 -0
- package/dist/team/__tests__/team-ops-contract.test.js +90 -0
- package/dist/team/__tests__/team-ops-contract.test.js.map +1 -0
- package/dist/team/__tests__/tmux-claude-workers-demo.test.d.ts +2 -0
- package/dist/team/__tests__/tmux-claude-workers-demo.test.d.ts.map +1 -0
- package/dist/team/__tests__/tmux-claude-workers-demo.test.js +176 -0
- package/dist/team/__tests__/tmux-claude-workers-demo.test.js.map +1 -0
- package/dist/team/__tests__/tmux-session.test.js +8 -0
- package/dist/team/__tests__/tmux-session.test.js.map +1 -1
- package/dist/team/__tests__/worker-bootstrap.test.js +29 -0
- package/dist/team/__tests__/worker-bootstrap.test.js.map +1 -1
- package/dist/team/__tests__/worktree.test.js +54 -1
- package/dist/team/__tests__/worktree.test.js.map +1 -1
- package/dist/team/api-interop.d.ts +19 -0
- package/dist/team/api-interop.d.ts.map +1 -0
- package/dist/team/api-interop.js +578 -0
- package/dist/team/api-interop.js.map +1 -0
- package/dist/team/mcp-comm.d.ts.map +1 -1
- package/dist/team/mcp-comm.js +32 -2
- package/dist/team/mcp-comm.js.map +1 -1
- package/dist/team/orchestrator.d.ts +1 -10
- package/dist/team/orchestrator.d.ts.map +1 -1
- package/dist/team/orchestrator.js +8 -0
- package/dist/team/orchestrator.js.map +1 -1
- package/dist/team/runtime-cli.js +14 -8
- package/dist/team/runtime-cli.js.map +1 -1
- package/dist/team/runtime.d.ts +2 -1
- package/dist/team/runtime.d.ts.map +1 -1
- package/dist/team/runtime.js +103 -30
- package/dist/team/runtime.js.map +1 -1
- package/dist/team/scaling.d.ts.map +1 -1
- package/dist/team/scaling.js +33 -12
- package/dist/team/scaling.js.map +1 -1
- package/dist/team/state/approvals.d.ts +25 -0
- package/dist/team/state/approvals.d.ts.map +1 -0
- package/dist/team/state/approvals.js +31 -0
- package/dist/team/state/approvals.js.map +1 -0
- package/dist/team/state/config.d.ts +2 -0
- package/dist/team/state/config.d.ts.map +1 -0
- package/dist/team/state/config.js +2 -0
- package/dist/team/state/config.js.map +1 -0
- package/dist/team/state/dispatch-lock.d.ts +3 -0
- package/dist/team/state/dispatch-lock.d.ts.map +1 -0
- package/dist/team/state/dispatch-lock.js +81 -0
- package/dist/team/state/dispatch-lock.js.map +1 -0
- package/dist/team/state/dispatch.d.ts +61 -0
- package/dist/team/state/dispatch.d.ts.map +1 -0
- package/dist/team/state/dispatch.js +158 -0
- package/dist/team/state/dispatch.js.map +1 -0
- package/dist/team/state/events.d.ts +2 -0
- package/dist/team/state/events.d.ts.map +1 -0
- package/dist/team/state/events.js +2 -0
- package/dist/team/state/events.js.map +1 -0
- package/dist/team/state/index.d.ts +11 -0
- package/dist/team/state/index.d.ts.map +1 -0
- package/dist/team/state/index.js +11 -0
- package/dist/team/state/index.js.map +1 -0
- package/dist/team/state/io.d.ts +2 -0
- package/dist/team/state/io.d.ts.map +1 -0
- package/dist/team/state/io.js +2 -0
- package/dist/team/state/io.js.map +1 -0
- package/dist/team/state/locks.d.ts +16 -0
- package/dist/team/state/locks.d.ts.map +1 -0
- package/dist/team/state/locks.js +201 -0
- package/dist/team/state/locks.js.map +1 -0
- package/dist/team/state/mailbox.d.ts +39 -0
- package/dist/team/state/mailbox.d.ts.map +1 -0
- package/dist/team/state/mailbox.js +58 -0
- package/dist/team/state/mailbox.js.map +1 -0
- package/dist/team/state/monitor.d.ts +96 -0
- package/dist/team/state/monitor.d.ts.map +1 -0
- package/dist/team/state/monitor.js +163 -0
- package/dist/team/state/monitor.js.map +1 -0
- package/dist/team/state/shutdown.d.ts +2 -0
- package/dist/team/state/shutdown.d.ts.map +1 -0
- package/dist/team/state/shutdown.js +2 -0
- package/dist/team/state/shutdown.js.map +1 -0
- package/dist/team/state/summary.d.ts +2 -0
- package/dist/team/state/summary.d.ts.map +1 -0
- package/dist/team/state/summary.js +2 -0
- package/dist/team/state/summary.js.map +1 -0
- package/dist/team/state/tasks.d.ts +49 -0
- package/dist/team/state/tasks.d.ts.map +1 -0
- package/dist/team/state/tasks.js +182 -0
- package/dist/team/state/tasks.js.map +1 -0
- package/dist/team/state/types.d.ts +281 -0
- package/dist/team/state/types.d.ts.map +1 -0
- package/dist/team/state/types.js +3 -0
- package/dist/team/state/types.js.map +1 -0
- package/dist/team/state/workers.d.ts +2 -0
- package/dist/team/state/workers.d.ts.map +1 -0
- package/dist/team/state/workers.js +2 -0
- package/dist/team/state/workers.js.map +1 -0
- package/dist/team/state-root.d.ts +5 -0
- package/dist/team/state-root.d.ts.map +1 -0
- package/dist/team/state-root.js +8 -0
- package/dist/team/state-root.js.map +1 -0
- package/dist/team/state.d.ts +4 -1
- package/dist/team/state.d.ts.map +1 -1
- package/dist/team/state.js +200 -881
- package/dist/team/state.js.map +1 -1
- package/dist/team/tmux-session.d.ts.map +1 -1
- package/dist/team/tmux-session.js +11 -10
- package/dist/team/tmux-session.js.map +1 -1
- package/dist/team/worker-bootstrap.d.ts.map +1 -1
- package/dist/team/worker-bootstrap.js +58 -26
- package/dist/team/worker-bootstrap.js.map +1 -1
- package/dist/team/worktree.d.ts.map +1 -1
- package/dist/team/worktree.js +43 -1
- package/dist/team/worktree.js.map +1 -1
- package/dist/utils/safe-json.d.ts +3 -0
- package/dist/utils/safe-json.d.ts.map +1 -0
- package/dist/utils/safe-json.js +19 -0
- package/dist/utils/safe-json.js.map +1 -0
- package/dist/utils/sleep.d.ts +3 -0
- package/dist/utils/sleep.d.ts.map +1 -0
- package/dist/utils/sleep.js +15 -0
- package/dist/utils/sleep.js.map +1 -0
- package/dist/visual/__tests__/verdict.test.d.ts +2 -0
- package/dist/visual/__tests__/verdict.test.d.ts.map +1 -0
- package/dist/visual/__tests__/verdict.test.js +81 -0
- package/dist/visual/__tests__/verdict.test.js.map +1 -0
- package/dist/visual/constants.d.ts +4 -0
- package/dist/visual/constants.d.ts.map +1 -0
- package/dist/visual/constants.js +3 -0
- package/dist/visual/constants.js.map +1 -0
- package/dist/visual/verdict.d.ts +17 -0
- package/dist/visual/verdict.d.ts.map +1 -0
- package/dist/visual/verdict.js +61 -0
- package/dist/visual/verdict.js.map +1 -0
- package/package.json +10 -3
- package/scripts/ask-claude.sh +17 -0
- package/scripts/ask-gemini.sh +14 -0
- package/scripts/demo-claude-workers.sh +241 -0
- package/scripts/demo-team-e2e.sh +179 -0
- package/scripts/fixtures/ask-advisor-stub.js +12 -0
- package/scripts/notify-hook/team-dispatch.js +234 -12
- package/scripts/notify-hook/team-leader-nudge.js +42 -2
- package/scripts/notify-hook/team-worker.js +63 -4
- package/scripts/notify-hook/visual-verdict.js +50 -1
- package/scripts/notify-hook.js +1 -0
- package/scripts/run-provider-advisor.js +179 -0
- package/skills/ask-claude/SKILL.md +61 -0
- package/skills/ask-gemini/SKILL.md +61 -0
- package/skills/autopilot/SKILL.md +32 -2
- package/skills/configure-notifications/SKILL.md +188 -186
- package/skills/deep-interview/SKILL.md +247 -0
- package/skills/omx-setup/SKILL.md +1 -1
- package/skills/ralph/SKILL.md +42 -11
- package/skills/ralplan/SKILL.md +17 -0
- package/skills/team/SKILL.md +64 -5
- package/skills/visual-verdict/SKILL.md +76 -0
- package/skills/web-clone/SKILL.md +366 -0
- package/skills/worker/SKILL.md +42 -11
- package/templates/AGENTS.md +9 -0
- package/templates/catalog-manifest.json +39 -18
- package/skills/configure-discord/SKILL.md +0 -256
- package/skills/configure-openclaw/SKILL.md +0 -267
- package/skills/configure-slack/SKILL.md +0 -226
- package/skills/configure-telegram/SKILL.md +0 -232
package/README.fr.md
ADDED
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
# oh-my-codex (OMX)
|
|
2
|
+
|
|
3
|
+
<p align="center">
|
|
4
|
+
<img src="https://yeachan-heo.github.io/oh-my-codex-website/omx-character-nobg.png" alt="oh-my-codex character" width="280">
|
|
5
|
+
<br>
|
|
6
|
+
<em>Votre codex n'est pas seul.</em>
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
[](https://www.npmjs.com/package/oh-my-codex)
|
|
10
|
+
[](https://opensource.org/licenses/MIT)
|
|
11
|
+
[](https://nodejs.org)
|
|
12
|
+
|
|
13
|
+
> **[Website](https://yeachan-heo.github.io/oh-my-codex-website/)** | **[Documentation](https://yeachan-heo.github.io/oh-my-codex-website/docs.html)** | **[CLI Reference](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#cli-reference)** | **[Workflows](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#workflows)** | **[GitHub](https://github.com/Yeachan-Heo/oh-my-codex)** | **[npm](https://www.npmjs.com/package/oh-my-codex)**
|
|
14
|
+
|
|
15
|
+
Couche d'orchestration multi-agents pour [OpenAI Codex CLI](https://github.com/openai/codex).
|
|
16
|
+
|
|
17
|
+
## Langues
|
|
18
|
+
|
|
19
|
+
- [English](./README.md)
|
|
20
|
+
- [한국어 (Korean)](./README.ko.md)
|
|
21
|
+
- [日本語 (Japanese)](./README.ja.md)
|
|
22
|
+
- [简体中文 (Chinese Simplified)](./README.zh.md)
|
|
23
|
+
- [繁體中文 (Chinese Traditional)](./README.zh-TW.md)
|
|
24
|
+
- [Tiếng Việt (Vietnamese)](./README.vi.md)
|
|
25
|
+
- [Español (Spanish)](./README.es.md)
|
|
26
|
+
- [Português (Portuguese)](./README.pt.md)
|
|
27
|
+
- [Русский (Russian)](./README.ru.md)
|
|
28
|
+
- [Türkçe (Turkish)](./README.tr.md)
|
|
29
|
+
- [Deutsch (German)](./README.de.md)
|
|
30
|
+
- [Français (French)](./README.fr.md)
|
|
31
|
+
- [Italiano (Italian)](./README.it.md)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
OMX transforme Codex d'un agent mono-session en un système coordonné avec :
|
|
35
|
+
- Des role prompts (`/prompts:name`) pour les agents spécialisés
|
|
36
|
+
- Des workflow skills (`$name`) pour les modes d'exécution reproductibles
|
|
37
|
+
- L'orchestration d'équipe dans tmux (`omx team`, `$team`)
|
|
38
|
+
- Un état et une mémoire persistants via les serveurs MCP
|
|
39
|
+
|
|
40
|
+
## Pourquoi OMX
|
|
41
|
+
|
|
42
|
+
Codex CLI est performant pour les tâches directes. OMX ajoute de la structure pour les travaux plus importants :
|
|
43
|
+
- Décomposition et exécution par étapes (`team-plan -> team-prd -> team-exec -> team-verify -> team-fix`)
|
|
44
|
+
- État persistant du cycle de vie des modes (`.omx/state/`)
|
|
45
|
+
- Surfaces de mémoire et notepad pour les sessions longue durée
|
|
46
|
+
- Contrôles opérationnels pour le lancement, la vérification et l'annulation
|
|
47
|
+
|
|
48
|
+
OMX est un add-on, pas un fork. Il utilise les points d'extension natifs de Codex.
|
|
49
|
+
|
|
50
|
+
## Prérequis
|
|
51
|
+
|
|
52
|
+
- macOS ou Linux (Windows via WSL2)
|
|
53
|
+
- Node.js >= 20
|
|
54
|
+
- Codex CLI installé (`npm install -g @openai/codex`)
|
|
55
|
+
- Authentification Codex configurée
|
|
56
|
+
|
|
57
|
+
## Démarrage rapide (3 minutes)
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
npm install -g oh-my-codex
|
|
61
|
+
omx setup
|
|
62
|
+
omx doctor
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Profil de lancement recommandé pour les environnements de confiance :
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
omx --xhigh --madmax
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Nouveautés de la v0.5.0
|
|
72
|
+
|
|
73
|
+
- **Configuration sensible au scope** avec `omx setup --scope user|project` pour des modes d'installation flexibles.
|
|
74
|
+
- **Routage Spark worker** via `--spark` / `--madmax-spark` pour que les workers d'équipe puissent utiliser `gpt-5.3-codex-spark` sans forcer le modèle leader.
|
|
75
|
+
- **Consolidation du catalogue** — suppression des prompts obsolètes (`deep-executor`, `scientist`) et de 9 skills obsolètes.
|
|
76
|
+
- **Niveaux de verbosité des notifications** pour un contrôle fin de la sortie CCNotifier.
|
|
77
|
+
|
|
78
|
+
## Première session
|
|
79
|
+
|
|
80
|
+
Dans Codex :
|
|
81
|
+
|
|
82
|
+
```text
|
|
83
|
+
/prompts:architect "analyze current auth boundaries"
|
|
84
|
+
/prompts:executor "implement input validation in login"
|
|
85
|
+
$plan "ship OAuth callback safely"
|
|
86
|
+
$team 3:executor "fix all TypeScript errors"
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Depuis le terminal :
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
omx team 4:executor "parallelize a multi-module refactor"
|
|
93
|
+
omx team status <team-name>
|
|
94
|
+
omx team shutdown <team-name>
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Modèle de base
|
|
98
|
+
|
|
99
|
+
OMX installe et connecte ces couches :
|
|
100
|
+
|
|
101
|
+
```text
|
|
102
|
+
User
|
|
103
|
+
-> Codex CLI
|
|
104
|
+
-> AGENTS.md (cerveau d'orchestration)
|
|
105
|
+
-> ~/.codex/prompts/*.md (catalogue de prompts d'agents)
|
|
106
|
+
-> ~/.agents/skills/*/SKILL.md (catalogue de skills)
|
|
107
|
+
-> ~/.codex/config.toml (fonctionnalités, notifications, MCP)
|
|
108
|
+
-> .omx/ (état d'exécution, mémoire, plans, journaux)
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## Commandes principales
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
omx # Lancer Codex (+ HUD dans tmux si disponible)
|
|
115
|
+
omx setup # Installer prompts/skills/config par scope + projet AGENTS.md/.omx
|
|
116
|
+
omx doctor # Diagnostics d'installation/exécution
|
|
117
|
+
omx doctor --team # Diagnostics Team/Swarm
|
|
118
|
+
omx team ... # Démarrer/statut/reprendre/arrêter les workers d'équipe tmux
|
|
119
|
+
omx status # Afficher les modes actifs
|
|
120
|
+
omx cancel # Annuler les modes d'exécution actifs
|
|
121
|
+
omx reasoning <mode> # low|medium|high|xhigh
|
|
122
|
+
omx tmux-hook ... # init|status|validate|test
|
|
123
|
+
omx hooks ... # init|status|validate|test (workflow d'extension de plugins)
|
|
124
|
+
omx hud ... # --watch|--json|--preset
|
|
125
|
+
omx help
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## Extension Hooks (Surface additive)
|
|
129
|
+
|
|
130
|
+
OMX inclut désormais `omx hooks` pour l'échafaudage et la validation de plugins.
|
|
131
|
+
|
|
132
|
+
- `omx tmux-hook` reste supporté et inchangé.
|
|
133
|
+
- `omx hooks` est additif et ne remplace pas les workflows tmux-hook.
|
|
134
|
+
- Les fichiers de plugins se trouvent dans `.omx/hooks/*.mjs`.
|
|
135
|
+
- Les plugins sont désactivés par défaut ; activez-les avec `OMX_HOOK_PLUGINS=1`.
|
|
136
|
+
|
|
137
|
+
Consultez `docs/hooks-extension.md` pour le workflow d'extension complet et le modèle d'événements.
|
|
138
|
+
|
|
139
|
+
## Flags de lancement
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
--yolo
|
|
143
|
+
--high
|
|
144
|
+
--xhigh
|
|
145
|
+
--madmax
|
|
146
|
+
--force
|
|
147
|
+
--dry-run
|
|
148
|
+
--verbose
|
|
149
|
+
--scope <user|project> # uniquement pour setup
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
`--madmax` correspond à Codex `--dangerously-bypass-approvals-and-sandbox`.
|
|
153
|
+
À utiliser uniquement dans des environnements sandbox de confiance/externes.
|
|
154
|
+
|
|
155
|
+
### Politique MCP workingDirectory (durcissement optionnel)
|
|
156
|
+
|
|
157
|
+
Par défaut, les outils MCP état/mémoire/trace acceptent le `workingDirectory` fourni par l'appelant.
|
|
158
|
+
Pour restreindre cela, définissez une liste d'autorisation de racines :
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
export OMX_MCP_WORKDIR_ROOTS="/path/to/project:/path/to/another-root"
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
Lorsque défini, les valeurs `workingDirectory` en dehors de ces racines sont rejetées.
|
|
165
|
+
|
|
166
|
+
## Contrôle Codex-First des prompts
|
|
167
|
+
|
|
168
|
+
Par défaut, OMX injecte :
|
|
169
|
+
|
|
170
|
+
```text
|
|
171
|
+
-c model_instructions_file="<cwd>/AGENTS.md"
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
Cela superpose les instructions `AGENTS.md` du projet dans les instructions de lancement de Codex.
|
|
175
|
+
Cela étend le comportement de Codex, mais ne remplace/contourne pas les politiques système de base de Codex.
|
|
176
|
+
|
|
177
|
+
Contrôles :
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
OMX_BYPASS_DEFAULT_SYSTEM_PROMPT=0 omx # désactiver l'injection AGENTS.md
|
|
181
|
+
OMX_MODEL_INSTRUCTIONS_FILE=/path/to/instructions.md omx
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
## Mode équipe
|
|
185
|
+
|
|
186
|
+
Utilisez le mode équipe pour les travaux importants qui bénéficient de workers parallèles.
|
|
187
|
+
|
|
188
|
+
Cycle de vie :
|
|
189
|
+
|
|
190
|
+
```text
|
|
191
|
+
start -> assign scoped lanes -> monitor -> verify terminal tasks -> shutdown
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
Commandes opérationnelles :
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
omx team <args>
|
|
198
|
+
omx team status <team-name>
|
|
199
|
+
omx team resume <team-name>
|
|
200
|
+
omx team shutdown <team-name>
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
Règle importante : n'arrêtez pas tant que des tâches sont encore `in_progress`, sauf en cas d'abandon.
|
|
204
|
+
|
|
205
|
+
### Politique de nettoyage Ralph
|
|
206
|
+
|
|
207
|
+
Lorsqu'une équipe s'exécute en mode ralph (`omx team ralph ...`), le nettoyage à l'arrêt
|
|
208
|
+
applique une politique dédiée qui diffère du chemin normal :
|
|
209
|
+
|
|
210
|
+
| Comportement | Équipe normale | Équipe Ralph |
|
|
211
|
+
|---|---|---|
|
|
212
|
+
| Arrêt forcé en cas d'échec | Lance `shutdown_gate_blocked` | Contourne la porte, journalise l'événement `ralph_cleanup_policy` |
|
|
213
|
+
| Suppression automatique des branches | Supprime les branches worktree lors du rollback | Préserve les branches (`skipBranchDeletion`) |
|
|
214
|
+
| Journalisation de complétion | Événement standard `shutdown_gate` | Événement supplémentaire `ralph_cleanup_summary` avec détail des tâches |
|
|
215
|
+
|
|
216
|
+
La politique ralph est auto-détectée depuis l'état du mode équipe (`linked_ralph`) ou
|
|
217
|
+
peut être passée explicitement via `omx team shutdown <name> --ralph`.
|
|
218
|
+
|
|
219
|
+
Sélection du CLI worker pour les workers d'équipe :
|
|
220
|
+
|
|
221
|
+
```bash
|
|
222
|
+
OMX_TEAM_WORKER_CLI=auto # par défaut ; utilise claude quand worker --model contient "claude"
|
|
223
|
+
OMX_TEAM_WORKER_CLI=codex # forcer les workers Codex CLI
|
|
224
|
+
OMX_TEAM_WORKER_CLI=claude # forcer les workers Claude CLI
|
|
225
|
+
OMX_TEAM_WORKER_CLI_MAP=codex,codex,claude,claude # mix CLI par worker (longueur=1 ou nombre de workers)
|
|
226
|
+
OMX_TEAM_AUTO_INTERRUPT_RETRY=0 # optionnel : désactiver le fallback adaptatif queue->resend
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
Notes :
|
|
230
|
+
- Les arguments de lancement des workers sont toujours partagés via `OMX_TEAM_WORKER_LAUNCH_ARGS`.
|
|
231
|
+
- `OMX_TEAM_WORKER_CLI_MAP` remplace `OMX_TEAM_WORKER_CLI` pour la sélection par worker.
|
|
232
|
+
- La soumission de déclencheurs utilise par défaut des tentatives adaptatives (queue/submit, puis fallback sécurisé clear-line+resend si nécessaire).
|
|
233
|
+
- En mode worker Claude, OMX lance les workers en tant que simple `claude` (pas d'arguments de lancement supplémentaires) et ignore les surcharges explicites `--model` / `--config` / `--effort` pour que Claude utilise le `settings.json` par défaut.
|
|
234
|
+
|
|
235
|
+
## Ce que `omx setup` écrit
|
|
236
|
+
|
|
237
|
+
- `.omx/setup-scope.json` (scope de setup persisté)
|
|
238
|
+
- Installations dépendantes du scope :
|
|
239
|
+
- `user` : `~/.codex/prompts/`, `~/.agents/skills/`, `~/.codex/config.toml`, `~/.omx/agents/`
|
|
240
|
+
- `project` : `./.codex/prompts/`, `./.agents/skills/`, `./.codex/config.toml`, `./.omx/agents/`
|
|
241
|
+
- Comportement au lancement : si le scope persisté est `project`, le lancement `omx` utilise automatiquement `CODEX_HOME=./.codex` (sauf si `CODEX_HOME` est déjà défini).
|
|
242
|
+
- Le `AGENTS.md` existant est préservé par défaut. Lors des exécutions TTY interactives, setup demande confirmation avant d'écraser ; `--force` écrase sans demander (les vérifications de sécurité de session active s'appliquent toujours).
|
|
243
|
+
- Mises à jour de `config.toml` (pour les deux scopes) :
|
|
244
|
+
- `notify = ["node", "..."]`
|
|
245
|
+
- `model_reasoning_effort = "high"`
|
|
246
|
+
- `developer_instructions = "..."`
|
|
247
|
+
- `[features] multi_agent = true, child_agents_md = true`
|
|
248
|
+
- Entrées de serveurs MCP (`omx_state`, `omx_memory`, `omx_code_intel`, `omx_trace`)
|
|
249
|
+
- `[tui] status_line`
|
|
250
|
+
- `AGENTS.md` du projet
|
|
251
|
+
- Répertoires d'exécution `.omx/` et configuration HUD
|
|
252
|
+
|
|
253
|
+
## Agents et Skills
|
|
254
|
+
|
|
255
|
+
- Prompts : `prompts/*.md` (installés dans `~/.codex/prompts/` pour `user`, `./.codex/prompts/` pour `project`)
|
|
256
|
+
- Skills : `skills/*/SKILL.md` (installés dans `~/.agents/skills/` pour `user`, `./.agents/skills/` pour `project`)
|
|
257
|
+
|
|
258
|
+
Exemples :
|
|
259
|
+
- Agents : `architect`, `planner`, `executor`, `debugger`, `verifier`, `security-reviewer`
|
|
260
|
+
- Skills : `autopilot`, `plan`, `team`, `ralph`, `ultrawork`, `cancel`
|
|
261
|
+
|
|
262
|
+
## Structure du projet
|
|
263
|
+
|
|
264
|
+
```text
|
|
265
|
+
oh-my-codex/
|
|
266
|
+
bin/omx.js
|
|
267
|
+
src/
|
|
268
|
+
cli/
|
|
269
|
+
team/
|
|
270
|
+
mcp/
|
|
271
|
+
hooks/
|
|
272
|
+
hud/
|
|
273
|
+
config/
|
|
274
|
+
modes/
|
|
275
|
+
notifications/
|
|
276
|
+
verification/
|
|
277
|
+
prompts/
|
|
278
|
+
skills/
|
|
279
|
+
templates/
|
|
280
|
+
scripts/
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
## Développement
|
|
284
|
+
|
|
285
|
+
```bash
|
|
286
|
+
git clone https://github.com/Yeachan-Heo/oh-my-codex.git
|
|
287
|
+
cd oh-my-codex
|
|
288
|
+
npm install
|
|
289
|
+
npm run build
|
|
290
|
+
npm test
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
## Documentation
|
|
294
|
+
|
|
295
|
+
- **[Documentation complète](https://yeachan-heo.github.io/oh-my-codex-website/docs.html)** — Guide complet
|
|
296
|
+
- **[Référence CLI](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#cli-reference)** — Toutes les commandes `omx`, flags et outils
|
|
297
|
+
- **[Guide des notifications](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#notifications)** — Configuration Discord, Telegram, Slack et webhooks
|
|
298
|
+
- **[Workflows recommandés](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#workflows)** — Chaînes de skills éprouvées pour les tâches courantes
|
|
299
|
+
- **[Notes de version](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#release-notes)** — Nouveautés de chaque version
|
|
300
|
+
|
|
301
|
+
## Notes
|
|
302
|
+
|
|
303
|
+
- Journal des modifications complet : `CHANGELOG.md`
|
|
304
|
+
- Guide de migration (post-v0.4.4 mainline) : `docs/migration-mainline-post-v0.4.4.md`
|
|
305
|
+
- Notes de couverture et parité : `COVERAGE.md`
|
|
306
|
+
- Workflow d'extension hooks : `docs/hooks-extension.md`
|
|
307
|
+
- Détails de configuration et contribution : `CONTRIBUTING.md`
|
|
308
|
+
|
|
309
|
+
## Remerciements
|
|
310
|
+
|
|
311
|
+
Inspiré par [oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode), adapté pour Codex CLI.
|
|
312
|
+
|
|
313
|
+
## Licence
|
|
314
|
+
|
|
315
|
+
MIT
|
package/README.it.md
ADDED
|
@@ -0,0 +1,315 @@
|
|
|
1
|
+
# oh-my-codex (OMX)
|
|
2
|
+
|
|
3
|
+
<p align="center">
|
|
4
|
+
<img src="https://yeachan-heo.github.io/oh-my-codex-website/omx-character-nobg.png" alt="oh-my-codex character" width="280">
|
|
5
|
+
<br>
|
|
6
|
+
<em>Il tuo codex non è solo.</em>
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
[](https://www.npmjs.com/package/oh-my-codex)
|
|
10
|
+
[](https://opensource.org/licenses/MIT)
|
|
11
|
+
[](https://nodejs.org)
|
|
12
|
+
|
|
13
|
+
> **[Website](https://yeachan-heo.github.io/oh-my-codex-website/)** | **[Documentation](https://yeachan-heo.github.io/oh-my-codex-website/docs.html)** | **[CLI Reference](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#cli-reference)** | **[Workflows](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#workflows)** | **[GitHub](https://github.com/Yeachan-Heo/oh-my-codex)** | **[npm](https://www.npmjs.com/package/oh-my-codex)**
|
|
14
|
+
|
|
15
|
+
Livello di orchestrazione multi-agente per [OpenAI Codex CLI](https://github.com/openai/codex).
|
|
16
|
+
|
|
17
|
+
## Lingue
|
|
18
|
+
|
|
19
|
+
- [English](./README.md)
|
|
20
|
+
- [한국어 (Korean)](./README.ko.md)
|
|
21
|
+
- [日本語 (Japanese)](./README.ja.md)
|
|
22
|
+
- [简体中文 (Chinese Simplified)](./README.zh.md)
|
|
23
|
+
- [繁體中文 (Chinese Traditional)](./README.zh-TW.md)
|
|
24
|
+
- [Tiếng Việt (Vietnamese)](./README.vi.md)
|
|
25
|
+
- [Español (Spanish)](./README.es.md)
|
|
26
|
+
- [Português (Portuguese)](./README.pt.md)
|
|
27
|
+
- [Русский (Russian)](./README.ru.md)
|
|
28
|
+
- [Türkçe (Turkish)](./README.tr.md)
|
|
29
|
+
- [Deutsch (German)](./README.de.md)
|
|
30
|
+
- [Français (French)](./README.fr.md)
|
|
31
|
+
- [Italiano (Italian)](./README.it.md)
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
OMX trasforma Codex da un agente a sessione singola in un sistema coordinato con:
|
|
35
|
+
- Role prompts (`/prompts:name`) per agenti specializzati
|
|
36
|
+
- Workflow skills (`$name`) per modalità di esecuzione ripetibili
|
|
37
|
+
- Orchestrazione team in tmux (`omx team`, `$team`)
|
|
38
|
+
- Stato e memoria persistenti tramite server MCP
|
|
39
|
+
|
|
40
|
+
## Perché OMX
|
|
41
|
+
|
|
42
|
+
Codex CLI è efficace per compiti diretti. OMX aggiunge struttura per lavori più ampi:
|
|
43
|
+
- Decomposizione ed esecuzione a stadi (`team-plan -> team-prd -> team-exec -> team-verify -> team-fix`)
|
|
44
|
+
- Stato persistente del ciclo di vita delle modalità (`.omx/state/`)
|
|
45
|
+
- Superfici di memoria e notepad per sessioni di lunga durata
|
|
46
|
+
- Controlli operativi per avvio, verifica e annullamento
|
|
47
|
+
|
|
48
|
+
OMX è un add-on, non un fork. Utilizza i punti di estensione nativi di Codex.
|
|
49
|
+
|
|
50
|
+
## Requisiti
|
|
51
|
+
|
|
52
|
+
- macOS o Linux (Windows tramite WSL2)
|
|
53
|
+
- Node.js >= 20
|
|
54
|
+
- Codex CLI installato (`npm install -g @openai/codex`)
|
|
55
|
+
- Autenticazione Codex configurata
|
|
56
|
+
|
|
57
|
+
## Avvio rapido (3 minuti)
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
npm install -g oh-my-codex
|
|
61
|
+
omx setup
|
|
62
|
+
omx doctor
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
Profilo di avvio consigliato per ambienti fidati:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
omx --xhigh --madmax
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Novità nella v0.5.0
|
|
72
|
+
|
|
73
|
+
- **Setup sensibile allo scope** con `omx setup --scope user|project` per modalità di installazione flessibili.
|
|
74
|
+
- **Routing Spark worker** tramite `--spark` / `--madmax-spark` in modo che i worker del team possano usare `gpt-5.3-codex-spark` senza forzare il modello leader.
|
|
75
|
+
- **Consolidamento del catalogo** — rimossi prompt obsoleti (`deep-executor`, `scientist`) e 9 skill obsolete.
|
|
76
|
+
- **Livelli di verbosità delle notifiche** per un controllo dettagliato dell'output CCNotifier.
|
|
77
|
+
|
|
78
|
+
## Prima sessione
|
|
79
|
+
|
|
80
|
+
All'interno di Codex:
|
|
81
|
+
|
|
82
|
+
```text
|
|
83
|
+
/prompts:architect "analyze current auth boundaries"
|
|
84
|
+
/prompts:executor "implement input validation in login"
|
|
85
|
+
$plan "ship OAuth callback safely"
|
|
86
|
+
$team 3:executor "fix all TypeScript errors"
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
Dal terminale:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
omx team 4:executor "parallelize a multi-module refactor"
|
|
93
|
+
omx team status <team-name>
|
|
94
|
+
omx team shutdown <team-name>
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
## Modello di base
|
|
98
|
+
|
|
99
|
+
OMX installa e collega questi livelli:
|
|
100
|
+
|
|
101
|
+
```text
|
|
102
|
+
User
|
|
103
|
+
-> Codex CLI
|
|
104
|
+
-> AGENTS.md (cervello dell'orchestrazione)
|
|
105
|
+
-> ~/.codex/prompts/*.md (catalogo prompt degli agenti)
|
|
106
|
+
-> ~/.agents/skills/*/SKILL.md (catalogo skill)
|
|
107
|
+
-> ~/.codex/config.toml (funzionalità, notifiche, MCP)
|
|
108
|
+
-> .omx/ (stato di esecuzione, memoria, piani, log)
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## Comandi principali
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
omx # Avvia Codex (+ HUD in tmux se disponibile)
|
|
115
|
+
omx setup # Installa prompt/skill/config per scope + progetto AGENTS.md/.omx
|
|
116
|
+
omx doctor # Diagnostica installazione/esecuzione
|
|
117
|
+
omx doctor --team # Diagnostica Team/Swarm
|
|
118
|
+
omx team ... # Avvia/stato/riprendi/arresta i worker del team tmux
|
|
119
|
+
omx status # Mostra le modalità attive
|
|
120
|
+
omx cancel # Annulla le modalità di esecuzione attive
|
|
121
|
+
omx reasoning <mode> # low|medium|high|xhigh
|
|
122
|
+
omx tmux-hook ... # init|status|validate|test
|
|
123
|
+
omx hooks ... # init|status|validate|test (workflow estensione plugin)
|
|
124
|
+
omx hud ... # --watch|--json|--preset
|
|
125
|
+
omx help
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## Estensione Hooks (Superficie additiva)
|
|
129
|
+
|
|
130
|
+
OMX ora include `omx hooks` per lo scaffolding e la validazione dei plugin.
|
|
131
|
+
|
|
132
|
+
- `omx tmux-hook` resta supportato e invariato.
|
|
133
|
+
- `omx hooks` è additivo e non sostituisce i workflow tmux-hook.
|
|
134
|
+
- I file dei plugin si trovano in `.omx/hooks/*.mjs`.
|
|
135
|
+
- I plugin sono disattivati per impostazione predefinita; abilitali con `OMX_HOOK_PLUGINS=1`.
|
|
136
|
+
|
|
137
|
+
Consulta `docs/hooks-extension.md` per il workflow completo di estensione e il modello degli eventi.
|
|
138
|
+
|
|
139
|
+
## Flag di avvio
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
--yolo
|
|
143
|
+
--high
|
|
144
|
+
--xhigh
|
|
145
|
+
--madmax
|
|
146
|
+
--force
|
|
147
|
+
--dry-run
|
|
148
|
+
--verbose
|
|
149
|
+
--scope <user|project> # solo per setup
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
`--madmax` corrisponde a Codex `--dangerously-bypass-approvals-and-sandbox`.
|
|
153
|
+
Utilizzare solo in ambienti sandbox fidati/esterni.
|
|
154
|
+
|
|
155
|
+
### Policy MCP workingDirectory (hardening opzionale)
|
|
156
|
+
|
|
157
|
+
Per impostazione predefinita, gli strumenti MCP stato/memoria/trace accettano il `workingDirectory` fornito dal chiamante.
|
|
158
|
+
Per limitare questo, imposta una lista di directory root consentite:
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
export OMX_MCP_WORKDIR_ROOTS="/path/to/project:/path/to/another-root"
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
Quando impostato, i valori `workingDirectory` al di fuori di queste root vengono rifiutati.
|
|
165
|
+
|
|
166
|
+
## Controllo Codex-First dei prompt
|
|
167
|
+
|
|
168
|
+
Per impostazione predefinita, OMX inietta:
|
|
169
|
+
|
|
170
|
+
```text
|
|
171
|
+
-c model_instructions_file="<cwd>/AGENTS.md"
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
Questo sovrappone le istruzioni `AGENTS.md` del progetto alle istruzioni di avvio di Codex.
|
|
175
|
+
Estende il comportamento di Codex, ma non sostituisce/aggira le policy di sistema core di Codex.
|
|
176
|
+
|
|
177
|
+
Controlli:
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
OMX_BYPASS_DEFAULT_SYSTEM_PROMPT=0 omx # disabilita l'iniezione AGENTS.md
|
|
181
|
+
OMX_MODEL_INSTRUCTIONS_FILE=/path/to/instructions.md omx
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
## Modalità team
|
|
185
|
+
|
|
186
|
+
Usa la modalità team per lavori ampi che beneficiano di worker paralleli.
|
|
187
|
+
|
|
188
|
+
Ciclo di vita:
|
|
189
|
+
|
|
190
|
+
```text
|
|
191
|
+
start -> assign scoped lanes -> monitor -> verify terminal tasks -> shutdown
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
Comandi operativi:
|
|
195
|
+
|
|
196
|
+
```bash
|
|
197
|
+
omx team <args>
|
|
198
|
+
omx team status <team-name>
|
|
199
|
+
omx team resume <team-name>
|
|
200
|
+
omx team shutdown <team-name>
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
Regola importante: non arrestare mentre i task sono ancora `in_progress`, a meno che non si stia abortendo.
|
|
204
|
+
|
|
205
|
+
### Policy di pulizia Ralph
|
|
206
|
+
|
|
207
|
+
Quando un team è in esecuzione in modalità ralph (`omx team ralph ...`), la pulizia allo shutdown
|
|
208
|
+
applica una policy dedicata che differisce dal percorso normale:
|
|
209
|
+
|
|
210
|
+
| Comportamento | Team normale | Team Ralph |
|
|
211
|
+
|---|---|---|
|
|
212
|
+
| Shutdown forzato in caso di errore | Lancia `shutdown_gate_blocked` | Aggira il gate, registra l'evento `ralph_cleanup_policy` |
|
|
213
|
+
| Eliminazione automatica dei branch | Elimina i branch worktree durante il rollback | Preserva i branch (`skipBranchDeletion`) |
|
|
214
|
+
| Logging di completamento | Evento standard `shutdown_gate` | Evento aggiuntivo `ralph_cleanup_summary` con dettaglio dei task |
|
|
215
|
+
|
|
216
|
+
La policy ralph viene rilevata automaticamente dallo stato della modalità team (`linked_ralph`) o
|
|
217
|
+
può essere passata esplicitamente tramite `omx team shutdown <name> --ralph`.
|
|
218
|
+
|
|
219
|
+
Selezione CLI worker per i worker del team:
|
|
220
|
+
|
|
221
|
+
```bash
|
|
222
|
+
OMX_TEAM_WORKER_CLI=auto # predefinito; usa claude quando worker --model contiene "claude"
|
|
223
|
+
OMX_TEAM_WORKER_CLI=codex # forza i worker Codex CLI
|
|
224
|
+
OMX_TEAM_WORKER_CLI=claude # forza i worker Claude CLI
|
|
225
|
+
OMX_TEAM_WORKER_CLI_MAP=codex,codex,claude,claude # mix CLI per worker (lunghezza=1 o numero di worker)
|
|
226
|
+
OMX_TEAM_AUTO_INTERRUPT_RETRY=0 # opzionale: disabilita il fallback adattivo queue->resend
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
Note:
|
|
230
|
+
- Gli argomenti di avvio dei worker sono ancora condivisi tramite `OMX_TEAM_WORKER_LAUNCH_ARGS`.
|
|
231
|
+
- `OMX_TEAM_WORKER_CLI_MAP` sovrascrive `OMX_TEAM_WORKER_CLI` per la selezione per singolo worker.
|
|
232
|
+
- L'invio dei trigger usa per impostazione predefinita tentativi adattivi (queue/submit, poi fallback sicuro clear-line+resend quando necessario).
|
|
233
|
+
- In modalità worker Claude, OMX avvia i worker come semplice `claude` (nessun argomento di avvio aggiuntivo) e ignora le sovrascritture esplicite `--model` / `--config` / `--effort` in modo che Claude usi il `settings.json` predefinito.
|
|
234
|
+
|
|
235
|
+
## Cosa scrive `omx setup`
|
|
236
|
+
|
|
237
|
+
- `.omx/setup-scope.json` (scope di setup persistito)
|
|
238
|
+
- Installazioni dipendenti dallo scope:
|
|
239
|
+
- `user`: `~/.codex/prompts/`, `~/.agents/skills/`, `~/.codex/config.toml`, `~/.omx/agents/`
|
|
240
|
+
- `project`: `./.codex/prompts/`, `./.agents/skills/`, `./.codex/config.toml`, `./.omx/agents/`
|
|
241
|
+
- Comportamento all'avvio: se lo scope persistito è `project`, l'avvio `omx` usa automaticamente `CODEX_HOME=./.codex` (a meno che `CODEX_HOME` non sia già impostato).
|
|
242
|
+
- L'`AGENTS.md` esistente è preservato per impostazione predefinita. Nelle esecuzioni TTY interattive, il setup chiede conferma prima di sovrascrivere; `--force` sovrascrive senza chiedere (i controlli di sicurezza della sessione attiva si applicano comunque).
|
|
243
|
+
- Aggiornamenti `config.toml` (per entrambi gli scope):
|
|
244
|
+
- `notify = ["node", "..."]`
|
|
245
|
+
- `model_reasoning_effort = "high"`
|
|
246
|
+
- `developer_instructions = "..."`
|
|
247
|
+
- `[features] multi_agent = true, child_agents_md = true`
|
|
248
|
+
- Voci server MCP (`omx_state`, `omx_memory`, `omx_code_intel`, `omx_trace`)
|
|
249
|
+
- `[tui] status_line`
|
|
250
|
+
- `AGENTS.md` del progetto
|
|
251
|
+
- Directory di esecuzione `.omx/` e configurazione HUD
|
|
252
|
+
|
|
253
|
+
## Agenti e Skill
|
|
254
|
+
|
|
255
|
+
- Prompt: `prompts/*.md` (installati in `~/.codex/prompts/` per `user`, `./.codex/prompts/` per `project`)
|
|
256
|
+
- Skill: `skills/*/SKILL.md` (installati in `~/.agents/skills/` per `user`, `./.agents/skills/` per `project`)
|
|
257
|
+
|
|
258
|
+
Esempi:
|
|
259
|
+
- Agenti: `architect`, `planner`, `executor`, `debugger`, `verifier`, `security-reviewer`
|
|
260
|
+
- Skill: `autopilot`, `plan`, `team`, `ralph`, `ultrawork`, `cancel`
|
|
261
|
+
|
|
262
|
+
## Struttura del progetto
|
|
263
|
+
|
|
264
|
+
```text
|
|
265
|
+
oh-my-codex/
|
|
266
|
+
bin/omx.js
|
|
267
|
+
src/
|
|
268
|
+
cli/
|
|
269
|
+
team/
|
|
270
|
+
mcp/
|
|
271
|
+
hooks/
|
|
272
|
+
hud/
|
|
273
|
+
config/
|
|
274
|
+
modes/
|
|
275
|
+
notifications/
|
|
276
|
+
verification/
|
|
277
|
+
prompts/
|
|
278
|
+
skills/
|
|
279
|
+
templates/
|
|
280
|
+
scripts/
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
## Sviluppo
|
|
284
|
+
|
|
285
|
+
```bash
|
|
286
|
+
git clone https://github.com/Yeachan-Heo/oh-my-codex.git
|
|
287
|
+
cd oh-my-codex
|
|
288
|
+
npm install
|
|
289
|
+
npm run build
|
|
290
|
+
npm test
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
## Documentazione
|
|
294
|
+
|
|
295
|
+
- **[Documentazione completa](https://yeachan-heo.github.io/oh-my-codex-website/docs.html)** — Guida completa
|
|
296
|
+
- **[Riferimento CLI](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#cli-reference)** — Tutti i comandi `omx`, flag e strumenti
|
|
297
|
+
- **[Guida alle notifiche](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#notifications)** — Configurazione Discord, Telegram, Slack e webhook
|
|
298
|
+
- **[Workflow consigliati](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#workflows)** — Catene di skill collaudate per i compiti comuni
|
|
299
|
+
- **[Note di rilascio](https://yeachan-heo.github.io/oh-my-codex-website/docs.html#release-notes)** — Novità di ogni versione
|
|
300
|
+
|
|
301
|
+
## Note
|
|
302
|
+
|
|
303
|
+
- Changelog completo: `CHANGELOG.md`
|
|
304
|
+
- Guida alla migrazione (post-v0.4.4 mainline): `docs/migration-mainline-post-v0.4.4.md`
|
|
305
|
+
- Note di copertura e parità: `COVERAGE.md`
|
|
306
|
+
- Workflow estensione hook: `docs/hooks-extension.md`
|
|
307
|
+
- Dettagli setup e contribuzione: `CONTRIBUTING.md`
|
|
308
|
+
|
|
309
|
+
## Ringraziamenti
|
|
310
|
+
|
|
311
|
+
Ispirato da [oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode), adattato per Codex CLI.
|
|
312
|
+
|
|
313
|
+
## Licenza
|
|
314
|
+
|
|
315
|
+
MIT
|