Huawei Cloud Openviking Agent Integration
|
- Skill ID
- huaweicloud/huaweicloud-skills/huawei-cloud-openviking-agent-integration
- Publisher
- huaweicloud
- Repository
- huaweicloud-skills
- Installs
- 302
- Files
- 26
- Synced
- Sep 16, 2026
Open any RiverX project, open the Skills panel in the chat, and search for this identifier. The files are fetched from the source repository at install time.
huaweicloud/huaweicloud-skills/huawei-cloud-openviking-agent-integrationInstalls these files- CHANGELOG.md
- SKILL.md
- references/agent-configs.md
- references/guardrails.md
- references/related-commands.md
- references/troubleshooting.md
- references/verification.md
- scripts/agents/codearts.sh
- scripts/agents/deepseek_harness.sh
- scripts/agents/hermes.sh
- scripts/agents/kimicode.sh
- scripts/agents/openclaw.sh
- scripts/agents/opencode.sh
- scripts/agents/prime_agent.sh
- scripts/agents/workswarm.sh
- scripts/common.sh
- scripts/integrate.sh
- scripts/lib/base.sh
- scripts/lib/json.sh
- scripts/lib/plugins.sh
- scripts/lib/registry.sh
- scripts/lib/ui.sh
- scripts/status.sh
- scripts/unbind.sh
- scripts/unset.sh
- scripts/verify_mcp.sh
What this skill tells the agent
Huawei Cloud Agent Integration (OpenViking Long-Term Memory)
Overview
Integrate and unbind OpenViking long-term memory with coding agents. Agents run in bwrap sandboxes under /root/job-envs/sandboxes/ and use their native mechanism — MCP (mcp__openviking__* tools) or HTTP memory provider — so integration survives agent upgrades.
Integration writes are template-level persistent: config is injected into the agent's start.sh / config templates under /root/template/<agent>/, so sandbox stop + start preserves the integration.
Supported Agents
| Agent | Mechanism | Persistence |
|---|---|---|
| CodeArts CLI | @openviking/opencode-plugin → .codeartsdoer/node_modules/ | Template + live |
| OpenCode | @openviking/opencode-plugin (npm mirror → GitHub fallback) | Template start.sh |
| OpenClaw | clawhub:@openviking/openclaw-plugin + contextEngine slot | Template start.sh |
↳ Optimization: disables session-memory hook + denies memory_search tool (OpenViking handles recall; local memory degrades quality) | ||
| Hermes | Built-in memory.provider: openviking (HTTP REST, no MCP) | Template + live |
| WorkSwarm | Dual-channel: native provider + MCP (13 tools) + code-mode patch | Template + live + runtime patch |
| KimiCode | MCP via mcp.json | Template + live |
| DeepSeek Harness | @openviking/dsh-memory-plugin bundle (on-demand from GitHub) | Template start.sh |
| Prime Agent | @openviking/pi-coding-agent-extension (on-demand from GitHub) | Template start.sh |
Per-agent config details: references/agent-configs.md.
Prerequisites
- OpenViking server running at
http://127.0.0.1:1933(curl -s http://127.0.0.1:1933/health). - Agent sandboxes exist under
/root/job-envs/sandboxes/(managed by job-env-manager). - Host tools:
curl,python3,bash. OpenCode/OpenClaw additionally neednpm. - No Huawei Cloud IAM policies required — this skill operates on local bwrap sandboxes only.
参数确认 (Required Inputs)
| Parameter | Required | Description | Example |
|---|---|---|---|
--agent <name> | Yes (unless --all) | Target agent (see table above) | --agent opencode |
--all | Yes (unless --agent) | Operate on all 8 agents | --all |
--endpoint <url> | No | OpenViking server URL (default http://127.0.0.1:1933) | --endpoint http://192.168.1.100:1933 |
--api-key <key> | No | OpenViking API key (dev mode needs none). Never echo in chat | --api-key sk-xxx |
--dry-run | No | Show changes without applying | --dry-run |
--yes / -y | No | Skip authorization prompt (automation only) | --yes |
--json | No | status.sh: machine-readable output | --json |
核心命令
| 功能 | 命令 |
|---|---|
| 查看集成状态 | scripts/status.sh(--json 机器可读,--agent <name> 指定) |
| 验证 MCP 端点 | scripts/verify_mcp.sh |
| 集成单个 Agent | scripts/integrate.sh --agent <name> [--endpoint URL] [--api-key KEY] [--dry-run] [--yes] |
| 集成全部 Agent | scripts/integrate.sh --all |
| 解绑单个 Agent | scripts/unbind.sh --agent <name> [--dry-run] [--yes] |
| 解绑全部 Agent | scripts/unbind.sh --all |
Workflow
SKILL_DIR=/root/.agents/skills/huawei-cloud-openviking-agent-integration- Check status:
$SKILL_DIR/scripts/status.sh— per-agent state:template + live(active),template only(activates on restart),live only(lost on restart). - Verify MCP:
$SKILL_DIR/scripts/verify_mcp.sh— full MCP handshake (initialize → tools/list → health). - Integrate:
$SKILL_DIR/scripts/integrate.sh --agent <name>(or--all). - Unbind:
$SKILL_DIR/scripts/unbind.sh --agent <name>(or--all). - Rebuild OpenClaw:
stop + startvia job-env-manager API re-runsstart.sh. Scripts: references/related-commands.md.
Authorization & Safety
- Authorization is mandatory —
integrate.shandunbind.shrequire explicitconfirm(or--yesfor automation).--dry-runpreviews without authorization. - Do not fabricate integration state — always run
status.shto verify before reporting. - Never edit agent configs directly — all changes go through the skill scripts.
- No API keys in logs —
--api-keyvalues must never appear in output. - Every config modification creates a
.bak.<timestamp>backup for rollback.
Full rules: references/guardrails.md. Troubleshooting: references/troubleshooting.md.
Plugin Sources
The skill ships no plugin code — plugins are installed on demand at integrate time via domestic-first mirrors (Huawei Cloud npm → npmmirror → npmjs; GitHub raw mirrors for non-npm plugins). All downloads are byte-verified against GitHub blob SHA. Installed copies under /root/runtime/ are reused if upstream is unreachable (3-tier cache: sandbox node_modules → runtime cache → online).
References
| Document | Description |
|---|---|
| agent-configs.md | Per-agent config details, MCP tools, server info |
| guardrails.md | Safety, authorization, access permissions |
| troubleshooting.md | Failure scenarios and fixes |
| verification.md | Verification methods and acceptance criteria |
| related-commands.md | Restart/rebuild scripts, env vars |
Scripts (OO Architecture)
Base class (lib/base.sh) + registry (lib/registry.sh) + per-agent subclasses (agents/*.sh). Entry points (integrate/unbind/status.sh) are thin CLI parsers. All scripts are idempotent with .bak.<timestamp> backups. Adding a new agent = one file in agents/.
