@trac3er/oh-my-god 2.0.2 → 2.0.4

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 (97) hide show
  1. package/.agents/skills/omg/AGENTS.fragment.md +5 -0
  2. package/.agents/skills/omg/codex-mcp.toml +4 -0
  3. package/.agents/skills/omg/control-plane/SKILL.md +11 -0
  4. package/.agents/skills/omg/control-plane/openai.yaml +14 -0
  5. package/.agents/skills/omg/hook-governor/SKILL.md +11 -0
  6. package/.agents/skills/omg/hook-governor/openai.yaml +11 -0
  7. package/.agents/skills/omg/lsp-pack/SKILL.md +11 -0
  8. package/.agents/skills/omg/lsp-pack/openai.yaml +11 -0
  9. package/.agents/skills/omg/mcp-fabric/SKILL.md +11 -0
  10. package/.agents/skills/omg/mcp-fabric/openai.yaml +13 -0
  11. package/.agents/skills/omg/secure-worktree-pipeline/SKILL.md +11 -0
  12. package/.agents/skills/omg/secure-worktree-pipeline/openai.yaml +12 -0
  13. package/.claude-plugin/marketplace.json +3 -3
  14. package/.claude-plugin/plugin.json +1 -1
  15. package/.mcp.json +20 -4
  16. package/CHANGELOG.md +16 -0
  17. package/OMG-setup.sh +9 -3
  18. package/OMG_COMPAT_CONTRACT.md +92 -0
  19. package/README.md +26 -8
  20. package/SECURITY.md +6 -0
  21. package/commands/OMG:api-twin.md +22 -0
  22. package/commands/OMG:preflight.md +26 -0
  23. package/commands/OMG:security-check.md +28 -0
  24. package/commands/OMG:setup.md +1 -2
  25. package/dist/enterprise/bundle/.agents/skills/omg/AGENTS.fragment.md +5 -0
  26. package/dist/enterprise/bundle/.agents/skills/omg/codex-mcp.toml +4 -0
  27. package/dist/enterprise/bundle/.agents/skills/omg/control-plane/SKILL.md +11 -0
  28. package/dist/enterprise/bundle/.agents/skills/omg/control-plane/openai.yaml +14 -0
  29. package/dist/enterprise/bundle/.agents/skills/omg/hook-governor/SKILL.md +11 -0
  30. package/dist/enterprise/bundle/.agents/skills/omg/hook-governor/openai.yaml +11 -0
  31. package/dist/enterprise/bundle/.agents/skills/omg/lsp-pack/SKILL.md +11 -0
  32. package/dist/enterprise/bundle/.agents/skills/omg/lsp-pack/openai.yaml +11 -0
  33. package/dist/enterprise/bundle/.agents/skills/omg/mcp-fabric/SKILL.md +11 -0
  34. package/dist/enterprise/bundle/.agents/skills/omg/mcp-fabric/openai.yaml +13 -0
  35. package/dist/enterprise/bundle/.agents/skills/omg/secure-worktree-pipeline/SKILL.md +11 -0
  36. package/dist/enterprise/bundle/.agents/skills/omg/secure-worktree-pipeline/openai.yaml +12 -0
  37. package/dist/enterprise/bundle/.claude-plugin/marketplace.json +36 -0
  38. package/dist/enterprise/bundle/.claude-plugin/plugin.json +23 -0
  39. package/dist/enterprise/bundle/.mcp.json +40 -0
  40. package/dist/enterprise/bundle/OMG_COMPAT_CONTRACT.md +92 -0
  41. package/dist/enterprise/bundle/settings.json +366 -0
  42. package/dist/enterprise/manifest.json +99 -0
  43. package/dist/public/bundle/.agents/skills/omg/AGENTS.fragment.md +5 -0
  44. package/dist/public/bundle/.agents/skills/omg/codex-mcp.toml +4 -0
  45. package/dist/public/bundle/.agents/skills/omg/control-plane/SKILL.md +11 -0
  46. package/dist/public/bundle/.agents/skills/omg/control-plane/openai.yaml +14 -0
  47. package/dist/public/bundle/.agents/skills/omg/hook-governor/SKILL.md +11 -0
  48. package/dist/public/bundle/.agents/skills/omg/hook-governor/openai.yaml +11 -0
  49. package/dist/public/bundle/.agents/skills/omg/lsp-pack/SKILL.md +11 -0
  50. package/dist/public/bundle/.agents/skills/omg/lsp-pack/openai.yaml +11 -0
  51. package/dist/public/bundle/.agents/skills/omg/mcp-fabric/SKILL.md +11 -0
  52. package/dist/public/bundle/.agents/skills/omg/mcp-fabric/openai.yaml +13 -0
  53. package/dist/public/bundle/.agents/skills/omg/secure-worktree-pipeline/SKILL.md +11 -0
  54. package/dist/public/bundle/.agents/skills/omg/secure-worktree-pipeline/openai.yaml +12 -0
  55. package/dist/public/bundle/.claude-plugin/marketplace.json +36 -0
  56. package/dist/public/bundle/.claude-plugin/plugin.json +23 -0
  57. package/dist/public/bundle/.mcp.json +40 -0
  58. package/dist/public/bundle/OMG_COMPAT_CONTRACT.md +92 -0
  59. package/dist/public/bundle/settings.json +366 -0
  60. package/dist/public/manifest.json +99 -0
  61. package/hooks/policy_engine.py +38 -7
  62. package/hooks/post-write.py +1 -1
  63. package/hooks/prompt-enhancer.py +2 -2
  64. package/hooks/security_validators.py +75 -0
  65. package/hooks/setup_wizard.py +44 -20
  66. package/hooks/shadow_manager.py +22 -2
  67. package/package.json +1 -1
  68. package/plugins/README.md +4 -2
  69. package/plugins/advanced/commands/OMG:deep-plan.md +1 -1
  70. package/plugins/advanced/commands/OMG:security-review.md +10 -113
  71. package/plugins/advanced/commands/OMG:ship.md +1 -1
  72. package/plugins/advanced/plugin.json +1 -10
  73. package/plugins/core/plugin.json +25 -2
  74. package/pyproject.toml +1 -1
  75. package/runtime/adoption.py +1 -1
  76. package/runtime/api_twin.py +130 -0
  77. package/runtime/compat.py +21 -1
  78. package/runtime/contract_compiler.py +698 -0
  79. package/runtime/domain_packs.py +34 -0
  80. package/runtime/guide_assert.py +45 -0
  81. package/runtime/mcp_config_writers.py +145 -39
  82. package/runtime/omg_compat_contract_snapshot.json +8 -7
  83. package/runtime/omg_contract_snapshot.json +8 -7
  84. package/runtime/omg_mcp_server.py +205 -0
  85. package/runtime/preflight.py +52 -0
  86. package/runtime/providers/codex_provider.py +2 -12
  87. package/runtime/providers/gemini_provider.py +2 -21
  88. package/runtime/providers/kimi_provider.py +2 -21
  89. package/runtime/runtime_profile.py +61 -0
  90. package/runtime/security_check.py +347 -0
  91. package/runtime/subagent_dispatcher.py +117 -10
  92. package/runtime/team_router.py +3 -3
  93. package/runtime/untrusted_content.py +102 -0
  94. package/scripts/omg.py +174 -1
  95. package/settings.json +66 -18
  96. package/tools/python_repl.py +33 -3
  97. package/runtime/providers/opencode_provider.py +0 -144
@@ -0,0 +1,5 @@
1
+ # OMG Codex Protection Rules
2
+
3
+ - Channel: `public`
4
+ - Protect `.omg/`, `.agents/`, `.codex/`, and `.claude/` from unreviewed mutation.
5
+ - Require explicit invocation for production-control-plane skills.
@@ -0,0 +1,4 @@
1
+ [mcp_servers.omg-control]
2
+ command = "python3"
3
+ args = ["-m", "runtime.omg_mcp_server"]
4
+
@@ -0,0 +1,11 @@
1
+ ---
2
+ name: omg-control-plane
3
+ description: "Canonical production control plane bundle for Claude and Codex."
4
+ ---
5
+
6
+ # OMG Control Plane
7
+
8
+ - Channel: `public`
9
+ - Execution modes: `embedded, local_supervisor`
10
+ - MCP servers: `omg-control, omg-memory`
11
+ - Evidence outputs: `.omg/evidence/control-plane-compile.json`
@@ -0,0 +1,14 @@
1
+ name: omg-control-plane
2
+ description: "Canonical production control plane bundle for Claude and Codex."
3
+ allow_implicit_invocation: false
4
+ metadata:
5
+ channel: public
6
+ bundle_id: control-plane
7
+ title: "OMG Control Plane"
8
+ mcp_servers:
9
+ - omg-control
10
+ - omg-memory
11
+ allowed_tools:
12
+ - "Read"
13
+ - "Grep"
14
+ - "Bash(python3:*)"
@@ -0,0 +1,11 @@
1
+ ---
2
+ name: omg-hook-governor
3
+ description: "Canonical hook ordering, policy reinjection, and protected-path governance."
4
+ ---
5
+
6
+ # OMG Hook Governor
7
+
8
+ - Channel: `public`
9
+ - Execution modes: `embedded, local_supervisor`
10
+ - MCP servers: `omg-control`
11
+ - Evidence outputs: `.omg/state/ledger/tool-ledger.jsonl`
@@ -0,0 +1,11 @@
1
+ name: omg-hook-governor
2
+ description: "Canonical hook ordering, policy reinjection, and protected-path governance."
3
+ allow_implicit_invocation: true
4
+ metadata:
5
+ channel: public
6
+ bundle_id: hook-governor
7
+ title: "OMG Hook Governor"
8
+ mcp_servers:
9
+ - omg-control
10
+ allowed_tools:
11
+ - "Read"
@@ -0,0 +1,11 @@
1
+ ---
2
+ name: omg-lsp-pack
3
+ description: "Optional LSP-backed diagnostics and navigation bundle for production verification."
4
+ ---
5
+
6
+ # OMG LSP Pack
7
+
8
+ - Channel: `public`
9
+ - Execution modes: `embedded, local_supervisor`
10
+ - MCP servers: `omg-control`
11
+ - Evidence outputs: `.omg/evidence/lsp-diagnostics.json`
@@ -0,0 +1,11 @@
1
+ name: omg-lsp-pack
2
+ description: "Optional LSP-backed diagnostics and navigation bundle for production verification."
3
+ allow_implicit_invocation: false
4
+ metadata:
5
+ channel: public
6
+ bundle_id: lsp-pack
7
+ title: "OMG LSP Pack"
8
+ mcp_servers:
9
+ - omg-control
10
+ allowed_tools:
11
+ - "Read"
@@ -0,0 +1,11 @@
1
+ ---
2
+ name: omg-mcp-fabric
3
+ description: "Tools, prompts, resources, and server instructions for the OMG control plane."
4
+ ---
5
+
6
+ # OMG MCP Fabric
7
+
8
+ - Channel: `public`
9
+ - Execution modes: `embedded, local_supervisor`
10
+ - MCP servers: `omg-control, omg-memory`
11
+ - Evidence outputs: `.omg/evidence/mcp-fabric.json`
@@ -0,0 +1,13 @@
1
+ name: omg-mcp-fabric
2
+ description: "Tools, prompts, resources, and server instructions for the OMG control plane."
3
+ allow_implicit_invocation: false
4
+ metadata:
5
+ channel: public
6
+ bundle_id: mcp-fabric
7
+ title: "OMG MCP Fabric"
8
+ mcp_servers:
9
+ - omg-control
10
+ - omg-memory
11
+ allowed_tools:
12
+ - "Read"
13
+ - "Bash(python3:*)"
@@ -0,0 +1,11 @@
1
+ ---
2
+ name: omg-secure-worktree-pipeline
3
+ description: "Ephemeral worktree execution and supervisor-safe worker dispatch for production jobs."
4
+ ---
5
+
6
+ # OMG Secure Worktree Pipeline
7
+
8
+ - Channel: `public`
9
+ - Execution modes: `automation, ephemeral_worktree, local_supervisor`
10
+ - MCP servers: `omg-control`
11
+ - Evidence outputs: `.omg/evidence/subagents/*.json`
@@ -0,0 +1,12 @@
1
+ name: omg-secure-worktree-pipeline
2
+ description: "Ephemeral worktree execution and supervisor-safe worker dispatch for production jobs."
3
+ allow_implicit_invocation: false
4
+ metadata:
5
+ channel: public
6
+ bundle_id: secure-worktree-pipeline
7
+ title: "OMG Secure Worktree Pipeline"
8
+ mcp_servers:
9
+ - omg-control
10
+ allowed_tools:
11
+ - "Read"
12
+ - "Bash(git:*)"
@@ -6,7 +6,7 @@
6
6
  },
7
7
  "metadata": {
8
8
  "description": "OMG - Oh-My-God for Claude Code",
9
- "version": "2.0.2",
9
+ "version": "2.0.4",
10
10
  "homepage": "https://github.com/trac3er00/OMG",
11
11
  "repository": "https://github.com/trac3er00/OMG"
12
12
  },
@@ -14,7 +14,7 @@
14
14
  {
15
15
  "name": "omg",
16
16
  "description": "OMG plugin layer for Claude Code with native setup, orchestration, and interop.",
17
- "version": "2.0.2",
17
+ "version": "2.0.4",
18
18
  "source": "./",
19
19
  "author": {
20
20
  "name": "trac3er00"
@@ -32,5 +32,5 @@
32
32
  ]
33
33
  }
34
34
  ],
35
- "version": "2.0.2"
35
+ "version": "2.0.4"
36
36
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omg",
3
- "version": "2.0.2",
3
+ "version": "2.0.4",
4
4
  "description": "OMG plugin layer for Claude Code with native setup, orchestration, and interop.",
5
5
  "author": {
6
6
  "name": "trac3er00"
package/.mcp.json CHANGED
@@ -2,23 +2,39 @@
2
2
  "mcpServers": {
3
3
  "context7": {
4
4
  "command": "npx",
5
- "args": ["@upstash/context7-mcp@2.1.3"]
5
+ "args": [
6
+ "@upstash/context7-mcp@2.1.3"
7
+ ]
6
8
  },
7
9
  "filesystem": {
8
10
  "command": "npx",
9
- "args": ["@modelcontextprotocol/server-filesystem@2026.1.14", "."]
11
+ "args": [
12
+ "@modelcontextprotocol/server-filesystem@2026.1.14",
13
+ "."
14
+ ]
10
15
  },
11
16
  "websearch": {
12
17
  "command": "npx",
13
- "args": ["@zhafron/mcp-web-search@1.2.2"]
18
+ "args": [
19
+ "@zhafron/mcp-web-search@1.2.2"
20
+ ]
14
21
  },
15
22
  "chrome-devtools": {
16
23
  "command": "npx",
17
- "args": ["chrome-devtools-mcp@0.19.0"]
24
+ "args": [
25
+ "chrome-devtools-mcp@0.19.0"
26
+ ]
18
27
  },
19
28
  "omg-memory": {
20
29
  "type": "http",
21
30
  "url": "http://127.0.0.1:8765/mcp"
31
+ },
32
+ "omg-control": {
33
+ "command": "python3",
34
+ "args": [
35
+ "-m",
36
+ "runtime.omg_mcp_server"
37
+ ]
22
38
  }
23
39
  }
24
40
  }
package/CHANGELOG.md CHANGED
@@ -1,5 +1,21 @@
1
1
  # Changelog
2
2
 
3
+ ## Unreleased
4
+
5
+ ## 2.0.4 - 2026-03-07
6
+
7
+ - shipped the OMG production control plane contract, executable bundle registry, host compiler, and dual-channel public and enterprise release bundles
8
+ - generated Codex skill packs and Claude release artifacts from the canonical contract, and added CI release-readiness coverage for validation, compile, standalone, and public-readiness gates
9
+ - extended the stdio `omg-control` MCP with prompts, resources, and server instructions, and upgraded subagent execution to record real worker evidence with secure worktree handling
10
+ - hardened the shipped `safe` preset so `firewall.py` runs before Bash tools, `secret-guard.py` runs before file mutations, and raw env or interpreter surfaces require approval
11
+ - fixed portable runtime provisioning to include `plugins/`, prevented worker command prompt placeholders from breaking argv boundaries, and corrected `omg_natives` import-path shadowing of stdlib modules
12
+
13
+ ## 2.0.3 - 2026-03-06
14
+
15
+ - removed OpenCode runtime, setup wiring, docs, and tests from the supported OMG host surface
16
+ - merged the remaining security and trust-review hardening work into `main` and cleaned up the finished `codex/*` branches
17
+ - published the post-merge patch release after the `v2.0.2` release target became immutable
18
+
3
19
  ## 2.0.2 - 2026-03-06
4
20
 
5
21
  - cleaned the repo for public launch by removing internal planning docs and stale private references
package/OMG-setup.sh CHANGED
@@ -5,7 +5,7 @@ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
5
5
  CLAUDE_DIR="${CLAUDE_CONFIG_DIR:-$HOME/.claude}"
6
6
  BACKUP_TS="$(date +%Y%m%d_%H%M%S)"
7
7
  BACKUP_DIR="$CLAUDE_DIR/.omg-backup-$BACKUP_TS"
8
- VERSION="2.0.2"
8
+ VERSION="2.0.4"
9
9
 
10
10
  PLUGIN_NAME="omg"
11
11
  PLUGIN_MARKETPLACE="omg"
