DEPRECATED — legacy 7-Phase meta-harness. Redirects to the v4 harness Builder (/moai:harness <natural-language request>) which replaces the static 7-Phase workflow with an orchestrator-direct 4-phase Builder (ANALYZE / PLAN / GENERATE / ACTIVATE) + a manifest-driven dynamic-workflow Runner. Retained as the redirect source for backward-compat invocation paths; the 7-Phase body below is preserved as historical reference, NOT for new harness creation.
Instrucciones de origen · Vista previa de solo lectura
name
moai-meta-harness
description
DEPRECATED — legacy 7-Phase meta-harness. Redirects to the v4 harness Builder (/moai:harness <natural-language request>) which replaces the static 7-Phase workflow with an orchestrator-direct 4-phase Builder (ANALYZE / PLAN / GENERATE / ACTIVATE) + a manifest-driven dynamic-workflow Runner. Retained as the redirect source for backward-compat invocation paths; the 7-Phase body below is preserved as historical reference, NOT for new harness creation.
when_to_use
Use the v4 Builder instead: issue /moai:harness <natural-language request> to enter Context-First Discovery (domain / goal / constraints / scope extraction) then the orchestrator-direct Builder. This legacy skill fires ONLY on backward-compat invocation paths that still reference the 7-Phase workflow; on any such invocation it surfaces a deprecation notice and redirects to v4.
DEPRECATION NOTICE — This legacy 7-Phase meta-harness is
superseded by the v4 harness Builder (/moai:harness <natural-language request>). The v4 design replaces the static 7-Phase workflow with:
An orchestrator-direct 4-phase Builder (ANALYZE -> PLAN -> GENERATE ->
ACTIVATE) that holds the plan in Claude's session context and can call
AskUserQuestion at the PLAN->GENERATE approval gate (first-class boundary).
A manifest-driven dynamic-workflow Runner (hns-<name>-run.js) that
reads manifest.json and dispatches specialists per their declared
primitive (sub-agent / dynamic-workflow / worktree / /moai goal /
adversarial-fan-out) — no heuristic re-derivation.
Conditional sub-agent-granular worktree isolation (no mandatory
top-level worktree; worktree only for conflict-prone parallel generation).
Signal-driven phase synthesis (not a fixed pipeline); the evaluator is
conditional (skipped for tasks within the model's solo reliable range).
To create a new harness: issue /moai:harness <natural-language request>
(e.g., /moai:harness build a harness for my-project's API development). The
orchestrator runs Context-First Discovery on the request, derives a harness
<name>, and enters the Builder. Do NOT use the 7-Phase workflow below for
new harness creation.
What is preserved here: the 7-Phase body below is retained as the
redirect source for backward-compat — so existing invocation paths that
reference the legacy workflow land on a deprecation notice + redirect rather
than a dead link. The 7-Phase content is historical reference material, NOT
active workflow. The revfactory 7-Phase residual grep excludes this body
precisely because it IS the redirect source.
Apache 2.0 Attribution: Adapted from revfactory/harness (Apache License 2.0). The 7-Phase workflow below is a MoAI adaptation of the upstream 6-Phase + Evolution Mechanism. See .claude/rules/moai/NOTICE.md for the full third-party notices and the harness policy for derivation history. The v4 Builder (the replacement) is documented in .claude/skills/moai/workflows/harness-builder.md.
v4 Redirect (the active path)
New harness creation: /moai:harness <natural-language request>
This routes to the v4 Builder (orchestrator-direct). The Builder:
Context-First Discovery on the request (extract domain / goal / constraints / scope).
AskUserQuestion Socratic rounds if clarity <100%; derives harness <name> from confirmed intent.
See harness-builder.md (companion workflow under moai/workflows/) for the full Builder contract and .claude/rules/moai/workflow/dynamic-workflows.md for the Runner's dynamic-workflow primitive.
Legacy 7-Phase Body (HISTORICAL REFERENCE — redirect source, NOT active)
The content below this separator is the original 7-Phase workflow, preserved
verbatim as the redirect source. It is NOT the active harness-creation path.
New harness creation MUST use /moai:harness <NL request> (v4) above. The
revfactory 7-Phase residual grep excludes this body because it IS the legacy
source being redirected away from.
Meta-factory skill that architects and generates project-specific agent teams. Adapts the revfactory/harness 7-Phase workflow to MoAI's agent ecosystem. Produces hns-* skills and agent definitions tailored to each project's domain.
Upstream: revfactory/harness (Apache-2.0) — "A meta-skill that designs domain-specific agent teams, defines specialized agents, and generates the skills they use." (2905 stars, 420 forks, created 2026-03-26)
/moai project Phase 5+ runs and detects an absent .moai/harness/main.md
CLAUDE.md contains <!-- moai:harness-start --> markers (installed by the project-harness generation policy, not this skill)
User explicitly requests harness generation for their project domain
Key Outputs
Artifact
Location
Owner
Harness config
.moai/harness/main.md + extension files
this skill
Agent definitions
.claude/agents/harness/*.md
this skill
Domain skills
.claude/skills/hns-*/SKILL.md
this skill
All generated artifacts use the hns-* prefix — never moai-* (which is template-managed). The moai-harness-* prefix specifically denotes template-managed harness builders (moai-meta-harness, moai-harness-learner) and is NOT used by this generator's emissions.
6 Architectural Patterns (upstream)
Pipeline, Fan-out/Fan-in, Expert Pool, Producer-Reviewer, Supervisor, Hierarchical Delegation.
Phase 5 (Customization): This skill fills the skeleton with domain-specific content referencing the retained MoAI agents (manager-*, builder-harness, sync-auditor) plus per-spawn Agent(general-purpose) domain delegations for domain-specific work
This skill orchestrates but does NOT replace existing agents. All named agents are retained MoAI agents — no new agents are introduced; domain-specific work is delegated via per-spawn Agent(general-purpose) with domain instructions. Categories: Planning & Strategy (manager-spec, plan-auditor), Implementation (manager-develop, plus per-spawn Agent(general-purpose) domain delegations), Builders (builder-harness with artifact_type=agent|skill|plugin), Workflow Managers (manager-develop, manager-docs, manager-git; quality gate via /moai gate or the sync-phase-quality-gate.sh Stop hook), Quality (sync-auditor).
After Phase 5 (Customization) emits new hns-* skills, this meta-harness automatically hands off to sync-auditor using the Sprint Contract protocol (design constitution §11.5).
4-Dimension Sprint Contract Assessment:
Dimension
What is Checked
Functionality
Agent definitions execute their stated purpose; skills have valid trigger conditions
Security
No credentials in generated files; tool permissions follow least-privilege
Design Target Reference: The +60% effectiveness figure from Hwang (2026) — 49.5 → 79.3 in a 15-run A/B study (author-measured, third-party replications pending) — is the design intent for this validation hook. The governing requirement explicitly states this does not require runtime measurement.
Namespace Separation
[HARD] Skills + Agents namespace는 "범용 배포" vs "사용자 생성" 으로 명확히 분리된다.
Distributed (template-managed)
moai-* namespace (모든 prefix 포함: moai-foundation-*, moai-workflow-*, moai-domain-*, moai-ref-*, moai-meta-*, moai-harness-*) is moai-adk distributed. moai update 가 sync (삭제 후 신규 설치). 사용자 직접 수정은 다음 update로 overwrite.
moai-harness-learner (lifecycle 관리 빌더, project-agnostic)
User-Generated (this meta-harness emits)
hns-* skills namespace and .claude/agents/harness/ directory are user-owned. Created by this meta-harness during /moai project Phase 5+ interview, tailored to the user's project domain.
.moai/harness/main.md — harness entry point + extensions
Contract
[HARD] This meta-harness MUST emit user-generated skills with hns-* prefix ONLY. Emitting a moai-* (including moai-harness-*) prefixed file during Phase 4 or 5 is a contract violation.
[HARD] moai update MUST NOT delete, modify, or sync hns-* skills or .claude/agents/harness/* files. Backup before update is mandatory.
[HARD] Template (internal/template/templates/) MUST NOT contain hns-* skills or .claude/agents/harness/*-specialist.md files. Leak detection triggers cleanup chore.
[HARD] hns-* (user-owned) vs moai-harness-* (template builder) substring 구분: prefix 매칭은 정확한 startsWith 비교를 사용 (*harness-* substring 패턴은 false positive 위험으로 금지).
[HARD] Generator emits hns-* prefix ONLY. The build enforcement recognizes hns-* as user-owned, with the legacy harness-* prefixed form retained during a backward-compat deprecation window. SSOT: the harness namespace separation policy.
Generated-Agent Self-Activation Contract
[HARD] Each generated .claude/agents/harness/<role>.md agent MUST be emitted with both of the following frontmatter fields so the generated harness self-activates when the agent is delegated:
A skills: frontmatter entry preloading the agent's companion harness-<domain>-* skill. This makes the domain skill load deterministically when the agent runs, rather than relying on auto-discovery which fails silently when the companion skill is absent from the agent's context.
A non-empty, trigger-shaped description frontmatter field naming the domain + the observable task-shape, so the orchestrator's .moai/harness/main.md Task-Shape Routing table can dispatch to it.
Both fields are enforced at runtime by the Phase-6 post-generation smoke gate (moai doctor harness, see the project/meta-harness.md workflow Phase 7): a generated agent with an empty description, a dangling skills: reference (pointing at a non-existent hns-* dir), or NO skills: key at all causes the gate to FAIL. A skills:-less agent must not pass silently — that is the auto-discovery failure mode this contract closes. Full emission template + example: project/meta-harness.md § 6.4.1.
Storage Roots
Namespace / Path
Location
Source
moai update 동작
moai-* skills (incl. moai-harness-* builders)
.claude/skills/moai-*/
template
삭제 후 신규 설치 (overwrite)
hns-* skills
.claude/skills/hns-*/
user project (this meta-harness emits — intent declaration)
/moai project Phase 5+ runs and .moai/harness/main.md is absent
CLAUDE.md contains <!-- moai:harness-start --> markers. These markers are installed by the project-harness generation policy during project initialization; this skill does not install them.
This skill provides the workflow recipe and agent cross-references. It does NOT execute /moai project Phase 5+ logic — that invocation is owned by the project-harness generation policy. The separation is intentional:
This skill = capability (what to do and how)
PROJECT-HARNESS-001 = invocation wiring (when to do it)
Out of Scope
The following capabilities are explicitly NOT implemented by this skill:
5-layer integration mechanism — owned by the project-harness generation policy. The integration with /moai project phases, hook installation, and CLAUDE.md marker management are all delegated to that SPEC.
16-question Socratic interview — owned by the project-harness generation policy. The manager-spec conducts the interview under that SPEC's control.
Auto-evolution loop — owned by the harness-learning policy. The learning feedback mechanism (Phase 7) and delta capture are separate work items outside Wave A.
Modification of .claude/agents/{moai,harness}/ or static moai-* skills — this meta-harness generates only hns-* prefixed artifacts and has no write access to MoAI's own agent/skill directories.
Works Well With
moai-foundation-core — SPEC-First DDD and TRUST 5 quality gates
moai-foundation-cc — Claude Code skill/agent authoring standards
manager-spec — Conducts Discovery and Synthesis phases
sync-auditor — Sprint Contract evaluation in Phase 6