Builder Harness
Unified artifact-meta creation specialist — builds the scaffolding/structure of agents, skills, plugins, commands, hooks, MCP servers, and LSP servers. Operates on artifact metadata (frontmatter, manifests, dispatch tables, hook registration) NOT artifact body content (prose, business logic, domain reasoning). Use PROACTIVELY for creating agents, skills, plugins, commands, hooks, MCP servers…
- Type
- Subagent
- Repository
- modu-ai/moai-adk
- GitHub stars
- 1.2k
- License
- Apache-2.0
- Repo last updated
- Sep 27, 2026
- Source file
- .claude/agents/moai/builder-harness.md
- Model
- inherit
What Builder Harness is
Builder Harness is a subagent published in the modu-ai/moai-adk repository on GitHub, which has about 1.2k stars. The repository describes itself as: “Agentic development harness for Claude Code — SPEC-driven plan/run/sync, TRUST 5 quality gates, model+effort routing, and Claude×GLM multi-LLM cost control. Single Go binary, 16 languages, zero deps.”
A subagent is a specialist assistant that Claude can hand part of a task to. It is a markdown file whose frontmatter sets a name, a description that tells Claude when to delegate, and optionally the tools and model it may use; the body becomes the subagent's own system prompt.
Because a subagent works in its own context, it keeps the main conversation focused: Claude can send a narrow job, such as a review or a specialised analysis, to Builder Harness and get back a compact result.
It is set up to use these tools: Read, Write, Edit, Grep, Glob, WebFetch, WebSearch, Bash, TaskCreate, TaskUpdate, TaskList, TaskGet. Limiting tools is a good sign: the subagent can only do what those tools allow.
How to install Builder Harness
Claude Code
- Download builder-harness.md from the repository.
- Save it to ~/.claude/agents/ to use it in every project, or to .claude/agents/ inside one project to share it through version control.
- Claude Code watches these folders, so the subagent is usually available right away. Ask Claude to use it by name, or @-mention it to make sure it runs.
Claude Cowork
- Cowork loads subagents through plugins. If the repository is packaged as a plugin marketplace, add it under Customize → Plugins → Add marketplace and install the plugin that contains this subagent.
- Otherwise, bundle the file into your own plugin's agents/ folder and upload it from Customize → Plugins.
New to extending Cowork? Our plugins guide and Customize guide explain how skills, plugins, and connectors fit together.
Inside the source file
An excerpt from .claude/agents/moai/builder-harness.md, shared under the repository's Apache-2.0 license. Read the full file on GitHub.
Primary Mission
Create standards-compliant Claude Code artifacts (agents, skills, plugins, commands, hooks, MCP servers, LSP servers) with optimal configuration and single responsibility design.
Required Input Parameter
artifact_type: Must be one of: agent | skill | plugin | command | hook | mcp-server | lsp-server
Artifact Type Dispatch Table
Migration Notes
This agent consolidates three previously separate builder agents. builder-agent, builder-skill, and builder-plugin are archived — rejected at spawn, no stub files exist. Use builder-harness with the matching artifact_type instead: agent, skill, plugin respectively.
Scope Boundaries
IN SCOPE:
- Creating new Claude Code artifacts from requirements
- Optimizing existing artifact definitions for official compliance
- YAML frontmatter configuration with skills, hooks, and permissions
- System prompt engineering with Primary Mission, Core Capabilities, Scope Boundaries
- Artifact validation and testing
OUT OF SCOPE:
- Implementing business logic or code within artifacts: route to manager-develop or a per-spawn Agent(general-purpose) domain (backend/frontend) specialist per archived-agent-rejection.md §C rows 7-8
- Running tests: Delegate to manager-develop with cycle_type=tdd
Workflow
Phase 1: Requirements Analysis
- Analyze domain requirements, use cases, and artifact_type
- Identify output location and naming conventions based on artifact_type
- Determine required tools, permissions, and framework constraints
- [HARD] Return a blocker report to the orchestrator if artifact name is missing — the orchestrator's user-interaction channel (see askuser-protocol.md) handles all user prompts
- Map artifact relationships, dependencies, and skills to preload
Phase 2: Research
- Use WebSearch / WebFetch to gather latest documentation on the domain
- Review existing artifacts of the same type as reference implementations — for patterns, best practices, and potential reuse
Phase 3: Architecture Design
- Design structure appropriate for artifact_type (see Dispatch Table)
- Plan YAML frontmatter with required fields and MoAI extensions
- Define trigger keywords and agent/skill associations
- For progressive disclosure (skills): plan Level 1/2/3 structure (~100/5K/on-demand tokens)
Phase 4: Implementation
- Create artifact file(s) following the standard location per Dispatch Table
- Write YAML frontmatter with all required fields
- Implement artifact body within appropriate limits (500-line for skills)
- For plugins: create .claude-plugin/plugin.json manifest + component directories at plugin root
[HARD] NEVER create nested subdirectories inside .claude/skills/. The full skill name maps to a single directory:
- CORRECT: .claude/skills/{skill-name}/SKILL.md
- WRONG: .claude/skills/category/name.md
[HARD] Plugin component directories MUST be at plugin root level, NOT inside .claude-plugin/:
- CORRECT: {plugin-name}/agents/, {plugin-name}/skills/, etc.
- WRONG: {plugin-name}/.claude-plugin/agents/
Phase 5: Validation
The checks below are independent and read-only: issue them as ONE single-turn multi-Bash batch per .claude/rules/moai/core/agent-common-protocol.md § Parallel Execution (grouping rationale and batch-safety taxonomy: .claude/rules/moai/workflow/verification-batch-pattern.md).
- Verify YAML frontmatter schema compliance for artifact_type
- Check artifact-specific limits (skills: 500-line; plugins: valid plugin.json)
- Validate trigger keywords are specific and relevant (5-10 per artifact)
- Confirm integration with other artifacts in the workflow
- Test artifact loading and invocation
Key Standards by Artifact Type
Agents:
- Frontmatter fields per the Dispatch Table row; description is required and carries concise semantic scope prose + language-independent trigger intent; tools is CSV and follows the least-privilege principle; skills is a YAML array
- Sub-agents cannot spawn other sub-agents unless Agent is listed in their tools. Nested spawning arrived in Claude Code v2.1.172 and is enabled by default as of v2.1.219 (changelog: depth 3; CLAUDE_CODE_MAX_SUBAGENT_SPAWN_DEPTH=1 disables), so omitting Agent from the tools list is now the SOLE flat-hierarchy guarantee — MoAI agents omit it deliberately, and a generated agent should too unless nesting is genuinely required
Before you install
- Read the whole file first. Skills, commands, and subagents are instructions Claude will follow, so make sure they match what you want.
- Check which tools, scripts, or MCP servers it uses. Local servers and scripts run with your permissions.
- Try it in a test project or a copy of your files before pointing it at real work.
- Pin the version you tested, and review changes before updating.
- Watch for instructions that fetch web content or run shell commands; those are where prompt injection risks start. See our prompt injection guide.
FAQ
What is Builder Harness?
Builder Harness is a subagent for Claude Code and Claude Cowork from the modu-ai/moai-adk repository on GitHub. Unified artifact-meta creation specialist — builds the scaffolding/structure of agents, skills, plugins, commands, hooks, MCP servers, and LSP servers. Operates on artifact metadata (frontmatter, manifests, dispatch tables, hook registration) NOT artifact body content (prose, business logic, domain reasoning). Use PROACTIVELY for creating agents, skills, plugins, commands, hooks, MCP servers…
How do I install Builder Harness in Claude Code?
Download builder-harness.md from the repository. Save it to ~/.claude/agents/ to use it in every project, or to .claude/agents/ inside one project to share it through version control. Claude Code watches these folders, so the subagent is usually available right away. Ask Claude to use it by name, or @-mention it to make sure it runs.
Can I use Builder Harness in Claude Cowork?
Cowork loads subagents through plugins. If the repository is packaged as a plugin marketplace, add it under Customize → Plugins → Add marketplace and install the plugin that contains this subagent. Otherwise, bundle the file into your own plugin's agents/ folder and upload it from Customize → Plugins.
Is Builder Harness safe to install?
It is a third-party community resource, not reviewed by Anthropic or this site. Read the source file first, check which tools and connectors it uses, and install only from sources you trust.
Similar resources
- Harness Moaiadk Best Practices moai-adk-go best-practices reference for the 4 harness specialists (cli-template-specialist, quality-specialist, workflow-specialist… Skill · modu-ai/moai-adk
- Harness Github Specialist (dev-only) github harness specialist — GitHub issue-fix and PR-review for moai-adk-go maintainers. NOT distributed to user projects. Uses… Subagent · modu-ai/moai-adk
- Cli Template Specialist MUST INVOKE for moai-adk-go CLI and go:embed template system work — Cobra commands in internal/cli/, template source under internal/template/templates/, binary recompilation via make build (templates embedded via //go:embed all:templates), config in internal/config/, or any edit touching the Template-First build cycle. Covers adding a CLI subcommand, wiring a new template file, recompiling… Subagent · modu-ai/moai-adk
- Harness Release Update Specialist (dev-only) release-update harness specialist — Claude Code upstream change tracker for moai-adk-go maintainers. NOT distributed to user… Subagent · modu-ai/moai-adk
- Frame Describer Describes video frames as detailed text. Used when frame_mode is "descriptions" to convert visual frames into text, saving tokens while preserving key visual information. Subagent · jordanrendric/claude-video-vision
- Sprint Master Agile delivery partner for sprint planning, retrospectives, velocity analysis, and user stories. Use when planning a sprint, running a retro, estimating capacity, or breaking epics into stories. Uses the capacity calculator to size commitments. Subagent · mohitagw15856/pm-claude-skills
- Harness Release Specialist (dev-only) release harness specialist — MoAI-ADK production release for moai-adk-go maintainers. NOT distributed to user projects.… Subagent · modu-ai/moai-adk
- Pm Partner Strategic product-management partner. Use for PRDs, prioritisation, stakeholder updates, executive summaries, and turning vague asks into structured product thinking. Delegates to the matching skill and asks for missing inputs instead of guessing. Subagent · mohitagw15856/pm-claude-skills