- root: refresh stale header (v4.2.0->v4.5.12 / 39aadbf9f->92bad87d8 / 2026-05-31), add CODEX LIGHT EDITION section (identity, marketplace sisyphuslabs/omo precision, lazycodex-ai disambiguation, 8 components, install, publish.yml lazycodex pipeline, telemetry), fix package counts and hook-handler count (13->14) - packages: 23->26 sibling packages (+git-bash-mcp +omo-codex +shared-skills) - packages/omo-codex: new AGENTS.md (layout, 8 components, install + sync-script mechanics) - src/cli: note --platform=codex install path via install-codex/
4.5 KiB
packages/omo-codex/ - Codex CLI Light Edition (lazycodex)
Generated: 2026-05-31
OVERVIEW
@oh-my-opencode/omo-codex (private, v0.1.0): the Codex harness adapter = the Light Edition (omo for the OpenAI Codex CLI). Vendors a Codex plugin namespace omo + a TypeScript installer + telemetry. Public distribution = the lazycodex bin/npm alias and the code-yeongyu/lazycodex marketplace repo. Codex marketplace identity = sisyphuslabs / plugin omo (omo@sisyphuslabs); lazycodex is the alias only. Full identity + the publish/deploy pipeline live in the root AGENTS.md "CODEX LIGHT EDITION" section.
LAYOUT
| Path | Purpose |
|---|---|
package.json |
@oh-my-opencode/omo-codex (private). Deps: @oh-my-opencode/utils, posthog-node. Scripts: typecheck, test, build:plugin, sync:skills. |
marketplace.json |
Codex marketplace manifest. Declares marketplace sisyphuslabs, single installable plugin omo. |
MARKETPLACE.md |
Native Codex marketplace notes for sisyphuslabs / omo. |
index.d.ts |
Type barrel re-exporting src/. |
plugin/ |
Vendored Codex plugin namespace omo; pkg @sisyphuslabs/omo-codex-plugin (dep @oh-my-opencode/shared-skills). Holds .codex-plugin/plugin.json (brandColor #7C3AED), hooks/hooks.json (aggregate event wiring), components/ (8), skills/, .mcp.json. |
scripts/ |
Node ESM install scripts (Codex cache install + ~/.codex/config.toml mutation + legacy-cache prune). |
src/ |
TypeScript runtime consumed by the CLI: install/ + telemetry/. |
tsconfig.json |
Bun-targeted strict config; included in root typecheck:packages. |
COMPONENTS (8)
comment-checker, git-bash, lsp, rules, start-work-continuation, telemetry, ultrawork, ulw-loop. Each is an isolated workspace under plugin/components/<name>/ with its own AGENTS.md + hooks/hooks.json. Wired to Codex lifecycle events SessionStart / UserPromptSubmit / PreToolUse / PostToolUse / PostCompact / Stop / SubagentStop. Implementations originate from code-yeongyu/codex-{rules,comment-checker,lsp,ultrawork,ulw-loop,start-work-continuation}.
INSTALL (mechanics)
Entry: src/cli/install-codex/ (install-codex.ts, codex-config-toml.ts, lazycodex-routing) + packages/omo-codex/scripts/install*.mjs. Targets: plugin cache ~/.codex/plugins/cache/sisyphuslabs/omo/<version>/; agent TOMLs via ~/.codex/.tmp/marketplaces/sisyphuslabs/plugins/omo/; enables omo@sisyphuslabs in ~/.codex/config.toml; component CLIs into ~/.local/bin. Windows: Git Bash preflight (winget install --id Git.Git); override OMO_CODEX_GIT_BASH_PATH, skip auto-install with OMO_CODEX_SKIP_GIT_BASH_AUTO_INSTALL=1. Non-Windows keeps the git_bash MCP manifest bundled but writes enabled = false.
TELEMETRY
Event omo_codex_daily_active, at most once per UTC day per machine. Two sources: install (install_completed) + plugin SessionStart (session_start). Id sha256("omo-codex:" + hostname); dedup state ~/.local/share/omo-codex/posthog-activity.json; PostHog person profiles disabled. Opt-out: OMO_CODEX_DISABLE_POSTHOG=1 / OMO_CODEX_SEND_ANONYMOUS_TELEMETRY=0 (global OMO_* flags also disable). Parity with the main plugin pinned by src/telemetry/cross-package-equivalence.test.ts.
DEPLOY (sync script)
script/sync-lazycodex-marketplace.ts <source-root> <lazycodex-root> copies marketplace.json to .agents/plugins/marketplace.json and plugin/ to plugins/omo/, bundles ast-grep-mcp + lsp-tools-mcp dist/cli.js into plugins/omo/components/*/dist/, rewrites .mcp.json paths, then validates via script/lazycodex-marketplace-validation.ts. Mechanism = file copy + commit push, NOT a git subtree. The triggering publish.yml jobs (publish_lazycodex, sync_lazycodex_marketplace) are documented in the root AGENTS.md.
NOTES
@sisyphuslabs/omo-codex-plugin(the shipped Codex plugin bundle) is distinct from@oh-my-opencode/omo-codex(this adapter package).- Codex marketplace name is
sisyphuslabs, neverlazycodex. @oh-my-opencode/omo-codexis private (not published to npm on its own); its assets ship via the rootpackage.jsonfilesarray.bunfig.tomlexcludespackages/omo-codex/plugin/**from the rootbun test; the plugin carries its ownnode --testsuite. Full Codex suite:bun run test:codex.- Per-component detail lives in
plugin/components/*/AGENTS.md; do not duplicate it here.