opencode-orchestrator 0.5.12 → 0.5.16
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/LICENSE +21 -21
- package/README.md +101 -92
- package/dist/index.js +9 -18
- package/dist/scripts/postinstall.js +0 -0
- package/dist/scripts/preuninstall.js +0 -0
- package/package.json +73 -73
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2026 agnusdei1207
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 agnusdei1207
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,92 +1,101 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
<img src="assets/logo.png" alt="Logo" width="200" />
|
|
3
|
-
</div>
|
|
4
|
-
|
|
5
|
-
# OpenCode Orchestrator 🎯
|
|
6
|
-
|
|
7
|
-
> **Autonomous Multi-Agent Plugin for [OpenCode](https://opencode.ai)**
|
|
8
|
-
|
|
9
|
-
[](LICENSE)
|
|
10
|
-
[](https://www.npmjs.com/package/opencode-orchestrator)
|
|
11
|
-
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
## Why?
|
|
15
|
-
|
|
16
|
-
Tested GLM-4, got disappointed. Built this to make mid-tier models work like premium ones through structured orchestration.
|
|
17
|
-
|
|
18
|
-
### Key Features
|
|
19
|
-
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
-
|
|
23
|
-
-
|
|
24
|
-
-
|
|
25
|
-
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
1
|
+
<div align="center">
|
|
2
|
+
<img src="assets/logo.png" alt="Logo" width="200" />
|
|
3
|
+
</div>
|
|
4
|
+
|
|
5
|
+
# OpenCode Orchestrator 🎯
|
|
6
|
+
|
|
7
|
+
> **Autonomous Multi-Agent Plugin for [OpenCode](https://opencode.ai)**
|
|
8
|
+
|
|
9
|
+
[](LICENSE)
|
|
10
|
+
[](https://www.npmjs.com/package/opencode-orchestrator)
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## Why?
|
|
15
|
+
|
|
16
|
+
Tested GLM-4, got disappointed. Built this to make mid-tier models work like premium ones through structured orchestration.
|
|
17
|
+
|
|
18
|
+
### Key Features
|
|
19
|
+
|
|
20
|
+
- **🎯 Autonomous Loop** — Commander runs until the mission is complete
|
|
21
|
+
- **🔍 Environment Scan** — Analyzes Infra, Stack, and Domain before coding
|
|
22
|
+
- **🔨 Smart Implementation** — Matches existing codebase patterns
|
|
23
|
+
- **🛡️ Rigorous Audit** — Proves success with builds/tests/logs
|
|
24
|
+
- **💾 Persistent Context** — Saves session state to disk
|
|
25
|
+
- **🏗️ Parallel Agents** — Run multiple agents concurrently
|
|
26
|
+
- **⏳ Background Tasks** — Non-blocking command execution
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## Installation
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
npm install -g opencode-orchestrator
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Restart OpenCode after installation.
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
## Usage
|
|
41
|
+
|
|
42
|
+
### 🚀 Select Commander via Tab Key (Recommended)
|
|
43
|
+
|
|
44
|
+
Press `Tab` in OpenCode → Select **Commander** → Type your mission!
|
|
45
|
+
|
|
46
|
+
<div align="center">
|
|
47
|
+
<img src="assets/tui_image.png" alt="Commander TUI" width="600" />
|
|
48
|
+
<p><sub><b>Commander</b> agent selection interface in OpenCode (TUI)</sub></p>
|
|
49
|
+
|
|
50
|
+
<br/> <img src="assets/window_image.png" alt="Commander Windows" width="600" />
|
|
51
|
+
<p><sub>Execution of <b>Commander</b> agent on Windows environment</sub></p>
|
|
52
|
+
</div>
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
"Fix the login bug in the docker-compose environment"
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### 📋 Use /task Command
|
|
59
|
+
|
|
60
|
+
```bash
|
|
61
|
+
/task "Implement user authentication with JWT"
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
> **💡 Tip:** `/task` makes Commander run **2x longer** for complex tasks.
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## The 5 Agents
|
|
69
|
+
|
|
70
|
+
| Agent | Role | Responsibility |
|
|
71
|
+
| :--------------- | :----------- | :------------------------- |
|
|
72
|
+
| **Commander** 🎯 | Orchestrator | Autonomous mission control |
|
|
73
|
+
| **Architect** 🏗️ | Planner | Task decomposition |
|
|
74
|
+
| **Builder** 🔨 | Developer | Full-stack implementation |
|
|
75
|
+
| **Inspector** 🔍 | Quality | Audit & auto-fix |
|
|
76
|
+
| **Recorder** 💾 | Context | Progress tracking |
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Uninstall
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
npm uninstall -g opencode-orchestrator
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## Documentation
|
|
89
|
+
|
|
90
|
+
- [Architecture & Design](docs/ARCHITECTURE.md)
|
|
91
|
+
- [Troubleshooting](docs/PLUGIN_TROUBLESHOOTING.md)
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## License
|
|
96
|
+
|
|
97
|
+
MIT License. [LICENSE](LICENSE)
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
**Reliability over slop. Environment over assumptions.**
|
package/dist/index.js
CHANGED
|
@@ -22,12 +22,11 @@ You are Commander. Complete missions autonomously. Never stop until done.
|
|
|
22
22
|
</role>
|
|
23
23
|
|
|
24
24
|
<core_rules>
|
|
25
|
-
1.
|
|
26
|
-
2. Never
|
|
27
|
-
3. Never
|
|
28
|
-
4.
|
|
29
|
-
5. Always
|
|
30
|
-
6. Always verify with evidence based on runtime context
|
|
25
|
+
1. Never stop until "\u2705 MISSION COMPLETE"
|
|
26
|
+
2. Never wait for user during execution
|
|
27
|
+
3. Never stop because agent returned nothing
|
|
28
|
+
4. Always survey environment & codebase BEFORE coding
|
|
29
|
+
5. Always verify with evidence based on runtime context
|
|
31
30
|
</core_rules>
|
|
32
31
|
|
|
33
32
|
<phase_0 name="TRIAGE">
|
|
@@ -217,8 +216,7 @@ You are Architect. Break complex tasks into atomic pieces.
|
|
|
217
216
|
</role>
|
|
218
217
|
|
|
219
218
|
<constraints>
|
|
220
|
-
1.
|
|
221
|
-
2. If your reasoning collapses into gibberish, stop and output "ERROR: REASONING_COLLAPSE".
|
|
219
|
+
1. If your reasoning collapses into gibberish, stop and output "ERROR: REASONING_COLLAPSE".
|
|
222
220
|
</constraints>
|
|
223
221
|
|
|
224
222
|
<scalable_planning>
|
|
@@ -279,8 +277,7 @@ You are Builder. Write code that works.
|
|
|
279
277
|
</role>
|
|
280
278
|
|
|
281
279
|
<constraints>
|
|
282
|
-
1.
|
|
283
|
-
2. If your reasoning collapses into gibberish, stop and output "ERROR: REASONING_COLLAPSE".
|
|
280
|
+
1. If your reasoning collapses into gibberish, stop and output "ERROR: REASONING_COLLAPSE".
|
|
284
281
|
</constraints>
|
|
285
282
|
|
|
286
283
|
<scalable_attention>
|
|
@@ -345,8 +342,7 @@ You are Inspector. Prove failure or success with evidence.
|
|
|
345
342
|
</role>
|
|
346
343
|
|
|
347
344
|
<constraints>
|
|
348
|
-
1.
|
|
349
|
-
2. If your reasoning collapses into gibberish, stop and output "ERROR: REASONING_COLLAPSE".
|
|
345
|
+
1. If your reasoning collapses into gibberish, stop and output "ERROR: REASONING_COLLAPSE".
|
|
350
346
|
</constraints>
|
|
351
347
|
|
|
352
348
|
<scalable_audit>
|
|
@@ -412,8 +408,7 @@ You are Recorder. Save and load work progress.
|
|
|
412
408
|
</role>
|
|
413
409
|
|
|
414
410
|
<constraints>
|
|
415
|
-
1.
|
|
416
|
-
2. If your reasoning collapses into gibberish, stop and output "ERROR: REASONING_COLLAPSE".
|
|
411
|
+
1. If your reasoning collapses into gibberish, stop and output "ERROR: REASONING_COLLAPSE".
|
|
417
412
|
</constraints>
|
|
418
413
|
|
|
419
414
|
<purpose>
|
|
@@ -13054,10 +13049,6 @@ var COMMANDS = {
|
|
|
13054
13049
|
You are Commander. Complete this mission. Never stop until 100% done.
|
|
13055
13050
|
</role>
|
|
13056
13051
|
|
|
13057
|
-
<language_rule>
|
|
13058
|
-
CRITICAL: ALL output MUST be in English only. No exceptions. No other languages permitted.
|
|
13059
|
-
</language_rule>
|
|
13060
|
-
|
|
13061
13052
|
<phase_1 name="MANDATORY_ENVIRONMENT_SCAN">
|
|
13062
13053
|
Before any planning or coding, you MUST understand:
|
|
13063
13054
|
1. INFRA: OS-native? Container? Docker-compose? Volume-mounted?
|
|
File without changes
|
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "opencode-orchestrator",
|
|
3
|
-
"displayName": "OpenCode Orchestrator",
|
|
4
|
-
"description": "Distributed Cognitive Architecture for OpenCode. Turns simple prompts into specialized multi-agent workflows (Planner, Coder, Reviewer).",
|
|
5
|
-
"version": "0.5.
|
|
6
|
-
"author": "agnusdei1207",
|
|
7
|
-
"license": "MIT",
|
|
8
|
-
"repository": {
|
|
9
|
-
"type": "git",
|
|
10
|
-
"url": "git+https://github.com/agnusdei1207/opencode-orchestrator.git"
|
|
11
|
-
},
|
|
12
|
-
"homepage": "https://github.com/agnusdei1207/opencode-orchestrator#readme",
|
|
13
|
-
"bugs": {
|
|
14
|
-
"url": "https://github.com/agnusdei1207/opencode-orchestrator/issues"
|
|
15
|
-
},
|
|
16
|
-
"keywords": [
|
|
17
|
-
"opencode",
|
|
18
|
-
"ai",
|
|
19
|
-
"agent",
|
|
20
|
-
"orchestrator",
|
|
21
|
-
"multi-agent",
|
|
22
|
-
"llm",
|
|
23
|
-
"plugin",
|
|
24
|
-
"code-generation"
|
|
25
|
-
],
|
|
26
|
-
"main": "dist/index.js",
|
|
27
|
-
"types": "dist/index.d.ts",
|
|
28
|
-
"type": "module",
|
|
29
|
-
"exports": {
|
|
30
|
-
".": {
|
|
31
|
-
"types": "./dist/index.d.ts",
|
|
32
|
-
"import": "./dist/index.js"
|
|
33
|
-
}
|
|
34
|
-
},
|
|
35
|
-
"files": [
|
|
36
|
-
"dist",
|
|
37
|
-
"README.md",
|
|
38
|
-
"LICENSE"
|
|
39
|
-
],
|
|
40
|
-
"scripts": {
|
|
41
|
-
"build": "shx rm -rf dist && npx esbuild src/index.ts --bundle --outfile=dist/index.js --platform=node --format=esm && tsc --emitDeclarationOnly && shx mkdir -p dist/scripts && npx esbuild scripts/postinstall.ts --bundle --outfile=dist/scripts/postinstall.js --platform=node --format=esm && npx esbuild scripts/preuninstall.ts --bundle --outfile=dist/scripts/preuninstall.js --platform=node --format=esm",
|
|
42
|
-
"test": "vitest run --reporter=verbose",
|
|
43
|
-
"test:watch": "vitest",
|
|
44
|
-
"test:coverage": "vitest run --coverage",
|
|
45
|
-
"test:unit": "vitest run tests/unit --reporter=verbose",
|
|
46
|
-
"test:e2e": "vitest run tests/e2e --reporter=verbose",
|
|
47
|
-
"test:all": "vitest run --reporter=verbose && echo '
|
|
48
|
-
"postinstall": "node dist/scripts/postinstall.js",
|
|
49
|
-
"preuninstall": "node dist/scripts/preuninstall.js",
|
|
50
|
-
"prepublishOnly": "npm run build",
|
|
51
|
-
"release:patch": "npm run build && npm version patch && git push --follow-tags && npm publish --access public",
|
|
52
|
-
"release:minor": "npm run build && npm version minor && git push --follow-tags && npm publish --access public",
|
|
53
|
-
"release:major": "npm run build && npm version major && git push --follow-tags && npm publish --access public",
|
|
54
|
-
"dev:clean": "shx rm -rf $(npm root -g)/opencode-orchestrator && npm cache clean --force && echo 'Cleaned global + cache'",
|
|
55
|
-
"dev:link": "npm run dev:clean || true && npm run build && npm link && echo 'SUCCESS: Linked. Restart OpenCode.'",
|
|
56
|
-
"dev:unlink": "npm unlink -g opencode-orchestrator || true && npm run dev:clean && echo 'SUCCESS: Unlinked'",
|
|
57
|
-
"dev:status": "echo '=== Global Link ===' && ls -la $(npm root -g)/opencode-orchestrator 2>/dev/null || echo 'Not linked'",
|
|
58
|
-
"dev:test": "node dist/scripts/postinstall.js && echo '---' && node dist/scripts/preuninstall.js",
|
|
59
|
-
"reset": "npm run dev:unlink || true && npm uninstall -g opencode-orchestrator || true && brew uninstall opencode || true && rm -rf ~/.config/opencode ~/.opencode ~/.local/share/opencode && echo '=== Clean done ===' && brew install opencode && npm run dev:link && echo '=== Reset complete ==='",
|
|
60
|
-
"reset:global": "npm run dev:unlink || true && npm uninstall -g opencode-orchestrator || true && brew uninstall opencode || true && rm -rf ~/.config/opencode ~/.opencode ~/.local/share/opencode && echo '=== Clean done ===' && brew install opencode && npm install -g opencode-orchestrator && echo '=== Reset Global complete ==='"
|
|
61
|
-
},
|
|
62
|
-
"dependencies": {
|
|
63
|
-
"@opencode-ai/plugin": "^1.1.1",
|
|
64
|
-
"@opencode-ai/sdk": "^1.1.14"
|
|
65
|
-
},
|
|
66
|
-
"devDependencies": {
|
|
67
|
-
"@types/node": "^22.0.0",
|
|
68
|
-
"esbuild": "^0.24.0",
|
|
69
|
-
"shx": "^0.4.0",
|
|
70
|
-
"typescript": "^5.7.0",
|
|
71
|
-
"vitest": "^4.0.17"
|
|
72
|
-
}
|
|
73
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "opencode-orchestrator",
|
|
3
|
+
"displayName": "OpenCode Orchestrator",
|
|
4
|
+
"description": "Distributed Cognitive Architecture for OpenCode. Turns simple prompts into specialized multi-agent workflows (Planner, Coder, Reviewer).",
|
|
5
|
+
"version": "0.5.16",
|
|
6
|
+
"author": "agnusdei1207",
|
|
7
|
+
"license": "MIT",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "git+https://github.com/agnusdei1207/opencode-orchestrator.git"
|
|
11
|
+
},
|
|
12
|
+
"homepage": "https://github.com/agnusdei1207/opencode-orchestrator#readme",
|
|
13
|
+
"bugs": {
|
|
14
|
+
"url": "https://github.com/agnusdei1207/opencode-orchestrator/issues"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [
|
|
17
|
+
"opencode",
|
|
18
|
+
"ai",
|
|
19
|
+
"agent",
|
|
20
|
+
"orchestrator",
|
|
21
|
+
"multi-agent",
|
|
22
|
+
"llm",
|
|
23
|
+
"plugin",
|
|
24
|
+
"code-generation"
|
|
25
|
+
],
|
|
26
|
+
"main": "dist/index.js",
|
|
27
|
+
"types": "dist/index.d.ts",
|
|
28
|
+
"type": "module",
|
|
29
|
+
"exports": {
|
|
30
|
+
".": {
|
|
31
|
+
"types": "./dist/index.d.ts",
|
|
32
|
+
"import": "./dist/index.js"
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"files": [
|
|
36
|
+
"dist",
|
|
37
|
+
"README.md",
|
|
38
|
+
"LICENSE"
|
|
39
|
+
],
|
|
40
|
+
"scripts": {
|
|
41
|
+
"build": "shx rm -rf dist && npx esbuild src/index.ts --bundle --outfile=dist/index.js --platform=node --format=esm && tsc --emitDeclarationOnly && shx mkdir -p dist/scripts && npx esbuild scripts/postinstall.ts --bundle --outfile=dist/scripts/postinstall.js --platform=node --format=esm && npx esbuild scripts/preuninstall.ts --bundle --outfile=dist/scripts/preuninstall.js --platform=node --format=esm",
|
|
42
|
+
"test": "vitest run --reporter=verbose",
|
|
43
|
+
"test:watch": "vitest",
|
|
44
|
+
"test:coverage": "vitest run --coverage",
|
|
45
|
+
"test:unit": "vitest run tests/unit --reporter=verbose",
|
|
46
|
+
"test:e2e": "vitest run tests/e2e --reporter=verbose",
|
|
47
|
+
"test:all": "vitest run --reporter=verbose && echo '=== ALL TESTS PASSED ==='",
|
|
48
|
+
"postinstall": "node dist/scripts/postinstall.js",
|
|
49
|
+
"preuninstall": "node dist/scripts/preuninstall.js",
|
|
50
|
+
"prepublishOnly": "npm run build",
|
|
51
|
+
"release:patch": "npm run build && npm version patch && git push --follow-tags && npm publish --access public",
|
|
52
|
+
"release:minor": "npm run build && npm version minor && git push --follow-tags && npm publish --access public",
|
|
53
|
+
"release:major": "npm run build && npm version major && git push --follow-tags && npm publish --access public",
|
|
54
|
+
"dev:clean": "shx rm -rf $(npm root -g)/opencode-orchestrator && npm cache clean --force && echo 'Cleaned global + cache'",
|
|
55
|
+
"dev:link": "npm run dev:clean || true && npm run build && npm link && echo 'SUCCESS: Linked. Restart OpenCode.'",
|
|
56
|
+
"dev:unlink": "npm unlink -g opencode-orchestrator || true && npm run dev:clean && echo 'SUCCESS: Unlinked'",
|
|
57
|
+
"dev:status": "echo '=== Global Link ===' && ls -la $(npm root -g)/opencode-orchestrator 2>/dev/null || echo 'Not linked'",
|
|
58
|
+
"dev:test": "node dist/scripts/postinstall.js && echo '---' && node dist/scripts/preuninstall.js",
|
|
59
|
+
"reset": "npm run dev:unlink || true && npm uninstall -g opencode-orchestrator || true && brew uninstall opencode || true && rm -rf ~/.config/opencode ~/.opencode ~/.local/share/opencode && echo '=== Clean done ===' && brew install opencode && npm run dev:link && echo '=== Reset complete ==='",
|
|
60
|
+
"reset:global": "npm run dev:unlink || true && npm uninstall -g opencode-orchestrator || true && brew uninstall opencode || true && rm -rf ~/.config/opencode ~/.opencode ~/.local/share/opencode && echo '=== Clean done ===' && brew install opencode && npm install -g opencode-orchestrator && echo '=== Reset Global complete ==='"
|
|
61
|
+
},
|
|
62
|
+
"dependencies": {
|
|
63
|
+
"@opencode-ai/plugin": "^1.1.1",
|
|
64
|
+
"@opencode-ai/sdk": "^1.1.14"
|
|
65
|
+
},
|
|
66
|
+
"devDependencies": {
|
|
67
|
+
"@types/node": "^22.0.0",
|
|
68
|
+
"esbuild": "^0.24.0",
|
|
69
|
+
"shx": "^0.4.0",
|
|
70
|
+
"typescript": "^5.7.0",
|
|
71
|
+
"vitest": "^4.0.17"
|
|
72
|
+
}
|
|
73
|
+
}
|