@lgcyaxi/oh-my-claude 1.0.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 (90) hide show
  1. package/.gitattributes +2 -0
  2. package/CLAUDE.md +39 -0
  3. package/LICENSE +99 -0
  4. package/README.md +288 -0
  5. package/README.zh-CN.md +288 -0
  6. package/bin/oh-my-claude.js +34 -0
  7. package/bun.lock +210 -0
  8. package/dist/cli.js +2568 -0
  9. package/dist/hooks/comment-checker.js +102 -0
  10. package/dist/hooks/todo-continuation.js +70 -0
  11. package/dist/index-bksg3rgt.js +6877 -0
  12. package/dist/index-edd5cj2q.js +6190 -0
  13. package/dist/index-ejmtq3zc.js +7232 -0
  14. package/dist/index-g9awy7jd.js +7222 -0
  15. package/dist/index-rn7wa44g.js +6918 -0
  16. package/dist/index-t9kr2kjc.js +6849 -0
  17. package/dist/index-vps3ch29.js +7228 -0
  18. package/dist/index-whh9dmr6.js +6894 -0
  19. package/dist/index-za6qzkv8.js +6071 -0
  20. package/dist/index-zc0xfp3b.js +6894 -0
  21. package/dist/index.js +139 -0
  22. package/dist/mcp/server.js +18919 -0
  23. package/docs/changelog/v1.0.0.md +105 -0
  24. package/docs/changelog.md +72 -0
  25. package/package.json +52 -0
  26. package/src/agents/claude-reviewer.ts +92 -0
  27. package/src/agents/claude-scout.ts +97 -0
  28. package/src/agents/document-writer.ts +151 -0
  29. package/src/agents/explore.ts +113 -0
  30. package/src/agents/frontend-ui-ux.ts +106 -0
  31. package/src/agents/index.ts +91 -0
  32. package/src/agents/librarian.ts +216 -0
  33. package/src/agents/oracle.ts +104 -0
  34. package/src/agents/original/archivist.ts +77 -0
  35. package/src/agents/original/artisan.ts +89 -0
  36. package/src/agents/original/conductor.ts +87 -0
  37. package/src/agents/original/index.ts +47 -0
  38. package/src/agents/original/pathfinder.ts +79 -0
  39. package/src/agents/original/quicksilver.ts +84 -0
  40. package/src/agents/original/sage.ts +73 -0
  41. package/src/agents/original/scribe.ts +96 -0
  42. package/src/agents/original/sentinel.ts +100 -0
  43. package/src/agents/original/types.ts +16 -0
  44. package/src/agents/prometheus.ts +307 -0
  45. package/src/agents/sisyphus.ts +414 -0
  46. package/src/agents/types.ts +55 -0
  47. package/src/cli.ts +553 -0
  48. package/src/commands/index.ts +42 -0
  49. package/src/commands/omc-explore.md +30 -0
  50. package/src/commands/omc-librarian.md +30 -0
  51. package/src/commands/omc-oracle.md +30 -0
  52. package/src/commands/omc-plan.md +59 -0
  53. package/src/commands/omc-reviewer.md +27 -0
  54. package/src/commands/omc-scout.md +28 -0
  55. package/src/commands/omc-sisyphus.md +31 -0
  56. package/src/commands/omc-start-work.md +99 -0
  57. package/src/commands/omcx-commit.md +85 -0
  58. package/src/commands/omcx-docs.md +120 -0
  59. package/src/commands/omcx-implement.md +73 -0
  60. package/src/commands/omcx-refactor.md +80 -0
  61. package/src/config/index.ts +2 -0
  62. package/src/config/loader.ts +105 -0
  63. package/src/config/schema.ts +158 -0
  64. package/src/features/boulder-state/constants.ts +16 -0
  65. package/src/features/boulder-state/index.ts +27 -0
  66. package/src/features/boulder-state/storage.ts +171 -0
  67. package/src/features/boulder-state/types.ts +26 -0
  68. package/src/generators/agent-generator.ts +176 -0
  69. package/src/generators/index.ts +5 -0
  70. package/src/hooks/comment-checker.ts +162 -0
  71. package/src/hooks/index.ts +25 -0
  72. package/src/hooks/start-work.ts +171 -0
  73. package/src/hooks/todo-continuation.ts +113 -0
  74. package/src/index.ts +33 -0
  75. package/src/installer/index.ts +377 -0
  76. package/src/installer/settings-merger.ts +295 -0
  77. package/src/mcp/background-agent-server/concurrency.ts +176 -0
  78. package/src/mcp/background-agent-server/index.ts +6 -0
  79. package/src/mcp/background-agent-server/server.ts +378 -0
  80. package/src/mcp/background-agent-server/task-manager.ts +244 -0
  81. package/src/providers/anthropic-client.ts +204 -0
  82. package/src/providers/base-client.ts +98 -0
  83. package/src/providers/deepseek.ts +26 -0
  84. package/src/providers/index.ts +17 -0
  85. package/src/providers/minimax.ts +31 -0
  86. package/src/providers/openrouter.ts +103 -0
  87. package/src/providers/router.ts +195 -0
  88. package/src/providers/types.ts +61 -0
  89. package/src/providers/zhipu.ts +27 -0
  90. package/tsconfig.json +29 -0
package/.gitattributes ADDED
@@ -0,0 +1,2 @@
1
+ # Auto detect text files and perform LF normalization
2
+ * text=auto
package/CLAUDE.md ADDED
@@ -0,0 +1,39 @@
1
+ # oh-my-claude Development Guide
2
+
3
+ ## Build Commands
4
+
5
+ ```bash
6
+ bun install # Install dependencies
7
+ bun run build:all # Build everything (main, MCP server, hooks)
8
+ bun run typecheck # TypeScript type checking
9
+ bun test # Run tests
10
+ ```
11
+
12
+ ## Project Structure
13
+
14
+ - `src/agents/` - Agent definitions with prompts (8 agents)
15
+ - `src/config/` - Configuration schema (Zod validation)
16
+ - `src/providers/` - Multi-provider API clients (DeepSeek, ZhiPu, MiniMax, OpenRouter)
17
+ - `src/mcp/` - Background Agent MCP server
18
+ - `src/hooks/` - Claude Code hook scripts
19
+ - `src/generators/` - Agent .md file generators
20
+ - `src/installer/` - CLI installer
21
+
22
+ ## Architecture
23
+
24
+ - **Task Tool Agents** (Claude subscription): Sisyphus, Claude-Reviewer, Claude-Scout
25
+ - **MCP Background Agents** (external APIs): Oracle, Librarian, Explore, Frontend-UI-UX, Document-Writer
26
+
27
+ ## Conventions
28
+
29
+ - Use Bun runtime (not Node.js)
30
+ - All API clients are OpenAI-compatible
31
+ - Agent prompts are in their respective `src/agents/*.ts` files
32
+ - Configuration is validated with Zod schema
33
+
34
+ ## Testing Installation
35
+
36
+ ```bash
37
+ bun run install-local # Build and install to ~/.claude/
38
+ oh-my-claude doctor # Verify configuration
39
+ ```
package/LICENSE ADDED
@@ -0,0 +1,99 @@
1
+ # License
2
+
3
+ Portions of this software are licensed as follows:
4
+
5
+ - Agent prompts derived from [oh-my-opencode](https://github.com/nicepkg/opencode) are licensed under the
6
+ Sustainable Use License (see below).
7
+ - Original agent prompts (src/agents/original/) are available under the MIT License.
8
+ - All third party components incorporated into the oh-my-claude Software are licensed under the original
9
+ license provided by the owner of the applicable component.
10
+ - Content outside of the above mentioned files or restrictions is available under the "Sustainable Use
11
+ License" as defined below.
12
+
13
+ ## Sustainable Use License
14
+
15
+ Version 1.0
16
+
17
+ ### Acceptance
18
+
19
+ By using the software, you agree to all of the terms and conditions below.
20
+
21
+ ### Copyright License
22
+
23
+ The licensor grants you a non-exclusive, royalty-free, worldwide, non-sublicensable, non-transferable license
24
+ to use, copy, distribute, make available, and prepare derivative works of the software, in each case subject
25
+ to the limitations below.
26
+
27
+ ### Limitations
28
+
29
+ You may use or modify the software only for your own internal business purposes or for non-commercial or
30
+ personal use. You may distribute the software or provide it to others only if you do so free of charge for
31
+ non-commercial purposes. You may not alter, remove, or obscure any licensing, copyright, or other notices of
32
+ the licensor in the software. Any use of the licensor's trademarks is subject to applicable law.
33
+
34
+ ### Patents
35
+
36
+ The licensor grants you a license, under any patent claims the licensor can license, or becomes able to
37
+ license, to make, have made, use, sell, offer for sale, import and have imported the software, in each case
38
+ subject to the limitations and conditions in this license. This license does not cover any patent claims that
39
+ you cause to be infringed by modifications or additions to the software. If you or your company make any
40
+ written claim that the software infringes or contributes to infringement of any patent, your patent license
41
+ for the software granted under these terms ends immediately. If your company makes such a claim, your patent
42
+ license ends immediately for work on behalf of your company.
43
+
44
+ ### Notices
45
+
46
+ You must ensure that anyone who gets a copy of any part of the software from you also gets a copy of these
47
+ terms. If you modify the software, you must include in any modified copies of the software a prominent notice
48
+ stating that you have modified the software.
49
+
50
+ ### No Other Rights
51
+
52
+ These terms do not imply any licenses other than those expressly granted in these terms.
53
+
54
+ ### Termination
55
+
56
+ If you use the software in violation of these terms, such use is not licensed, and your license will
57
+ automatically terminate. If the licensor provides you with a notice of your violation, and you cease all
58
+ violation of this license no later than 30 days after you receive that notice, your license will be reinstated
59
+ retroactively. However, if you violate these terms after such reinstatement, any additional violation of these
60
+ terms will cause your license to terminate automatically and permanently.
61
+
62
+ ### No Liability
63
+
64
+ As far as the law allows, the software comes as is, without any warranty or condition, and the licensor will
65
+ not be liable to you for any damages arising out of these terms or the use or nature of the software, under
66
+ any kind of legal claim.
67
+
68
+ ### Definitions
69
+
70
+ The "licensor" is the entity offering these terms.
71
+
72
+ The "software" is the software the licensor makes available under these terms, including any portion of it.
73
+
74
+ "You" refers to the individual or entity agreeing to these terms.
75
+
76
+ "Your company" is any legal entity, sole proprietorship, or other kind of organization that you work for, plus
77
+ all organizations that have control over, are under the control of, or are under common control with that
78
+ organization. Control means ownership of substantially all the assets of an entity, or the power to direct its
79
+ management and policies by vote, contract, or otherwise. Control can be direct or indirect.
80
+
81
+ "Your license" is the license granted to you for the software under these terms.
82
+
83
+ "Use" means anything you do with the software requiring your license.
84
+
85
+ "Trademark" means trademarks, service marks, and similar rights.
86
+
87
+ ---
88
+
89
+ ## Acknowledgments
90
+
91
+ This project contains agent prompts derived from [oh-my-opencode](https://github.com/nicepkg/opencode),
92
+ which uses the Sustainable Use License. We acknowledge the original work and comply with its license terms.
93
+
94
+ This software has been modified from the original oh-my-opencode implementation:
95
+ - Adapted for Claude Code plugin architecture
96
+ - Added multi-provider MCP server support
97
+ - Created original alternative agent prompts
98
+
99
+ Third-party dependencies are licensed under their respective licenses.
package/README.md ADDED
@@ -0,0 +1,288 @@
1
+ # oh-my-claude
2
+
3
+ [English](README.md) | [中文](README.zh-CN.md)
4
+
5
+ Multi-provider MCP server for [Claude Code](https://docs.anthropic.com/en/docs/claude-code) with specialized agent workflows.
6
+
7
+ Route background tasks to multiple AI providers (DeepSeek, ZhiPu GLM, MiniMax) via Anthropic-compatible APIs while leveraging Claude Code's native capabilities.
8
+
9
+ ## Features
10
+
11
+ - **Multi-Provider MCP Server** - Background task execution with DeepSeek, ZhiPu GLM, MiniMax
12
+ - **Specialized Agent Workflows** - Pre-configured agents for different task types (Sisyphus, Oracle, Librarian, etc.)
13
+ - **Slash Commands** - Quick actions (`/omcx-commit`, `/omcx-implement`) and agent activation (`/omc-sisyphus`, `/omc-plan`)
14
+ - **Planning System** - Strategic planning with Prometheus agent and boulder-state tracking
15
+ - **Official MCP Setup** - One-command installation for Sequential Thinking, MiniMax, and GLM MCPs
16
+ - **Concurrent Execution** - Per-provider rate limiting and parallel task management
17
+ - **Hook Integration** - Code quality checks and todo tracking
18
+
19
+ ## Quick Start
20
+
21
+ ### Prerequisites
22
+
23
+ - [Bun](https://bun.sh/) runtime
24
+ - [Claude Code](https://docs.anthropic.com/en/docs/claude-code) CLI installed
25
+ - API keys for providers you want to use
26
+
27
+ ### Installation
28
+
29
+ ```bash
30
+ # Install from npm (recommended)
31
+ npx @lgcyaxi/oh-my-claude install
32
+
33
+ # Or clone and install locally
34
+ git clone https://github.com/lgcyaxi/oh-my-claude.git
35
+ cd oh-my-claude
36
+ bun install && bun run build:all
37
+ bun run install-local
38
+ ```
39
+
40
+ ### Set API Keys
41
+
42
+ ```bash
43
+ # DeepSeek (for Oracle, Explore agents)
44
+ export DEEPSEEK_API_KEY=your-deepseek-api-key
45
+
46
+ # ZhiPu GLM (for Librarian, Frontend-UI-UX agents)
47
+ export ZHIPU_API_KEY=your-zhipu-api-key
48
+
49
+ # MiniMax (for Document-Writer agent)
50
+ export MINIMAX_API_KEY=your-minimax-api-key
51
+ ```
52
+
53
+ ### Setup Official MCP Servers
54
+
55
+ ```bash
56
+ # Install all official MCP servers (Sequential Thinking, MiniMax, GLM)
57
+ npx @lgcyaxi/oh-my-claude setup-mcp
58
+
59
+ # Or install specific ones
60
+ npx @lgcyaxi/oh-my-claude setup-mcp --thinking # Sequential Thinking only
61
+ npx @lgcyaxi/oh-my-claude setup-mcp --minimax # MiniMax only
62
+ npx @lgcyaxi/oh-my-claude setup-mcp --glm # GLM/ZhiPu servers only
63
+
64
+ # List available MCP servers
65
+ npx @lgcyaxi/oh-my-claude setup-mcp --list
66
+ ```
67
+
68
+ ### Verify Installation
69
+
70
+ ```bash
71
+ # Check installation status
72
+ npx @lgcyaxi/oh-my-claude status
73
+
74
+ # Diagnose configuration (with detailed component status)
75
+ npx @lgcyaxi/oh-my-claude doctor --detail
76
+ ```
77
+
78
+ ## Slash Commands
79
+
80
+ ### Agent Commands (`/omc-*`)
81
+
82
+ | Command | Description |
83
+ |---------|-------------|
84
+ | `/omc-sisyphus` | Activate Sisyphus - full implementation orchestrator |
85
+ | `/omc-oracle` | Activate Oracle - deep reasoning and architecture |
86
+ | `/omc-librarian` | Activate Librarian - external research and docs |
87
+ | `/omc-reviewer` | Activate Claude-Reviewer - code review and QA |
88
+ | `/omc-scout` | Activate Claude-Scout - fast exploration |
89
+ | `/omc-explore` | Activate Explore - codebase search |
90
+ | `/omc-plan` | Start strategic planning with Prometheus |
91
+ | `/omc-start-work` | Begin work on an existing plan |
92
+
93
+ ### Quick Action Commands (`/omcx-*`)
94
+
95
+ | Command | Description |
96
+ |---------|-------------|
97
+ | `/omcx-commit` | Smart git commit with conventional format |
98
+ | `/omcx-implement` | Implement a feature with best practices |
99
+ | `/omcx-refactor` | Refactor code with quality improvements |
100
+ | `/omcx-docs` | Generate or update documentation |
101
+
102
+ ## Agent Workflows
103
+
104
+ | Agent | Provider | Model | Role |
105
+ |-------|----------|-------|------|
106
+ | **Sisyphus** | Claude (Task tool) | claude-opus-4-5 | Primary orchestrator |
107
+ | **Claude-Reviewer** | Claude (Task tool) | claude-sonnet-4-5 | Code review, QA |
108
+ | **Claude-Scout** | Claude (Task tool) | claude-haiku-4-5 | Fast exploration |
109
+ | **Prometheus** | Claude (Task tool) | claude-opus-4-5 | Strategic planning |
110
+ | **Oracle** | DeepSeek (MCP) | deepseek-reasoner | Deep reasoning |
111
+ | **Librarian** | ZhiPu (MCP) | glm-4.7 | External research |
112
+ | **Explore** | DeepSeek (MCP) | deepseek-chat | Codebase search |
113
+ | **Frontend-UI-UX** | ZhiPu (MCP) | glm-4v-flash | Visual/UI design |
114
+ | **Document-Writer** | MiniMax (MCP) | MiniMax-M2.1 | Documentation |
115
+
116
+ ## Official MCP Servers
117
+
118
+ The `setup-mcp` command installs these official MCP servers:
119
+
120
+ | Server | Provider | Description | API Key Required |
121
+ |--------|----------|-------------|------------------|
122
+ | **sequential-thinking** | Anthropic | Structured problem-solving | No |
123
+ | **MiniMax** | MiniMax | Coding plan assistance | MINIMAX_API_KEY |
124
+ | **web-reader** | ZhiPu GLM | Web content extraction | ZHIPU_API_KEY |
125
+ | **web-search-prime** | ZhiPu GLM | Web search | ZHIPU_API_KEY |
126
+ | **zread** | ZhiPu GLM | GitHub repository reader | ZHIPU_API_KEY |
127
+ | **zai-mcp-server** | ZhiPu GLM | Image/video analysis | ZHIPU_API_KEY |
128
+
129
+ ## CLI Commands
130
+
131
+ ```bash
132
+ # Installation
133
+ npx @lgcyaxi/oh-my-claude install # Install oh-my-claude
134
+ npx @lgcyaxi/oh-my-claude install --force # Force reinstall
135
+ npx @lgcyaxi/oh-my-claude install --skip-mcp # Skip MCP server setup
136
+
137
+ # Status & Diagnostics
138
+ npx @lgcyaxi/oh-my-claude status # Check installation status
139
+ npx @lgcyaxi/oh-my-claude doctor # Diagnose configuration
140
+ npx @lgcyaxi/oh-my-claude doctor --detail # Detailed component status
141
+ npx @lgcyaxi/oh-my-claude doctor --no-color # Disable colored output
142
+
143
+ # MCP Server Setup
144
+ npx @lgcyaxi/oh-my-claude setup-mcp # Install all official MCPs
145
+ npx @lgcyaxi/oh-my-claude setup-mcp --list # List available MCPs
146
+ npx @lgcyaxi/oh-my-claude setup-mcp --thinking # Sequential Thinking only
147
+ npx @lgcyaxi/oh-my-claude setup-mcp --minimax # MiniMax only
148
+ npx @lgcyaxi/oh-my-claude setup-mcp --glm # GLM/ZhiPu servers only
149
+
150
+ # Uninstall
151
+ npx @lgcyaxi/oh-my-claude uninstall # Remove oh-my-claude
152
+ npx @lgcyaxi/oh-my-claude uninstall --keep-config # Keep config file
153
+ ```
154
+
155
+ ## Configuration
156
+
157
+ Configuration file: `~/.claude/oh-my-claude.json`
158
+
159
+ ```json
160
+ {
161
+ "providers": {
162
+ "claude": {
163
+ "type": "claude-subscription",
164
+ "note": "Uses Claude Code's native subscription"
165
+ },
166
+ "deepseek": {
167
+ "type": "anthropic-compatible",
168
+ "base_url": "https://api.deepseek.com/anthropic",
169
+ "api_key_env": "DEEPSEEK_API_KEY"
170
+ },
171
+ "zhipu": {
172
+ "type": "anthropic-compatible",
173
+ "base_url": "https://open.bigmodel.cn/api/anthropic",
174
+ "api_key_env": "ZHIPU_API_KEY"
175
+ },
176
+ "minimax": {
177
+ "type": "anthropic-compatible",
178
+ "base_url": "https://api.minimaxi.com/anthropic",
179
+ "api_key_env": "MINIMAX_API_KEY"
180
+ }
181
+ },
182
+ "agents": {
183
+ "Sisyphus": { "provider": "claude", "model": "claude-opus-4-5" },
184
+ "oracle": { "provider": "deepseek", "model": "deepseek-reasoner" },
185
+ "librarian": { "provider": "zhipu", "model": "glm-4.7" }
186
+ },
187
+ "concurrency": {
188
+ "default": 5,
189
+ "per_provider": {
190
+ "deepseek": 10,
191
+ "zhipu": 10,
192
+ "minimax": 5
193
+ }
194
+ }
195
+ }
196
+ ```
197
+
198
+ ## Architecture
199
+
200
+ ```
201
+ ┌──────────────────────────────────────────────────────────────────────────┐
202
+ │ Claude Code Session │
203
+ ├──────────────────────────────────────────────────────────────────────────┤
204
+ │ Primary Agent (Claude via Subscription) │
205
+ │ │ │
206
+ │ ┌────┴────┬─────────────────┐ │
207
+ │ ▼ ▼ ▼ │
208
+ │ Task Tool MCP Server Hooks │
209
+ │ (sync) (async) (lifecycle) │
210
+ │ │ │ │ │
211
+ │ ▼ ▼ ▼ │
212
+ │ Claude Multi-Provider settings.json │
213
+ │ Subagents Router scripts │
214
+ │ │ │
215
+ │ ├── DeepSeek (Anthropic-compatible) │
216
+ │ ├── ZhiPu GLM (Anthropic-compatible) │
217
+ │ ├── MiniMax (Anthropic-compatible) │
218
+ │ └── OpenRouter (OpenAI-compatible, optional) │
219
+ └──────────────────────────────────────────────────────────────────────────┘
220
+ ```
221
+
222
+ ### Execution Modes
223
+
224
+ - **Task Tool (sync)**: Claude subscription agents run via Claude Code's native Task tool
225
+ - **MCP Server (async)**: External API agents run via MCP for parallel background execution
226
+
227
+ ## Development
228
+
229
+ ```bash
230
+ # Install dependencies
231
+ bun install
232
+
233
+ # Type checking
234
+ bun run typecheck
235
+
236
+ # Build everything
237
+ bun run build:all
238
+
239
+ # Run tests
240
+ bun test
241
+
242
+ # Install locally for development
243
+ bun run install-local
244
+ ```
245
+
246
+ ## Troubleshooting
247
+
248
+ ### "Provider not configured"
249
+
250
+ Make sure you've set the API key environment variable:
251
+ ```bash
252
+ export DEEPSEEK_API_KEY=your-key
253
+ ```
254
+
255
+ ### "Agent uses Claude subscription"
256
+
257
+ Some agents use Claude Code's Task tool, not the MCP server. These run synchronously within Claude Code.
258
+
259
+ ### MCP server not responding
260
+
261
+ Rebuild the MCP server:
262
+ ```bash
263
+ bun run build:mcp
264
+ npx @lgcyaxi/oh-my-claude install --force
265
+ ```
266
+
267
+ ### Check detailed status
268
+
269
+ ```bash
270
+ npx @lgcyaxi/oh-my-claude doctor --detail
271
+ ```
272
+
273
+ ## Contributing
274
+
275
+ Contributions are welcome! Please feel free to submit a Pull Request.
276
+
277
+ ## License
278
+
279
+ Sustainable Use License - see [LICENSE](LICENSE) for details.
280
+
281
+ This project contains agent prompts derived from [oh-my-opencode](https://github.com/nicepkg/opencode). Original agent prompts in `src/agents/original/` are available under MIT License.
282
+
283
+ ## Acknowledgments
284
+
285
+ - Built for [Claude Code](https://docs.anthropic.com/en/docs/claude-code)
286
+ - Uses [Model Context Protocol](https://modelcontextprotocol.io/)
287
+ - Agent workflow concepts from [oh-my-opencode](https://github.com/nicepkg/opencode)
288
+ - Sequential Thinking MCP from [@modelcontextprotocol/server-sequential-thinking](https://www.npmjs.com/package/@modelcontextprotocol/server-sequential-thinking)