meta-harness

Author lifecycle hooks, MCP servers, and plugin bundles for agent harnesses.

Updated Aug 1, 2026
One-click install
npx skills add https://github.com/siegenthalerroger/.llmctl-marketplace --skill meta-harness-siegenthalerroger
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: meta-harness
Source: https://github.com/siegenthalerroger/.llmctl-marketplace/tree/main/plugins/llmctl-core-0.4.0/skills/meta-harness
Command: npx skills add https://github.com/siegenthalerroger/.llmctl-marketplace --skill meta-harness-siegenthalerroger

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Agent harness configuration (hooks, MCP servers, plugin bundles) is scattered across incompatible per-tool formats, and mistakes like wrong root keys, invented hook event names, or plaintext secrets silently break the setup. This Skill provides the authoring rules and per-tool references to write that config correctly once and deploy it everywhere via APM. ## Core Features & Use Cases - Lifecycle hook authoring: Guidance for PreToolUse, PostToolUse, SessionStart and other events, with matchers, exit-code semantics, timeouts, and cross-tool compatibility across Claude Code, VS Code Copilot, and APM. - MCP server configuration: APM-first declaration in apm.yml under dependencies.mcp, stdio/http/sse transports, ${VAR} secret placeholders, and a full per-tool schema matrix covering the servers vs mcpServers root-key trap. - Plugin bundle packaging: plugin.json manifests, marketplace distribution, apm pack workflows, and consumer discovery-budget limits for bundled skills. - Use Case: You need a hook that blocks writes to protected files in every editor your team uses. The Skill routes you to the hooks reference, gives you a PreToolUse matcher pattern, and tells you to author it once in .apm/hooks/ so APM deploys it to each target. ## Quick Start Ask the agent to add a PreToolUse hook that runs a formatter after every file edit and declare a new MCP server in apm.yml using this Skill's guidance.

Frequently Asked Questions about meta-harness

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a lifecycle hook to Claude Code or VS Code Copilot?▼

Author the hook once in .apm/hooks/ as a JSON file with an event matcher (for example PreToolUse with Edit|Write) and a command with an explicit timeout. APM translates it into each target's native location on deploy; Claude Code reads hooks from settings.json while VS Code discovers hooks/*.json files.

How do I configure an MCP server for multiple AI coding tools?▼

Declare the server once in apm.yml under dependencies.mcp with its transport (stdio, http, or sse), command or url, and ${VAR} secret placeholders. APM generates the per-target files: VS Code uses the servers root key, Claude Code and Copilot CLI use mcpServers, and Codex uses TOML [mcp_servers.name] tables.

When should I use a hook instead of an instruction or skill?▼

Use a hook when something must happen every time, because autonomous skill and instruction triggering is probabilistic. Hooks are the deterministic arm for lifecycle boundaries like blocking unsafe tool calls or formatting after edits; behavior steering belongs in instructions or skills.

Why is my MCP server config silently ignored by VS Code?▼

VS Code uses the root key servers in .vscode/mcp.json, while Claude Code, Copilot CLI, and Cursor use mcpServers. A correct config under the wrong key is silently ignored, so verify the generated file matches the target's expected root key.

Can I commit MCP API keys in apm.yml or mcp.json?▼

No. The only acceptable form in a tracked file is a ${VAR} placeholder, which APM resolves at install time by prompting or reading the environment. A key ever committed in plaintext is compromised and must be rotated and revoked.

What are the limitations of distributing skills via a plugin marketplace?▼

A plugin install is reduced-fidelity compared to apm install: it reliably carries skills and commands, but instructions are ignored, MCP servers are dropped, and agents load only from a default agents/ directory. Bundled skill descriptions also compete in the consumer's roughly 15,000-character discovery budget.