@@ -1190,11 +1190,15 @@ run_install_like() {
1190
1190
  [[ "$CLAUDE_DIR/omg-runtime/runtime" == "$CLAUDE_DIR"* ]] || { echo "ERROR: symlink target outside expected directory: $CLAUDE_DIR/omg-runtime/runtime" >&2; exit 1; }
1191
1191
  [[ "$CLAUDE_DIR/omg-runtime/hooks" == "$CLAUDE_DIR"* ]] || { echo "ERROR: symlink target outside expected directory: $CLAUDE_DIR/omg-runtime/hooks" >&2; exit 1; }
1192
1192
  [[ "$CLAUDE_DIR/omg-runtime/lab" == "$CLAUDE_DIR"* ]] || { echo "ERROR: symlink target outside expected directory: $CLAUDE_DIR/omg-runtime/lab" >&2; exit 1; }
1193
+ [[ "$CLAUDE_DIR/omg-runtime/plugins" == "$CLAUDE_DIR"* ]] || { echo "ERROR: symlink target outside expected directory: $CLAUDE_DIR/omg-runtime/plugins" >&2; exit 1; }
1194
+ [[ "$CLAUDE_DIR/omg-runtime/yaml.py" == "$CLAUDE_DIR"* ]] || { echo "ERROR: symlink target outside expected directory: $CLAUDE_DIR/omg-runtime/yaml.py" >&2; exit 1; }
1193
1195
 
1194
- rm -rf "$CLAUDE_DIR/omg-runtime/runtime" "$CLAUDE_DIR/omg-runtime/hooks" "$CLAUDE_DIR/omg-runtime/lab"
1196
+ rm -rf "$CLAUDE_DIR/omg-runtime/runtime" "$CLAUDE_DIR/omg-runtime/hooks" "$CLAUDE_DIR/omg-runtime/lab" "$CLAUDE_DIR/omg-runtime/plugins" "$CLAUDE_DIR/omg-runtime/yaml.py"
1195
1197
  ln -s "$SCRIPT_DIR/runtime" "$CLAUDE_DIR/omg-runtime/runtime"
1196
1198
  ln -s "$SCRIPT_DIR/hooks" "$CLAUDE_DIR/omg-runtime/hooks"
1197
1199
  ln -s "$SCRIPT_DIR/lab" "$CLAUDE_DIR/omg-runtime/lab"
1200
+ ln -s "$SCRIPT_DIR/plugins" "$CLAUDE_DIR/omg-runtime/plugins"
1201
+ ln -s "$SCRIPT_DIR/yaml.py" "$CLAUDE_DIR/omg-runtime/yaml.py"
1198
1202
 
1199
1203
  [[ "$CLAUDE_DIR/omg-runtime" == "$CLAUDE_DIR"* ]] || { echo "ERROR: rm -rf target outside expected directory: $CLAUDE_DIR/omg-runtime" >&2; exit 1; }
1200
1204
  find "$CLAUDE_DIR/omg-runtime" -name "__pycache__" -type d -exec rm -rf {} + 2>/dev/null || true
@@ -1204,10 +1208,12 @@ run_install_like() {
1204
1208
  mkdir -p "$CLAUDE_DIR/omg-runtime/scripts"
1205
1209
  cp "$SCRIPT_DIR/scripts/omg.py" "$CLAUDE_DIR/omg-runtime/scripts/omg.py"
1206
1210
  [[ "$CLAUDE_DIR/omg-runtime/runtime" == "$CLAUDE_DIR"* ]] || { echo "ERROR: rm -rf target outside expected directory: $CLAUDE_DIR/omg-runtime/runtime" >&2; exit 1; }
1207
- rm -rf "$CLAUDE_DIR/omg-runtime/runtime" "$CLAUDE_DIR/omg-runtime/hooks" "$CLAUDE_DIR/omg-runtime/lab"
1211
+ rm -rf "$CLAUDE_DIR/omg-runtime/runtime" "$CLAUDE_DIR/omg-runtime/hooks" "$CLAUDE_DIR/omg-runtime/lab" "$CLAUDE_DIR/omg-runtime/plugins" "$CLAUDE_DIR/omg-runtime/yaml.py"
1208
1212
  cp -R "$SCRIPT_DIR/runtime" "$CLAUDE_DIR/omg-runtime/"
1209
1213
  cp -R "$SCRIPT_DIR/hooks" "$CLAUDE_DIR/omg-runtime/"
1210
1214
  cp -R "$SCRIPT_DIR/lab" "$CLAUDE_DIR/omg-runtime/"
1215
+ cp -R "$SCRIPT_DIR/plugins" "$CLAUDE_DIR/omg-runtime/"
1216
+ cp "$SCRIPT_DIR/yaml.py" "$CLAUDE_DIR/omg-runtime/yaml.py"
1211
1217
  [[ "$CLAUDE_DIR/omg-runtime" == "$CLAUDE_DIR"* ]] || { echo "ERROR: rm -rf target outside expected directory: $CLAUDE_DIR/omg-runtime" >&2; exit 1; }
1212
1218
  find "$CLAUDE_DIR/omg-runtime" -name "__pycache__" -type d -exec rm -rf {} + 2>/dev/null || true
1213
1219
  find "$CLAUDE_DIR/omg-runtime" -name "*.pyc" -delete 2>/dev/null || true
@@ -0,0 +1,92 @@
1
+ ---
2
+ title: OMG Production Control Plane
3
+ version: 2.0.4
4
+ canonical_hosts:
5
+ - claude
6
+ - codex
7
+ status: active
8
+ ---
9
+
10
+ # OMG Production Control Plane
11
+
12
+ `OMG_COMPAT_CONTRACT.md` is the normative human-readable contract for OMG capability bundles. Machine-readable manifests in `registry/bundles/` are executable inputs and must remain version-locked to this document.
13
+
14
+ ## metadata
15
+
16
+ Every bundle must declare `id`, `kind`, `version`, `title`, `description`, `hosts`, and `assets`.
17
+
18
+ ## invocation_policy
19
+
20
+ Every bundle must declare whether it is user invocable, model invocable, and whether implicit invocation is allowed. Production bundles default to explicit invocation only.
21
+
22
+ ## tool_policy
23
+
24
+ Every bundle must declare `side_effect_level` and host-specific allowed tools. Production policy protects `.omg/`, `.agents/`, `.codex/`, and `.claude/` as control-plane state.
25
+
26
+ ## lifecycle_hooks
27
+
28
+ Canonical OMG events:
29
+
30
+ - `SessionStart`
31
+ - `SessionEnd`
32
+ - `PreToolUse`
33
+ - `PostToolUse`
34
+ - `PostToolUseFailure`
35
+ - `Stop`
36
+ - `PreCompact`
37
+ - `ConfigChange`
38
+ - `WorktreeCreate`
39
+ - `WorktreeRemove`
40
+ - `SubagentStart`
41
+ - `SubagentStop`
42
+ - `TaskCompleted`
43
+
44
+ Hosts compile native events where available and emulate the rest with OMG runtime wrappers.
45
+
46
+ ## mcp_contract
47
+
48
+ Bundles may declare MCP servers, prompts, resources, and server instructions. `omg-control` is the primary stdio server. HTTP control-plane exposure is loopback-only and not a production launch dependency.
49
+
50
+ ## lsp_contract
51
+
52
+ LSP packs declare supported languages, diagnostics expectations, and evidence outputs for post-edit checks.
53
+
54
+ ## evidence_outputs
55
+
56
+ Bundles declare reproducible evidence artifacts under `.omg/evidence/` or `.omg/state/`. Release-ready bundles must emit deterministic outputs suitable for CI drift checks.
57
+
58
+ ## execution_contract
59
+
60
+ Supported execution modes:
61
+
62
+ - `embedded`
63
+ - `local_supervisor`
64
+ - `automation`
65
+ - `ephemeral_worktree`
66
+
67
+ `local_supervisor` means a same-machine orchestrator driving Claude and Codex workers through local CLI or stdio MCP integration. Remote multi-tenant control planes are out of scope for this version.
68
+
69
+ ## host_compilation_rules
70
+
71
+ Claude outputs compile to:
72
+
73
+ - `.claude-plugin/plugin.json`
74
+ - `.claude-plugin/marketplace.json`
75
+ - `.mcp.json`
76
+ - generated hook configuration consumed by `settings.json`
77
+
78
+ Codex outputs compile to:
79
+
80
+ - `.agents/skills/omg/<bundle>/SKILL.md`
81
+ - `.agents/skills/omg/<bundle>/openai.yaml`
82
+ - generated Codex MCP and rule fragments under `.agents/skills/omg/`
83
+
84
+ ## roadmap_extensions
85
+
86
+ The contract reserves compilation anchors for:
87
+
88
+ - `omg.skill-compiler`
89
+ - `omg.hook-governor`
90
+ - `omg.mcp-fabric`
91
+ - `omg.lsp-pack`
92
+ - `omg.secure-worktree-pipeline`
package/README.md CHANGED
@@ -1,25 +1,36 @@
1
- # OMG 2.0.2
1
+ # OMG 2.0.4
2
2
 
3
3
  [![Compat Gate](https://github.com/trac3er00/OMG/actions/workflows/omg-compat-gate.yml/badge.svg)](https://github.com/trac3er00/OMG/actions/workflows/omg-compat-gate.yml)
4
4
  [![npm version](https://img.shields.io/npm/v/%40trac3er%2Foh-my-god)](https://www.npmjs.com/package/@trac3er/oh-my-god)
5
5
  [![License](https://img.shields.io/github/license/trac3er00/OMG)](LICENSE)
6
6
 
7
- OMG upgrades your agent host instead of replacing it. It gives Claude Code, Codex, OpenCode, and other supported CLIs a tighter setup flow, stronger orchestration, native adoption from older plugin stacks, and proof-backed verification.
7
+ OMG upgrades your agent host instead of replacing it. It gives Claude Code, Codex, and other supported CLIs a tighter setup flow, stronger orchestration, native adoption from older plugin stacks, and proof-backed verification.
8
8
 
9
9
  - Brand: `OMG`
10
10
  - Repo: `https://github.com/trac3er00/OMG`
11
11
  - npm: `@trac3er/oh-my-god`
12
12
  - Plugin id: `omg`
13
13
  - Marketplace id: `omg`
14
- - Version: `2.0.2`
14
+ - Version: `2.0.4`
15
15
 
16
16
  ## Why OMG
17
17
 
18
18
  - Small front door: install, run `/OMG:setup`, then `/OMG:crazy <goal>`.
19
- - Multi-host support: Claude Code, Codex, OpenCode, Gemini CLI, and Kimi CLI.
19
+ - Multi-host support: Claude Code, Codex, Gemini CLI, and Kimi CLI.
20
20
  - Native adoption: setup detects OMC, OMX, and Superpowers-style environments without exposing copycat public migration commands.
21
21
  - Proof-first delivery: verification, provider coverage, HUD artifacts, and transcripts are published instead of implied.
22
22
 
23
+ ## Canonical Contract
24
+
25
+ OMG now ships a production control-plane contract and generated host artifacts.
26
+
27
+ - Normative spec: `OMG_COMPAT_CONTRACT.md`
28
+ - Executable registry: `registry/omg-capability.schema.json` and `registry/bundles/*.yaml`
29
+ - Generated Codex pack: `.agents/skills/omg/`
30
+ - Validation: `python3 scripts/omg.py contract validate`
31
+ - Compilation: `python3 scripts/omg.py contract compile --host claude --host codex --channel public`
32
+ - Release gate: `python3 scripts/omg.py release readiness --channel dual`
33
+
23
34
  ![OMG HUD](docs/assets/omg-hud.svg)
24
35
 
25
36
  ## Quickstart
@@ -50,6 +61,7 @@ Success looks like:
50
61
 
51
62
  - supported hosts are detected
52
63
  - `.mcp.json` is configured
64
+ - `.mcp.json` includes both `omg-memory` and stdio `omg-control`
53
65
  - `.omg/state/adoption-report.json` is written when another ecosystem is present
54
66
  - OMG reports the selected preset and next step
55
67
 
@@ -57,8 +69,6 @@ Success looks like:
57
69
 
58
70
  - Claude Code: [docs/install/claude-code.md](docs/install/claude-code.md)
59
71
  - Codex: [docs/install/codex.md](docs/install/codex.md)
60
- - OpenCode: [docs/install/opencode.md](docs/install/opencode.md)
61
-
62
72
  ## Native Adoption
63
73
 
64
74
  OMG uses native setup language instead of public migration commands.
@@ -67,11 +77,17 @@ OMG uses native setup language instead of public migration commands.
67
77
  - `coexist`: advanced. OMG preserves non-conflicting third-party surfaces and records overlap instead of overwriting it.
68
78
  - Presets: `safe`, `balanced`, `interop`, `labs`.
69
79
 
80
+ ## Security Notes
81
+
82
+ - The shipped `safe` preset now registers pre-tool security hooks before the planning helper.
83
+ - `Bash` requests are screened by `firewall.py`, and file reads or edits are screened by `secret-guard.py`.
84
+ - Raw environment dumps, interpreters, and permission-changing commands such as `env`, `node`, `python`, `python3`, `chmod`, and `chown` now require approval instead of being silently allowed.
85
+
70
86
  Compatibility references to OMC, OMX, and Superpowers are documented here: [docs/migration/native-adoption.md](docs/migration/native-adoption.md)
71
87
 
72
88
  ## Proof
73
89
 
74
- Current local verification for this release: `2452 passed, 2 skipped` on March 6, 2026.
90
+ Current local verification for this release: `2466 passed, 2 skipped` on March 7, 2026.
75
91
 
76
92
  - Verification and provider matrix: [docs/proof.md](docs/proof.md)
77
93
  - Sample setup transcript: [docs/transcripts/setup.md](docs/transcripts/setup.md)
@@ -87,11 +103,13 @@ Primary entry points:
87
103
 
88
104
  Advanced surfaces stay available for deeper workflows:
89
105
 
106
+ - `/OMG:security-check`
107
+ - `/OMG:api-twin`
108
+ - `/OMG:preflight`
90
109
  - `/OMG:teams`
91
110
  - `/OMG:ccg`
92
111
  - `/OMG:compat`
93
112
  - `/OMG:ship`
94
- - `/OMG:security-review`
95
113
 
96
114
  ## Contributing
97
115
 
package/SECURITY.md CHANGED
@@ -23,3 +23,9 @@ Include:
23
23
  ## Supported Versions
24
24
 
25
25
  Security fixes are prioritized for the latest released version.
26
+
27
+ ## Maintainer Notes
28
+
29
+ - The shipped `safe` preset is expected to enforce pre-tool security hooks before helper hooks run.
30
+ - `firewall.py` should screen `Bash` usage and `secret-guard.py` should screen `Read`, `Write`, `Edit`, and `MultiEdit`.
31
+ - Sensitive shell commands such as raw `env` dumps, interpreter entry points, and direct permission changes should require approval in the `safe` preset rather than being silently allowed.
@@ -0,0 +1,22 @@
1
+ ---
2
+ description: "Contract replay and fixture-based API simulation with fidelity tracking and live verification requirements."
3
+ allowed-tools: Read, Write, Edit, MultiEdit, Grep, Glob, Bash(python3:*), Bash(rg:*)
4
+ argument-hint: "[ingest|record|serve|verify]"
5
+ ---
6
+
7
+ # /OMG:api-twin — Contract Replay
8
+
9
+ Build a local API twin from contracts and recorded fixtures without treating simulation as final proof.
10
+
11
+ ## Verbs
12
+
13
+ - `ingest`: load OpenAPI, Swagger, Postman, or example JSON into OMG state
14
+ - `record`: store approved request/response fixtures and tag fidelity
15
+ - `serve`: replay a fixture locally with optional latency, failure, or schema drift
16
+ - `verify`: compare a twin fixture against a live response before release proof
17
+
18
+ ## Rules
19
+
20
+ - every fixture carries a fidelity tag such as `schema-only`, `recorded`, `recorded-validated`, or `stale`
21
+ - simulated endpoints are useful for development, not release signoff
22
+ - release proof still requires a final live verification pass
@@ -0,0 +1,26 @@
1
+ ---
2
+ description: "Structured OMG router that classifies risk, selects the right route, and emits an execution/evidence plan."
3
+ allowed-tools: Read, Grep, Glob, Bash(python3:*), Bash(rg:*)
4
+ argument-hint: "\"<goal>\""
5
+ ---
6
+
7
+ # /OMG:preflight — Structured Router
8
+
9
+ Use `preflight` when the goal is clear but the safest execution route is not.
10
+
11
+ ## Output Contract
12
+
13
+ - restated goal
14
+ - task class
15
+ - risk class
16
+ - recommended route
17
+ - required tools and MCPs
18
+ - missing constraints
19
+ - evidence requirements
20
+
21
+ ## Typical Routes
22
+
23
+ - `security-check` for security-sensitive or trust-bound work
24
+ - `api-twin` for contract replay and offline integration work
25
+ - `crazy` for parallel execution
26
+ - `teams` for targeted model routing
@@ -0,0 +1,28 @@
1
+ ---
2
+ description: "Canonical OMG security pipeline with normalized findings, dependency enrichment, and untrusted-content evidence."
3
+ allowed-tools: Read, Grep, Glob, Bash(python3:*), Bash(pytest:*), Bash(rg:*)
4
+ argument-hint: "[path or '.' for the current project]"
5
+ ---
6
+
7
+ # /OMG:security-check — Canonical Security Pipeline
8
+
9
+ Run OMG's canonical security pipeline against the current project or a scoped path.
10
+
11
+ ## Usage
12
+
13
+ ```text
14
+ /OMG:security-check
15
+ /OMG:security-check .
16
+ /OMG:security-check app/
17
+ ```
18
+
19
+ ## What It Produces
20
+
21
+ - normalized findings across policy, Python AST checks, and dependency health
22
+ - evidence-ready provenance and trust scores
23
+ - a structured result that can be reused by `ship`, the control plane, and the OMG MCP
24
+
25
+ ## Notes
26
+
27
+ - Use this for auth, secrets, untrusted-content, or dependency-risk work.
28
+ - `omg secure --command ...` remains the low-level command-risk primitive, not the full audit surface.
@@ -10,7 +10,7 @@ Feature-gated: requires `OMG_SETUP_ENABLED=1` or `settings.json._omg.features.SE
10
10
 
11
11
  ## Overview
12
12
 
13
- Native OMG setup for Claude Code, Codex, OpenCode, and other supported CLIs.
13
+ Native OMG setup for Claude Code, Codex, and other supported CLIs.
14
14
  The command keeps migration logic internal and focuses the user on a small adoption flow:
15
15
 
16
16
  1. Detect supported CLIs.
@@ -25,7 +25,6 @@ The command keeps migration logic internal and focuses the user on a small adopt
25
25
  Step 1: Detect CLIs
26
26
  - codex
27
27
  - gemini
28
- - opencode
29
28
  - kimi
30
29
 
31
30
  Step 2: Detect adoption context
@@ -0,0 +1,5 @@
1
+ # OMG Codex Protection Rules
2
+
3
+ - Channel: `enterprise`
4
+ - Protect `.omg/`, `.agents/`, `.codex/`, and `.claude/` from unreviewed mutation.
5
+ - Require explicit invocation for production-control-plane skills.
@@ -0,0 +1,4 @@
1
+ [mcp_servers.omg-control]
2
+ command = "python3"
3
+ args = ["-m", "runtime.omg_mcp_server"]
4
+
@@ -0,0 +1,11 @@
1
+ ---
2
+ name: omg-control-plane
3
+ description: "Canonical production control plane bundle for Claude and Codex."
4
+ ---
5
+
6
+ # OMG Control Plane
7
+
8
+ - Channel: `enterprise`
9
+ - Execution modes: `embedded, local_supervisor`
10
+ - MCP servers: `omg-control, omg-memory`
11
+ - Evidence outputs: `.omg/evidence/control-plane-compile.json`
@@ -0,0 +1,14 @@
1
+ name: omg-control-plane
2
+ description: "Canonical production control plane bundle for Claude and Codex."
3
+ allow_implicit_invocation: false
4
+ metadata:
5
+ channel: enterprise
6
+ bundle_id: control-plane
7
+ title: "OMG Control Plane"
8
+ mcp_servers:
9
+ - omg-control
10
+ - omg-memory
11
+ allowed_tools:
12
+ - "Read"
13
+ - "Grep"
14
+ - "Bash(python3:*)"
@@ -0,0 +1,11 @@
1
+ ---
2
+ name: omg-hook-governor
3
+ description: "Canonical hook ordering, policy reinjection, and protected-path governance."
4
+ ---
5
+
6
+ # OMG Hook Governor
7
+
8
+ - Channel: `enterprise`
9
+ - Execution modes: `embedded, local_supervisor`
10
+ - MCP servers: `omg-control`
11
+ - Evidence outputs: `.omg/state/ledger/tool-ledger.jsonl`
@@ -0,0 +1,11 @@
1
+ name: omg-hook-governor
2
+ description: "Canonical hook ordering, policy reinjection, and protected-path governance."
3
+ allow_implicit_invocation: true
4
+ metadata:
5
+ channel: enterprise
6
+ bundle_id: hook-governor
7
+ title: "OMG Hook Governor"
8
+ mcp_servers:
9
+ - omg-control
10
+ allowed_tools:
11
+ - "Read"
@@ -0,0 +1,11 @@
1
+ ---
2
+ name: omg-lsp-pack
3
+ description: "Optional LSP-backed diagnostics and navigation bundle for production verification."
4
+ ---
5
+
6
+ # OMG LSP Pack
7
+
8
+ - Channel: `enterprise`
9
+ - Execution modes: `embedded, local_supervisor`
10
+ - MCP servers: `omg-control`
11
+ - Evidence outputs: `.omg/evidence/lsp-diagnostics.json`