@trac3er/oh-my-god 1.0.2
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/.claude-plugin/marketplace.json +36 -0
- package/.claude-plugin/plugin.json +23 -0
- package/.claude-plugin/scripts/install.sh +49 -0
- package/.claude-plugin/scripts/uninstall.sh +80 -0
- package/.claude-plugin/scripts/update.sh +84 -0
- package/.mcp.json +20 -0
- package/LICENSE +21 -0
- package/OMG-setup.sh +1093 -0
- package/README.md +335 -0
- package/THIRD_PARTY_NOTICES.md +24 -0
- package/UPSTREAM_DIFF.md +20 -0
- package/agents/__init__.py +1 -0
- package/agents/_model_roles.yaml +26 -0
- package/agents/designer.md +67 -0
- package/agents/explore.md +60 -0
- package/agents/model_roles.py +196 -0
- package/agents/omg-api-builder.md +23 -0
- package/agents/omg-architect-mode.md +43 -0
- package/agents/omg-architect.md +13 -0
- package/agents/omg-backend-engineer.md +43 -0
- package/agents/omg-critic.md +16 -0
- package/agents/omg-database-engineer.md +43 -0
- package/agents/omg-escalation-router.md +17 -0
- package/agents/omg-executor.md +12 -0
- package/agents/omg-frontend-designer.md +42 -0
- package/agents/omg-implement-mode.md +50 -0
- package/agents/omg-infra-engineer.md +43 -0
- package/agents/omg-qa-tester.md +16 -0
- package/agents/omg-research-mode.md +43 -0
- package/agents/omg-security-auditor.md +43 -0
- package/agents/omg-testing-engineer.md +43 -0
- package/agents/plan.md +80 -0
- package/agents/quick_task.md +64 -0
- package/agents/reviewer.md +83 -0
- package/agents/task.md +71 -0
- package/commands/OMG:ccg.md +22 -0
- package/commands/OMG:compat.md +57 -0
- package/commands/OMG:crazy.md +125 -0
- package/commands/OMG:domain-init.md +11 -0
- package/commands/OMG:escalate.md +52 -0
- package/commands/OMG:health-check.md +45 -0
- package/commands/OMG:init.md +134 -0
- package/commands/OMG:mode.md +44 -0
- package/commands/OMG:project-init.md +11 -0
- package/commands/OMG:ralph-start.md +43 -0
- package/commands/OMG:ralph-stop.md +23 -0
- package/commands/OMG:teams.md +39 -0
- package/commands/ai-commit.md +113 -0
- package/commands/ccg.md +9 -0
- package/commands/create-agent.md +183 -0
- package/commands/omc-teams.md +9 -0
- package/commands/session-branch.md +85 -0
- package/commands/session-fork.md +53 -0
- package/commands/session-merge.md +134 -0
- package/commands/theme.md +44 -0
- package/config/lsp_languages.yaml +324 -0
- package/config/themes/catppuccin-frappe.yaml +14 -0
- package/config/themes/catppuccin-latte.yaml +14 -0
- package/config/themes/catppuccin-macchiato.yaml +14 -0
- package/config/themes/catppuccin-mocha.yaml +14 -0
- package/config/themes/dracula.yaml +14 -0
- package/config/themes/gruvbox-dark.yaml +14 -0
- package/config/themes/nord.yaml +14 -0
- package/config/themes/one-dark.yaml +14 -0
- package/config/themes/solarized-dark.yaml +14 -0
- package/config/themes/tokyo-night.yaml +14 -0
- package/control_plane/__init__.py +2 -0
- package/control_plane/openapi.yaml +109 -0
- package/control_plane/server.py +107 -0
- package/control_plane/service.py +148 -0
- package/crates/omg-natives/Cargo.toml +17 -0
- package/crates/omg-natives/src/clipboard.rs +5 -0
- package/crates/omg-natives/src/glob.rs +15 -0
- package/crates/omg-natives/src/grep.rs +15 -0
- package/crates/omg-natives/src/highlight.rs +15 -0
- package/crates/omg-natives/src/html.rs +14 -0
- package/crates/omg-natives/src/image.rs +5 -0
- package/crates/omg-natives/src/keys.rs +5 -0
- package/crates/omg-natives/src/lib.rs +36 -0
- package/crates/omg-natives/src/prof.rs +5 -0
- package/crates/omg-natives/src/ps.rs +5 -0
- package/crates/omg-natives/src/shell.rs +5 -0
- package/crates/omg-natives/src/task.rs +5 -0
- package/crates/omg-natives/src/text.rs +14 -0
- package/hooks/_agent_registry.py +421 -0
- package/hooks/_budget.py +31 -0
- package/hooks/_common.py +476 -0
- package/hooks/_learnings.py +126 -0
- package/hooks/_memory.py +103 -0
- package/hooks/circuit-breaker.py +270 -0
- package/hooks/config-guard.py +163 -0
- package/hooks/context_pressure.py +53 -0
- package/hooks/credential_store.py +801 -0
- package/hooks/fetch-rate-limits.py +212 -0
- package/hooks/firewall.py +48 -0
- package/hooks/hashline-formatter-bridge.py +224 -0
- package/hooks/hashline-injector.py +273 -0
- package/hooks/hashline-validator.py +216 -0
- package/hooks/idle-detector.py +95 -0
- package/hooks/intentgate-keyword-detector.py +188 -0
- package/hooks/magic-keyword-router.py +195 -0
- package/hooks/policy_engine.py +310 -0
- package/hooks/post-tool-failure.py +19 -0
- package/hooks/post-write.py +199 -0
- package/hooks/pre-compact.py +204 -0
- package/hooks/pre-tool-inject.py +98 -0
- package/hooks/prompt-enhancer.py +672 -0
- package/hooks/quality-runner.py +191 -0
- package/hooks/secret-guard.py +47 -0
- package/hooks/session-end-capture.py +137 -0
- package/hooks/session-start.py +275 -0
- package/hooks/shadow_manager.py +297 -0
- package/hooks/state_migration.py +209 -0
- package/hooks/stop-gate.py +7 -0
- package/hooks/stop_dispatcher.py +929 -0
- package/hooks/test-validator.py +138 -0
- package/hooks/todo-state-tracker.py +114 -0
- package/hooks/tool-ledger.py +126 -0
- package/hooks/trust_review.py +524 -0
- package/install.sh +9 -0
- package/omg_natives/__init__.py +186 -0
- package/omg_natives/_bindings.py +165 -0
- package/omg_natives/clipboard.py +36 -0
- package/omg_natives/glob.py +42 -0
- package/omg_natives/grep.py +61 -0
- package/omg_natives/highlight.py +54 -0
- package/omg_natives/html.py +157 -0
- package/omg_natives/image.py +51 -0
- package/omg_natives/keys.py +46 -0
- package/omg_natives/prof.py +39 -0
- package/omg_natives/ps.py +93 -0
- package/omg_natives/shell.py +58 -0
- package/omg_natives/task.py +41 -0
- package/omg_natives/text.py +50 -0
- package/package.json +26 -0
- package/plugins/README.md +82 -0
- package/plugins/advanced/commands/OMG:code-review.md +114 -0
- package/plugins/advanced/commands/OMG:deep-plan.md +221 -0
- package/plugins/advanced/commands/OMG:handoff.md +115 -0
- package/plugins/advanced/commands/OMG:learn.md +110 -0
- package/plugins/advanced/commands/OMG:maintainer.md +31 -0
- package/plugins/advanced/commands/OMG:ralph-start.md +43 -0
- package/plugins/advanced/commands/OMG:ralph-stop.md +23 -0
- package/plugins/advanced/commands/OMG:security-review.md +119 -0
- package/plugins/advanced/commands/OMG:sequential-thinking.md +20 -0
- package/plugins/advanced/commands/OMG:ship.md +46 -0
- package/plugins/advanced/plugin.json +96 -0
- package/plugins/core/plugin.json +82 -0
- package/pytest.ini +5 -0
- package/registry/__init__.py +1 -0
- package/registry/verify_artifact.py +90 -0
- package/rules/contextual/architect-mode.md +9 -0
- package/rules/contextual/big-picture.md +20 -0
- package/rules/contextual/code-hygiene.md +26 -0
- package/rules/contextual/context-management.md +19 -0
- package/rules/contextual/context-minimization.md +32 -0
- package/rules/contextual/ddd-sdd.md +28 -0
- package/rules/contextual/dependency-safety.md +16 -0
- package/rules/contextual/doc-check.md +13 -0
- package/rules/contextual/implement-mode.md +9 -0
- package/rules/contextual/infra-safety.md +14 -0
- package/rules/contextual/outside-in.md +13 -0
- package/rules/contextual/persistent-mode.md +24 -0
- package/rules/contextual/research-mode.md +9 -0
- package/rules/contextual/security-domains.md +25 -0
- package/rules/contextual/vision-detection.md +27 -0
- package/rules/contextual/web-search.md +25 -0
- package/rules/contextual/write-verify.md +23 -0
- package/rules/core/00-truth.md +20 -0
- package/rules/core/01-surgical.md +19 -0
- package/rules/core/02-circuit-breaker.md +22 -0
- package/rules/core/03-ensemble.md +28 -0
- package/rules/core/04-testing.md +30 -0
- package/runtime/__init__.py +32 -0
- package/runtime/adapters/__init__.py +13 -0
- package/runtime/adapters/claude.py +60 -0
- package/runtime/adapters/gpt.py +53 -0
- package/runtime/adapters/local.py +53 -0
- package/runtime/business_workflow.py +220 -0
- package/runtime/compat.py +1299 -0
- package/runtime/custom_agent_loader.py +366 -0
- package/runtime/dispatcher.py +47 -0
- package/runtime/ecosystem.py +371 -0
- package/runtime/legacy_compat.py +7 -0
- package/runtime/omc_compat.py +7 -0
- package/runtime/omc_contract_snapshot.json +916 -0
- package/runtime/omg_compat_contract_snapshot.json +916 -0
- package/runtime/subagent_dispatcher.py +362 -0
- package/runtime/team_router.py +838 -0
- package/scripts/check-omc-contract-snapshot.py +12 -0
- package/scripts/check-omg-compat-contract-snapshot.py +137 -0
- package/scripts/check-omg-standalone-clean.py +102 -0
- package/scripts/legacy_to_omg_migrate.py +29 -0
- package/scripts/migrate-omc.py +464 -0
- package/scripts/omc_to_omg_migrate.py +12 -0
- package/scripts/omg.py +493 -0
- package/scripts/settings-merge.py +224 -0
- package/scripts/verify-no-omc.sh +5 -0
- package/scripts/verify-standalone.sh +21 -0
- package/templates/idea.yml +30 -0
- package/templates/policy.yaml +15 -0
- package/templates/profile.yaml +25 -0
- package/templates/runtime.yaml +12 -0
- package/templates/working-memory.md +17 -0
- package/tools/__init__.py +2 -0
- package/tools/browser_consent.py +289 -0
- package/tools/browser_stealth.py +481 -0
- package/tools/browser_tool.py +448 -0
- package/tools/changelog_generator.py +268 -0
- package/tools/commit_splitter.py +361 -0
- package/tools/config_discovery.py +151 -0
- package/tools/config_merger.py +449 -0
- package/tools/git_inspector.py +298 -0
- package/tools/lsp_client.py +275 -0
- package/tools/lsp_discovery.py +231 -0
- package/tools/lsp_operations.py +392 -0
- package/tools/python_repl.py +656 -0
- package/tools/python_sandbox.py +609 -0
- package/tools/search_providers/__init__.py +77 -0
- package/tools/search_providers/brave.py +115 -0
- package/tools/search_providers/exa.py +116 -0
- package/tools/search_providers/jina.py +104 -0
- package/tools/search_providers/perplexity.py +139 -0
- package/tools/search_providers/synthetic.py +74 -0
- package/tools/session_snapshot.py +736 -0
- package/tools/ssh_manager.py +912 -0
- package/tools/theme_engine.py +294 -0
- package/tools/theme_selector.py +137 -0
- package/tools/web_search.py +622 -0
package/README.md
ADDED
|
@@ -0,0 +1,335 @@
|
|
|
1
|
+
# OAL v1.0.2
|
|
2
|
+
|
|
3
|
+
OAL (Orchestration Abstraction Layer) is a standalone orchestration layer for Claude Code.
|
|
4
|
+
It adds structured multi-agent workflows, intelligent model routing (Claude/Codex/Gemini), and durable session state for long-running engineering tasks.
|
|
5
|
+
|
|
6
|
+
- Version: `v1.0.2`
|
|
7
|
+
- Maintainer: `trac3er00`
|
|
8
|
+
- Repo: `git@github.com:trac3er00/OAL.git`
|
|
9
|
+
- Release: `https://github.com/trac3er00/OAL/releases/tag/v1.0.2`
|
|
10
|
+
|
|
11
|
+
## What OAL Solves
|
|
12
|
+
|
|
13
|
+
OAL is built for teams and solo developers who want:
|
|
14
|
+
|
|
15
|
+
- Reliable execution loops (explore -> decide -> implement -> verify)
|
|
16
|
+
- Strong verification discipline (no unverified completion claims)
|
|
17
|
+
- Better model delegation for backend, frontend, security, and architecture tasks
|
|
18
|
+
- Session continuity across long refactors and multi-day work
|
|
19
|
+
|
|
20
|
+
## Core Capabilities
|
|
21
|
+
|
|
22
|
+
- Multi-agent orchestration with role-specific agents
|
|
23
|
+
- Dynamic routing to Codex and Gemini for domain-specific tasks
|
|
24
|
+
- Failure tracking and escalation after repeated unsuccessful attempts
|
|
25
|
+
- Command surface for planning, review, security, handoff, and execution modes
|
|
26
|
+
- Context minimization and selective knowledge injection to reduce prompt noise
|
|
27
|
+
|
|
28
|
+
## At a Glance
|
|
29
|
+
|
|
30
|
+
- Hooks: 27 Python hooks
|
|
31
|
+
- Core rules: 5
|
|
32
|
+
- Contextual rules: 17
|
|
33
|
+
- Agents: 15
|
|
34
|
+
- Commands: 10 core + 10 advanced (+ compatibility aliases)
|
|
35
|
+
|
|
36
|
+
## Requirements
|
|
37
|
+
|
|
38
|
+
- Python `3.8+`
|
|
39
|
+
- Claude Code with write access to `~/.claude`
|
|
40
|
+
|
|
41
|
+
## Installation
|
|
42
|
+
|
|
43
|
+
### Standard install
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
chmod +x OAL-setup.sh
|
|
47
|
+
./OAL-setup.sh install
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Plugin-oriented install (recommended)
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
./OAL-setup.sh install --install-as-plugin
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### Update
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
./OAL-setup.sh update
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Uninstall
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
./OAL-setup.sh uninstall
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Common flags
|
|
69
|
+
|
|
70
|
+
Supported by `OAL-setup.sh`:
|
|
71
|
+
|
|
72
|
+
- `--fresh` clean reinstall before install/update
|
|
73
|
+
- `--symlink` development mode with live updates from repo source
|
|
74
|
+
- `--install-as-plugin` install plugin bundle (plugin manifest + MCP + HUD)
|
|
75
|
+
- `--dry-run` preview changes without writing files
|
|
76
|
+
- `--non-interactive` skip prompts (CI/automation)
|
|
77
|
+
- `--merge-policy=ask|apply|skip` control settings merge behavior
|
|
78
|
+
|
|
79
|
+
## Plugin Update Behavior
|
|
80
|
+
|
|
81
|
+
If OAL is installed through Claude Code plugin flow (`/plugin`), update works like this:
|
|
82
|
+
|
|
83
|
+
- Claude plugin update triggers `.claude-plugin/scripts/update.sh`
|
|
84
|
+
- In git-backed installs, update stashes local changes (if needed) and pulls from `origin/main`
|
|
85
|
+
- When a git tag is available, plugin manifests are synced to the tagged version
|
|
86
|
+
- In cache/copy installs, update delegates to `OAL-setup.sh update`
|
|
87
|
+
|
|
88
|
+
If plugin update appears silent, check:
|
|
89
|
+
|
|
90
|
+
- `~/.claude/plugins/known_marketplaces.json` has git source for `oh-advanced-layer`
|
|
91
|
+
- `~/.claude/plugins/cache/oh-advanced-layer/oal/<version>/.claude-plugin/plugin.json` is valid schema
|
|
92
|
+
- update script exists and is executable
|
|
93
|
+
|
|
94
|
+
## Quick Start in Claude Code
|
|
95
|
+
|
|
96
|
+
After install, from your target project directory:
|
|
97
|
+
|
|
98
|
+
```text
|
|
99
|
+
/OAL:init
|
|
100
|
+
/OAL:health-check
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Common flows:
|
|
104
|
+
|
|
105
|
+
```text
|
|
106
|
+
/OAL:mode implement
|
|
107
|
+
/OAL:escalate codex "debug auth middleware"
|
|
108
|
+
/OAL:crazy fix flaky tests in payment module
|
|
109
|
+
/OAL:handoff
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## Command Groups
|
|
113
|
+
|
|
114
|
+
### Core commands
|
|
115
|
+
|
|
116
|
+
- `/OAL:init`
|
|
117
|
+
- `/OAL:project-init`
|
|
118
|
+
- `/OAL:domain-init`
|
|
119
|
+
- `/OAL:health-check`
|
|
120
|
+
- `/OAL:mode`
|
|
121
|
+
- `/OAL:escalate`
|
|
122
|
+
- `/OAL:teams`
|
|
123
|
+
- `/OAL:ccg`
|
|
124
|
+
- `/OAL:crazy`
|
|
125
|
+
- `/OAL:compat`
|
|
126
|
+
|
|
127
|
+
### Advanced commands
|
|
128
|
+
|
|
129
|
+
- `/OAL:deep-plan`
|
|
130
|
+
- `/OAL:learn`
|
|
131
|
+
- `/OAL:code-review`
|
|
132
|
+
- `/OAL:security-review`
|
|
133
|
+
- `/OAL:ship`
|
|
134
|
+
- `/OAL:maintainer`
|
|
135
|
+
- `/OAL:handoff`
|
|
136
|
+
- `/OAL:sequential-thinking`
|
|
137
|
+
- `/OAL:ralph-start`
|
|
138
|
+
- `/OAL:ralph-stop`
|
|
139
|
+
- `/OAL:theme`
|
|
140
|
+
|
|
141
|
+
## Agent Routing Model
|
|
142
|
+
|
|
143
|
+
OAL dispatches by domain intent:
|
|
144
|
+
|
|
145
|
+
- Codex path: backend logic, debugging, algorithms, security-sensitive implementation
|
|
146
|
+
- Gemini path: UI/UX, layout, visual refinements, accessibility-oriented frontend work
|
|
147
|
+
- Claude path: orchestration, synthesis, review loops, and fallback execution
|
|
148
|
+
|
|
149
|
+
## Cognitive Modes
|
|
150
|
+
|
|
151
|
+
Set an explicit operating mode per session:
|
|
152
|
+
|
|
153
|
+
```text
|
|
154
|
+
/OAL:mode research
|
|
155
|
+
/OAL:mode architect
|
|
156
|
+
/OAL:mode implement
|
|
157
|
+
/OAL:mode clear
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
Modes are persisted to `.oal/state/mode.txt`.
|
|
161
|
+
|
|
162
|
+
## Verification and Safety
|
|
163
|
+
|
|
164
|
+
OAL enforces practical completion gates:
|
|
165
|
+
|
|
166
|
+
- Prevents unverified completion claims
|
|
167
|
+
- Tracks repeated failures and recommends escalation
|
|
168
|
+
- Validates test quality (anti-boilerplate checks)
|
|
169
|
+
- Preserves evidence and handoff state before context compaction
|
|
170
|
+
|
|
171
|
+
Important behavior:
|
|
172
|
+
|
|
173
|
+
- Prefer proof over assumptions
|
|
174
|
+
- Run checks after modifications
|
|
175
|
+
- Keep output tied to observable evidence
|
|
176
|
+
|
|
177
|
+
## Project State Layout
|
|
178
|
+
|
|
179
|
+
After `/OAL:init`, project state is created under `.oal/`:
|
|
180
|
+
|
|
181
|
+
```text
|
|
182
|
+
.oal/
|
|
183
|
+
state/
|
|
184
|
+
profile.yaml
|
|
185
|
+
working-memory.md
|
|
186
|
+
handoff.md
|
|
187
|
+
ledger/
|
|
188
|
+
knowledge/
|
|
189
|
+
trust/
|
|
190
|
+
evidence/
|
|
191
|
+
shadow/
|
|
192
|
+
migrations/
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
## Repository Layout (High Level)
|
|
196
|
+
|
|
197
|
+
```text
|
|
198
|
+
oal/
|
|
199
|
+
hooks/
|
|
200
|
+
rules/
|
|
201
|
+
core/
|
|
202
|
+
contextual/
|
|
203
|
+
agents/
|
|
204
|
+
commands/
|
|
205
|
+
plugins/
|
|
206
|
+
templates/
|
|
207
|
+
runtime/
|
|
208
|
+
scripts/
|
|
209
|
+
OAL-setup.sh
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
## Versioning and Releases
|
|
213
|
+
|
|
214
|
+
Current version: `v1.0.2`
|
|
215
|
+
|
|
216
|
+
Recommended release flow:
|
|
217
|
+
|
|
218
|
+
```bash
|
|
219
|
+
git tag -a v1.0.2 -m "OAL v1.0.2"
|
|
220
|
+
git push origin v1.0.2
|
|
221
|
+
gh release create v1.0.2 --title "OAL v1.0.2" --notes "Release notes"
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
## Compatibility Notes
|
|
225
|
+
|
|
226
|
+
- OAL runs standalone (OMC not required)
|
|
227
|
+
- Legacy migration utilities remain available where needed
|
|
228
|
+
- Works alongside other plugins when command namespaces do not conflict
|
|
229
|
+
|
|
230
|
+
## Troubleshooting
|
|
231
|
+
|
|
232
|
+
### Plugin manifest invalid
|
|
233
|
+
|
|
234
|
+
If Claude reports plugin manifest schema errors:
|
|
235
|
+
|
|
236
|
+
- Keep `.claude-plugin/plugin.json` minimal and schema-compatible
|
|
237
|
+
- Avoid unsupported keys for your Claude Code version
|
|
238
|
+
- Reinstall plugin cache after manifest changes
|
|
239
|
+
|
|
240
|
+
### Plugin update does nothing
|
|
241
|
+
|
|
242
|
+
- Verify marketplace source is git-based (not local directory mode)
|
|
243
|
+
- Verify plugin cache points to correct version directory
|
|
244
|
+
- Run update script manually once to confirm output:
|
|
245
|
+
|
|
246
|
+
```bash
|
|
247
|
+
bash ~/.claude/plugins/cache/oh-advanced-layer/oal/*/.claude-plugin/scripts/update.sh
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
## License
|
|
251
|
+
|
|
252
|
+
MIT
|
|
253
|
+
|
|
254
|
+
## New in v1.1 (Enhancement Release)
|
|
255
|
+
|
|
256
|
+
### Feature Flags
|
|
257
|
+
|
|
258
|
+
All new features are disabled by default. Enable via environment variables or `settings.json`:
|
|
259
|
+
|
|
260
|
+
| Feature | Env Var | Default |
|
|
261
|
+
|---------|---------|---------|
|
|
262
|
+
| IntentGate keyword detection | `OAL_INTENTGATE_ENABLED=1` | Off |
|
|
263
|
+
| Multi-credential store | `OAL_MULTI_CREDENTIAL_ENABLED=1` | Off |
|
|
264
|
+
| Model roles routing | `OAL_MODEL_ROLES_ENABLED=1` | Off |
|
|
265
|
+
| LSP client | `OAL_LSP_ENABLED=1` | Off |
|
|
266
|
+
| Hashline anchors | `OAL_HASHLINE_ENABLED=1` | Off |
|
|
267
|
+
| Python REPL | `OAL_PYTHON_REPL_ENABLED=1` | Off |
|
|
268
|
+
| Web search | `OAL_WEB_SEARCH_ENABLED=1` | Off |
|
|
269
|
+
| Browser automation | `OAL_BROWSER_ENABLED=1` | Off |
|
|
270
|
+
| SSH manager | `OAL_SSH_ENABLED=1` | Off |
|
|
271
|
+
| Themes | `OAL_THEMES_ENABLED=true` | Off |
|
|
272
|
+
| Rust engine | `OAL_RUST_ENGINE_ENABLED=1` | Off |
|
|
273
|
+
|
|
274
|
+
You can also enable features in `settings.json` under `_oal.features`:
|
|
275
|
+
|
|
276
|
+
```json
|
|
277
|
+
{
|
|
278
|
+
"_oal": {
|
|
279
|
+
"features": {
|
|
280
|
+
"THEMES": true,
|
|
281
|
+
"INTENTGATE": true
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
### New Commands
|
|
288
|
+
|
|
289
|
+
- `/OAL:theme` — Interactive theme selector with `--list`, `--preview`, `--set`, and `--auto` modes
|
|
290
|
+
|
|
291
|
+
### New Agents
|
|
292
|
+
|
|
293
|
+
v1.1 ships with expanded agent coverage:
|
|
294
|
+
|
|
295
|
+
- `oal-api-builder` — API scaffolding and endpoint design
|
|
296
|
+
- `oal-architect` — System design and architecture decisions
|
|
297
|
+
- `oal-backend-engineer` — Backend implementation tasks
|
|
298
|
+
- `oal-critic` — Code review and critique
|
|
299
|
+
- `oal-database-engineer` — Schema design and query optimization
|
|
300
|
+
- `oal-escalation-router` — Intelligent escalation to Codex/Gemini
|
|
301
|
+
- `oal-frontend-designer` — UI/UX implementation
|
|
302
|
+
- `oal-infra-engineer` — Infrastructure and DevOps tasks
|
|
303
|
+
- `oal-qa-tester` — Test writing and quality assurance
|
|
304
|
+
- `oal-security-auditor` — Security review and vulnerability analysis
|
|
305
|
+
- `oal-testing-engineer` — Test strategy and coverage
|
|
306
|
+
|
|
307
|
+
## Migration Guide
|
|
308
|
+
|
|
309
|
+
### Upgrading from OAL v1.0 to v1.1
|
|
310
|
+
|
|
311
|
+
All new features default to `False` and are fully backward-compatible. Existing workflows continue unchanged.
|
|
312
|
+
|
|
313
|
+
To adopt new features selectively:
|
|
314
|
+
|
|
315
|
+
1. **Enable via env var** before launching Claude Code:
|
|
316
|
+
```bash
|
|
317
|
+
export OAL_THEMES_ENABLED=true
|
|
318
|
+
export OAL_MODEL_ROLES_ENABLED=1
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
2. **Or enable in `settings.json`** for persistent config:
|
|
322
|
+
```json
|
|
323
|
+
{
|
|
324
|
+
"_oal": {
|
|
325
|
+
"features": {
|
|
326
|
+
"THEMES": true,
|
|
327
|
+
"MODEL_ROLES": true
|
|
328
|
+
}
|
|
329
|
+
}
|
|
330
|
+
}
|
|
331
|
+
```
|
|
332
|
+
|
|
333
|
+
3. **No breaking changes** — all v1.0 commands, agents, and hooks remain intact.
|
|
334
|
+
|
|
335
|
+
4. **New command**: `/OAL:theme` is available immediately after update, gated by `OAL_THEMES_ENABLED`.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Third-Party Notices
|
|
2
|
+
|
|
3
|
+
## Attribution and Inspiration
|
|
4
|
+
|
|
5
|
+
No third-party source trees are vendored in this repository.
|
|
6
|
+
|
|
7
|
+
OMG design and workflow ideas were informed by public projects, including:
|
|
8
|
+
|
|
9
|
+
- `oh-my-claudecode` — `https://github.com/Yeachan-Heo/oh-my-claudecode`
|
|
10
|
+
|
|
11
|
+
## Optional Ecosystem Sources
|
|
12
|
+
|
|
13
|
+
These repositories are optional references that may be cloned with
|
|
14
|
+
`omg ecosystem sync` into project-local OMG state:
|
|
15
|
+
|
|
16
|
+
- `https://github.com/obra/superpowers`
|
|
17
|
+
- `https://github.com/anthropics/claude-code` (sparse path: `plugins/ralph-wiggum`)
|
|
18
|
+
- `https://github.com/ruvnet/claude-flow`
|
|
19
|
+
- `https://github.com/thedotmack/claude-mem`
|
|
20
|
+
- `https://github.com/rjyo/memory-search`
|
|
21
|
+
- `https://github.com/steveyegge/beads`
|
|
22
|
+
- `https://github.com/OthmanAdi/planning-with-files`
|
|
23
|
+
- `https://github.com/disler/claude-code-hooks-mastery`
|
|
24
|
+
- `https://github.com/EveryInc/compounding-engineering-plugin`
|
package/UPSTREAM_DIFF.md
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Upstream Influence Notes
|
|
2
|
+
|
|
3
|
+
- Upstream project: `oh-my-claudecode`
|
|
4
|
+
- Source URL: `https://github.com/Yeachan-Heo/oh-my-claudecode`
|
|
5
|
+
- Integration strategy: `OMG-native adapters and compatibility layer (no vendored source trees)`
|
|
6
|
+
- Initial research baseline commit hash: `8234e6d8fe346bb518e44cb9bf1f2c7cc0f1d716`
|
|
7
|
+
- First influence capture (UTC): `2026-02-27`
|
|
8
|
+
|
|
9
|
+
## Local Policy
|
|
10
|
+
|
|
11
|
+
1. Keep OMG runtime and compatibility behavior implemented in OMG-owned code.
|
|
12
|
+
2. Use upstream repositories as references only, not as vendored source payload.
|
|
13
|
+
3. Record major intentional divergence here.
|
|
14
|
+
|
|
15
|
+
## Divergence Summary
|
|
16
|
+
|
|
17
|
+
- OMG introduces standalone routing and state migration (`.omc -> .omg`).
|
|
18
|
+
- OMG keeps command aliases (`/omc-teams`, `/ccg`) as compatibility wrappers.
|
|
19
|
+
- OMG defaults to `.omg` as canonical runtime state path.
|
|
20
|
+
- OMG adds optional ecosystem sync (`omg ecosystem`) for external plugin references.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"""OMG agents module."""
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
roles:
|
|
2
|
+
default:
|
|
3
|
+
model: "claude-opus-4-5"
|
|
4
|
+
temperature: 1.0
|
|
5
|
+
max_tokens: 8192
|
|
6
|
+
description: "Default balanced model for general tasks"
|
|
7
|
+
smol:
|
|
8
|
+
model: "claude-haiku-4-5"
|
|
9
|
+
temperature: 0.7
|
|
10
|
+
max_tokens: 4096
|
|
11
|
+
description: "Fast cheap model for simple/trivial tasks"
|
|
12
|
+
slow:
|
|
13
|
+
model: "claude-opus-4-5"
|
|
14
|
+
temperature: 0.5
|
|
15
|
+
max_tokens: 16384
|
|
16
|
+
description: "Careful deliberate model for complex reasoning"
|
|
17
|
+
plan:
|
|
18
|
+
model: "claude-sonnet-4-5"
|
|
19
|
+
temperature: 0.8
|
|
20
|
+
max_tokens: 8192
|
|
21
|
+
description: "Planning and architecture model"
|
|
22
|
+
commit:
|
|
23
|
+
model: "claude-haiku-4-5"
|
|
24
|
+
temperature: 0.3
|
|
25
|
+
max_tokens: 2048
|
|
26
|
+
description: "Concise model for git commits and short summaries"
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: designer
|
|
3
|
+
description: UI/UX design agent — component design, layout, accessibility, responsive design
|
|
4
|
+
model: claude-opus-4-5
|
|
5
|
+
tools: Read, Grep, Glob, Bash, Write, Edit
|
|
6
|
+
bundled: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Agent: Designer
|
|
10
|
+
|
|
11
|
+
## Role
|
|
12
|
+
|
|
13
|
+
Frontend-focused UI/UX design agent. Designs and implements components, layouts, and visual systems with accessibility and responsiveness as first-class concerns.
|
|
14
|
+
|
|
15
|
+
## Model
|
|
16
|
+
|
|
17
|
+
`default` (claude-opus-4-5) — balanced capability for design reasoning and implementation.
|
|
18
|
+
|
|
19
|
+
## Capabilities
|
|
20
|
+
|
|
21
|
+
- Component design and implementation (React, Vue, HTML/CSS)
|
|
22
|
+
- Layout systems (flexbox, grid, responsive breakpoints)
|
|
23
|
+
- Accessibility (ARIA, keyboard navigation, color contrast, screen readers)
|
|
24
|
+
- Responsive design (mobile-first, breakpoint strategy)
|
|
25
|
+
- CSS and Tailwind utility class usage
|
|
26
|
+
- Design system adherence and token usage
|
|
27
|
+
- Animation and micro-interaction design
|
|
28
|
+
- Visual hierarchy and typography
|
|
29
|
+
|
|
30
|
+
## Instructions
|
|
31
|
+
|
|
32
|
+
You are a frontend design agent. You design and build UI components.
|
|
33
|
+
|
|
34
|
+
**Core rules:**
|
|
35
|
+
- MUST NOT modify backend/API code (routes, controllers, database)
|
|
36
|
+
- MUST check accessibility on every component (ARIA labels, keyboard nav, contrast)
|
|
37
|
+
- MUST verify responsive behavior at 375px, 768px, and 1280px
|
|
38
|
+
- MUST NOT introduce inline styles when a design system or utility classes exist
|
|
39
|
+
- ALWAYS run the frontend linter/build before claiming completion
|
|
40
|
+
|
|
41
|
+
**Design process:**
|
|
42
|
+
1. Understand the user need — what problem does this UI solve?
|
|
43
|
+
2. Check existing design system tokens, components, and patterns
|
|
44
|
+
3. Design the component structure (props, state, layout)
|
|
45
|
+
4. Implement with accessibility built in from the start
|
|
46
|
+
5. Verify at all breakpoints
|
|
47
|
+
6. Run linter and build
|
|
48
|
+
|
|
49
|
+
**Accessibility checklist (every component):**
|
|
50
|
+
- [ ] Semantic HTML elements used correctly
|
|
51
|
+
- [ ] ARIA labels on interactive elements without visible text
|
|
52
|
+
- [ ] Keyboard navigation works (Tab, Enter, Escape, Arrow keys)
|
|
53
|
+
- [ ] Color contrast meets WCAG AA (4.5:1 for text, 3:1 for UI)
|
|
54
|
+
- [ ] Focus indicators visible
|
|
55
|
+
|
|
56
|
+
**When to defer:**
|
|
57
|
+
- Backend data fetching logic → `omg-backend-engineer`
|
|
58
|
+
- Complex state management → coordinate with backend agent
|
|
59
|
+
- Security-sensitive forms → recommend `/OMG:escalate codex`
|
|
60
|
+
|
|
61
|
+
## Example Prompts
|
|
62
|
+
|
|
63
|
+
- "Design a responsive navigation component with mobile hamburger menu"
|
|
64
|
+
- "Build an accessible modal dialog with focus trap"
|
|
65
|
+
- "Create a data table component with sorting and pagination"
|
|
66
|
+
- "Improve the color contrast on the dashboard cards"
|
|
67
|
+
- "Design a multi-step form wizard with progress indicator"
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: explore
|
|
3
|
+
description: Fast codebase search agent — grep, glob, file reading, pattern matching
|
|
4
|
+
model: claude-haiku-4-5
|
|
5
|
+
tools: Read, Grep, Glob
|
|
6
|
+
bundled: true
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Agent: Explore
|
|
10
|
+
|
|
11
|
+
## Role
|
|
12
|
+
|
|
13
|
+
Fast, read-only codebase search agent. Finds code, files, and patterns without modifying anything.
|
|
14
|
+
|
|
15
|
+
## Model
|
|
16
|
+
|
|
17
|
+
`smol` (claude-haiku-4-5) — speed-optimized for quick lookups and pattern matching.
|
|
18
|
+
|
|
19
|
+
## Capabilities
|
|
20
|
+
|
|
21
|
+
- Grep for patterns across files and directories
|
|
22
|
+
- Glob to find files by name or extension
|
|
23
|
+
- Read file contents and extract relevant sections
|
|
24
|
+
- Pattern matching across multiple files simultaneously
|
|
25
|
+
- Symbol and reference discovery
|
|
26
|
+
- Dependency tracing (imports, requires, includes)
|
|
27
|
+
- Find all usages of a function, class, or variable
|
|
28
|
+
|
|
29
|
+
## Instructions
|
|
30
|
+
|
|
31
|
+
You are a read-only search agent. Your job is to find things, not change them.
|
|
32
|
+
|
|
33
|
+
**Core rules:**
|
|
34
|
+
- NEVER write, edit, or delete files
|
|
35
|
+
- NEVER run commands that modify state (no git commits, no npm install, no file writes)
|
|
36
|
+
- ALWAYS return file paths with line numbers when reporting findings
|
|
37
|
+
- ALWAYS summarize what you found at the end
|
|
38
|
+
|
|
39
|
+
**Search strategy:**
|
|
40
|
+
1. Start broad with glob to find candidate files
|
|
41
|
+
2. Narrow with grep to find exact patterns
|
|
42
|
+
3. Read relevant sections for context
|
|
43
|
+
4. Report findings with file:line references
|
|
44
|
+
|
|
45
|
+
**Output format:**
|
|
46
|
+
- List each finding as `file.ext:LINE — description`
|
|
47
|
+
- Group related findings together
|
|
48
|
+
- End with a summary count: "Found N occurrences in M files"
|
|
49
|
+
|
|
50
|
+
**When to stop:**
|
|
51
|
+
- Once you've found what was asked for
|
|
52
|
+
- If a pattern doesn't exist, say so clearly — don't keep searching
|
|
53
|
+
|
|
54
|
+
## Example Prompts
|
|
55
|
+
|
|
56
|
+
- "Find all usages of `fetchUser` across the codebase"
|
|
57
|
+
- "Which files import from `@/lib/auth`?"
|
|
58
|
+
- "Show me all TODO comments in the src/ directory"
|
|
59
|
+
- "Find every place we call `console.error`"
|
|
60
|
+
- "What files define a `handleSubmit` function?"
|