Skip to content

feat: Intelligent Skill Dispatch — change-triggered skill selection#114

Merged
chadjw merged 5 commits intomainfrom
worktree-groovy-sprouting-puddle
Apr 6, 2026
Merged

feat: Intelligent Skill Dispatch — change-triggered skill selection#114
chadjw merged 5 commits intomainfrom
worktree-groovy-sprouting-puddle

Conversation

@chadjw
Copy link
Copy Markdown
Contributor

@chadjw chadjw commented Apr 6, 2026

Summary

  • Extends the existing 3-layer recommendation engine with 16 new signal types (4 change-type + 12 domain signals) for change-aware skill scoring
  • New dispatch_skills MCP tool that auto-detects changes from git diff and recommends an annotated skill sequence with parallel-safe flags, estimated impact, and dependency info
  • Session-start integration via HEAD delta detection — automatically recommends skills when the codebase has changed since the last session
  • Tiered caching: cached health snapshot by default, --fresh flag to force recapture

19 commits, 168 new tests, all passing. Backward compatible — 44 existing recommendation engine tests unchanged.

New files

  • packages/cli/src/skill/dispatch-types.ts — DispatchContext, DispatchResult, DispatchedSkill types
  • packages/cli/src/skill/dispatch-engine.ts — Core dispatch engine with signal enrichment, annotation, and git helpers
  • packages/cli/src/skill/dispatch-session.ts — Session-start HEAD delta detection and advisory banner
  • packages/cli/src/mcp/tools/dispatch-skills.ts — MCP tool adapter

Modified files

  • packages/cli/src/skill/recommendation-types.ts — HEALTH_SIGNALS extended from 12 to 28
  • packages/cli/src/skill/recommendation-rules.ts — Fallback rules for 15 bundled skills with change/domain addresses
  • packages/cli/src/skill/stack-profile.ts — New detectDomainsFromFiles() function
  • packages/cli/src/mcp/server.ts — dispatch_skills tool registration
  • packages/cli/src/commands/setup-mcp.ts — ALL_MCP_TOOLS updated

Test plan

  • 168 new tests pass across 7 test files (types, engine, session, MCP tool, rules, signals)
  • 44 existing recommendation engine tests pass unchanged (backward compat)
  • TypeScript compiles cleanly with --noEmit
  • harness validate passes
  • MCP tool registration tests updated for 54 tools (was 53)

@chadwct chadwct force-pushed the worktree-groovy-sprouting-puddle branch 3 times, most recently from 8f1abca to f81f996 Compare April 6, 2026 19:27
Extends the existing 3-layer recommendation engine with 16 new signal types
(4 change-type + 12 domain signals) for change-aware skill scoring.

New dispatch_skills MCP tool that auto-detects changes from git diff and
recommends an annotated skill sequence with parallel-safe flags, estimated
impact, and dependency info. Session-start integration via HEAD delta
detection for automatic recommendations when the codebase changes.

- packages/cli/src/skill/dispatch-types.ts: DispatchContext, DispatchResult, DispatchedSkill
- packages/cli/src/skill/dispatch-engine.ts: Core engine with signal enrichment and annotation
- packages/cli/src/skill/dispatch-session.ts: Session-start HEAD delta detection
- packages/cli/src/mcp/tools/dispatch-skills.ts: MCP tool adapter
- packages/cli/src/skill/recommendation-types.ts: HEALTH_SIGNALS 12→28
- packages/cli/src/skill/recommendation-rules.ts: Fallback rules for 15 bundled skills
- packages/cli/src/skill/stack-profile.ts: detectDomainsFromFiles()
- 168 new tests across 7 test files, backward compatible

Spec: docs/changes/intelligent-skill-dispatch/proposal.md
Closes #83
@chadwct chadwct force-pushed the worktree-groovy-sprouting-puddle branch from f81f996 to 2f95ca6 Compare April 6, 2026 19:29
Test added 4 commits April 6, 2026 15:34
…ark baselines for CI runner

The benchmark baselines were calibrated to local hardware and consistently
fail on GitHub Actions runners which are ~2x slower for sub-microsecond
operations. Updated core baselines to match observed CI performance.
Also regenerated mcp-tools.md after full build to include compute_blast_radius.
@chadjw chadjw merged commit ad6c0f7 into main Apr 6, 2026
5 checks passed
@chadjw chadjw deleted the worktree-groovy-sprouting-puddle branch April 6, 2026 19:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant