@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,59 @@
|
|
|
1
|
+
# WF-2.1 — Natural Language Query Entry
|
|
2
|
+
|
|
3
|
+
> Entry point for a diagnostics run.
|
|
4
|
+
> User states what they want in plain language; skill translates to TraceFilter.
|
|
5
|
+
|
|
6
|
+
## Trigger
|
|
7
|
+
|
|
8
|
+
User says: "run diagnostics", "diagnose my agents", "why is my agent failing?",
|
|
9
|
+
"check last week's agent sessions", etc.
|
|
10
|
+
|
|
11
|
+
## Display
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
15
|
+
│ mutagent-diagnostics — Running │
|
|
16
|
+
│ │
|
|
17
|
+
│ What would you like to diagnose? │
|
|
18
|
+
│ (or press Enter to use defaults from config.yaml) │
|
|
19
|
+
│ │
|
|
20
|
+
│ Examples: │
|
|
21
|
+
│ • "Why did my search agent fail last week?" │
|
|
22
|
+
│ • "Show me sessions with negative feedback" │
|
|
23
|
+
│ • "Analyze errors from yesterday" │
|
|
24
|
+
│ • "Check the checkout-agent sessions" │
|
|
25
|
+
│ │
|
|
26
|
+
│ > _ │
|
|
27
|
+
└─────────────────────────────────────────────────────────────┘
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## NL → TraceFilter Translation
|
|
31
|
+
|
|
32
|
+
The orchestrator translates the query:
|
|
33
|
+
|
|
34
|
+
| NL Fragment | TraceFilter Field |
|
|
35
|
+
|-------------|------------------|
|
|
36
|
+
| "last week" | `time_window.from = "7daysAgo"` |
|
|
37
|
+
| "yesterday" | `time_window.from = "1daysAgo"` |
|
|
38
|
+
| "errors" / "failed" | `has_error = true` |
|
|
39
|
+
| "negative feedback" | `has_feedback = true, score_below = <auto-discovered>` |
|
|
40
|
+
| "search agent" | `agent_id = "search-agent"` |
|
|
41
|
+
| (empty / Enter) | use `config.yaml` defaults |
|
|
42
|
+
|
|
43
|
+
## After Translation
|
|
44
|
+
|
|
45
|
+
Show confirmation before running:
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
Interpreted as:
|
|
49
|
+
• Time window: last 7 days
|
|
50
|
+
• Filter: errors only
|
|
51
|
+
• Agent: all agents
|
|
52
|
+
• Limit: 100 traces
|
|
53
|
+
|
|
54
|
+
[1] Run with these filters
|
|
55
|
+
[2] Adjust filters
|
|
56
|
+
[3] Cancel
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
→ On confirm: proceed to WF-2.2 (tier-0 scan progress)
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# WF-2.2 — Tier-0 Scan Progress
|
|
2
|
+
|
|
3
|
+
> Displayed while tier-0-scan.ts runs (CODE-FIRST pre-LLM analysis).
|
|
4
|
+
> This runs before any LLM call — fast, deterministic.
|
|
5
|
+
|
|
6
|
+
## Display (In Progress)
|
|
7
|
+
|
|
8
|
+
```
|
|
9
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
10
|
+
│ Running diagnostics... │
|
|
11
|
+
│ │
|
|
12
|
+
│ [1/4] Fetching traces from langfuse... ████░░ 62% │
|
|
13
|
+
│ [2/4] Tier-0 scan (pre-LLM)... ░░░░░░ 0% │
|
|
14
|
+
│ [3/4] Deep analysis (LLM)... pending │
|
|
15
|
+
│ [4/4] Rendering report... pending │
|
|
16
|
+
│ │
|
|
17
|
+
│ Fetched 73 trace metadata records │
|
|
18
|
+
└─────────────────────────────────────────────────────────────┘
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## Display (After Tier-0 Scan)
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
25
|
+
│ Running diagnostics... │
|
|
26
|
+
│ │
|
|
27
|
+
│ [1/4] Fetching traces... ████████ done │
|
|
28
|
+
│ [2/4] Tier-0 scan (pre-LLM)... ████████ done │
|
|
29
|
+
│ [3/4] Deep analysis (LLM)... ████░░░░ 55%│
|
|
30
|
+
│ [4/4] Rendering report... pending │
|
|
31
|
+
│ │
|
|
32
|
+
│ Tier-0 findings: │
|
|
33
|
+
│ • Error spike: 12 errors in last 2h (threshold: 3) │
|
|
34
|
+
│ • Latency spike: p95 = 45s (threshold: 15s) │
|
|
35
|
+
│ • Analyzing 4 trace clusters (cap: 5) │
|
|
36
|
+
└─────────────────────────────────────────────────────────────┘
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Tier-0 Pattern Summary (shown after step 2)
|
|
40
|
+
|
|
41
|
+
| Pattern | Found | Value |
|
|
42
|
+
|---------|-------|-------|
|
|
43
|
+
| P-001 Error spike | Yes | 12 errors / 2h (threshold: 3) |
|
|
44
|
+
| P-002 Latency spike | Yes | p95=45s (threshold: 15s) |
|
|
45
|
+
| P-003 Feedback cluster | No | — |
|
|
46
|
+
|
|
47
|
+
## Slice Plan Display
|
|
48
|
+
|
|
49
|
+
```
|
|
50
|
+
Slice plan (cap=5):
|
|
51
|
+
Cluster 1: 8 error traces (2026-05-27 10:00–12:00)
|
|
52
|
+
Cluster 2: 5 high-latency traces
|
|
53
|
+
Cluster 3: 3 negative-feedback traces
|
|
54
|
+
Cluster 4: 2 remaining samples
|
|
55
|
+
→ 4 clusters queued (under cap of 5)
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
→ Proceeds automatically to WF-2.3 (LLM analysis running)
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# WF-2.3 — LLM Analysis Progress
|
|
2
|
+
|
|
3
|
+
> Displayed while diagnostics-analyzer sub-agents run in parallel (cap: 5).
|
|
4
|
+
> Each cluster is analyzed by one sub-agent.
|
|
5
|
+
|
|
6
|
+
## Display (Parallel Execution)
|
|
7
|
+
|
|
8
|
+
```
|
|
9
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
10
|
+
│ Deep analysis running (4 clusters, cap=5) │
|
|
11
|
+
│ │
|
|
12
|
+
│ Cluster 1 [errors, 8 traces] ████████ complete │
|
|
13
|
+
│ Cluster 2 [latency, 5 traces] ████░░░░ tier-2... │
|
|
14
|
+
│ Cluster 3 [feedback, 3 traces] ██░░░░░░ tier-1... │
|
|
15
|
+
│ Cluster 4 [sample, 2 traces] ░░░░░░░░ queued │
|
|
16
|
+
│ │
|
|
17
|
+
│ Findings so far: 3 critical, 1 warning │
|
|
18
|
+
│ Budget: 142s elapsed / 240s cap │
|
|
19
|
+
└─────────────────────────────────────────────────────────────┘
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Analysis Tiers (shown in progress labels)
|
|
23
|
+
|
|
24
|
+
| Label | Tier |
|
|
25
|
+
|-------|------|
|
|
26
|
+
| "tier-0..." | Pre-LLM pattern scan |
|
|
27
|
+
| "tier-1..." | Known pattern matching |
|
|
28
|
+
| "tier-2..." | Tree-based structural analysis |
|
|
29
|
+
| "tier-3..." | Deep structural (LLM) |
|
|
30
|
+
| "tier-4..." | LLM deviation detection |
|
|
31
|
+
| "complete" | All tiers done for this cluster |
|
|
32
|
+
|
|
33
|
+
## Budget Exhaustion Warning
|
|
34
|
+
|
|
35
|
+
If budget cap (240s) is reached before all clusters complete:
|
|
36
|
+
```
|
|
37
|
+
⚠ Analysis budget reached (240s). 1 cluster not fully analyzed.
|
|
38
|
+
Partial findings included in report.
|
|
39
|
+
|
|
40
|
+
[1] View partial report
|
|
41
|
+
[2] Resume analysis (run again with narrower scope)
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
→ On all clusters complete: proceed to WF-2.4 (report HTML)
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# WF-2.4 — HTML Report + Findings
|
|
2
|
+
|
|
3
|
+
> Primary output of a diagnostics run.
|
|
4
|
+
> Rendered via `scripts/report/render.ts` using `assets/templates/report.html.tpl`.
|
|
5
|
+
|
|
6
|
+
## Layout
|
|
7
|
+
|
|
8
|
+
```
|
|
9
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
10
|
+
│ mutagent-diagnostics — Report │
|
|
11
|
+
│ Generated: 2026-05-27 10:42 | Source: langfuse | 73 traces │
|
|
12
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
13
|
+
│ [3 CRITICAL] [1 WARNING] [0 OK] [73 traces] │
|
|
14
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
15
|
+
│ Discovered Checks │
|
|
16
|
+
│ ┌──────────────┬──────────┬──────────┬─────────┐ │
|
|
17
|
+
│ │ Check │ Pattern │ Severity │ Found │ │
|
|
18
|
+
│ ├──────────────┼──────────┼──────────┼─────────┤ │
|
|
19
|
+
│ │ Error spike │ P-001 │ critical │ ✓ yes │ │
|
|
20
|
+
│ │ Latency p95 │ P-002 │ critical │ ✓ yes │ │
|
|
21
|
+
│ │ Low feedback │ P-003 │ warning │ ✓ yes │ │
|
|
22
|
+
│ └──────────────┴──────────┴──────────┴─────────┘ │
|
|
23
|
+
├─────────────────────────────────────────────────────────────────┤
|
|
24
|
+
│ Findings │
|
|
25
|
+
│ ▼ [CRITICAL] Tool call timeout causing search failures │
|
|
26
|
+
│ WHAT: tool-timeout WHY: env-config WHERE: tool-invocation │
|
|
27
|
+
│ Evidence: ▸ 8 traces, latency p95 = 45s │
|
|
28
|
+
│ Root cause: SEARCH_TIMEOUT env var missing → default 5s │
|
|
29
|
+
│ ───────────────────────────────────────────────────────── │
|
|
30
|
+
│ REMEDY: Set SEARCH_TIMEOUT=30000 in .mutagentrc │
|
|
31
|
+
│ Target: local-claude (config) │
|
|
32
|
+
│ [ Copy markdown ] [ Accept fix ] │
|
|
33
|
+
│ │
|
|
34
|
+
│ ▶ [CRITICAL] Prompt hallucination on empty product list... │
|
|
35
|
+
│ ▶ [WARNING] Feedback cluster: 3 sessions scored <2/5... │
|
|
36
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
37
|
+
│ [ Copy as Markdown ] │
|
|
38
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Finding Card Layers (4 layers per PR-014)
|
|
42
|
+
|
|
43
|
+
1. **Header**: severity badge + title + WHAT/WHY/WHERE taxonomy chips (collapsed by default)
|
|
44
|
+
2. **Evidence**: trace IDs, message excerpts, score values, timestamps
|
|
45
|
+
3. **RCA chain**: recursive why-chain until origin (no fixed depth)
|
|
46
|
+
4. **Remedy**: target platform, change type, copy button, Accept/Dismiss actions
|
|
47
|
+
|
|
48
|
+
## HITL Interaction
|
|
49
|
+
|
|
50
|
+
- **Copy markdown**: copies finding + remedy as markdown to clipboard
|
|
51
|
+
- **Accept fix**: triggers apply-worker for this specific finding (→ WF-3.1)
|
|
52
|
+
- **Dismiss**: marks finding as dismissed (recorded in audit)
|
|
53
|
+
|
|
54
|
+
## Report File
|
|
55
|
+
|
|
56
|
+
Report is written to: `.mutagent/diagnostics/reports/report-<timestamp>.html`
|
|
57
|
+
Path is printed to console:
|
|
58
|
+
```
|
|
59
|
+
Report written to: .mutagent/diagnostics/reports/report-2026-05-27T10-42.html
|
|
60
|
+
Opening in browser...
|
|
61
|
+
```
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# WF-2.5 — RCA Detail Expansion
|
|
2
|
+
|
|
3
|
+
> Expanded view of root cause analysis for a single finding.
|
|
4
|
+
> Shown when user clicks "expand" on a finding card in WF-2.4.
|
|
5
|
+
|
|
6
|
+
## Display (Expanded Finding Card)
|
|
7
|
+
|
|
8
|
+
```
|
|
9
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
10
|
+
│ ▼ [CRITICAL] Tool call timeout causing search failures │
|
|
11
|
+
│ │
|
|
12
|
+
│ WHAT: tool-timeout WHY: env-config WHERE: tool-invocation │
|
|
13
|
+
│ │
|
|
14
|
+
│ Evidence (8 traces) │
|
|
15
|
+
│ ────────────────────────────────────────────────────────── │
|
|
16
|
+
│ tr_abc123 2026-05-27 10:05 duration: 47.2s error: timeout │
|
|
17
|
+
│ tr_abc124 2026-05-27 10:08 duration: 46.9s error: timeout │
|
|
18
|
+
│ tr_abc125 2026-05-27 10:11 duration: 45.1s error: timeout │
|
|
19
|
+
│ (+ 5 more) │
|
|
20
|
+
│ │
|
|
21
|
+
│ Root Cause Chain │
|
|
22
|
+
│ ────────────────────────────────────────────────────────── │
|
|
23
|
+
│ Why 1: Tool call `search` exceeded timeout limit │
|
|
24
|
+
│ Evidence: "Error: ETIMEDOUT after 5000ms" │
|
|
25
|
+
│ │
|
|
26
|
+
│ Why 2: Default timeout is 5s; search API requires 15–30s │
|
|
27
|
+
│ Evidence: search API docs, observed latency p50=18s │
|
|
28
|
+
│ │
|
|
29
|
+
│ Why 3: SEARCH_TIMEOUT env var not set in .mutagentrc │
|
|
30
|
+
│ Evidence: env probe shows SEARCH_TIMEOUT undefined │
|
|
31
|
+
│ │
|
|
32
|
+
│ Origin: Missing env configuration (env-config class) │
|
|
33
|
+
│ │
|
|
34
|
+
│ Remedy │
|
|
35
|
+
│ ────────────────────────────────────────────────────────── │
|
|
36
|
+
│ Type: config-patch │
|
|
37
|
+
│ Target: local-claude (local-agent class) │
|
|
38
|
+
│ Action: Add SEARCH_TIMEOUT=30000 to .mutagentrc │
|
|
39
|
+
│ │
|
|
40
|
+
│ [ Copy markdown ] [ Accept fix ] [ Dismiss ] │
|
|
41
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## RCA Chain Rules (from references/workflows/rca.md)
|
|
45
|
+
|
|
46
|
+
- No fixed depth — recurse until the ORIGIN is reached (a WHY that has no further cause)
|
|
47
|
+
- Every WHY node must cite evidence from the trace (not inference)
|
|
48
|
+
- Origin must map to one of the 8 WHERE categories
|
|
49
|
+
|
|
50
|
+
## Finding JSON Shape (shown on demand via "Copy JSON")
|
|
51
|
+
|
|
52
|
+
```json
|
|
53
|
+
{
|
|
54
|
+
"id": "f-001",
|
|
55
|
+
"severity": "critical",
|
|
56
|
+
"what": "tool-timeout",
|
|
57
|
+
"why": "env-config",
|
|
58
|
+
"where": "tool-invocation",
|
|
59
|
+
"summary": "Tool call timeout causing search failures",
|
|
60
|
+
"evidence": [...],
|
|
61
|
+
"whyChain": [
|
|
62
|
+
{ "depth": 1, "reason": "...", "evidence": "..." },
|
|
63
|
+
{ "depth": 2, "reason": "...", "evidence": "..." },
|
|
64
|
+
{ "depth": 3, "reason": "...", "evidence": "..." }
|
|
65
|
+
],
|
|
66
|
+
"origin": { "depth": 3, "reason": "...", "evidence": "..." },
|
|
67
|
+
"remedy": { ... }
|
|
68
|
+
}
|
|
69
|
+
```
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
# WF-2.6 — Stale Diagnosis Warning
|
|
2
|
+
|
|
3
|
+
> Shown when the user tries to apply a fix, but the codebase has changed since diagnosis.
|
|
4
|
+
> `scripts/stale-detector.ts` detects this by comparing git hashes.
|
|
5
|
+
|
|
6
|
+
## Trigger
|
|
7
|
+
|
|
8
|
+
User clicks "Accept fix" on a finding card in WF-2.4, but `stale-detector.ts` returns `stale=true`.
|
|
9
|
+
|
|
10
|
+
## Display
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
14
|
+
│ ⚠ Stale Diagnosis │
|
|
15
|
+
│ │
|
|
16
|
+
│ The codebase has changed since this diagnosis was run. │
|
|
17
|
+
│ │
|
|
18
|
+
│ Diagnosed at: abc1234f (2026-05-27 09:00) │
|
|
19
|
+
│ Current HEAD: f4e2a991 (2026-05-27 10:42) │
|
|
20
|
+
│ Changed files: 3 │
|
|
21
|
+
│ │
|
|
22
|
+
│ Applying fixes from a stale diagnosis may be incorrect. │
|
|
23
|
+
│ │
|
|
24
|
+
│ [1] Re-run diagnostics on current HEAD (recommended) │
|
|
25
|
+
│ [2] Apply anyway (I know what I'm doing) │
|
|
26
|
+
│ [3] Cancel │
|
|
27
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
## On "Re-run" (Recommended)
|
|
31
|
+
|
|
32
|
+
→ Restart diagnostics from WF-2.1 with the same filters as the original run
|
|
33
|
+
→ Previous report is archived to `.mutagent/diagnostics/reports/archived/`
|
|
34
|
+
|
|
35
|
+
## On "Apply Anyway"
|
|
36
|
+
|
|
37
|
+
→ Proceed to WF-3.1 with a `stale=true` flag in the audit record
|
|
38
|
+
→ Audit.json will record `staleCheck.status = "stale-override"`
|
|
39
|
+
→ PR title will include "(stale diagnosis)" suffix for visibility
|
|
40
|
+
|
|
41
|
+
## Hash Comparison Logic
|
|
42
|
+
|
|
43
|
+
```typescript
|
|
44
|
+
// scripts/stale-detector.ts
|
|
45
|
+
const diagnosedHash = audit.diagnosedAtHash; // hash at diagnosis time
|
|
46
|
+
const currentHash = getCurrentGitHash(); // HEAD at apply time
|
|
47
|
+
|
|
48
|
+
if (diagnosedHash !== currentHash) {
|
|
49
|
+
const changedFiles = getChangedFiles(diagnosedHash, currentHash);
|
|
50
|
+
return { stale: true, diagnosedHash, currentHash, changedFiles };
|
|
51
|
+
}
|
|
52
|
+
return { stale: false };
|
|
53
|
+
```
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# WF-1.1 — Welcome / Entry Point
|
|
2
|
+
|
|
3
|
+
> Phase 1 of onboarding: detect setup state and route user.
|
|
4
|
+
> Rendered as: numbered chat options (chat-multi-choice) or AskUserQuestion (Claude Code)
|
|
5
|
+
|
|
6
|
+
## Trigger
|
|
7
|
+
|
|
8
|
+
User runs: `pnpx @mutagent/diagnostics init`
|
|
9
|
+
|
|
10
|
+
## Setup State Detection
|
|
11
|
+
|
|
12
|
+
`scripts/setup/detect.ts` runs first:
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
SetupState = "missing" | "partial" | "complete"
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Route Matrix
|
|
19
|
+
|
|
20
|
+
| State | Route |
|
|
21
|
+
|-------|-------|
|
|
22
|
+
| `missing` | → WF-1.2 (source platform picker) |
|
|
23
|
+
| `partial` | → WF-1.7 (resume partial setup) |
|
|
24
|
+
| `complete` | → WF-1.8 (run diagnostics now?) |
|
|
25
|
+
|
|
26
|
+
## Display (State = "missing")
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
30
|
+
│ mutagent-diagnostics — Setup │
|
|
31
|
+
│ │
|
|
32
|
+
│ Welcome! Let's configure diagnostics for your AI agents. │
|
|
33
|
+
│ │
|
|
34
|
+
│ This will take about 5 minutes. │
|
|
35
|
+
│ │
|
|
36
|
+
│ [1] Get started → (detect source platform) │
|
|
37
|
+
│ [2] Show what will be configured │
|
|
38
|
+
│ [3] Exit │
|
|
39
|
+
└─────────────────────────────────────────────────────────────┘
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Display (State = "partial")
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
46
|
+
│ mutagent-diagnostics — Resume Setup │
|
|
47
|
+
│ │
|
|
48
|
+
│ Partial config found. Missing fields: │
|
|
49
|
+
│ • target.platform │
|
|
50
|
+
│ • ask_tool.runtime │
|
|
51
|
+
│ │
|
|
52
|
+
│ [1] Resume setup │
|
|
53
|
+
│ [2] Start over (backup existing config) │
|
|
54
|
+
│ [3] Exit │
|
|
55
|
+
└─────────────────────────────────────────────────────────────┘
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Display (State = "complete")
|
|
59
|
+
|
|
60
|
+
→ Skip to WF-1.8
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# WF-1.2 — Source Platform Picker
|
|
2
|
+
|
|
3
|
+
> Phase 2 of onboarding: pick the trace source platform.
|
|
4
|
+
> Prev: WF-1.1 | Next: WF-1.3
|
|
5
|
+
|
|
6
|
+
## Display
|
|
7
|
+
|
|
8
|
+
```
|
|
9
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
10
|
+
│ Step 1 of 7 — Where are your agent traces stored? │
|
|
11
|
+
│ │
|
|
12
|
+
│ [1] Langfuse (cloud or self-hosted) │
|
|
13
|
+
│ [2] OpenTelemetry / Jaeger (OTel-compatible backend) │
|
|
14
|
+
│ [3] Local JSONL file (.jsonl or .ndjson) │
|
|
15
|
+
│ [4] Claude Code sessions (auto-detected) │
|
|
16
|
+
│ [5] Codex CLI sessions (auto-detected) │
|
|
17
|
+
│ [6] I don't know yet (skip, configure later) │
|
|
18
|
+
└─────────────────────────────────────────────────────────────┘
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## On Selection
|
|
22
|
+
|
|
23
|
+
| Choice | Action |
|
|
24
|
+
|--------|--------|
|
|
25
|
+
| 1 (Langfuse) | → WF-1.3a (Langfuse auth check) |
|
|
26
|
+
| 2 (OTel) | → WF-1.3b (OTel endpoint check) |
|
|
27
|
+
| 3 (Local JSONL) | → WF-1.3c (file path input) |
|
|
28
|
+
| 4 (Claude Code) | → probe `~/.claude/projects/` → WF-1.4 |
|
|
29
|
+
| 5 (Codex) | → probe `~/.codex/sessions/` → WF-1.4 |
|
|
30
|
+
| 6 (Skip) | → Set `source.platform: null` → WF-1.4 |
|
|
31
|
+
|
|
32
|
+
## Validation
|
|
33
|
+
|
|
34
|
+
After selection, validate connectivity:
|
|
35
|
+
- Langfuse: `langfuse traces list --limit 1` → check exit code
|
|
36
|
+
- OTel: `curl -m 5 $ENDPOINT/health` → check response
|
|
37
|
+
- Local JSONL: `ls $FILE` → check file exists
|
|
38
|
+
- Claude Code: `ls ~/.claude/projects/` → count sessions
|
|
39
|
+
- Codex: `ls ~/.codex/sessions/` → count sessions
|
|
40
|
+
|
|
41
|
+
If validation fails → show inline error + offer retry or skip
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# WF-1.3 — Source Auth / Connection
|
|
2
|
+
|
|
3
|
+
> Phase 3 of onboarding: configure source connectivity.
|
|
4
|
+
> Prev: WF-1.2 | Next: WF-1.4
|
|
5
|
+
|
|
6
|
+
## WF-1.3a — Langfuse Auth
|
|
7
|
+
|
|
8
|
+
```
|
|
9
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
10
|
+
│ Step 2 of 7 — Langfuse Connection │
|
|
11
|
+
│ │
|
|
12
|
+
│ Checking .mutagentrc for LANGFUSE_* keys... │
|
|
13
|
+
│ │
|
|
14
|
+
│ ✓ LANGFUSE_SECRET_KEY found │
|
|
15
|
+
│ ✓ LANGFUSE_PUBLIC_KEY found │
|
|
16
|
+
│ ✓ LANGFUSE_HOST found (https://cloud.langfuse.com) │
|
|
17
|
+
│ │
|
|
18
|
+
│ Testing connection... ✓ Connected (12 traces found) │
|
|
19
|
+
│ │
|
|
20
|
+
│ [1] Continue with this config │
|
|
21
|
+
│ [2] Use a different host │
|
|
22
|
+
└─────────────────────────────────────────────────────────────┘
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
### Keys Not Found Path
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
✗ LANGFUSE_SECRET_KEY not found in .mutagentrc
|
|
29
|
+
|
|
30
|
+
Add the following to your .mutagentrc file:
|
|
31
|
+
|
|
32
|
+
LANGFUSE_SECRET_KEY=sk-...
|
|
33
|
+
LANGFUSE_PUBLIC_KEY=pk-...
|
|
34
|
+
LANGFUSE_HOST=https://cloud.langfuse.com
|
|
35
|
+
|
|
36
|
+
[1] I've added the keys — retry
|
|
37
|
+
[2] Skip Langfuse, choose another source
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## WF-1.3b — OTel Endpoint
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
44
|
+
│ Step 2 of 7 — OTel Endpoint │
|
|
45
|
+
│ │
|
|
46
|
+
│ OTel endpoint (from .mutagentrc or enter): │
|
|
47
|
+
│ > http://localhost:4318 │
|
|
48
|
+
│ │
|
|
49
|
+
│ Testing connection... ✓ Jaeger reachable │
|
|
50
|
+
│ │
|
|
51
|
+
│ [1] Continue │
|
|
52
|
+
│ [2] Change endpoint │
|
|
53
|
+
└─────────────────────────────────────────────────────────────┘
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## WF-1.3c — Local JSONL File
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
60
|
+
│ Step 2 of 7 — JSONL File Path │
|
|
61
|
+
│ │
|
|
62
|
+
│ Path to your trace file (.jsonl or .ndjson): │
|
|
63
|
+
│ > traces.jsonl │
|
|
64
|
+
│ │
|
|
65
|
+
│ ✓ File found (247 lines) │
|
|
66
|
+
│ │
|
|
67
|
+
│ [1] Continue │
|
|
68
|
+
│ [2] Enter a different path │
|
|
69
|
+
└─────────────────────────────────────────────────────────────┘
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Key Rules
|
|
73
|
+
|
|
74
|
+
- NEVER prompt for key values — only prompt for key NAMES to check in .mutagentrc
|
|
75
|
+
- Keys are referenced by name in config.yaml — never stored as values
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# WF-1.4 — Target Platform Picker
|
|
2
|
+
|
|
3
|
+
> Phase 4 of onboarding: pick the apply target.
|
|
4
|
+
> Prev: WF-1.3 | Next: WF-1.5
|
|
5
|
+
|
|
6
|
+
## Display
|
|
7
|
+
|
|
8
|
+
```
|
|
9
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
10
|
+
│ Step 3 of 7 — Where should fixes be applied? │
|
|
11
|
+
│ │
|
|
12
|
+
│ Target class: │
|
|
13
|
+
│ │
|
|
14
|
+
│ LOCAL AGENTS (config changes only, HITL review) │
|
|
15
|
+
│ [1] Claude Code (skills + settings) │
|
|
16
|
+
│ [2] Codex CLI (config.toml) │
|
|
17
|
+
│ [3] Cursor (.cursorrules + settings) │
|
|
18
|
+
│ [4] OpenCode (opencode.json) │
|
|
19
|
+
│ │
|
|
20
|
+
│ LOCAL CODE CONSTRUCTS (code edits via PR, lint gate) │
|
|
21
|
+
│ [5] Mastra.ai (TypeScript agents) │
|
|
22
|
+
│ [6] Cloud Agent SDK (Anthropic / OpenAI / Google / etc.) │
|
|
23
|
+
│ │
|
|
24
|
+
│ REMOTE (REST API mutations, HITL always required) │
|
|
25
|
+
│ [7] Cloud REST (Langfuse annotations, remote config) │
|
|
26
|
+
│ │
|
|
27
|
+
│ [8] Skip for now │
|
|
28
|
+
└─────────────────────────────────────────────────────────────┘
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## On Selection
|
|
32
|
+
|
|
33
|
+
| Choice | Target Platform | Target Class |
|
|
34
|
+
|--------|-----------------|--------------|
|
|
35
|
+
| 1 | local-claude | local-agent |
|
|
36
|
+
| 2 | local-codex | local-agent |
|
|
37
|
+
| 3 | local-cursor | local-agent |
|
|
38
|
+
| 4 | local-opencode | local-agent |
|
|
39
|
+
| 5 | local-mastra | local-code-construct |
|
|
40
|
+
| 6 | local-cloud-agent-sdk | local-code-construct |
|
|
41
|
+
| 7 | cloud-rest | remote |
|
|
42
|
+
| 8 | null | null |
|
|
43
|
+
|
|
44
|
+
## Target Class Explanation (shown inline)
|
|
45
|
+
|
|
46
|
+
- **local-agent**: reads config, proposes changes, you apply them (safe)
|
|
47
|
+
- **local-code-construct**: opens a PR branch, lint+typecheck gate before any merge
|
|
48
|
+
- **remote**: read-before-write, idempotent mutations, HITL confirmation for every change
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# WF-1.5 — ASK Tool Selection
|
|
2
|
+
|
|
3
|
+
> Phase 5 of onboarding: configure the HITL interaction mode.
|
|
4
|
+
> Prev: WF-1.4 | Next: WF-1.6
|
|
5
|
+
|
|
6
|
+
## Display
|
|
7
|
+
|
|
8
|
+
```
|
|
9
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
10
|
+
│ Step 4 of 7 — How should I ask you questions? │
|
|
11
|
+
│ │
|
|
12
|
+
│ When diagnostics finds an issue and wants your input, │
|
|
13
|
+
│ how do you want to respond? │
|
|
14
|
+
│ │
|
|
15
|
+
│ [1] Claude Code (AskUserQuestion) │
|
|
16
|
+
│ Best if you're running this from Claude Code │
|
|
17
|
+
│ │
|
|
18
|
+
│ [2] Chat multi-choice │
|
|
19
|
+
│ Numbered options in the conversation │
|
|
20
|
+
│ Works everywhere: terminal, CLI, any chat │
|
|
21
|
+
│ │
|
|
22
|
+
└─────────────────────────────────────────────────────────────┘
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Auto-Detection
|
|
26
|
+
|
|
27
|
+
Before showing this screen, check if running in Claude Code:
|
|
28
|
+
- `process.env.CLAUDE_CODE_ENTRYPOINT` set → suggest [1] (Claude Code)
|
|
29
|
+
- Otherwise → suggest [2] (chat-multi-choice)
|
|
30
|
+
|
|
31
|
+
## On Selection
|
|
32
|
+
|
|
33
|
+
| Choice | `ask_tool.runtime` |
|
|
34
|
+
|--------|--------------------|
|
|
35
|
+
| 1 | `claude-code` |
|
|
36
|
+
| 2 | `chat-multi-choice` |
|
|
37
|
+
|
|
38
|
+
## Context Note
|
|
39
|
+
|
|
40
|
+
The ASK tool selection affects:
|
|
41
|
+
- Destructive-action gates: `AskUserQuestion` in Claude Code vs numbered prompt in chat
|
|
42
|
+
- HTML report copy-back: auto-paste to conversation (Claude Code) vs manual copy prompt (chat)
|
|
43
|
+
- No functional difference for read-only diagnostics — only matters at apply time
|