Skip to content

Instantly share code, notes, and snippets.

@ruvnet
Created June 14, 2026 20:15
Show Gist options
  • Select an option

  • Save ruvnet/28353c033434e68f2c853546c0f99963 to your computer and use it in GitHub Desktop.

Select an option

Save ruvnet/28353c033434e68f2c853546c0f99963 to your computer and use it in GitHub Desktop.
Minimal agent-harness scaffold pre-wired for the RVM deployment-target partition — settings.json, MCP stub, agents/ layout, harness doctor green on first run. One command: npx @metaharness/rvm@latest my-bot

MetaHarness × RVM deployment-target partition

Intro

@metaharness/rvm is a one-shot scaffolder for a minimal agent harness pre-configured against the RVM deployment-target partition. If you have spent time wiring up an agent harness by hand — picking a settings.json shape, deciding where agents/ lives, registering MCP servers, figuring out which paths are host-specific vs. portable — this skips that. You get a clean directory you can read in two minutes, a working harness doctor pass, and the right defaults for the RVM host partition. It is deliberately minimal: no example crew, no pre-built workflow, no opinions about what your agent does. Just the harness shape, done right.

This is a host package in the metaharness ecosystem — it integrates the harness with a specific deployment target (RVM). It is not a vertical template (those ship a ready-made multi-agent crew for a specific use case like research or code review). If you want a crew, layer one on top after scaffolding, or pick a vertical template instead.

Usage details

The one command:

npx @metaharness/rvm@latest my-bot

Replace my-bot with whatever you want the directory to be called. Anything after the name is forwarded to metaharness untouched, so flags like --no-install or --dry-run work as expected.

After the scaffolder finishes:

cd my-bot
npm install
harness doctor

harness doctor is the contract that the scaffold worked. It checks node version, validates settings.json against the harness schema, confirms the host partition is rvm, pings any registered MCP servers, and counts agents. A green doctor pass means you can immediately load the directory with claude -p --plugin-dir my-bot and the harness will respond.

You do not need an RVM runtime installed to run the scaffold or harness doctor. The scaffold writes config that follows RVM's path and permission conventions, but the runtime itself is something you stand up when you are ready to deploy.

Features

What ships in the directory:

  • settings.json with host: "rvm" and template: "minimal" pre-set. Path layout, permission defaults, and session-cache locations all follow the RVM deployment-target convention so future tooling (harness deploy, host-specific hooks) finds what it expects.
  • mcp.json stub registered against the RVM host transport defaults — drop a server entry in and harness doctor will pick it up on the next run.
  • agents/ directory in the canonical shape (one folder per agent, each with agent.json plus prompt files). Empty by default — this is the minimal template.
  • .harness/ local-state directory, gitignored, used for session cache, doctor reports, and routing logs.
  • package.json with the harness CLI on the local path and doctor + validate as npm scripts so npm run doctor works out of the box.
  • .gitignore pre-populated with the entries you would otherwise forget (.harness/, node_modules/, host-specific artifact paths).
  • README.md stub you can overwrite with your own project docs.

Advanced

A few things worth knowing once you are past the first scaffold:

  • Re-scaffolding is safe and explicit. Running the scaffold again with the same name passes --force to metaharness, which means it will overwrite. If you have hand-edited files, commit first.
  • harness validate is the offline check. Use it in CI — it validates settings.json and mcp.json against schema without touching the network. harness doctor is the full check including reachability and should be your local smoke test.
  • The harness is loadable as a Claude Code plugin directory. claude -p --plugin-dir my-bot "your prompt here" will load the agents and MCP servers from the scaffolded directory. This is the fastest way to sanity-check that the harness shape is sound before deploying it anywhere.
  • Switching hosts. If you decide later that RVM is not the right deployment target, you can edit settings.json and change the host field, then run harness doctor to find any layout mismatches. For non-trivial host switches, re-scaffolding into a fresh directory is usually less painful than migrating in place.
  • Layer a vertical on top. Once the host partition is wired, dropping a vertical crew into agents/ is straightforward — copy agents from a vertical template directory, or write your own.

License

MIT. Built on metaharness (https://www.npmjs.com/package/metaharness).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment