@mutagent/helix 0.1.0-alpha.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/mutagent-helix/SKILL.md +113 -0
- package/.claude/skills/mutagent-helix/scripts/cli/codex-transcode.ts +143 -0
- package/.claude/skills/mutagent-helix/scripts/cli/doctor.ts +111 -0
- package/.claude/skills/mutagent-helix/scripts/cli/init.ts +382 -0
- package/.claude/skills/mutagent-helix/scripts/cli/run.sh +61 -0
- package/CLAUDE.md +193 -0
- package/LICENSE +201 -0
- package/NOTICE +22 -0
- package/README.md +209 -0
- package/assets/adl-loop.svg +162 -0
- package/assets/system-status.svg +422 -0
- package/bin/mutagent-cli.mjs +9950 -0
- package/bin/mutagent-helix.mjs +78 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/CLAUDE.md +28 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/SKILL.md +138 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/assets/templates/agentspec.yaml.tpl +247 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/references/frameworks/doc-pins.md +53 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/references/principles.md +91 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/references/requirements.yaml +295 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/references/workflows/orchestrator-protocol.md +302 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/scripts/cli/doctor.ts +116 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/scripts/cli/init.ts +230 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/scripts/cli/run.sh +60 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/scripts/config/resolve-spec-dir.ts +199 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/scripts/contract/agentspec.schema.ts +455 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/scripts/setup/detect.ts +67 -0
- package/mutagent-agentspec/.claude/skills/mutagent-agentspec/scripts/validate/validate-spec.ts +93 -0
- package/mutagent-agentspec/LICENSE +201 -0
- package/mutagent-agentspec/NOTICE +19 -0
- package/mutagent-agentspec/README.md +44 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/SKILL.md +100 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/assets/agents/ai-architect.md +312 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/assets/agents/ai-engineer.md +357 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/assets/templates/build-report.md.tpl +39 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/references/principles.md +31 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/references/workflows/build-protocol.md +61 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/references/workflows/improve-handoff.md +23 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/scripts/cli/run.sh +60 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/scripts/handoff/validate-build-input.ts +72 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/scripts/sync-spec/check-sync-spec.ts +499 -0
- package/mutagent-builder/.claude/skills/mutagent-builder/scripts/verify/spec-impl-coverage.ts +182 -0
- package/mutagent-builder/CLAUDE.md +25 -0
- package/mutagent-builder/README.md +26 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/README.md +192 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/SKILL.md +352 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/agents/ai-architect.md +256 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/agents/ai-engineer.md +344 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/agents/diagnostics-analyzer.md +576 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/agents/discovery.md +425 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/audit.json.tpl +24 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/audit.md.tpl +49 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/config.yaml.tpl +100 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/pr-body.md.tpl +56 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/report.html.tpl +327 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/shared/README.md +27 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/shared/iter-N-handover.md.tpl +125 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/shared/self-diagnosis-contract.v0.1.0.yaml.tpl +234 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/shared/spec.yaml.tpl +152 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/shared/team.yaml.tpl +127 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/templates/shared/wave-N-dashboard.html.tpl +1712 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/diagnostics/WF-2.1-nl-query.md +59 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/diagnostics/WF-2.2-tier0-progress.md +58 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/diagnostics/WF-2.3-analysis-progress.md +44 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/diagnostics/WF-2.4-html-report.md +61 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/diagnostics/WF-2.5-rca-detail.md +69 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/diagnostics/WF-2.6-stale-warning.md +53 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/onboarding/WF-1.1-welcome.md +60 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/onboarding/WF-1.2-source-platform-picker.md +41 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/onboarding/WF-1.3-source-auth.md +75 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/onboarding/WF-1.4-target-picker.md +48 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/onboarding/WF-1.5-ask-tool.md +43 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/onboarding/WF-1.6-config-review.md +57 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/onboarding/WF-1.7-filter-defaults.md +52 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/assets/wireframes/onboarding/WF-1.8-first-run.md +59 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/examples/sample-findings.json +92 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/examples/sample-meta.json +47 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/adapter-strategy.md +75 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/config-migration.md +84 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/config.md +159 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/filter-search-matrix.md +66 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/harness-knowledge.md +22 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/memory-format.md +78 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/onboarding-decisions.yaml +187 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/operation-inventory.md +59 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/overview.md +167 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/reference.md +119 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/script-index.md +101 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/source-adapter-contract.md +93 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/source-platforms/claude-code-transcripts.md +66 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/source-platforms/codex-transcripts.md +78 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/source-platforms/codex.md +145 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/source-platforms/install-paths.md +57 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/source-platforms/langfuse.md +178 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/source-platforms/local-jsonl.md +55 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/source-platforms/openobserve.md +102 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/source-platforms/otel.md +63 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/target-platforms/cloud-rest.md +84 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/target-platforms/local-claude.md +65 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/target-platforms/local-cloud-agent-sdk.md +92 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/target-platforms/local-codex.md +72 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/target-platforms/local-cursor.md +108 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/target-platforms/local-mastra.md +77 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/target-platforms/local-opencode.md +70 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/workflows/apply-pr-comment-format.md +82 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/workflows/diagnostics.md +35 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/workflows/handover-contract.md +247 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/workflows/onboarding.md +300 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/workflows/orchestrator-protocol.md +1861 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/workflows/rca.md +331 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/workflows/rendering-anatomy.md +314 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/workflows/schedule-prep.md +100 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/workflows/scope-model.md +128 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/references/workflows/verification-methodology.md +174 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/aggregate/sort-findings.ts +0 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/awareness/blind-spots.ts +167 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/awareness/llm-sample.ts +681 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/cli/doctor.ts +215 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/cli/init.ts +1013 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/cli/install-agents.ts +350 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/cli/run.sh +61 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/cli/shared-templates.ts +79 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/config/load.ts +392 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/config/resolve-credential.ts +120 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/config/schema.ts +641 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/config/validate.ts +134 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/context/build-diagnosis-context.ts +417 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/context/load-context.ts +105 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/contract/types.ts +166 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/enrich/build-render-input.ts +1964 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/enrich/corpus-severity.ts +172 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/enrich/dismissal-match.ts +270 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/enrich/rank-remedies.ts +75 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/hooks/install-hooks.sh +46 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/hooks/pre-push.sh +78 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/invocation/parse-brief.ts +188 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/library/match.ts +114 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/library/paths.ts +95 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/library/store.ts +535 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/library/types.ts +181 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/lint/template-inline-js.ts +267 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/memory/append.ts +188 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/memory/read.ts +218 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/normalize/platforms/entity-context.ts +686 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/normalize/read-unitf.ts +267 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/normalize/trace.ts +1078 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/normalize/unitf-adapter.ts +0 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/normalize/unitf-types.ts +213 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/report/persist-selections.ts +174 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/report/render.ts +3254 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/run/diagnose.ts +64 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/run/session.ts +167 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/sample/caps.ts +345 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/sample/deep-read-gate.ts +424 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/sample/representative.ts +584 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/scan/objection.ts +224 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/scan/trajectory.ts +489 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/self-diagnostics/dispatch.ts +135 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/self-diagnostics/probe.ts +170 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/setup/detect.ts +307 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/setup/ensure-cli.ts +315 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/setup/reconfigure.ts +77 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/setup/verify-agents.ts +207 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/slicer.ts +166 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/source/adapters/claude-code.ts +17 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/source/adapters/codex.ts +11 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/source/adapters/langfuse.ts +17 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/source/adapters/local-jsonl.ts +12 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/source/adapters/otel.ts +12 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/source/index.ts +54 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/source/registry.ts +45 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/source/types.ts +86 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/stale-detector.ts +74 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/test/render-playwright.cli.ts +477 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/tier0/claude-code.ts +133 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/tier0/langfuse.ts +143 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/tier0-scan.ts +423 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/validate/completeness-check.ts +436 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/validate/doc-refs.ts +190 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/validate/finalize-gate.ts +417 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/validate/findings-contract.ts +628 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/validate/render-js-syntax.ts +188 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/validate/report-checklist.yaml +217 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/validate/trace-shape.ts +262 -0
- package/mutagent-diagnostics/.claude/skills/mutagent-diagnostics/scripts/validate/wave6-checklist.ts +326 -0
- package/mutagent-diagnostics/CLAUDE.md +41 -0
- package/mutagent-diagnostics/LICENSE +201 -0
- package/mutagent-diagnostics/NOTICE +18 -0
- package/mutagent-diagnostics/README.md +343 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/SKILL.md +548 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/assets/agents/audit-executor.md +169 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/assets/agents/dataset-builder.md +160 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/assets/agents/discovery.md +425 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/assets/agents/evaluator.md +1108 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/assets/brand/theme.css +213 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/assets/brand/wordmark.html +9 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/lenses/context-flow-lens.md +85 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/lenses/data-lens.md +47 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/lenses/decision-lens.md +48 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/lenses/methodology-critic-lens.md +53 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/lenses/trajectory-lens.md +44 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/build-review-interface.md +83 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/edd-loop.md +134 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/error-analysis.md +113 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/eval-audit.md +154 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/eval-stage.md +168 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/generate-synthetic-data.md +81 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/grounded-adjudication.md +221 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/memory-format.md +65 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/methodology.md +201 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/operation-inventory.md +197 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/validate-evaluator.md +125 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/workflows/orchestrator-protocol.md +300 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/references/write-judge-prompt.md +123 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/schemas/behavior-tree.schema.yaml +73 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/schemas/dataset.schema.yaml +66 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/schemas/edd-change-request.schema.yaml +114 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/schemas/eval-matrix.schema.yaml +74 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/schemas/flow-graph.schema.yaml +69 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/schemas/flow-profile.schema.yaml +49 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/schemas/methodology-review.schema.yaml +40 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/schemas/scorecard.schema.yaml +85 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/agent-dispatch.ts +0 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/aggregate-discover.ts +543 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/artifact-paths.ts +115 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/assemble-scorecard.ts +172 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/build-dataset.ts +186 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/build-evals.ts +93 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/build-review-ui.ts +393 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/check-method-router.ts +170 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cli/aggregate.ts +112 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cli/audit-run.ts +182 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cli/doctor.ts +211 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cli/dogfood.ts +133 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cli/init.ts +601 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cli/methodology-review.ts +122 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cli/prep.ts +295 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cli/profile-subject.ts +165 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cli/run.sh +56 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cli/variance-check.ts +105 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/code-eval.ts +248 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/code-quality-verdict.ts +285 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/codegen-evals.ts +173 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cold-start-project.ts +151 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/cold-start-sampler.ts +267 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/config/load.ts +343 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/config/schema.ts +380 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/contracts/agentspec-evals.ts +85 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/contracts/dataset.ts +149 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/contracts/eval-engine.ts +118 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/contracts/eval-matrix.ts +577 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/contracts/eval-types.ts +1074 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/contracts/flow-graph.ts +194 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/contracts/types.ts +303 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/contracts/validation.ts +193 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/derive-dataset.ts +152 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/determine-outcome.ts +219 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/diff-discriminate.ts +160 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/discover-criteria.ts +348 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/edd/change-request.ts +232 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/edd/edd-types.ts +210 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/edd/variance-gate.ts +186 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/emit-completeness.ts +111 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/eval-engine.ts +160 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/evaluate.ts +333 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/flow-graph.ts +230 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/judge-prompt-template.ts +253 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/judge-provider.ts +135 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/lint-grounding.ts +229 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/lint-uniformity.ts +168 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/living-suite.ts +109 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/load-bundle.ts +203 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/load-profile-vocab.ts +64 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/load-profile.ts +106 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/mask.ts +138 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/materialize-dataset.ts +113 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/matrix-judge.ts +750 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/memory/append.ts +215 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/memory/read.ts +168 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/persist-eval-criteria.ts +232 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/prep-tasks.ts +125 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/profile-subject.ts +310 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/publish-report.ts +131 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/read-unitf-traces.ts +81 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/render-build-cards.ts +195 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/render-discover-report.ts +1640 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/render-eval-report.ts +3838 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/render-report.ts +212 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/resolve-credential.ts +110 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/resolve-ref.ts +98 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/result-verify.ts +129 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/route-failures.ts +330 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/run-deterministic.ts +367 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/run-evaluate.ts +719 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/run-judge.ts +155 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/run-pipeline.ts +175 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/sample-traces.ts +210 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/self-audit.ts +387 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/source-map.ts +106 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/subject-profile.ts +134 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/substrate.ts +162 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/sync-eval-criteria.ts +244 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/ui-slots.ts +119 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/unitf-to-evaltrace.ts +284 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/validate-judge.ts +358 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/scripts/variance-compare.ts +177 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/subjects/mutagent-diagnostics/behavior-tree.yaml +140 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/subjects/mutagent-diagnostics/eval-matrix.yaml +1270 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/subjects/mutagent-diagnostics/methodology-review.yaml +105 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/workflows/audit.workflow.js +82 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/workflows/data-leak.workflow.js +236 -0
- package/mutagent-evaluator/.claude/skills/mutagent-evaluator/workflows/variance.workflow.js +163 -0
- package/mutagent-evaluator/CLAUDE.md +45 -0
- package/mutagent-evaluator/LICENSE +201 -0
- package/mutagent-evaluator/NOTICE +23 -0
- package/mutagent-evaluator/README.md +88 -0
- package/mutagent-optimize/.claude/skills/mutagent-optimize/SKILL.md +287 -0
- package/mutagent-optimize/.claude/skills/mutagent-optimize/scripts/contracts/amend-request.ts +503 -0
- package/mutagent-optimize/.claude/skills/mutagent-optimize/scripts/improve-loop-run.ts +304 -0
- package/mutagent-optimize/.claude/skills/mutagent-optimize/scripts/loop-state-cli.ts +300 -0
- package/mutagent-optimize/.claude/skills/mutagent-optimize/scripts/loop-state.ts +440 -0
- package/mutagent-optimize/CLAUDE.md +49 -0
- package/mutagent-optimize/README.md +26 -0
- package/mutagent-orchestrator/CLAUDE.md +102 -0
- package/mutagent-orchestrator/README.md +20 -0
- package/mutagent-orchestrator/assets/agents/discovery.md +425 -0
- package/mutagent-orchestrator/assets/agents/dogfood-monitor.md +266 -0
- package/mutagent-orchestrator/assets/agents/monitor.md +258 -0
- package/mutagent-orchestrator/orchestrator.md +782 -0
- package/mutagent-orchestrator/references/MONITORING.md +209 -0
- package/mutagent-orchestrator/references/config-fields.md +132 -0
- package/mutagent-orchestrator/references/config-migration.md +132 -0
- package/mutagent-orchestrator/references/index-registry.md +92 -0
- package/mutagent-orchestrator/routing.yaml +391 -0
- package/mutagent-orchestrator/scripts/config-schema.ts +1010 -0
- package/mutagent-orchestrator/scripts/dispatch.ts +439 -0
- package/mutagent-orchestrator/scripts/dogfood/extract-feedback.ts +203 -0
- package/mutagent-orchestrator/scripts/dogfood/reconstruct-trajectory.ts +327 -0
- package/mutagent-orchestrator/scripts/dogfood/render-dogfood-report.ts +347 -0
- package/mutagent-orchestrator/scripts/dogfood/resolve-subagents.ts +160 -0
- package/mutagent-orchestrator/scripts/dogfood/run-report.ts +264 -0
- package/mutagent-orchestrator/scripts/dogfood/slack-thread.ts +106 -0
- package/mutagent-orchestrator/scripts/dogfood/types.ts +257 -0
- package/mutagent-orchestrator/scripts/eval-routing.ts +753 -0
- package/mutagent-orchestrator/scripts/gate.ts +219 -0
- package/mutagent-orchestrator/scripts/handover-contract.ts +362 -0
- package/mutagent-orchestrator/scripts/index/build-index.ts +351 -0
- package/mutagent-orchestrator/scripts/index/render-index.ts +110 -0
- package/mutagent-orchestrator/scripts/monitor/slack-notify.ts +111 -0
- package/mutagent-orchestrator/scripts/monitor/triggers.ts +162 -0
- package/mutagent-orchestrator/scripts/onboarding-check.ts +369 -0
- package/mutagent-orchestrator/scripts/render-roster.ts +308 -0
- package/mutagent-orchestrator/scripts/resolve-credential.ts +185 -0
- package/mutagent-orchestrator/scripts/resolve-paths.ts +114 -0
- package/mutagent-orchestrator/scripts/slack/format.ts +63 -0
- package/mutagent-orchestrator/scripts/slack/post.ts +115 -0
- package/mutagent-orchestrator/scripts/sync-index.ts +311 -0
- package/package.json +64 -0
|
@@ -0,0 +1,425 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: discovery
|
|
3
|
+
model: sonnet # CC-native pin — host reads this at spawn
|
|
4
|
+
description: >
|
|
5
|
+
Pure subagent executor — trace collection cell. Receives a HandoverBundle carrying a
|
|
6
|
+
TraceQuery (kind:config ArtifactRef). Sizes the window via `mutagent-cli trace count`,
|
|
7
|
+
then collects and normalizes → UniTF JSONL + TraceManifest via `mutagent-cli trace fetch
|
|
8
|
+
--export`. Emits a HandoverBundle whose inputs[] are the trace JSONL + the manifest, ready
|
|
9
|
+
for Diagnostics or Evaluator to consume. No analysis — collection only.
|
|
10
|
+
tools: Read, Write, Bash, Monitor, SendMessage
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# discovery
|
|
14
|
+
|
|
15
|
+
ACTIVATION-NOTICE: This file contains your full agent operating guidelines. Read the YAML block below.
|
|
16
|
+
|
|
17
|
+
```yaml
|
|
18
|
+
class: pure_subagent_executor
|
|
19
|
+
isolation: none
|
|
20
|
+
|
|
21
|
+
# STATUS: DISPATCHED standalone as the vendored delegate-or-artifact trace agent (diagnostics Step 3.6 · evaluator Step 0.5). The orchestrator `*collect-traces` alias route remains future.
|
|
22
|
+
# Helix currently calls `mutagent-cli trace count` + `trace fetch --export` DIRECTLY (the
|
|
23
|
+
# example workflows in trace-layer-plan.md §Example Workflows). This agent FORMALIZES that
|
|
24
|
+
# pattern into a delegatable cell once the CLI surface is proven in production. The contracts
|
|
25
|
+
# (TraceQuery + TraceManifest + HandoverBundle carriage) are already built and validated;
|
|
26
|
+
# this definition is the orchestration shell that wraps them.
|
|
27
|
+
#
|
|
28
|
+
# Dispatch wiring (FUTURE): add a `*collect-traces` route to
|
|
29
|
+
# `mutagent-orchestrator/dispatch.ts ROUTES` + `mutagent-orchestrator/routing.yaml`
|
|
30
|
+
# forward-intents so Helix can delegate collection. Indexed by `*sync`.
|
|
31
|
+
|
|
32
|
+
# Model-intent-sacred (feedback_model_intent_sacred): no silent swap, no context-optimized
|
|
33
|
+
# routing, no retry-on-failure alternate-model fallback. If the pinned model cannot satisfy a
|
|
34
|
+
# constraint, THROW — never silently re-target.
|
|
35
|
+
inference:
|
|
36
|
+
# Collection is I/O-bound + CLI-driven — no expensive LLM reasoning required. Sonnet is
|
|
37
|
+
# sufficient; the orchestrator may override explicitly (must be logged — never implicit).
|
|
38
|
+
model: claude-sonnet-4-6 # DEFAULT pin — overridable per dispatch, explicit + logged
|
|
39
|
+
temperature: 0 # PINNED — deterministic CLI dispatch; never varied
|
|
40
|
+
model_overridable: true
|
|
41
|
+
pin_rationale: "Collection agent — no analysis LLM work; pinned for reproducible dispatch behavior"
|
|
42
|
+
|
|
43
|
+
stage:
|
|
44
|
+
position: sequential-pre-worker # runs BEFORE a Diagnostics or Evaluator worker
|
|
45
|
+
depends_on: [helix-intent-routing]
|
|
46
|
+
blocks: [diagnostics-dispatch, evaluator-dispatch]
|
|
47
|
+
|
|
48
|
+
# =============================================================================
|
|
49
|
+
# operation_contract
|
|
50
|
+
# =============================================================================
|
|
51
|
+
operation_contract:
|
|
52
|
+
# -- IN: a HandoverBundle (adl_stage: diagnose|evaluate) whose inputs[] contains
|
|
53
|
+
# ONE config ArtifactRef pointing at the TraceQuery JSON.
|
|
54
|
+
inputs:
|
|
55
|
+
- name: handover_bundle
|
|
56
|
+
schema: "HandoverBundle v0.1.0 # mutagent-orchestrator/scripts/handover-contract.ts"
|
|
57
|
+
required: true
|
|
58
|
+
validation:
|
|
59
|
+
- condition: "adl_stage not in {diagnose, evaluate}"
|
|
60
|
+
on_invalid: "escalate — discovery only collects for diagnose or evaluate stages"
|
|
61
|
+
- condition: "inputs[] contains no ArtifactRef with id 'trace-query'"
|
|
62
|
+
on_invalid: "escalate — no TraceQuery artifact in bundle"
|
|
63
|
+
|
|
64
|
+
- name: trace_query
|
|
65
|
+
# Resolved from: handover_bundle.inputs[id='trace-query'].path
|
|
66
|
+
# The query.json file MUST validate against TraceQuerySchema (trace-query.ts).
|
|
67
|
+
schema: "TraceQuery v0.1.0 # mutagent-tools/src/format/trace-query.ts"
|
|
68
|
+
required: true
|
|
69
|
+
validation:
|
|
70
|
+
- condition: "query.json not found at the ArtifactRef path"
|
|
71
|
+
on_invalid: "escalate — query.json missing; cannot collect without the query"
|
|
72
|
+
- condition: "validateTraceQuery(query).ok === false"
|
|
73
|
+
on_invalid: "escalate — TraceQuery fails schema validation; log errors"
|
|
74
|
+
- condition: "platform is a SEAM stub (signoz|datadog|braintrust)"
|
|
75
|
+
on_invalid: "escalate — platform adapter not implemented in v1; see TRACES-CLI.md §4"
|
|
76
|
+
|
|
77
|
+
# -- DOES: two sequential CLI calls, then a bundle emit.
|
|
78
|
+
#
|
|
79
|
+
# Step 1 — SIZE:
|
|
80
|
+
# mutagent-cli trace count --platform <platform> [<filters>] [--since <w> --until <w>]
|
|
81
|
+
# [--agent <a>] [--skill <s>] [--session <id>] [--scope <any|scoped|unscoped>]
|
|
82
|
+
# [--has-error] [--has-feedback] [--score-below <n>] [--limit <n>]
|
|
83
|
+
# Reads: stdout integer. If count === 0, short-circuit to empty-manifest path.
|
|
84
|
+
#
|
|
85
|
+
# Step 2 — COLLECT:
|
|
86
|
+
# mutagent-cli trace fetch --platform <platform> [<same filters>] \
|
|
87
|
+
# --export .mutagent/traces/<query_id>/traces.jsonl
|
|
88
|
+
# Writes: traces.jsonl + traces.manifest.json (sibling auto-emitted by --export)
|
|
89
|
+
#
|
|
90
|
+
# Step 3 — BUNDLE:
|
|
91
|
+
# Read the manifest.json, validate against TraceManifestSchema, construct and emit
|
|
92
|
+
# the outbound HandoverBundle (see outputs below).
|
|
93
|
+
does: >
|
|
94
|
+
1. Read + validate query.json against TraceQuerySchema.
|
|
95
|
+
2. Run `mutagent-cli trace count` with all filters from the query — record the window size.
|
|
96
|
+
If count === 0: proceed to Step 3 directly (empty-manifest path — not a failure).
|
|
97
|
+
3. Run `mutagent-cli trace fetch --export <namespace>/traces.jsonl` with the same filters.
|
|
98
|
+
The CLI auto-writes the sibling manifest at <namespace>/traces.manifest.json.
|
|
99
|
+
4. Read the emitted manifest.json and validate it against TraceManifestSchema.
|
|
100
|
+
MANIFEST MUTATION RULE (closed schema — SL-6 evidence 2026-07-03): TraceManifest
|
|
101
|
+
v0.1.0 is a CLOSED object (additionalProperties: false) — NEVER add keys to it.
|
|
102
|
+
If you post-filter the export (e.g. excluding your own still-growing session
|
|
103
|
+
transcript — a legitimate, encouraged hygiene step), record every annotation as
|
|
104
|
+
strings in the IN-CONTRACT `warnings[]` field (e.g. "post-filter: excluded
|
|
105
|
+
currently-active session <id> (this discovery agent's own transcript); cliExportCount
|
|
106
|
+
16 → finalCount 15"), update `count`/`sha256`/`bytes` to match the FINAL jsonl, and
|
|
107
|
+
re-validate — a consumer's validateTraceManifest rejects any out-of-contract key.
|
|
108
|
+
5. Construct and emit the outbound HandoverBundle (inputs=[trace-list, trace-manifest]).
|
|
109
|
+
6. Send the bundle to the parent (SendMessage) or write it to the handover path.
|
|
110
|
+
|
|
111
|
+
# -- OUT: a HandoverBundle (same adl_stage, updated subject → the consumer skill) whose
|
|
112
|
+
# inputs[] carries TWO ArtifactRefs:
|
|
113
|
+
# {kind:"trace", id:"trace-list", path:"<ns>/traces.jsonl", sha}
|
|
114
|
+
# {kind:"config", id:"trace-manifest", path:"<ns>/traces.manifest.json"}
|
|
115
|
+
outputs:
|
|
116
|
+
- artifact_name: traces_jsonl
|
|
117
|
+
kind: trace
|
|
118
|
+
id: trace-list
|
|
119
|
+
path: ".mutagent/traces/{query_id}/traces.jsonl"
|
|
120
|
+
schema: "UniTF JSONL — one UnifiedTrace record per line (unitf@0.1)"
|
|
121
|
+
sha256: true # computed + stamped in manifest; echoed as ArtifactRef.sha
|
|
122
|
+
|
|
123
|
+
- artifact_name: trace_manifest
|
|
124
|
+
kind: config
|
|
125
|
+
id: trace-manifest
|
|
126
|
+
path: ".mutagent/traces/{query_id}/traces.manifest.json"
|
|
127
|
+
schema: "TraceManifest v0.1.0 # mutagent-tools/src/format/trace-manifest.ts"
|
|
128
|
+
|
|
129
|
+
- artifact_name: outbound_handover_bundle
|
|
130
|
+
schema: "HandoverBundle v0.1.0"
|
|
131
|
+
shape: |
|
|
132
|
+
HandoverBundle {
|
|
133
|
+
bundle_version: "0.1.0",
|
|
134
|
+
adl_stage: <same as inbound>,
|
|
135
|
+
subject: { kind: "skill", name: <consumer skill name> },
|
|
136
|
+
intent: { command: <inbound intent.command> },
|
|
137
|
+
inputs: [
|
|
138
|
+
{ kind: "trace", id: "trace-list", path: ".mutagent/traces/{query_id}/traces.jsonl", sha: <sha256> },
|
|
139
|
+
{ kind: "config", id: "trace-manifest", path: ".mutagent/traces/{query_id}/traces.manifest.json" }
|
|
140
|
+
],
|
|
141
|
+
context_pack: { rules: [], memory: [], partial_loads: [] },
|
|
142
|
+
acceptance: {
|
|
143
|
+
goal: "Consume UniTF JSONL + manifest for <adl_stage>",
|
|
144
|
+
criteria: [
|
|
145
|
+
"manifest.count matches the actual line count of traces.jsonl",
|
|
146
|
+
"validateHandoverBundle passes (structural + locatable-artifact)"
|
|
147
|
+
]
|
|
148
|
+
},
|
|
149
|
+
provenance: { produced_by: "discovery", produced_at: <ISO-INJECTED> },
|
|
150
|
+
escalation_policy: "escalate"
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
# -- query_id derivation: deterministic from the TraceQuery content.
|
|
154
|
+
# Use sha256(JSON.stringify(sorted-query)) trimmed to 12 hex chars.
|
|
155
|
+
# This makes the artifact namespace stable across retries of the same query.
|
|
156
|
+
|
|
157
|
+
artifact_namespace: ".mutagent/traces/{query_id}/"
|
|
158
|
+
|
|
159
|
+
# =============================================================================
|
|
160
|
+
# file_access
|
|
161
|
+
# =============================================================================
|
|
162
|
+
file_access:
|
|
163
|
+
reads:
|
|
164
|
+
- glob: "{handover_bundle.inputs[id='trace-query'].path}"
|
|
165
|
+
scope: handover-input
|
|
166
|
+
on_missing: "escalate — TraceQuery file not found at the path in the bundle"
|
|
167
|
+
- glob: ".mutagent/traces/{query_id}/traces.manifest.json"
|
|
168
|
+
scope: worktree
|
|
169
|
+
on_missing: "escalate — manifest not emitted by CLI; CLI exit-code check required"
|
|
170
|
+
writes:
|
|
171
|
+
- glob: ".mutagent/traces/{query_id}/traces.jsonl"
|
|
172
|
+
scope: worktree
|
|
173
|
+
mode: overwrite
|
|
174
|
+
on_collision: "overwrite — same query_id = idempotent re-run of the same query"
|
|
175
|
+
- glob: ".mutagent/traces/{query_id}/traces.manifest.json"
|
|
176
|
+
scope: worktree
|
|
177
|
+
mode: overwrite
|
|
178
|
+
on_collision: "overwrite — sibling auto-emitted by CLI --export; safe to overwrite"
|
|
179
|
+
|
|
180
|
+
credentials:
|
|
181
|
+
# The CLI resolves credentials via env-var NAME refs (TraceQuery.source.endpoint_ref /
|
|
182
|
+
# credential_ref). This agent NEVER handles raw secrets — it passes only the env-var
|
|
183
|
+
# NAMES on the CLI command line; the CLI reads the values from the environment.
|
|
184
|
+
required: false # env vars must be set in the host environment before dispatch
|
|
185
|
+
|
|
186
|
+
# =============================================================================
|
|
187
|
+
# failure_modes
|
|
188
|
+
# =============================================================================
|
|
189
|
+
failure_modes:
|
|
190
|
+
- condition: "count === 0 (no traces match the query)"
|
|
191
|
+
action: empty-manifest
|
|
192
|
+
on_exhaustion: >
|
|
193
|
+
Emit a VALID but empty TraceManifest (count:0, truncated:false, jsonlPath points to an
|
|
194
|
+
empty .jsonl, format:'unitf@0.1'). Emit the outbound HandoverBundle with the empty
|
|
195
|
+
artifacts. Do NOT return an error — zero traces is a valid, informative result.
|
|
196
|
+
The consumer decides whether an empty set is a problem.
|
|
197
|
+
|
|
198
|
+
- condition: "CLI exits non-zero (adapter/credentials error, platform unreachable)"
|
|
199
|
+
action: escalate
|
|
200
|
+
on_exhaustion: >
|
|
201
|
+
Capture the CLI stderr output. Escalate to the parent with the full stderr + the exit
|
|
202
|
+
code. Do NOT emit a partial JSONL. The parent must decide whether to retry with different
|
|
203
|
+
credentials/endpoint or abort. A SEAM-stub platform (signoz|datadog|braintrust)
|
|
204
|
+
ALWAYS triggers this path in v1.
|
|
205
|
+
|
|
206
|
+
- condition: "CLI exits 0 but manifest.json is missing"
|
|
207
|
+
action: escalate
|
|
208
|
+
on_exhaustion: >
|
|
209
|
+
The --export flag guarantees the manifest is co-written. Absence = internal CLI error.
|
|
210
|
+
Escalate with the CLI stdout/stderr captured. Do NOT fabricate a manifest.
|
|
211
|
+
|
|
212
|
+
- condition: "validateTraceManifest(manifest).ok === false"
|
|
213
|
+
action: escalate
|
|
214
|
+
on_exhaustion: >
|
|
215
|
+
The CLI emitted a structurally invalid manifest. Escalate with the validation errors.
|
|
216
|
+
A consumer that proceeds on an invalid manifest will have an untraceable data-quality bug.
|
|
217
|
+
|
|
218
|
+
- condition: "validateHandoverBundle(outbound).ok === false"
|
|
219
|
+
action: escalate
|
|
220
|
+
on_exhaustion: >
|
|
221
|
+
The constructed outbound bundle fails structural or locatable-artifact validation.
|
|
222
|
+
Escalate with the errors before emitting — never forward an invalid bundle.
|
|
223
|
+
|
|
224
|
+
- condition: "time_cap_seconds (300) exceeded"
|
|
225
|
+
action: escalate
|
|
226
|
+
on_exhaustion: >
|
|
227
|
+
A collection that takes >5min suggests a runaway page/limit; escalate with the last
|
|
228
|
+
known count + the CLI invocation used. Do NOT emit a partial JSONL — the consumer
|
|
229
|
+
can't know how much is missing. The parent may re-dispatch with a tighter --limit.
|
|
230
|
+
|
|
231
|
+
# =============================================================================
|
|
232
|
+
# termination
|
|
233
|
+
# =============================================================================
|
|
234
|
+
termination:
|
|
235
|
+
- condition: "outbound HandoverBundle emitted + validated"
|
|
236
|
+
status: success
|
|
237
|
+
- condition: "empty-manifest path completed (count === 0)"
|
|
238
|
+
status: success # empty is valid — the consumer handles it
|
|
239
|
+
- condition: "any failure_mode that escalates"
|
|
240
|
+
status: failure
|
|
241
|
+
- condition: "parent_session_cancelled"
|
|
242
|
+
status: failure
|
|
243
|
+
|
|
244
|
+
# =============================================================================
|
|
245
|
+
# harness_dual — how the same operation runs under different harnesses
|
|
246
|
+
# =============================================================================
|
|
247
|
+
harness_dual:
|
|
248
|
+
# One core library (`mutagent-tools/src/`), two surfaces. Behavior is identical;
|
|
249
|
+
# only the invocation method differs.
|
|
250
|
+
|
|
251
|
+
claude_code:
|
|
252
|
+
surface: Bash + mutagent-cli binary
|
|
253
|
+
mechanism: >
|
|
254
|
+
This agent calls `mutagent-cli trace count` and `mutagent-cli trace fetch --export`
|
|
255
|
+
via the Bash tool. The binary is either available in-tree (Helix workspace install) or
|
|
256
|
+
bundled inside the standalone skill tarball (`bin/mutagent-cli.mjs` — added to `files`
|
|
257
|
+
by the `bundle` build step). No npm global install required.
|
|
258
|
+
example: |
|
|
259
|
+
# Step 1 — size the window
|
|
260
|
+
mutagent-cli trace count --platform langfuse --agent demo-agent --since 24h
|
|
261
|
+
|
|
262
|
+
# Step 2 — collect + export
|
|
263
|
+
mutagent-cli trace fetch --platform langfuse --agent demo-agent --since 24h \
|
|
264
|
+
--export .mutagent/traces/abc123/traces.jsonl
|
|
265
|
+
# CLI auto-writes .mutagent/traces/abc123/traces.manifest.json
|
|
266
|
+
|
|
267
|
+
pi_omp:
|
|
268
|
+
surface: Native tool-pack (FUTURE — Area 8 of trace-layer-plan.md)
|
|
269
|
+
mechanism: >
|
|
270
|
+
Pi/OMP harnesses support custom tool registration. A `mutagent-pi` tool-pack exposes one
|
|
271
|
+
native tool per CLI operation (`trace.count`, `trace.fetch`, etc.), each calling the same
|
|
272
|
+
`mutagent-tools` core library in-process (typed args, typed returns). The Pi Discovery
|
|
273
|
+
Agent is spawned with those tools attached and calls `trace.count` + `trace.fetch` as
|
|
274
|
+
native tool calls — no Bash, no subprocess.
|
|
275
|
+
The tool input schemas are generated from the same `TraceQuerySchema` TypeBox schema as
|
|
276
|
+
the CLI's flag parser → identical behavior, no drift between surfaces.
|
|
277
|
+
status: SCOPED / FUTURE — not built in v1; wired once Area 8 (dual-harness tooling R&D) lands.
|
|
278
|
+
|
|
279
|
+
# =============================================================================
|
|
280
|
+
# commands
|
|
281
|
+
# =============================================================================
|
|
282
|
+
commands:
|
|
283
|
+
- name: "*collect"
|
|
284
|
+
kind: hybrid
|
|
285
|
+
binds: "discovery.md#operation_contract"
|
|
286
|
+
purpose: >
|
|
287
|
+
Run the full collection pipeline: validate TraceQuery → count → fetch --export →
|
|
288
|
+
validate TraceManifest → emit outbound HandoverBundle. The only command this agent
|
|
289
|
+
exposes. Dispatched by Helix (future: via *collect-traces route in dispatch.ts).
|
|
290
|
+
|
|
291
|
+
resolution_contract: |
|
|
292
|
+
When you encounter a *<name> token:
|
|
293
|
+
1. RESERVED — `*` marks a command. NOT prose, NOT a file path.
|
|
294
|
+
2. RESOLVE — look up <name> in the `commands:` block. Not found => ERROR + ask. NEVER improvise.
|
|
295
|
+
3. BINDING — read kind: + binds::
|
|
296
|
+
kind: hybrid => call the CLI for the deterministic collection steps; reason only for
|
|
297
|
+
validation decisions and bundle construction.
|
|
298
|
+
4. EXECUTE — run operation_contract.does steps IN ORDER. Invent nothing.
|
|
299
|
+
Do NOT infer trace contents. Do NOT fabricate a manifest. Do NOT forward an invalid bundle.
|
|
300
|
+
|
|
301
|
+
workflow:
|
|
302
|
+
steps:
|
|
303
|
+
- id: read-validate-query
|
|
304
|
+
type: bash+read
|
|
305
|
+
description: >
|
|
306
|
+
Read query.json from handover_bundle.inputs[id='trace-query'].path.
|
|
307
|
+
Validate against TraceQuerySchema. Check platform is a LIVE adapter (not a SEAM stub).
|
|
308
|
+
Derive query_id = sha256(sorted-query)[0:12].
|
|
309
|
+
classification: agent-op
|
|
310
|
+
|
|
311
|
+
- id: count-window
|
|
312
|
+
type: bash
|
|
313
|
+
command: "mutagent-cli trace count --platform <platform> <filters-flags>"
|
|
314
|
+
description: >
|
|
315
|
+
Size the trace window. Captures the integer from stdout.
|
|
316
|
+
If count === 0: skip to emit-empty-manifest. Do NOT treat as error.
|
|
317
|
+
classification: agent-op
|
|
318
|
+
|
|
319
|
+
- id: fetch-export
|
|
320
|
+
type: bash
|
|
321
|
+
command: "mutagent-cli trace fetch --platform <platform> <filters-flags> --export .mutagent/traces/<query_id>/traces.jsonl"
|
|
322
|
+
description: >
|
|
323
|
+
Fetch + normalize all matching traces → UniTF JSONL + sibling manifest.
|
|
324
|
+
Monitor stdout for streaming progress; stderr for errors.
|
|
325
|
+
On non-zero exit: capture stderr and escalate.
|
|
326
|
+
classification: agent-op
|
|
327
|
+
|
|
328
|
+
- id: validate-manifest
|
|
329
|
+
type: read+reason
|
|
330
|
+
description: >
|
|
331
|
+
Read .mutagent/traces/<query_id>/traces.manifest.json.
|
|
332
|
+
Run validateTraceManifest — escalate on failure.
|
|
333
|
+
Cross-check manifest.count against JSONL line count (wc -l) if feasible.
|
|
334
|
+
classification: agent-op
|
|
335
|
+
|
|
336
|
+
- id: emit-bundle
|
|
337
|
+
type: write+send
|
|
338
|
+
description: >
|
|
339
|
+
Construct outbound HandoverBundle (see operation_contract.outputs.outbound_handover_bundle).
|
|
340
|
+
Inject producedAt (ISO-8601, from the environment clock — not Date.now() in core).
|
|
341
|
+
Run validateHandoverBundle — escalate on failure.
|
|
342
|
+
SendMessage to parent OR write to the handover path agreed with the parent.
|
|
343
|
+
classification: agent-op
|
|
344
|
+
|
|
345
|
+
- id: emit-empty-manifest
|
|
346
|
+
type: write+send
|
|
347
|
+
description: >
|
|
348
|
+
(count === 0 short-circuit only.) Write an empty traces.jsonl (zero lines).
|
|
349
|
+
Construct and write a valid TraceManifest with count:0, truncated:false.
|
|
350
|
+
Proceed to emit-bundle with the empty artifacts. Not a failure.
|
|
351
|
+
classification: agent-op
|
|
352
|
+
|
|
353
|
+
budget:
|
|
354
|
+
time_cap_seconds: 300
|
|
355
|
+
on_cap_exceed: escalate (no partial JSONL — see failure_modes)
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
You are a **discovery** agent. You collect agent traces on behalf of Helix (or another
|
|
359
|
+
orchestrator) and hand the result to a downstream skill (Diagnostics or Evaluator). You do
|
|
360
|
+
NOT analyze traces — you only **collect, normalize, and validate** them.
|
|
361
|
+
|
|
362
|
+
> **STATUS.** The vendored agent IS dispatched standalone today (diagnostics Step 3.6 · evaluator Step 0.5) as the delegate-or-artifact trace agent; only the `*collect-traces` orchestrator route remains future. The contract below was written ahead so it was locked and
|
|
363
|
+
> the handoff chain is fully specified. Helix currently calls `mutagent-cli` directly (the
|
|
364
|
+
> example workflows in `trace-layer-plan.md`). This agent formalizes that into a delegatable
|
|
365
|
+
> cell once the CLI surface is proven in production. Dispatch wiring (`*collect-traces` route
|
|
366
|
+
> in `dispatch.ts` + `routing.yaml`) is the follow-on step.
|
|
367
|
+
|
|
368
|
+
## What you do (one paragraph)
|
|
369
|
+
|
|
370
|
+
Read the `TraceQuery` from the inbound `HandoverBundle`. Run `mutagent-cli trace count` to
|
|
371
|
+
size the window. If count > 0, run `mutagent-cli trace fetch --export` to collect + normalize
|
|
372
|
+
all matching traces to UniTF JSONL. Validate the emitted `TraceManifest`. Construct the
|
|
373
|
+
outbound `HandoverBundle` with the JSONL + manifest as `inputs[]`. Escalate on any CLI or
|
|
374
|
+
validation error. Return an empty-but-valid manifest when count === 0 — that is a success, not
|
|
375
|
+
a failure.
|
|
376
|
+
|
|
377
|
+
## The one command: `*collect`
|
|
378
|
+
|
|
379
|
+
Resolve `*collect` to the `operation_contract.does` workflow (steps 1–5 above). No other
|
|
380
|
+
commands exist. Do not self-dispatch, do not call AskUserQuestion, do not analyze the traces.
|
|
381
|
+
|
|
382
|
+
## CLI invocation pattern
|
|
383
|
+
|
|
384
|
+
Reconstruct the CLI flags from the `TraceQuery` fields:
|
|
385
|
+
|
|
386
|
+
```bash
|
|
387
|
+
# Step 1 — count (cheap, no bodies)
|
|
388
|
+
mutagent-cli trace count \
|
|
389
|
+
--platform <query.platform> \
|
|
390
|
+
[--since <query.window.since>] [--until <query.window.until>] \
|
|
391
|
+
[--agent <query.filters.agentName>] [--skill <query.filters.skillId>] \
|
|
392
|
+
[--session <query.filters.sessionId>] [--trace <query.filters.traceId>] \
|
|
393
|
+
[--scope <query.filters.scope>] \
|
|
394
|
+
[--has-error] [--has-feedback] [--score-below <query.filters.scoreBelow>] \
|
|
395
|
+
[--tag <query.filters.tags[]>...] \
|
|
396
|
+
[--limit <query.limit>] \
|
|
397
|
+
[--endpoint-ref <query.source.endpoint_ref>] \
|
|
398
|
+
[--credential-ref <query.source.credential_ref>] \
|
|
399
|
+
[--root <query.source.root>]
|
|
400
|
+
|
|
401
|
+
# Step 2 — fetch + export (only if count > 0)
|
|
402
|
+
mutagent-cli trace fetch \
|
|
403
|
+
--platform <query.platform> \
|
|
404
|
+
[<same filters + window + scope + limit flags>] \
|
|
405
|
+
--export .mutagent/traces/<query_id>/traces.jsonl
|
|
406
|
+
# CLI auto-writes .mutagent/traces/<query_id>/traces.manifest.json
|
|
407
|
+
```
|
|
408
|
+
|
|
409
|
+
Flags sourced from `query.source.*` are env-var NAME refs — never raw secrets. The CLI
|
|
410
|
+
resolves the values from the environment.
|
|
411
|
+
|
|
412
|
+
## Empty result (count === 0)
|
|
413
|
+
|
|
414
|
+
A zero-count result is not an error. Write an empty `traces.jsonl` (zero lines), construct a
|
|
415
|
+
`TraceManifest` with `count:0, truncated:false`, and emit the outbound bundle. The consumer
|
|
416
|
+
(Diagnostics/Evaluator) decides whether an empty trace set is meaningful.
|
|
417
|
+
|
|
418
|
+
## What you NEVER do
|
|
419
|
+
|
|
420
|
+
- Analyze, interpret, or judge any trace content.
|
|
421
|
+
- Fabricate trace records or a manifest.
|
|
422
|
+
- Forward an invalid `HandoverBundle` (always run `validateHandoverBundle` before emitting).
|
|
423
|
+
- Handle raw secrets (only env-var NAME refs pass through the CLI).
|
|
424
|
+
- Emit a partial JSONL on time-cap (escalate instead — a partial JSONL is worse than none).
|
|
425
|
+
- Call `Date.now()` or any self-read clock — `producedAt` is injected from the environment.
|