oh-my-claudecode-opencode 0.3.0 → 0.5.0

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.md CHANGED
@@ -8,6 +8,41 @@ Like Sisyphus condemned to roll his boulder eternally, this plugin ensures your
8
8
 
9
9
  ---
10
10
 
11
+ ## 🚀 Quick Install
12
+
13
+ ### For Humans (Recommended)
14
+
15
+ Just tell your AI assistant:
16
+
17
+ > **"Install oh-my-claudecode-opencode by following these instructions: https://raw.githubusercontent.com/devswha/oh-my-claudecode-opencode/main/docs/guide/installation.md"**
18
+
19
+ That's it. The AI will handle the rest.
20
+
21
+ ### One-liner (If you insist on doing it yourself)
22
+
23
+ ```bash
24
+ cd ~/.config/opencode && npm install oh-my-claudecode-opencode@latest && cat > opencode.json << 'EOF'
25
+ {
26
+ "plugin": ["oh-my-claudecode-opencode"]
27
+ }
28
+ EOF
29
+ echo "✅ Restart OpenCode to activate OMCO"
30
+ ```
31
+
32
+ ### Magic Keywords
33
+
34
+ Once installed, just include these keywords in your prompts:
35
+
36
+ | Keyword | Effect |
37
+ |---------|--------|
38
+ | `ultrawork` or `ulw` | Maximum intensity parallel execution |
39
+ | `ralph` | Persistence mode - won't stop until complete |
40
+ | `autopilot` | Full autonomous execution |
41
+
42
+ Example: `ulw implement user authentication with tests`
43
+
44
+ ---
45
+
11
46
  ## 🎯 What is this?
12
47
 
13
48
  This project **ports the powerful features** of [oh-my-claudecode](https://github.com/Yeachan-Heo/oh-my-claudecode) v3.3.6 (a Claude Code plugin) to the **OpenCode platform**.
@@ -67,25 +102,27 @@ This project **ports the powerful features** of [oh-my-claudecode](https://githu
67
102
 
68
103
  ## Installation
69
104
 
70
- ```bash
71
- # Using npm
72
- npm install oh-my-claudecode-opencode
73
-
74
- # Using bun
75
- bun add oh-my-claudecode-opencode
105
+ > 💡 **Recommended**: Let your AI handle it! See [Quick Install](#-quick-install) above.
76
106
 
77
- # Using pnpm
78
- pnpm add oh-my-claudecode-opencode
79
- ```
107
+ ### Manual Installation
80
108
 
81
- Then add to your OpenCode configuration:
109
+ ```bash
110
+ # Install in OpenCode config directory
111
+ cd ~/.config/opencode
112
+ npm install oh-my-claudecode-opencode
82
113
 
83
- ```json
114
+ # Register plugin in opencode.json
115
+ cat > opencode.json << 'EOF'
84
116
  {
85
- "plugins": ["oh-my-claudecode-opencode"]
117
+ "plugin": ["oh-my-claudecode-opencode"]
86
118
  }
119
+ EOF
120
+
121
+ # Restart OpenCode to activate
87
122
  ```
88
123
 
124
+ For detailed instructions, see [Installation Guide](docs/guide/installation.md).
125
+
89
126
  ## Usage
90
127
 
91
128
  ### Ultrawork Mode
@@ -388,6 +425,44 @@ When triggered:
388
425
  3. Minimizes confirmation requests
389
426
  4. Maximizes throughput
390
427
 
428
+ ## Troubleshooting
429
+
430
+ ### Agents not showing in Tab menu?
431
+
432
+ Run the diagnostic tool:
433
+
434
+ ```bash
435
+ npx oh-my-claudecode-opencode doctor
436
+ ```
437
+
438
+ This checks:
439
+ 1. Plugin installation in `~/.config/opencode/node_modules/`
440
+ 2. Plugin registration in `opencode.json`
441
+ 3. Asset files present
442
+ 4. Package dependencies
443
+ 5. OMCO configuration validity
444
+
445
+ ### Common Issues
446
+
447
+ | Issue | Solution |
448
+ |-------|----------|
449
+ | "Plugin not installed" | `cd ~/.config/opencode && npm install oh-my-claudecode-opencode` |
450
+ | "Plugin not in opencode.json" | Add `"oh-my-claudecode-opencode"` to `"plugin"` array |
451
+ | "Assets directory missing" | Reinstall: `npm install oh-my-claudecode-opencode@latest` |
452
+
453
+ ### Exit Codes
454
+
455
+ | Code | Meaning |
456
+ |------|---------|
457
+ | 0 | All checks passed |
458
+ | 1 | Critical failure found |
459
+ | 2 | Warnings only |
460
+
461
+ ### Getting Help
462
+
463
+ 1. Run `/doctor` in OpenCode and share the report
464
+ 2. Open an issue: https://github.com/devswha/oh-my-claudecode-opencode/issues
465
+
391
466
  ## Development
392
467
 
393
468
  ```bash
package/assets/AGENTS.md CHANGED
@@ -4,30 +4,30 @@
4
4
 
5
5
  ## Porting Context
6
6
 
7
- oh-my-claudecode 설정 스키마를 OpenCode 형식으로 변환한 JSON 스키마. omo-omcs.schema.json은 oh-my-claudecode의 설정 스키마를 기반으로 하며, OpenCode 환경에 맞게 조정되었다. IDE 자동완성 및 검증 지원을 제공한다.
7
+ oh-my-claudecode 설정 스키마를 OpenCode 형식으로 변환한 JSON 스키마. OMCO.schema.json은 oh-my-claudecode의 설정 스키마를 기반으로 하며, OpenCode 환경에 맞게 조정되었다. IDE 자동완성 및 검증 지원을 제공한다.
8
8
 
9
9
  ## Overview
10
10
 
11
- This directory contains static project assets, primarily the JSON schema definition for omo-omcs configuration validation.
11
+ This directory contains static project assets, primarily the JSON schema definition for OMCO configuration validation.
12
12
 
13
13
  ## Key Files
14
14
 
15
- ### `omo-omcs.schema.json`
15
+ ### `OMCO.schema.json`
16
16
  **Purpose**: JSON Schema for configuration file validation
17
17
  **Schema Version**: Draft-07
18
- **Usage**: Provides IDE autocomplete and validation for `.opencode/omo-omcs.json`
18
+ **Usage**: Provides IDE autocomplete and validation for `.opencode/OMCO.json`
19
19
 
20
20
  ## Schema Structure
21
21
 
22
22
  ### Root Configuration Object
23
23
 
24
- The schema defines a comprehensive configuration structure for the omo-omcs plugin:
24
+ The schema defines a comprehensive configuration structure for the OMCO plugin:
25
25
 
26
26
  ```json
27
27
  {
28
28
  "$schema": "http://json-schema.org/draft-07/schema#",
29
- "title": "omo-omcs Configuration",
30
- "description": "Configuration schema for Oh My OpenCode Sisyphus plugin",
29
+ "title": "OMCO Configuration",
30
+ "description": "Configuration schema for oh-my-claudecode-opencode (OMCO) plugin",
31
31
  "type": "object"
32
32
  }
33
33
  ```
@@ -127,7 +127,7 @@ Enable schema validation in VSCode:
127
127
  1. **Option 1: In config file**
128
128
  ```json
129
129
  {
130
- "$schema": "node_modules/oh-my-ssalsyphus/assets/omo-omcs.schema.json",
130
+ "$schema": "node_modules/oh-my-claudecode-opencode/assets/OMCO.schema.json",
131
131
  "disabled_hooks": []
132
132
  }
133
133
  ```
@@ -137,8 +137,8 @@ Enable schema validation in VSCode:
137
137
  {
138
138
  "json.schemas": [
139
139
  {
140
- "fileMatch": [".opencode/omo-omcs.json"],
141
- "url": "./node_modules/oh-my-ssalsyphus/assets/omo-omcs.schema.json"
140
+ "fileMatch": [".opencode/OMCO.json"],
141
+ "url": "./node_modules/oh-my-claudecode-opencode/assets/OMCO.schema.json"
142
142
  }
143
143
  ]
144
144
  }
@@ -155,7 +155,7 @@ Enable schema validation in VSCode:
155
155
  ### Valid Configuration
156
156
  ```json
157
157
  {
158
- "$schema": "node_modules/oh-my-ssalsyphus/assets/omo-omcs.schema.json",
158
+ "$schema": "node_modules/oh-my-claudecode-opencode/assets/OMCO.schema.json",
159
159
  "disabled_hooks": ["agent-usage-reminder"],
160
160
  "background_task": {
161
161
  "max_concurrent": 8,
@@ -214,7 +214,7 @@ When adding new config options:
214
214
  });
215
215
  ```
216
216
 
217
- 2. **Add to JSON schema** (`assets/omo-omcs.schema.json`):
217
+ 2. **Add to JSON schema** (`assets/OMCO.schema.json`):
218
218
  ```json
219
219
  {
220
220
  "properties": {
@@ -249,7 +249,7 @@ The schema is exported via package.json:
249
249
  ```json
250
250
  {
251
251
  "exports": {
252
- "./schema.json": "./assets/omo-omcs.schema.json"
252
+ "./schema.json": "./assets/OMCO.schema.json"
253
253
  }
254
254
  }
255
255
  ```
@@ -257,7 +257,7 @@ The schema is exported via package.json:
257
257
  Usage in user projects:
258
258
  ```json
259
259
  {
260
- "$schema": "node_modules/oh-my-ssalsyphus/schema.json"
260
+ "$schema": "node_modules/oh-my-claudecode-opencode/schema.json"
261
261
  }
262
262
  ```
263
263
 
@@ -271,15 +271,15 @@ npm install -g ajv-cli
271
271
 
272
272
  # Validate config
273
273
  ajv validate \
274
- -s node_modules/oh-my-ssalsyphus/assets/omo-omcs.schema.json \
275
- -d .opencode/omo-omcs.json
274
+ -s node_modules/oh-my-claudecode-opencode/assets/OMCO.schema.json \
275
+ -d .opencode/OMCO.json
276
276
  ```
277
277
 
278
278
  ### Programmatic Validation
279
279
 
280
280
  ```typescript
281
281
  import Ajv from 'ajv';
282
- import schema from 'oh-my-ssalsyphus/schema.json';
282
+ import schema from 'oh-my-claudecode-opencode/schema.json';
283
283
 
284
284
  const ajv = new Ajv();
285
285
  const validate = ajv.compile(schema);
@@ -326,9 +326,9 @@ Use relative paths from project root:
326
326
 
327
327
  ## Integration Points
328
328
 
329
- - **Config Loader**: `/home/calvin/workspace/omo-omcs/src/config/` - Uses Zod for runtime validation
330
- - **Documentation**: `/home/calvin/workspace/omo-omcs/docs/` - Schema usage in README
331
- - **Tests**: `/home/calvin/workspace/omo-omcs/tests/` - Schema validation tests
329
+ - **Config Loader**: `/home/calvin/workspace/OMCO/src/config/` - Uses Zod for runtime validation
330
+ - **Documentation**: `/home/calvin/workspace/OMCO/docs/` - Schema usage in README
331
+ - **Tests**: `/home/calvin/workspace/OMCO/tests/` - Schema validation tests
332
332
 
333
333
  ## Future Enhancements
334
334
 
@@ -6,7 +6,7 @@ tools: Read, Glob, Grep, Edit, Write, Bash, TodoWrite
6
6
  ---
7
7
 
8
8
  <Role>
9
- Sisyphus-Junior - Focused executor from OhMyOpenCode.
9
+ OMCO-Junior - Focused executor from OhMyOpenCode.
10
10
  Execute tasks directly. NEVER delegate or spawn other agents.
11
11
  </Role>
12
12
 
@@ -537,14 +537,14 @@
537
537
  },
538
538
  "additionalProperties": false
539
539
  },
540
- "sisyphus_agent": {
540
+ "omco_agent": {
541
541
  "type": "object",
542
- "description": "Sisyphus agent configuration",
542
+ "description": "OMCO agent configuration",
543
543
  "properties": {
544
544
  "disabled": {
545
545
  "type": "boolean",
546
546
  "default": false,
547
- "description": "Disable Sisyphus agent"
547
+ "description": "Disable OMCO agent"
548
548
  },
549
549
  "planner_enabled": {
550
550
  "type": "boolean",
@@ -1,192 +1,88 @@
1
1
  ---
2
2
  name: doctor
3
- description: Diagnose and fix oh-my-claudecode installation issues
3
+ description: Diagnose and fix OMCO installation issues for OpenCode
4
4
  user-invocable: true
5
5
  ---
6
6
 
7
- # Doctor Skill
7
+ # Doctor Skill (OpenCode)
8
8
 
9
- ## Task: Run Installation Diagnostics
9
+ ## Quick Diagnosis
10
10
 
11
- You are the OMC Doctor - diagnose and fix installation issues.
12
-
13
- ### Step 1: Check Plugin Version
14
-
15
- ```bash
16
- # Get installed version
17
- INSTALLED=$(ls ~/.claude/plugins/cache/omc/oh-my-claudecode/ 2>/dev/null | sort -V | tail -1)
18
- echo "Installed: $INSTALLED"
19
-
20
- # Get latest from npm
21
- LATEST=$(npm view oh-my-claudecode version 2>/dev/null)
22
- echo "Latest: $LATEST"
23
- ```
24
-
25
- **Diagnosis**:
26
- - If no version installed: CRITICAL - plugin not installed
27
- - If INSTALLED != LATEST: WARN - outdated plugin
28
- - If multiple versions exist: WARN - stale cache
29
-
30
- ### Step 2: Check for Legacy Hooks in settings.json
31
-
32
- Read `~/.claude/settings.json` and check if there's a `"hooks"` key with entries like:
33
- - `bash $HOME/.claude/hooks/keyword-detector.sh`
34
- - `bash $HOME/.claude/hooks/persistent-mode.sh`
35
- - `bash $HOME/.claude/hooks/session-start.sh`
36
-
37
- **Diagnosis**:
38
- - If found: CRITICAL - legacy hooks causing duplicates
39
-
40
- ### Step 3: Check for Legacy Bash Hook Scripts
41
-
42
- ```bash
43
- ls -la ~/.claude/hooks/*.sh 2>/dev/null
44
- ```
45
-
46
- **Diagnosis**:
47
- - If `keyword-detector.sh`, `persistent-mode.sh`, `session-start.sh`, or `stop-continuation.sh` exist: WARN - legacy scripts (can cause confusion)
48
-
49
- ### Step 4: Check CLAUDE.md
50
-
51
- ```bash
52
- # Check if CLAUDE.md exists
53
- ls -la ~/.claude/CLAUDE.md 2>/dev/null
54
-
55
- # Check for OMC marker
56
- grep -q "oh-my-claudecode Multi-Agent System" ~/.claude/CLAUDE.md 2>/dev/null && echo "Has OMC config" || echo "Missing OMC config"
57
- ```
58
-
59
- **Diagnosis**:
60
- - If missing: CRITICAL - CLAUDE.md not configured
61
- - If missing OMC marker: WARN - outdated CLAUDE.md
62
-
63
- ### Step 5: Check for Stale Plugin Cache
11
+ When users report "OMCO agent not showing in Tab menu" or similar issues, guide them to run:
64
12
 
65
13
  ```bash
66
- # Count versions in cache
67
- ls ~/.claude/plugins/cache/omc/oh-my-claudecode/ 2>/dev/null | wc -l
14
+ npx oh-my-claudecode-opencode doctor
68
15
  ```
69
16
 
70
- **Diagnosis**:
71
- - If > 1 version: WARN - multiple cached versions (cleanup recommended)
72
-
73
- ### Step 6: Check for Legacy Curl-Installed Content
74
-
75
- Check for legacy agents, commands, and skills installed via curl (before plugin system):
76
-
17
+ Or if npx is not available:
77
18
  ```bash
78
- # Check for legacy agents directory
79
- ls -la ~/.claude/agents/ 2>/dev/null
80
-
81
- # Check for legacy commands directory
82
- ls -la ~/.claude/commands/ 2>/dev/null
83
-
84
- # Check for legacy skills directory
85
- ls -la ~/.claude/skills/ 2>/dev/null
19
+ cd ~/.config/opencode && node node_modules/oh-my-claudecode-opencode/bin/doctor.js
86
20
  ```
87
21
 
88
- **Diagnosis**:
89
- - If `~/.claude/agents/` exists with oh-my-claudecode-related files: WARN - legacy agents (now provided by plugin)
90
- - If `~/.claude/commands/` exists with oh-my-claudecode-related files: WARN - legacy commands (now provided by plugin)
91
- - If `~/.claude/skills/` exists with oh-my-claudecode-related files: WARN - legacy skills (now provided by plugin)
22
+ ## 5 Failure Modes
92
23
 
93
- Look for files like:
94
- - `architect.md`, `researcher.md`, `explore.md`, `executor.md`, etc. in agents/
95
- - `ultrawork.md`, `omc-default.md`, `omc-default-global.md`, `deepsearch.md`, etc. in commands/
96
- - Any oh-my-claudecode-related `.md` files in skills/
24
+ The doctor tool checks for 5 common failure modes:
97
25
 
98
- ---
26
+ | # | Check | What It Means |
27
+ |---|-------|---------------|
28
+ | 1 | Plugin Installed | Is the package in `~/.config/opencode/node_modules/`? |
29
+ | 2 | Plugin in Config | Is it registered in `opencode.json` `plugin` array? |
30
+ | 3 | Assets Present | Do `assets/agents/*.md` files exist? |
31
+ | 4 | Package Dependency | Is it listed in `package.json` dependencies? |
32
+ | 5 | OMCO Config Valid | Is `omco.json` valid JSON (if exists)? |
99
33
 
100
- ## Report Format
34
+ ## Report Analysis
101
35
 
102
- After running all checks, output a report:
36
+ When a user pastes a diagnostic report (JSON or text), analyze it:
103
37
 
104
- ```
105
- ## OMC Doctor Report
106
-
107
- ### Summary
108
- [HEALTHY / ISSUES FOUND]
109
-
110
- ### Checks
111
-
112
- | Check | Status | Details |
113
- |-------|--------|---------|
114
- | Plugin Version | OK/WARN/CRITICAL | ... |
115
- | Legacy Hooks (settings.json) | OK/CRITICAL | ... |
116
- | Legacy Scripts (~/.claude/hooks/) | OK/WARN | ... |
117
- | CLAUDE.md | OK/WARN/CRITICAL | ... |
118
- | Plugin Cache | OK/WARN | ... |
119
- | Legacy Agents (~/.claude/agents/) | OK/WARN | ... |
120
- | Legacy Commands (~/.claude/commands/) | OK/WARN | ... |
121
- | Legacy Skills (~/.claude/skills/) | OK/WARN | ... |
122
-
123
- ### Issues Found
124
- 1. [Issue description]
125
- 2. [Issue description]
126
-
127
- ### Recommended Fixes
128
- [List fixes based on issues]
129
- ```
38
+ 1. **Identify failures**: Look for `FAIL` or `status: "FAIL"` entries
39
+ 2. **Check warnings**: Look for `WARN` entries
40
+ 3. **Extract recommendations**: The report includes fix commands
130
41
 
131
- ---
132
-
133
- ## Auto-Fix (if user confirms)
134
-
135
- If issues found, ask user: "Would you like me to fix these issues automatically?"
42
+ ## Interpreting Results
136
43
 
137
- If yes, apply fixes:
44
+ ### Exit Codes
45
+ - **0**: All checks passed - plugin should work
46
+ - **1**: Critical failure - plugin won't work until fixed
47
+ - **2**: Warnings only - plugin may work but issues exist
138
48
 
139
- ### Fix: Legacy Hooks in settings.json
140
- Remove the `"hooks"` section from `~/.claude/settings.json` (keep other settings intact)
49
+ ### Common Fixes
141
50
 
142
- ### Fix: Legacy Bash Scripts
51
+ **Plugin Not Installed (FAIL)**
143
52
  ```bash
144
- rm -f ~/.claude/hooks/keyword-detector.sh
145
- rm -f ~/.claude/hooks/persistent-mode.sh
146
- rm -f ~/.claude/hooks/session-start.sh
147
- rm -f ~/.claude/hooks/stop-continuation.sh
53
+ cd ~/.config/opencode && npm install oh-my-claudecode-opencode@latest
148
54
  ```
149
55
 
150
- ### Fix: Outdated Plugin
56
+ **Plugin Not in Config (FAIL)**
151
57
  ```bash
152
- rm -rf ~/.claude/plugins/cache/oh-my-claudecode
153
- echo "Plugin cache cleared. Restart Claude Code to fetch latest version."
58
+ # Create or edit ~/.config/opencode/opencode.json
59
+ cat > ~/.config/opencode/opencode.json << 'EOF'
60
+ {
61
+ "plugin": ["oh-my-claudecode-opencode"]
62
+ }
63
+ EOF
154
64
  ```
155
65
 
156
- ### Fix: Stale Cache (multiple versions)
66
+ **Assets Directory Missing (FAIL)**
157
67
  ```bash
158
- # Keep only latest version
159
- cd ~/.claude/plugins/cache/omc/oh-my-claudecode/
160
- ls | sort -V | head -n -1 | xargs rm -rf
68
+ # Reinstall to get fresh assets
69
+ cd ~/.config/opencode && npm install oh-my-claudecode-opencode@latest --force
161
70
  ```
162
71
 
163
- ### Fix: Missing/Outdated CLAUDE.md
164
- Fetch latest from GitHub and write to `~/.claude/CLAUDE.md`:
165
- ```
166
- WebFetch(url: "https://raw.githubusercontent.com/Yeachan-Heo/oh-my-claudecode/main/docs/CLAUDE.md", prompt: "Return the complete raw markdown content exactly as-is")
167
- ```
168
-
169
- ### Fix: Legacy Curl-Installed Content
170
-
171
- Remove legacy agents, commands, and skills directories (now provided by plugin):
172
-
72
+ **Package Dependency Missing (WARN)**
173
73
  ```bash
174
- # Backup first (optional - ask user)
175
- # mv ~/.claude/agents ~/.claude/agents.bak
176
- # mv ~/.claude/commands ~/.claude/commands.bak
177
- # mv ~/.claude/skills ~/.claude/skills.bak
178
-
179
- # Or remove directly
180
- rm -rf ~/.claude/agents
181
- rm -rf ~/.claude/commands
182
- rm -rf ~/.claude/skills
74
+ cd ~/.config/opencode && npm install oh-my-claudecode-opencode --save
183
75
  ```
184
76
 
185
- **Note**: Only remove if these contain oh-my-claudecode-related files. If user has custom agents/commands/skills, warn them and ask before removing.
77
+ ## After Fixes
186
78
 
187
- ---
79
+ Always remind users to **restart OpenCode** after making fixes:
80
+ - Close OpenCode (Ctrl+C)
81
+ - Reopen OpenCode
188
82
 
189
- ## Post-Fix
83
+ ## Reporting Issues
190
84
 
191
- After applying fixes, inform user:
192
- > Fixes applied. **Restart Claude Code** for changes to take effect.
85
+ If the doctor tool doesn't identify the problem, ask users to:
86
+ 1. Share the full doctor report (JSON format preferred)
87
+ 2. Share their OpenCode version: `opencode --version`
88
+ 3. Open an issue: https://github.com/devswha/oh-my-claudecode-opencode/issues