agentwheel
v0.14.2 - installation types & harness matrix

One source.Every agent.

Install one OpenPack into every agent runtime.

openpack.json
skillsrulesinstructionscommandssubagentsMCPhookssettingspluginsfragments
OC OpenClaw.openclaw/
CL Claude Code.claude/
CX Codex CLI.codex/
CP GitHub Copilot CLI.github/
HE Hermes.hermes/
+ Your harnessJSONC / JS adapter
agentwheel install
npx agentwheel install github:NestDevLab/agent-must-have#standard --adapter codex,claude
Two adapterscodex,claude applies the same OpenPack once per runtime and keeps separate saved entries.
Must-have packagent-must-have standard adds baseline rules plus self-improve, context-checkup, code-review, and planning skills.
Global defaultExplicit source installs target user artifacts; use --local or -t for project scope.
01

Runtime matrix

Adapter Instructions Rules Skills Commands Subagents MCP Hooks Settings Plugins Fragments
OpenClaw custom config compose
Claude Code behavior compose
Codex CLI policy compose
Hermes custom compose
GitHub Copilot CLI mapped custom compose
supported file path Rules are not portable: same OpenPack kind, different runtime meaning custom adapter needed config runtime setup compose Agentwheel-only Full matrix
policy Codex rules Command permissions: allow, prompt, or forbid shell actions. They are not coding-style instructions.
behavior Claude rules Behavioral instructions, often path-scoped, that shape how Claude should work on files.
mapped Copilot rules Written as Copilot custom instructions, because Copilot has no native command-policy rules.
02

How it works

1 Author packageOpenPack repo
2 Resolve graph.agentwheel lock
3 Install nativeHarness files
03

What stays aligned

artifacts  skills/rules/MCP drift-safe  plan/apply adapters  built-in/custom sources  git/local/registry selective  --skill/--select fleet  local/SSH
04

OpenPack manifest

openpack.json
{
  "schemaVersion": 2,
  "name": "your-org/agent-pack",
  "requires": {
    "core": {
      "source": "github:your-org/core-pack",
      "version": "^1.2.0"
    }
  },
  "provides": [
    { "type": "skills", "path": "skills" },
    { "type": "rules", "path": "rules" },
    { "type": "fragments", "path": "fragments" }
  ]
}
05

Package details

Registry entry
index.json
{
  "name": "your-package-name",
  "source": "github:your-org/your-agent-package",
  "type": "package",
  "tags": ["skills", "rules", "instructions"]
}
Asset includes
openpack.json
{
  "type": "skills",
  "path": "skills",
  "assets": [{
    "from": "packages/tmux-bridge/bin",
    "into": "bin",
    "include": ["*.sh"]
  }]
}
Selective install
selective install
$ agentwheel add github:NestDevLab/agent-mesh \
    --skill codex-tmux \
    --adapter codex \
    --installation-type local
$ agentwheel install --skill codex-tmux
Catalogue and registry
06

Advanced usage

Plan/apply loop
full control
$ npx agentwheel init
$ npx agentwheel add github:your-org/agent-pack --adapter codex --installation-type local
$ npx agentwheel plan
$ npx agentwheel install
Trust and offline
trust
$ agentwheel install --trust "github:your-org/*"
$ agentwheel deps tree
$ agentwheel deps why skills/triage
$ agentwheel install --offline
Fleet config
fleet mode
{
  "agents": {
    "lab-openclaw": { "adapter": "openclaw", "root": "/path/to/openclaw-home", "transport": "local" },
    "remote-codex": {
      "adapter": "codex",
      "root": "/home/agent/project",
      "transport": "ssh",
      "host": "agent-host.example",
      "user": "agent"
    }
  }
}

$ agentwheel install --agent lab-openclaw
$ agentwheel install --all
$ agentwheel update --profile daily --dry-run
$ agentwheel install --profile daily --dry-run
$ agentwheel status --profile daily
$ agentwheel status --all
07

Docs