oh-my-claudecode-opencode 0.2.1 → 0.4.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.
Files changed (72) hide show
  1. package/assets/AGENTS.md +20 -20
  2. package/assets/agents/analyst.md +85 -0
  3. package/assets/agents/architect-low.md +88 -0
  4. package/assets/agents/architect-medium.md +147 -0
  5. package/assets/agents/architect.md +147 -0
  6. package/assets/agents/build-fixer-low.md +83 -0
  7. package/assets/agents/build-fixer.md +160 -0
  8. package/assets/agents/code-reviewer-low.md +82 -0
  9. package/assets/agents/code-reviewer.md +155 -0
  10. package/assets/agents/critic.md +131 -0
  11. package/assets/agents/designer-high.md +113 -0
  12. package/assets/agents/designer-low.md +89 -0
  13. package/assets/agents/designer.md +80 -0
  14. package/assets/agents/executor-high.md +139 -0
  15. package/assets/agents/executor-low.md +94 -0
  16. package/assets/agents/executor.md +78 -0
  17. package/assets/agents/explore-medium.md +113 -0
  18. package/assets/agents/explore.md +86 -0
  19. package/assets/agents/planner.md +299 -0
  20. package/assets/agents/qa-tester.md +109 -0
  21. package/assets/agents/researcher-low.md +84 -0
  22. package/assets/agents/researcher.md +70 -0
  23. package/assets/agents/scientist-high.md +1023 -0
  24. package/assets/agents/scientist-low.md +258 -0
  25. package/assets/agents/scientist.md +1302 -0
  26. package/assets/agents/security-reviewer-low.md +83 -0
  27. package/assets/agents/security-reviewer.md +186 -0
  28. package/assets/agents/tdd-guide-low.md +81 -0
  29. package/assets/agents/tdd-guide.md +191 -0
  30. package/assets/agents/vision.md +39 -0
  31. package/assets/agents/writer.md +152 -0
  32. package/assets/omco.schema.json +3 -3
  33. package/assets/skills/analyze.md +64 -0
  34. package/assets/skills/autopilot.md +168 -0
  35. package/assets/skills/cancel-autopilot.md +53 -0
  36. package/assets/skills/cancel-ralph.md +43 -0
  37. package/assets/skills/cancel-ultraqa.md +29 -0
  38. package/assets/skills/cancel-ultrawork.md +42 -0
  39. package/assets/skills/deepinit.md +321 -0
  40. package/assets/skills/deepsearch.md +39 -0
  41. package/assets/skills/doctor.md +192 -0
  42. package/assets/skills/frontend-ui-ux.md +53 -0
  43. package/assets/skills/git-master.md +58 -0
  44. package/assets/skills/help.md +66 -0
  45. package/assets/skills/hud.md +239 -0
  46. package/assets/skills/learner.md +136 -0
  47. package/assets/skills/mcp-setup.md +196 -0
  48. package/assets/skills/note.md +63 -0
  49. package/assets/skills/omc-default-global.md +75 -0
  50. package/assets/skills/omc-default.md +78 -0
  51. package/assets/skills/omc-setup.md +245 -0
  52. package/assets/skills/orchestrate.md +409 -0
  53. package/assets/skills/plan.md +38 -0
  54. package/assets/skills/planner.md +106 -0
  55. package/assets/skills/ralph-init.md +61 -0
  56. package/assets/skills/ralph.md +136 -0
  57. package/assets/skills/ralplan.md +272 -0
  58. package/assets/skills/release.md +84 -0
  59. package/assets/skills/research.md +511 -0
  60. package/assets/skills/review.md +37 -0
  61. package/assets/skills/tdd.md +80 -0
  62. package/assets/skills/ultraqa.md +123 -0
  63. package/assets/skills/ultrawork.md +93 -0
  64. package/dist/agents/index.d.ts +14 -1
  65. package/dist/agents/loader.d.ts +13 -0
  66. package/dist/agents/types.d.ts +14 -0
  67. package/dist/config/index.d.ts +1 -1
  68. package/dist/index.js +7307 -166
  69. package/dist/skills/index.d.ts +14 -0
  70. package/dist/skills/loader.d.ts +9 -0
  71. package/dist/skills/types.d.ts +9 -0
  72. package/package.json +6 -3
