@hiai-gg/hiai-opencode 0.1.5 → 0.1.6
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/.env.example +14 -8
- package/AGENTS.md +14 -5
- package/LICENSE.md +0 -1
- package/README.md +42 -23
- package/assets/cli/hiai-opencode.mjs +590 -7
- package/assets/mcp/mempalace.mjs +159 -25
- package/config/hiai-opencode.schema.json +13 -2
- package/dist/agents/dynamic-agent-core-sections.d.ts +4 -1
- package/dist/agents/dynamic-agent-prompt-builder.d.ts +1 -1
- package/dist/config/platform-schema.d.ts +2 -6
- package/dist/config/schema/commands.d.ts +1 -0
- package/dist/config/schema/oh-my-opencode-config.d.ts +1 -3
- package/dist/config/types.d.ts +1 -3
- package/dist/features/builtin-commands/templates/doctor.d.ts +1 -0
- package/dist/features/builtin-commands/types.d.ts +1 -1
- package/dist/features/builtin-skills/skills/hiai-opencode-setup.d.ts +2 -0
- package/dist/features/builtin-skills/skills/index.d.ts +1 -0
- package/dist/index.js +348 -1424
- package/dist/shared/mcp-static-export.d.ts +22 -0
- package/dist/tools/ast-grep/constants.d.ts +1 -1
- package/dist/tools/ast-grep/environment-check.d.ts +1 -5
- package/dist/tools/ast-grep/language-support.d.ts +0 -1
- package/dist/tools/ast-grep/types.d.ts +1 -2
- package/hiai-opencode.json +4 -2
- package/package.json +6 -4
- package/src/agents/bob/default.ts +6 -1
- package/src/agents/bob/gpt-pro.ts +1 -0
- package/src/agents/bob.ts +1 -0
- package/src/agents/coder/gpt-codex.ts +1 -0
- package/src/agents/coder/gpt-pro.ts +1 -0
- package/src/agents/coder/gpt.ts +1 -0
- package/src/agents/dynamic-agent-core-sections.ts +36 -0
- package/src/agents/dynamic-agent-prompt-builder.ts +1 -0
- package/src/config/defaults.ts +14 -1
- package/src/config/model-slots-and-export.test.ts +55 -0
- package/src/config/platform-schema.ts +1 -3
- package/src/config/schema/commands.ts +1 -0
- package/src/config/schema/oh-my-opencode-config.ts +0 -3
- package/src/config/types.ts +1 -3
- package/src/features/builtin-commands/commands.ts +7 -0
- package/src/features/builtin-commands/templates/doctor.ts +43 -0
- package/src/features/builtin-commands/types.ts +1 -1
- package/src/features/builtin-skills/skills/hiai-opencode-setup.ts +69 -0
- package/src/features/builtin-skills/skills/index.ts +1 -0
- package/src/features/builtin-skills/skills.ts +10 -1
- package/src/index.ts +3 -75
- package/src/shared/mcp-static-export.ts +121 -0
- package/src/tools/ast-grep/constants.ts +1 -1
- package/src/tools/ast-grep/environment-check.ts +2 -32
- package/src/tools/ast-grep/language-support.ts +0 -3
- package/src/tools/ast-grep/types.ts +1 -2
- package/src/tools/skill-mcp/tools.test.ts +44 -0
- package/dist/ast-grep-napi.win32-x64-msvc-67c0y8nc.node +0 -0
- package/dist/config/loader.test.d.ts +0 -1
- package/dist/config/models.d.ts +0 -13
- package/dist/internals/plugins/websearch-cited/google.d.ts +0 -38
- package/dist/internals/plugins/websearch-cited/index.d.ts +0 -17
- package/dist/internals/plugins/websearch-cited/openai.d.ts +0 -9
- package/dist/internals/plugins/websearch-cited/openrouter.d.ts +0 -2
- package/dist/internals/plugins/websearch-cited/types.d.ts +0 -5
- package/src/internals/plugins/websearch-cited/LICENSE +0 -214
- package/src/internals/plugins/websearch-cited/codex_prompt.txt +0 -79
- package/src/internals/plugins/websearch-cited/google.ts +0 -749
- package/src/internals/plugins/websearch-cited/index.ts +0 -306
- package/src/internals/plugins/websearch-cited/openai.ts +0 -407
- package/src/internals/plugins/websearch-cited/openrouter.ts +0 -190
- package/src/internals/plugins/websearch-cited/types.ts +0 -7
package/.env.example
CHANGED
|
@@ -11,14 +11,7 @@
|
|
|
11
11
|
# - anthropic/claude-3-5-sonnet-latest
|
|
12
12
|
#
|
|
13
13
|
# Do not put model provider keys here for normal OpenCode usage.
|
|
14
|
-
#
|
|
15
|
-
# OPENROUTER_API_KEY=your_openrouter_api_key_here
|
|
16
|
-
# OPENAI_API_KEY=your_openai_api_key_here
|
|
17
|
-
# ANTHROPIC_API_KEY=your_anthropic_api_key_here
|
|
18
|
-
# DEEPSEEK_API_KEY=your_deepseek_api_key_here
|
|
19
|
-
# GLM_API_KEY=your_glm_api_key_here
|
|
20
|
-
# MINIMAX_API_KEY=your_minimax_api_key_here
|
|
21
|
-
# QWEN_API_KEY=your_qwen_api_key_here
|
|
14
|
+
# Connect model providers in OpenCode itself.
|
|
22
15
|
|
|
23
16
|
# MCP Service Keys
|
|
24
17
|
|
|
@@ -58,6 +51,19 @@
|
|
|
58
51
|
# Optional - if Linux system browser deps cannot be installed, edit hiai-opencode.json
|
|
59
52
|
# and add Playwright MCP args such as "--browser", "chrome" to use an existing browser.
|
|
60
53
|
|
|
54
|
+
# Static MCP export
|
|
55
|
+
|
|
56
|
+
# Optional - controls automatic .mcp.json export when the plugin loads.
|
|
57
|
+
# Values: if-missing (default), always (managed files only), force, 0/false/no/off.
|
|
58
|
+
# HIAI_OPENCODE_AUTO_EXPORT_MCP=if-missing
|
|
59
|
+
|
|
60
|
+
# Optional - override static MCP export path.
|
|
61
|
+
# HIAI_OPENCODE_MCP_EXPORT_PATH=./.mcp.json
|
|
62
|
+
|
|
63
|
+
# Optional - CLI export safety mode.
|
|
64
|
+
# Values: safe (default), force
|
|
65
|
+
# HIAI_OPENCODE_EXPORT_MCP_MODE=safe
|
|
66
|
+
|
|
61
67
|
# RAG MCP
|
|
62
68
|
|
|
63
69
|
# Optional - RAG search tool endpoint
|
package/AGENTS.md
CHANGED
|
@@ -66,9 +66,14 @@ Manual alternative:
|
|
|
66
66
|
|
|
67
67
|
```bash
|
|
68
68
|
opencode debug config
|
|
69
|
+
hiai-opencode doctor
|
|
70
|
+
hiai-opencode mcp-status
|
|
71
|
+
hiai-opencode export-mcp .mcp.json
|
|
69
72
|
opencode mcp list --print-logs --log-level INFO
|
|
70
73
|
```
|
|
71
74
|
|
|
75
|
+
`opencode mcp list` reads static `.mcp.json` files in many OpenCode versions. Runtime MCP servers launched by the plugin may work but not appear there until a static config exists. The plugin auto-exports `.mcp.json` on startup when missing. In `always` mode it overwrites only hiai-managed exports unless forced. `hiai-opencode export-mcp .mcp.json` can refresh it manually.
|
|
76
|
+
|
|
72
77
|
## Post-Install Bootstrap Instructions
|
|
73
78
|
|
|
74
79
|
When a user asks OpenCode or another agent to finish installing this plugin, follow this procedure.
|
|
@@ -110,13 +115,15 @@ When a user asks OpenCode or another agent to finish installing this plugin, fol
|
|
|
110
115
|
- `FIRECRAWL_API_KEY`
|
|
111
116
|
- `STITCH_AI_API_KEY`
|
|
112
117
|
- `CONTEXT7_API_KEY`
|
|
113
|
-
- `GOOGLE_SEARCH_API_KEY`
|
|
114
118
|
- `MEMPALACE_PYTHON`
|
|
115
119
|
- `OPENCODE_RAG_URL`
|
|
116
120
|
- `HIAI_PLAYWRIGHT_INSTALL_BROWSERS`
|
|
117
121
|
- `HIAI_MCP_AUTO_INSTALL`
|
|
118
122
|
7. Verify with:
|
|
119
123
|
- `opencode debug config`
|
|
124
|
+
- `hiai-opencode doctor`
|
|
125
|
+
- `hiai-opencode mcp-status`
|
|
126
|
+
- `hiai-opencode export-mcp .mcp.json` when static MCP visibility is needed
|
|
120
127
|
- `opencode mcp list --print-logs --log-level INFO`
|
|
121
128
|
|
|
122
129
|
### MCP Setup Matrix
|
|
@@ -126,7 +133,7 @@ When a user asks OpenCode or another agent to finish installing this plugin, fol
|
|
|
126
133
|
| `playwright` | Node and npx are available | Helper launcher runs `@playwright/mcp@latest`; set `HIAI_PLAYWRIGHT_INSTALL_BROWSERS=1` to install Chromium on first start |
|
|
127
134
|
| `sequential-thinking` | Node and npx are available | Helper launcher runs `@modelcontextprotocol/server-sequential-thinking` |
|
|
128
135
|
| `firecrawl` | `FIRECRAWL_API_KEY` is set | Helper launcher runs `firecrawl-mcp` |
|
|
129
|
-
| `mempalace` | `uv` is available, or Python 3.9+ with pip is available | Launcher prefers `uv`; otherwise uses Python and can run `python -m pip install --user mempalace` when `HIAI_MCP_AUTO_INSTALL` is not disabled |
|
|
136
|
+
| `mempalace` | `uv` is available, or Python 3.9+ with pip is available | Launcher prefers `uv`; otherwise uses Python and can run `python -m pip install --user mempalace` when `HIAI_MCP_AUTO_INSTALL` is not disabled. Interpreter can be pinned via `mcp.mempalace.pythonPath` or `MEMPALACE_PYTHON` |
|
|
130
137
|
| `rag` | User has a local or remote RAG endpoint | Uses `OPENCODE_RAG_URL`, defaulting to `http://localhost:9002/tools/search` |
|
|
131
138
|
| `stitch` | `STITCH_AI_API_KEY` is set | Remote MCP endpoint |
|
|
132
139
|
| `context7` | User wants Context7 docs/search | Remote MCP endpoint; use `CONTEXT7_API_KEY` if available |
|
|
@@ -155,14 +162,14 @@ Check which services can run here:
|
|
|
155
162
|
- playwright: node/npx; optionally HIAI_PLAYWRIGHT_INSTALL_BROWSERS=1.
|
|
156
163
|
- sequential-thinking: node/npx.
|
|
157
164
|
- firecrawl: FIRECRAWL_API_KEY.
|
|
158
|
-
- mempalace: uv or Python 3.9+ with pip; MEMPALACE_PYTHON if needed; HIAI_MCP_AUTO_INSTALL controls first-run pip install.
|
|
165
|
+
- mempalace: uv or Python 3.9+ with pip; set `mcp.mempalace.pythonPath` (or `MEMPALACE_PYTHON`) if needed; `HIAI_MCP_AUTO_INSTALL` controls first-run pip install.
|
|
159
166
|
- rag: OPENCODE_RAG_URL or http://localhost:9002/tools/search.
|
|
160
167
|
- stitch: STITCH_AI_API_KEY.
|
|
161
168
|
- context7: optional CONTEXT7_API_KEY.
|
|
162
169
|
|
|
163
170
|
Report missing keys without printing secret values. Never invent or hardcode API keys.
|
|
164
171
|
|
|
165
|
-
Run opencode debug config
|
|
172
|
+
Run hiai-opencode mcp-status and opencode debug config. If the user wants opencode mcp list visibility, run hiai-opencode export-mcp .mcp.json before opencode mcp list --print-logs --log-level INFO. If something is missing, propose or run only user-level/project-local install commands.
|
|
166
173
|
```
|
|
167
174
|
|
|
168
175
|
## Expected Agent State
|
|
@@ -397,7 +404,6 @@ Common service keys:
|
|
|
397
404
|
- `STITCH_AI_API_KEY`
|
|
398
405
|
- `FIRECRAWL_API_KEY`
|
|
399
406
|
- `CONTEXT7_API_KEY`
|
|
400
|
-
- `GOOGLE_SEARCH_API_KEY`
|
|
401
407
|
- `OLLAMA_BASE_URL`
|
|
402
408
|
- `OLLAMA_MODEL`
|
|
403
409
|
- `MEMPALACE_PYTHON`
|
|
@@ -405,6 +411,9 @@ Common service keys:
|
|
|
405
411
|
- `OPENCODE_RAG_URL`
|
|
406
412
|
- `HIAI_PLAYWRIGHT_INSTALL_BROWSERS`
|
|
407
413
|
- `HIAI_MCP_AUTO_INSTALL`
|
|
414
|
+
- `HIAI_OPENCODE_AUTO_EXPORT_MCP`
|
|
415
|
+
- `HIAI_OPENCODE_MCP_EXPORT_PATH`
|
|
416
|
+
- `HIAI_OPENCODE_EXPORT_MCP_MODE`
|
|
408
417
|
|
|
409
418
|
## Known Runtime Caveats
|
|
410
419
|
|
package/LICENSE.md
CHANGED
|
@@ -31,7 +31,6 @@ Some are:
|
|
|
31
31
|
| Sequential Thinking | [modelcontextprotocol/servers](https://github.com/modelcontextprotocol/servers) | external MCP |
|
|
32
32
|
| Firecrawl MCP | [firecrawl-ai/firecrawl-mcp-server](https://github.com/firecrawl-ai/firecrawl-mcp-server) | external MCP |
|
|
33
33
|
| Context7 MCP | [upstash/context7-mcp](https://github.com/upstash/context7-mcp) | external MCP |
|
|
34
|
-
| Websearch cited | [ghoulr/opencode-websearch-cited](https://github.com/ghoulr/opencode-websearch-cited) | search integration influence |
|
|
35
34
|
| bun-pty / PTY ecosystem | [shekohex/opencode-pty](https://github.com/shekohex/opencode-pty) | PTY/runtime integration influence |
|
|
36
35
|
|
|
37
36
|
## What Is Bundled vs External
|
package/README.md
CHANGED
|
@@ -31,7 +31,7 @@ Keep OpenCode plugins separate from MCP servers. Do not add MCP server packages
|
|
|
31
31
|
|
|
32
32
|
Check which MCP services can run on this machine, update hiai-opencode.json, install only missing user-level or project-local dependencies, and report missing API keys without printing secret values.
|
|
33
33
|
|
|
34
|
-
Then run opencode
|
|
34
|
+
Then run `hiai-opencode doctor`, `hiai-opencode mcp-status`, and `opencode debug config`.
|
|
35
35
|
```
|
|
36
36
|
|
|
37
37
|
For the full operator playbook, see [AGENTS.md](AGENTS.md). 🤖
|
|
@@ -121,22 +121,22 @@ If you installed only from npm/OpenCode and do not have this repository checked
|
|
|
121
121
|
```json
|
|
122
122
|
{
|
|
123
123
|
"models": {
|
|
124
|
-
"bob": { "model": "openrouter/
|
|
125
|
-
"coder": { "model": "openrouter/
|
|
126
|
-
"strategist": { "model": "openrouter/
|
|
127
|
-
"guard": { "model": "openrouter/
|
|
128
|
-
"critic": { "model": "openrouter/
|
|
129
|
-
"designer": { "model": "openrouter/google/gemini-3.1-pro", "recommended": "design" },
|
|
130
|
-
"researcher": { "model": "openrouter/
|
|
131
|
-
"manager": { "model": "openrouter/
|
|
132
|
-
"brainstormer": { "model": "openrouter/
|
|
133
|
-
"vision": { "model": "openrouter/google/
|
|
124
|
+
"bob": { "model": "openrouter/moonshotai/kimi-k2.6", "recommended": "xhigh" },
|
|
125
|
+
"coder": { "model": "openrouter/minimax/minimax-m2.7", "recommended": "high" },
|
|
126
|
+
"strategist": { "model": "openrouter/anthropic/claude-opus-latest", "recommended": "high" },
|
|
127
|
+
"guard": { "model": "openrouter/qwen/qwen3.6-plus", "recommended": "middle" },
|
|
128
|
+
"critic": { "model": "openrouter/xiaomi/mimo-v2.5-pro", "recommended": "high" },
|
|
129
|
+
"designer": { "model": "openrouter/google/gemini-3.1-pro-preview", "recommended": "design" },
|
|
130
|
+
"researcher": { "model": "openrouter/deepseek/deepseek-v4-flash", "recommended": "fast" },
|
|
131
|
+
"manager": { "model": "openrouter/qwen/qwen3.5-9b", "recommended": "fast" },
|
|
132
|
+
"brainstormer": { "model": "openrouter/mistralai/mistral-small-2603", "recommended": "writing" },
|
|
133
|
+
"vision": { "model": "openrouter/google/gemma-4-26b-a4b-it", "recommended": "vision" }
|
|
134
134
|
},
|
|
135
135
|
"mcp": {
|
|
136
136
|
"playwright": { "enabled": true },
|
|
137
137
|
"sequential-thinking": { "enabled": true },
|
|
138
138
|
"firecrawl": { "enabled": true },
|
|
139
|
-
"mempalace": { "enabled": true },
|
|
139
|
+
"mempalace": { "enabled": true, "pythonPath": "{env:MEMPALACE_PYTHON:-./.venv/bin/python}" },
|
|
140
140
|
"rag": { "enabled": false },
|
|
141
141
|
"stitch": { "enabled": false },
|
|
142
142
|
"context7": { "enabled": true }
|
|
@@ -165,15 +165,19 @@ See [Environment Variables And Keys](#environment-variables-and-keys) for the fu
|
|
|
165
165
|
|
|
166
166
|
```bash
|
|
167
167
|
opencode
|
|
168
|
+
hiai-opencode doctor
|
|
168
169
|
hiai-opencode mcp-status
|
|
170
|
+
hiai-opencode export-mcp .mcp.json
|
|
169
171
|
opencode debug config
|
|
170
172
|
opencode mcp list --print-logs --log-level INFO
|
|
171
173
|
```
|
|
172
174
|
|
|
173
|
-
`opencode mcp list`
|
|
175
|
+
`opencode mcp list` reads static `.mcp.json` files in many OpenCode versions. Runtime MCP servers launched by plugins may work but not appear there. If you want `opencode mcp list` visibility, run `hiai-opencode export-mcp .mcp.json` first.
|
|
174
176
|
|
|
175
177
|
`hiai-opencode mcp-status` is the fastest visibility check. It does not change OpenCode config; it reports config location, enabled MCP services, missing keys, and basic local runtime availability.
|
|
176
178
|
|
|
179
|
+
`hiai-opencode doctor` is the broader install/runtime diagnostic. It includes MCP status, static `.mcp.json` freshness, OpenCode Connect visibility, skill materialization, agent naming/count checks, LSP runtime checks, MemPalace Python source selection, and real MCP tool probes.
|
|
180
|
+
|
|
177
181
|
## Development Install
|
|
178
182
|
|
|
179
183
|
Direct npm install is only needed for development or inspection:
|
|
@@ -210,7 +214,7 @@ Enable only services that can run on this machine:
|
|
|
210
214
|
- playwright: requires node/npx; optionally set HIAI_PLAYWRIGHT_INSTALL_BROWSERS=1 before first run if browser binaries are needed.
|
|
211
215
|
- sequential-thinking: requires node/npx.
|
|
212
216
|
- firecrawl: requires FIRECRAWL_API_KEY.
|
|
213
|
-
- mempalace: requires uv or Python 3.9+ with pip; set MEMPALACE_PYTHON if needed. Leave HIAI_MCP_AUTO_INSTALL enabled unless the user forbids package installation.
|
|
217
|
+
- mempalace: requires uv or Python 3.9+ with pip; set `mcp.mempalace.pythonPath` (or `MEMPALACE_PYTHON`) if needed. Leave `HIAI_MCP_AUTO_INSTALL` enabled unless the user forbids package installation.
|
|
214
218
|
- rag: requires OPENCODE_RAG_URL or a running local endpoint at http://localhost:9002/tools/search.
|
|
215
219
|
- stitch: requires STITCH_AI_API_KEY.
|
|
216
220
|
- context7: works without a key but use CONTEXT7_API_KEY if available.
|
|
@@ -219,6 +223,8 @@ Check .env.example, report missing keys without printing secret values, and neve
|
|
|
219
223
|
|
|
220
224
|
Run verification commands where available:
|
|
221
225
|
- opencode debug config
|
|
226
|
+
- hiai-opencode mcp-status
|
|
227
|
+
- hiai-opencode export-mcp .mcp.json
|
|
222
228
|
- opencode mcp list --print-logs --log-level INFO
|
|
223
229
|
|
|
224
230
|
If a dependency is missing, install only user-level or project-local dependencies, explain every command before running it, and do not use sudo/admin rights unless the user explicitly asks.
|
|
@@ -321,7 +327,6 @@ Important service variables:
|
|
|
321
327
|
- `STITCH_AI_API_KEY`
|
|
322
328
|
- `FIRECRAWL_API_KEY`
|
|
323
329
|
- `CONTEXT7_API_KEY`
|
|
324
|
-
- `GOOGLE_SEARCH_API_KEY`
|
|
325
330
|
- `OLLAMA_BASE_URL`
|
|
326
331
|
- `OLLAMA_MODEL`
|
|
327
332
|
- `MEMPALACE_PYTHON`
|
|
@@ -329,6 +334,8 @@ Important service variables:
|
|
|
329
334
|
- `OPENCODE_RAG_URL`
|
|
330
335
|
- `HIAI_PLAYWRIGHT_INSTALL_BROWSERS`
|
|
331
336
|
- `HIAI_MCP_AUTO_INSTALL`
|
|
337
|
+
- `HIAI_OPENCODE_AUTO_EXPORT_MCP`
|
|
338
|
+
- `HIAI_OPENCODE_MCP_EXPORT_PATH`
|
|
332
339
|
|
|
333
340
|
Optional headless or non-Connect fallback variables are documented in [.env.example](.env.example), but they are not required for normal OpenCode model auth.
|
|
334
341
|
|
|
@@ -393,7 +400,7 @@ If sudo is not available:
|
|
|
393
400
|
|
|
394
401
|
### Needs upstream runtime or extra setup
|
|
395
402
|
|
|
396
|
-
- `mempalace`: prefers `uv`; otherwise uses Python. If `HIAI_MCP_AUTO_INSTALL` is not `0`, `false`, or `no`, the launcher can run `python -m pip install --user mempalace` on first start.
|
|
403
|
+
- `mempalace`: prefers `uv`; otherwise uses Python. You can force interpreter selection via `mcp.mempalace.pythonPath` or `MEMPALACE_PYTHON`. If `HIAI_MCP_AUTO_INSTALL` is not `0`, `false`, or `no`, the launcher can run `python -m pip install --user mempalace` on first start.
|
|
397
404
|
- `rag`: requires your own running endpoint
|
|
398
405
|
|
|
399
406
|
### Important Windows note
|
|
@@ -415,12 +422,26 @@ The plugin now emits startup warnings for common misconfiguration, including:
|
|
|
415
422
|
Available CLI:
|
|
416
423
|
|
|
417
424
|
```bash
|
|
425
|
+
hiai-opencode doctor
|
|
418
426
|
hiai-opencode mcp-status
|
|
427
|
+
hiai-opencode export-mcp .mcp.json
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
By default, the plugin auto-exports `.mcp.json` at workspace startup when the file is missing. This closes the visibility gap where runtime plugin MCP works but `opencode mcp list` only reads static files. Control it with:
|
|
431
|
+
|
|
432
|
+
```bash
|
|
433
|
+
export HIAI_OPENCODE_AUTO_EXPORT_MCP=if-missing # default
|
|
434
|
+
export HIAI_OPENCODE_AUTO_EXPORT_MCP=always # overwrite only managed hiai-opencode exports
|
|
435
|
+
export HIAI_OPENCODE_AUTO_EXPORT_MCP=force # force overwrite even non-managed files
|
|
436
|
+
export HIAI_OPENCODE_AUTO_EXPORT_MCP=0 # disable auto-export
|
|
437
|
+
export HIAI_OPENCODE_MCP_EXPORT_PATH=.mcp.json # override path
|
|
438
|
+
export HIAI_OPENCODE_EXPORT_MCP_MODE=safe # export-mcp command mode: safe|force
|
|
419
439
|
```
|
|
420
440
|
|
|
421
441
|
Inside OpenCode, use the slash command:
|
|
422
442
|
|
|
423
443
|
```text
|
|
444
|
+
/doctor
|
|
424
445
|
/mcp-status
|
|
425
446
|
```
|
|
426
447
|
|
|
@@ -435,14 +456,13 @@ MCP Servers:
|
|
|
435
456
|
⚠️ stitch - enabled, API key missing (STITCH_AI_API_KEY)
|
|
436
457
|
```
|
|
437
458
|
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
- `hiai-opencode doctor`: report config location, MCP status, missing keys, and local dependency checks.
|
|
441
|
-
- `hiai-opencode export-mcp`: generate a standard `.mcp.json` for hosts that do not expose plugin-provided MCP servers through `opencode mcp list`.
|
|
459
|
+
`hiai-opencode export-mcp` writes a standard `.mcp.json` so hosts whose `mcp list` ignores plugin runtime MCP can still show the same servers statically. Exports are marker-tagged as hiai-managed; by default, the command avoids overwriting non-managed files unless `HIAI_OPENCODE_EXPORT_MCP_MODE=force` is set.
|
|
442
460
|
|
|
443
|
-
|
|
461
|
+
Use:
|
|
444
462
|
|
|
445
463
|
```bash
|
|
464
|
+
hiai-opencode mcp-status
|
|
465
|
+
hiai-opencode export-mcp .mcp.json
|
|
446
466
|
opencode debug config
|
|
447
467
|
opencode mcp list --print-logs --log-level INFO
|
|
448
468
|
```
|
|
@@ -464,7 +484,6 @@ opencode mcp list --print-logs --log-level INFO
|
|
|
464
484
|
| Sequential Thinking | [modelcontextprotocol/servers](https://github.com/modelcontextprotocol/servers) | external MCP |
|
|
465
485
|
| Firecrawl MCP | [firecrawl-ai/firecrawl-mcp-server](https://github.com/firecrawl-ai/firecrawl-mcp-server) | external MCP |
|
|
466
486
|
| Context7 MCP | [upstash/context7-mcp](https://github.com/upstash/context7-mcp) | external MCP |
|
|
467
|
-
| Websearch cited | [ghoulr/opencode-websearch-cited](https://github.com/ghoulr/opencode-websearch-cited) | search integration influence |
|
|
468
487
|
| bun-pty / PTY ecosystem | [shekohex/opencode-pty](https://github.com/shekohex/opencode-pty) | PTY/runtime integration influence |
|
|
469
488
|
|
|
470
489
|
## Build And Publish
|
|
@@ -492,7 +511,7 @@ Before publishing:
|
|
|
492
511
|
1. run `bun run build`
|
|
493
512
|
2. run `npm pack --dry-run`
|
|
494
513
|
3. verify `debug config`
|
|
495
|
-
4.
|
|
514
|
+
4. run `hiai-opencode export-mcp .mcp.json` if you need static `mcp list` visibility
|
|
496
515
|
|
|
497
516
|
Publish:
|
|
498
517
|
|