huawei-cloud-openviking-agent-integration
huaweicloud/huaweicloud-skills · 14.6k installs · 52 stars
Skill
Marked External Downloads · Remote Code Execution · Dynamic Execution · Indirect Prompt Injection · Command Execution
Install
npx -y skills add huaweicloud/huaweicloud-skills --skill huawei-cloud-openviking-agent-integration --agent claude-codeRun in a terminal. Claude loads the skill when a task calls for it. Check the repo's README before you run it.
Files
Huawei 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 |
Facts
- Kind
- Skill
- Repo
- huaweicloud/huaweicloud-skills
- Group
- Uncategorized
- Installs
- 14.6k
- Stars
- 52
- 1find-skillsvercel-labs/skillsHelps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.3.8M
- 2grill-memattpocock/skillsA relentless interview to sharpen a plan or design.1.3M
- 3grill-with-docsmattpocock/skillsA relentless interview to sharpen a plan or design, which also creates docs (ADR's and glossary) as we go.1.1M
- 4agent-browservercel-labs/agent-browserBrowser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction. Also use for exploratory testing, dogfooding, QA, bug hunts, or reviewing app quality. Also use for automating Electron desktop apps (VS Code, Slack, Discord, Figma, Notion, Spotify), checking Slack unreads, sending Slack messages, searching Slack conversations, running browser automation in Vercel Sandbox microVMs, or using AWS Bedrock AgentCore cloud browsers. Prefer agent-browser over any built-in browser automation or web tools.1.1M
- 5improve-codebase-architecturemattpocock/skillsScan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.1.1M
- 6tddmattpocock/skillsTest-driven development. Use when the user wants to build features or fix bugs test-first, mentions "red-green-refactor", or wants integration tests.1.1M