@@ -0,0 +1,136 @@
1
+ ---
2
+ name: ralph
3
+ description: Self-referential loop until task completion with architect verification
4
+ user-invocable: true
5
+ ---
6
+
7
+ # Ralph Skill
8
+
9
+ [RALPH + ULTRAWORK - ITERATION {{ITERATION}}/{{MAX}}]
10
+
11
+ Your previous attempt did not output the completion promise. Continue working on the task.
12
+
13
+ ## ULTRAWORK MODE (AUTO-ACTIVATED)
14
+
15
+ Ralph automatically activates Ultrawork for maximum parallel execution. You MUST follow these rules:
16
+
17
+ ### Parallel Execution Rules
18
+ - **PARALLEL**: Fire independent calls simultaneously - NEVER wait sequentially
19
+ - **BACKGROUND FIRST**: Use Task(run_in_background=true) for long operations (10+ concurrent)
20
+ - **DELEGATE**: Route tasks to specialist agents immediately
21
+
22
+ ### Smart Model Routing (SAVE TOKENS)
23
+
24
+ | Task Complexity | Tier | Examples |
25
+ |-----------------|------|----------|
26
+ | Simple lookups | LOW (haiku) | "What does this function return?", "Find where X is defined" |
27
+ | Standard work | MEDIUM (sonnet) | "Add error handling", "Implement this feature" |
28
+ | Complex analysis | HIGH (opus) | "Debug this race condition", "Refactor auth module" |
29
+
30
+ ### Available Agents by Tier
31
+
32
+ | Domain | LOW (Haiku) | MEDIUM (Sonnet) | HIGH (Opus) |
33
+ |--------|-------------|-----------------|-------------|
34
+ | **Analysis** | `architect-low` | `architect-medium` | `architect` |
35
+ | **Execution** | `executor-low` | `executor` | `executor-high` |
36
+ | **Search** | `explore` | `explore-medium` | - |
37
+ | **Research** | `researcher-low` | `researcher` | - |
38
+ | **Frontend** | `designer-low` | `designer` | `designer-high` |
39
+ | **Docs** | `writer` | - | - |
40
+ | **Visual** | - | `vision` | - |
41
+ | **Planning** | - | - | `planner` |
42
+ | **Critique** | - | - | `critic` |
43
+ | **Pre-Planning** | - | - | `analyst` |
44
+ | **Testing** | - | `qa-tester` | - |
45
+ | **Security** | `security-reviewer-low` | - | `security-reviewer` |
46
+ | **Build** | `build-fixer-low` | `build-fixer` | - |
47
+ | **TDD** | `tdd-guide-low` | `tdd-guide` | - |
48
+ | **Code Review** | `code-reviewer-low` | - | `code-reviewer` |
49
+
50
+ **CRITICAL: Always pass `model` parameter explicitly!**
51
+ ```
52
+ Task(subagent_type="oh-my-claudecode:architect-low", model="haiku", prompt="...")
53
+ Task(subagent_type="oh-my-claudecode:executor", model="sonnet", prompt="...")
54
+ Task(subagent_type="oh-my-claudecode:architect", model="opus", prompt="...")
55
+ ```
56
+
57
+ ### Background Execution Rules
58
+
59
+ **Run in Background** (set `run_in_background: true`):
60
+ - Package installation: npm install, pip install, cargo build
61
+ - Build processes: npm run build, make, tsc
62
+ - Test suites: npm test, pytest, cargo test
63
+ - Docker operations: docker build, docker pull
64
+
65
+ **Run Blocking** (foreground):
66
+ - Quick status checks: git status, ls, pwd
67
+ - File reads, edits
68
+ - Simple commands
69
+
70
+ ## COMPLETION REQUIREMENTS
71
+
72
+ Before claiming completion, you MUST:
73
+ 1. Verify ALL requirements from the original task are met
74
+ 2. Ensure no partial implementations
75
+ 3. Check that code compiles/runs without errors
76
+ 4. Verify tests pass (if applicable)
77
+ 5. TODO LIST: Zero pending/in_progress tasks
78
+
79
+ ## VERIFICATION BEFORE COMPLETION (IRON LAW)
80
+
81
+ **NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE**
82
+
83
+ Before outputting the completion promise:
84
+
85
+ ### Steps (MANDATORY)
86
+ 1. **IDENTIFY**: What command proves the task is complete?
87
+ 2. **RUN**: Execute verification (test, build, lint)
88
+ 3. **READ**: Check output - did it actually pass?
89
+ 4. **ONLY THEN**: Proceed to Architect verification
90
+
91
+ ### Red Flags (STOP and verify)
92
+ - Using "should", "probably", "seems to"
93
+ - About to output completion without fresh evidence
94
+ - Expressing satisfaction before verification
95
+
96
+ ### Evidence Chain
97
+ 1. Fresh test run output showing pass
98
+ 2. Fresh build output showing success
99
+ 3. lsp_diagnostics showing 0 errors
100
+ 4. THEN Architect verification
101
+ 5. THEN completion promise
102
+
103
+ **Skipping verification = Task NOT complete**
104
+
105
+ ## ARCHITECT VERIFICATION (MANDATORY)
106
+
107
+ When you believe the task is complete:
108
+ 1. **First**, spawn Architect to verify your work (ALWAYS pass model explicitly!):
109
+ ```
110
+ Task(subagent_type="oh-my-claudecode:architect", model="opus", prompt="Verify this implementation is complete: [describe what you did]")
111
+ ```
112
+
113
+ 2. **Wait for Architect's assessment**
114
+
115
+ 3. **If Architect approves**: Output `<promise>{{PROMISE}}</promise>`
116
+ 4. **If Architect finds issues**: Fix them, then repeat verification
117
+
118
+ DO NOT output the completion promise without Architect verification.
119
+
120
+ ## ZERO TOLERANCE
121
+
122
+ - NO Scope Reduction - deliver FULL implementation
123
+ - NO Partial Completion - finish 100%
124
+ - NO Premature Stopping - ALL TODOs must be complete
125
+ - NO TEST DELETION - fix code, not tests
126
+
127
+ ## INSTRUCTIONS
128
+
129
+ - Review your progress so far
130
+ - Continue from where you left off
131
+ - Use parallel execution and background tasks
132
+ - When FULLY complete AND Architect verified, output: <promise>{{PROMISE}}</promise>
133
+ - Do not stop until the task is truly done
134
+
135
+ Original task:
136
+ {{PROMPT}}
@@ -0,0 +1,272 @@
1
+ ---
2
+ name: ralplan
3
+ description: Iterative planning with Planner, Architect, and Critic until consensus
4
+ user-invocable: true
5
+ ---
6
+
7
+ # Ralplan Skill
8
+
9
+ ## Overview
10
+
11
+ Ralplan orchestrates three specialized agents—Planner, Architect, and Critic—in an iterative loop until consensus is reached on a comprehensive work plan. This skill ensures plans are strategically sound, architecturally valid, and thoroughly reviewed before execution.
12
+
13
+ ## The Planning Triad
14
+
15
+ Three agents collaborate in structured phases to validate and refine work plans:
16
+
17
+ | Agent | Role | Output |
18
+ |-------|------|--------|
19
+ | **Planner** | Strategic Planner | Creates/refines the work plan |
20
+ | **Architect** | Strategic Advisor | Answers questions, validates architecture |
21
+ | **Critic** | Ruthless Reviewer | Critiques and identifies gaps |
22
+
23
+ ## The Iteration Loop
24
+
25
+ ```
26
+ ┌─────────────────────────────────────────────────────────────────┐
27
+ │ RALPLAN LOOP │
28
+ │ │
29
+ │ ┌──────────────┐ │
30
+ │ │ PLANNER │◄────────────────────────────────┐ │
31
+ │ │ (Plans) │ │ │
32
+ │ └──────┬───────┘ │ │
33
+ │ │ │ │
34
+ │ ▼ │ │
35
+ │ ┌──────────────┐ Questions? ┌───────────┐ │ │
36
+ │ │ Has open │─────────────────► │ ARCHITECT │ │ │
37
+ │ │ questions? │ │ (Advises) │ │ │
38
+ │ └──────┬───────┘ └─────┬─────┘ │ │
39
+ │ │ │ │ │
40
+ │ │ No questions │ │ │
41
+ │ ▼ ▼ │ │
42
+ │ ┌──────────────┐ ┌──────────┐ │ │
43
+ │ │ CRITIC │◄─────────────────│ Answers │ │ │
44
+ │ │ (Reviews) │ └──────────┘ │ │
45
+ │ └──────┬───────┘ │ │
46
+ │ │ │ │
47
+ │ ▼ │ │
48
+ │ ┌──────────────┐ REJECT ┌──────────────┐│ │
49
+ │ │ Verdict? │─────────────────►│ Feedback ││ │
50
+ │ └──────┬───────┘ │ to Planner │┘ │
51
+ │ │ └─────────────┘ │
52
+ │ │ OKAY │
53
+ │ ▼ │
54
+ │ ┌──────────────────────────────────────────────────────────┐ │
55
+ │ │ PLAN APPROVED │ │
56
+ │ │ Ready for /ralph execution │ │
57
+ │ └──────────────────────────────────────────────────────────┘ │
58
+ └─────────────────────────────────────────────────────────────────┘
59
+ ```
60
+
61
+ ## State Management
62
+
63
+ Ralplan maintains persistent state in `.omc/ralplan-state.json` to track progress and enable recovery across interruptions:
64
+
65
+ ```json
66
+ {
67
+ "active": true,
68
+ "mode": "ralplan",
69
+ "iteration": 1,
70
+ "max_iterations": 5,
71
+ "plan_path": ".omc/plans/[feature].md",
72
+ "current_phase": "planner_planning",
73
+ "started_at": "ISO-timestamp",
74
+ "task_description": "[original task]"
75
+ }
76
+ ```
77
+
78
+ **Phases**: `planner_planning` → `architect_consultation` → `critic_review` → `handling_verdict` → `complete`
79
+
80
+ ## Plan Mode Interaction (CRITICAL)
81
+
82
+ **When ralplan is invoked while Plan mode is active:**
83
+
84
+ The Planner agent has a PHASE 3.5 (CONFIRMATION) that normally requires user confirmation before proceeding. **This MUST be bypassed within ralplan because the Critic serves as the reviewer, not the user.**
85
+
86
+ ### Mandatory Constraints
87
+
88
+ | Constraint | Rationale |
89
+ |------------|-----------|
90
+ | **Planner MUST skip PHASE 3.5 confirmation** | Critic reviews the plan, not the user |
91
+ | **Critic MUST run before any plan approval** | No plan is approved without Critic verdict |
92
+ | **DO NOT exit plan mode until Critic has rendered verdict** | Premature exit skips the review step |
93
+ | **Log `[RALPLAN] Critic review required before approval`** | Observability for debugging |
94
+
95
+ ### Flow When Plan Mode Is Active
96
+
97
+ ```
98
+ 1. Orchestrator invokes ralplan skill
99
+ 2. Log: [RALPLAN] Starting - Critic review will be required
100
+ 3. Spawn Planner in DIRECT PLANNING MODE (no interview, no confirmation)
101
+ 4. Planner outputs PLAN_READY: <path>
102
+ 5. Log: [RALPLAN] Plan ready, invoking Critic for review
103
+ 6. Spawn Critic with plan path <-- MUST HAPPEN
104
+ 7. Critic renders OKAY or REJECT
105
+ 8. ONLY THEN can plan be approved or refined
106
+ ```
107
+
108
+ **CRITICAL: The Critic invocation is MANDATORY. If the Planner completes and signals plan ready, the orchestrator MUST invoke the Critic before any form of plan approval or user confirmation.**
109
+
110
+ ---
111
+
112
+ ## Execution Protocol
113
+
114
+ ### Initialization
115
+
116
+ The skill begins by establishing the planning environment:
117
+
118
+ 1. Create `.omc/plans/` directory if it doesn't exist
119
+ 2. Read task description from user input
120
+ 3. Create `ralplan-state.json` with initial values:
121
+ - `active: true`
122
+ - `iteration: 0`
123
+ - `max_iterations: 5`
124
+ - `current_phase: "planner_planning"`
125
+ - `started_at`: Current ISO timestamp
126
+ - `task_description`: User's task description
127
+
128
+ ### Planner Planning Phase
129
+
130
+ The Planner creates an initial plan based on task context:
131
+
132
+ - Invoke Planner in **direct planning mode** (bypassing interview since task context is pre-gathered)
133
+ - **CRITICAL: Planner MUST skip PHASE 3.5 (CONFIRMATION)** - the Critic will review, not the user
134
+ - Planner receives task context directly without preliminary questioning
135
+ - Planner mandatorily consults with Metis for gap detection
136
+ - Planner generates plan directly to `.omc/plans/[feature-name].md`
137
+ - Plan includes: requirements summary, concrete acceptance criteria, specific implementation steps with file references, risk identification with mitigations, and verification steps
138
+ - Signal completion with `PLAN_READY: .omc/plans/[filename].md`
139
+ - **After PLAN_READY: DO NOT approve or confirm the plan. Proceed to Critic Review.**
140
+ - Extract plan path from completion signal and update state
141
+ - Log: `[RALPLAN] Critic review required before approval`
142
+
143
+ ### Architect Consultation (Conditional)
144
+
145
+ The Architect provides strategic guidance in two scenarios:
146
+
147
+ 1. **After Planner**: If Planner raises architectural questions needing strategic input
148
+ 2. **After Critic rejection**: If Critic identifies questions requiring expert guidance
149
+
150
+ When invoked, the Architect receives file paths to read for analysis, not summaries. This enables thorough examination of the existing codebase context before providing recommendations.
151
+
152
+ ### Critic Review (MANDATORY - CANNOT BE SKIPPED)
153
+
154
+ **CRITICAL: This phase MUST execute. The Critic is the gatekeeper for plan approval.**
155
+
156
+ Log at start: `[RALPLAN] Invoking Critic for plan review`
157
+
158
+ The Critic examines the plan against quality standards:
159
+
160
+ - Critic receives the plan file path (per its design)
161
+ - Critic conducts thorough review of plan completeness and feasibility
162
+ - Critic emits verdict: either `OKAY` (approval) or `REJECT` with specific issues
163
+
164
+ **Enforcement Rules:**
165
+ 1. If Planner signals PLAN_READY, Critic MUST be invoked immediately
166
+ 2. DO NOT exit ralplan loop before Critic verdict
167
+ 3. DO NOT request user confirmation before Critic verdict
168
+ 4. DO NOT trigger any plan mode exit behavior before Critic verdict
169
+
170
+ Log after Critic completes: `[RALPLAN] Critic verdict: <OKAY|REJECT>`
171
+
172
+ ### Verdict Handling and Iteration
173
+
174
+ Based on Critic's verdict, the skill either approves the plan or continues iteration:
175
+
176
+ **If verdict is OKAY:**
177
+ - Mark plan as approved
178
+ - Log approval with iteration count
179
+ - Prepare plan for execution with `/oh-my-claudecode:ralph` or manual orchestration
180
+ - Set state `active: false, current_phase: "complete"`
181
+
182
+ **If verdict is REJECT:**
183
+ - Extract Critic feedback with specific issues
184
+ - Increment iteration counter
185
+ - If `iteration >= max_iterations` (5):
186
+ - Force approval with warning about unresolved concerns
187
+ - Recommend manual review before execution
188
+ - Otherwise:
189
+ - Feed Critic feedback back to Planner
190
+ - Return to Planner Planning phase for refinement
191
+
192
+ ## Iteration Rules
193
+
194
+ | Rule | Description |
195
+ |------|-------------|
196
+ | **Max 5 iterations** | Safety limit prevents infinite loops |
197
+ | **Planner owns plan** | Only Planner writes to plan file |
198
+ | **Architect provides wisdom** | Architect reads and advises, never modifies |
199
+ | **Critic has final say** | Plan approved only when Critic signals OKAY |
200
+ | **Feedback is specific** | Each rejection includes actionable improvements |
201
+ | **State persists** | Progress survives session interruptions |
202
+
203
+ ## Quality Gates
204
+
205
+ The orchestrator must verify these gates before invoking Critic for each review:
206
+
207
+ 1. **Plan file exists** at the path specified in state
208
+ 2. **File references are valid** - Verify all mentioned files exist in codebase
209
+ 3. **Acceptance criteria are concrete** - No vague "improve" or "optimize" without measurable metrics
210
+ 4. **No ambiguous language** - Each task clearly specifies what to do
211
+
212
+ If any gate fails, return to Planner with specific failure feedback for remediation.
213
+
214
+ ## Agent Communication Protocol
215
+
216
+ ### Planner to Architect Questions
217
+
218
+ ```
219
+ ARCHITECT_QUESTION:
220
+ - Topic: [Architecture/Performance/Security/Pattern]
221
+ - Context: [What we're planning]
222
+ - Files to examine: [specific paths]
223
+ - Specific Question: [What we need answered]
224
+ ```
225
+
226
+ ### Architect to Planner Answers
227
+
228
+ ```
229
+ ARCHITECT_ANSWER:
230
+ - Topic: [Matching topic]
231
+ - Analysis: [What Architect found after reading files]
232
+ - Recommendation: [Specific guidance]
233
+ - Trade-offs: [What to consider]
234
+ - References: [file:line citations from codebase]
235
+ ```
236
+
237
+ ### Critic to Planner Feedback
238
+
239
+ ```
240
+ CRITIC_FEEDBACK:
241
+ - Verdict: REJECT
242
+ - Critical Issues:
243
+ 1. [Issue with specific fix required]
244
+ 2. [Issue with specific fix required]
245
+ - Minor Issues:
246
+ 1. [Nice to fix]
247
+ - Questions for Architect (if any):
248
+ 1. [Architectural question needing expert input]
249
+ ```
250
+
251
+ ## Cancellation
252
+
253
+ To stop an active ralplan session:
254
+
255
+ - Use `/oh-my-claudecode:cancel-ralph` (automatically detects ralplan via state file)
256
+ - Or manually delete `.omc/ralplan-state.json`
257
+
258
+ ## Skill Workflow
259
+
260
+ 1. **Initialize state** and log: `[RALPLAN Iteration 0/5] Initializing...`
261
+ 2. **Parse task** from user input
262
+ 3. **Spawn Planner** in direct planning mode (SKIP Planner's PHASE 3.5 confirmation)
263
+ 4. **Wait for PLAN_READY** signal from Planner
264
+ 5. **Log:** `[RALPLAN] Critic review required before approval`
265
+ 6. **Invoke Critic** with plan file path (MANDATORY - CANNOT BE SKIPPED)
266
+ 7. **Log:** `[RALPLAN] Critic verdict: <verdict>`
267
+ 8. **Handle verdict** - if REJECT, loop back to step 3 with feedback
268
+ 9. **Complete** ONLY when Critic approves or max iterations reached with warnings
269
+
270
+ **HARD RULE:** Steps 5-7 are NON-NEGOTIABLE. No plan approval, user confirmation, or plan mode exit can occur before the Critic has rendered its verdict. This prevents the plan mode confirmation flow from short-circuiting the ralplan review loop.
271
+
272
+ The iterative loop refines the plan until it meets the rigorous standards of all three agents, ensuring comprehensive, architecturally sound work plans ready for execution.
@@ -0,0 +1,84 @@
1
+ ---
2
+ name: release
3
+ description: Automated release workflow for oh-my-claudecode
4
+ user-invocable: true
5
+ ---
6
+
7
+ # Release Skill
8
+
9
+ Automate the release process for oh-my-claudecode.
10
+
11
+ ## Usage
12
+
13
+ ```
14
+ /oh-my-claudecode:release <version>
15
+ ```
16
+
17
+ Example: `/oh-my-claudecode:release 2.4.0` or `/oh-my-claudecode:release patch` or `/oh-my-claudecode:release minor`
18
+
19
+ ## Release Checklist
20
+
21
+ Execute these steps in order:
22
+
23
+ ### 1. Version Bump
24
+ Update version in all locations:
25
+ - `package.json`
26
+ - `src/installer/index.ts` (VERSION constant)
27
+ - `src/__tests__/installer.test.ts` (expected version)
28
+ - `.claude-plugin/plugin.json`
29
+ - `README.md` (version badge and title)
30
+
31
+ ### 2. Run Tests
32
+ ```bash
33
+ npm run test:run
34
+ ```
35
+ All 231+ tests must pass before proceeding.
36
+
37
+ ### 3. Commit Version Bump
38
+ ```bash
39
+ git add -A
40
+ git commit -m "chore: Bump version to <version>"
41
+ ```
42
+
43
+ ### 4. Create & Push Tag
44
+ ```bash
45
+ git tag v<version>
46
+ git push origin main
47
+ git push origin v<version>
48
+ ```
49
+
50
+ ### 5. Publish to npm
51
+ ```bash
52
+ npm publish --access public
53
+ ```
54
+
55
+ ### 6. Create GitHub Release
56
+ ```bash
57
+ gh release create v<version> --title "v<version> - <title>" --notes "<release notes>"
58
+ ```
59
+
60
+ ### 7. Verify
61
+ - [ ] npm: https://www.npmjs.com/package/oh-my-claudecode
62
+ - [ ] GitHub: https://github.com/Yeachan-Heo/oh-my-claudecode/releases
63
+
64
+ ## Version Files Reference
65
+
66
+ | File | Field/Line |
67
+ |------|------------|
68
+ | `package.json` | `"version": "X.Y.Z"` |
69
+ | `src/installer/index.ts` | `export const VERSION = 'X.Y.Z'` |
70
+ | `src/__tests__/installer.test.ts` | `expect(VERSION).toBe('X.Y.Z')` |
71
+ | `.claude-plugin/plugin.json` | `"version": "X.Y.Z"` |
72
+ | `README.md` | Title + version badge |
73
+
74
+ ## Semantic Versioning
75
+
76
+ - **patch** (X.Y.Z+1): Bug fixes, minor improvements
77
+ - **minor** (X.Y+1.0): New features, backward compatible
78
+ - **major** (X+1.0.0): Breaking changes
79
+
80
+ ## Notes
81
+
82
+ - Always run tests before publishing
83
+ - Create release notes summarizing changes
84
+ - Plugin marketplace syncs automatically from GitHub releases