huawei-cloud-openviking-agent-integration
About huawei-cloud-openviking-agent-integration
This agent skill integrates, unbinds, and verifies OpenViking long-term memory for coding agents in bwrap sandboxes. It uses each agent’s native configuration mechanism and persists settings in the template so they survive sandbox restarts.
Key features
- 01Integrates or unbinds 8 agents
- 02Checks integration status and verifies MCP
- 03Supports dry runs and bulk operations
- 04Persists configuration across sandbox restarts
- 05Backs up configuration and protects API keys
Use cases
- 01Connect coding agents to OpenViking long-term memory
- 02Retain integration settings after sandbox restarts
- 03Troubleshoot MCP handshakes or server health
MCP support
The skill configures OpenViking for agents that use MCP and provides MCP handshake verification. Other agents can connect through native plugins or an HTTP memory provider.
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ huaweicloud/ huaweicloud-skills --skill huawei-cloud-openviking-agent-integrationAfter installing, type/huawei-cloud-openviking-agent-integrationin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
.skillspectorignorereferences/agent-configs.mdnotes.mdscripts/integrate.shscripts/agents/codearts.shdeepseek_harness.shhermes.shkimicode.shopenclaw.shopencode.shprime_agent.shworkswarm.shscripts/lib/base.shentrypoint.shjson.shov_jw_mutate.pyov_kimi_hook.shplugins.shregistry.shui.shscripts/py/ov_common.pyov_health.pyscripts/py/agents/ov_codearts.pyov_deepseek_harness.pyov_hermes.pyov_kimicode.pyov_openclaw.pyov_opencode.pyov_prime_agent.pyov_workswarm.pyDetails
From the project READMEHuawei Cloud Agent Integration (OpenViking Long-Term Memory)
Integrate / unbind OpenViking long-term memory for coding agents running in bwrap sandboxes (/root/job-envs/sandboxes/). Every agent uses its native mechanism (MCP, HTTP memory provider, TS extension hooks, settings.json), so integration survives agent upgrades. Writes are template-level persistent: config is injected into /root/template/<agent>/start.sh, so sandbox stop + start preserves the integration.
Supported Agents
| Agent | Mechanism |
|---|---|
| CodeArts CLI | @openviking/opencode-plugin → .codeartsdoer/ |
| OpenCode | @openviking/opencode-plugin (npm mirror → GitHub fallback) |
| OpenClaw | clawhub:@openviking/openclaw-plugin + contextEngine slot (disables session-memory hook, denies memory_search) |
| Hermes | Built-in memory.provider: openviking (HTTP REST, no MCP) |
| WorkSwarm | Dual-channel: native provider + MCP (15 tools) + code-mode patch |
| KimiCode | hooks + MCP (session lifecycle) — config.toml [[hooks]] → ov-kimi-hook.sh + MCP via mcp.json |
| DeepSeek Harness | @openviking/dsh-memory-plugin bundle (on-demand from GitHub) |
| Prime Agent | @openviking/pi-coding-agent-extension (on-demand from GitHub) |
Per-agent config paths and details: references/agent-configs.md.
Prerequisites
- OpenViking server healthy:
curl -s http://127.0.0.1:1933/health→healthy. - Target sandbox exists under
/root/job-envs/sandboxes/. - Host tools:
curl,python3,bash;npmfor OpenCode/OpenClaw;pip install --upgrade "mcp>=2.0"forverify_mcp.sh. - No Huawei Cloud IAM required — operates on local bwrap sandboxes only.
参数 (Parameters)
| Flag | Required | Meaning |
|---|---|---|
--agent <name> | Yes (unless --all) | Target agent |
--all | Yes (unless --agent) | Operate on all 8 agents |
--endpoint <url> | No | OpenViking URL (default http://127.0.0.1:1933) |
--api-key <key> | No | For auth-mode servers. Never echo in chat. Must be consumed by an agent config or verify_mcp.sh; an unconsumed --api-key is reported as a warning. |
--dry-run | No | Show changes without applying |
--yes / -y | No | Skip confirmation (automation only) |
--json | No | status.sh: machine-readable output |
核心命令
| 功能 | 命令 |
|---|---|
| 查看状态 | scripts/status.sh(--json / --agent <name>) |
| 验证 MCP | scripts/verify_mcp.sh |
| 集成 | scripts/integrate.sh --agent <name> [--endpoint URL] [--dry-run] [--yes](或 --all) |
| 解绑 | scripts/unbind.sh --agent <name> [--dry-run] [--yes](或 --all) |
Workflow
SKILL_DIR=/root/.agents/skills/huawei-cloud-openviking-agent-integration
$SKILL_DIR/scripts/status.sh # per-agent: template+live / template only / live only / none
$SKILL_DIR/scripts/verify_mcp.sh # full MCP handshake (initialize → tools/list → health)
$SKILL_DIR/scripts/integrate.sh --agent <name> [--yes]
$SKILL_DIR/scripts/unbind.sh --agent <name> [--yes]
- Status first — never claim integrated before
status.shconfirms (do not fabricate state). - Verify MCP —
verify_mcp.shbefore integration. - Integrate / Unbind — each requires explicit
confirm(or--yes);--dry-runpreviews safely. - States:
template + live= active;template only= activates on restart;live only= lost on restart (warn user).
Authorization & Safety
integrate.sh/unbind.shrequire explicit confirmation; never edit agent configs directly — go through the skill scripts.- Every config modification creates
.bak.<timestamp>(keep 5) for rollback. --api-keyvalues must never appear in output.
能力边界(Cannot Do)
本技能只做"OpenViking 记忆 ↔ 编码 agent 的集成/解绑/状态/验证"。以下操作明确不做,遇到请改走对应路径或明确报错:
- 不直接读写 agent 配置文件、sandbox 内业务数据或用户代码——一律通过
scripts/integrate.sh/unbind.sh等入口执行。 - 不删除、不修改用户自装的第三方包/目录/数据。卸载只清理 OpenViking 自身产物(
@openviking/*插件、注入的配置段、OV 专属目录);node_modules整目录删除等越界行为是缺陷,不执行。 - 服务器不可达/健康检查失败时不报告成功:
integrate.sh、unbind.sh、verify_mcp.sh均先做健康门禁,失败即失败(exit 非 0),绝不假成功。 --dry-run只预览改动,不写任何持久文件;预览后续真实执行仍需确认。--api-key必须被某个 agent 配置或验证流程实际消费;若传入却无处消费,脚本会告警(而非静默忽略)。- 不做 embedding 模型切换、向量库重建、服务器自身配置变更——那是
huawei-cloud-openviking-embedding-switch等技能的范围。 - 不支持在集成/解绑过程中创建或修改 OpenViking 账号、用户、权限体系。
- 不承诺"查看 → 已集成":一律以
status.sh实测结果为准,禁止凭模板猜测 live 状态。
References
| Document | When to read |
|---|---|
| agent-configs.md | Per-agent config paths/formats, MCP tools, server info |
| notes.md | Guardrails, env vars, sandbox restart, plugin sources, troubleshooting, adding a new agent |