create-merlin-brain 5.0.2 → 5.3.2
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/README.md +25 -4
- package/bin/install.cjs +95 -0
- package/dist/server/server.d.ts.map +1 -1
- package/dist/server/server.js +75 -0
- package/dist/server/server.js.map +1 -1
- package/dist/server/tools/context.d.ts.map +1 -1
- package/dist/server/tools/context.js +60 -0
- package/dist/server/tools/context.js.map +1 -1
- package/dist/server/tools/project-picture.d.ts +17 -0
- package/dist/server/tools/project-picture.d.ts.map +1 -0
- package/dist/server/tools/project-picture.js +204 -0
- package/dist/server/tools/project-picture.js.map +1 -0
- package/dist/server/tools/types.d.ts +24 -0
- package/dist/server/tools/types.d.ts.map +1 -1
- package/files/agents/challenger-academic.md +8 -0
- package/files/agents/challenger-arbiter.md +8 -0
- package/files/agents/challenger-insider.md +8 -0
- package/files/agents/code-organization-supervisor.md +8 -0
- package/files/agents/codex-planner.md +36 -9
- package/files/agents/context-guardian.md +8 -0
- package/files/agents/docs-keeper.md +8 -0
- package/files/agents/dry-refactor.md +8 -0
- package/files/agents/elite-code-refactorer.md +8 -0
- package/files/agents/hardening-guard.md +8 -0
- package/files/agents/implementation-dev.md +8 -0
- package/files/agents/merlin-access-control-reviewer.md +8 -0
- package/files/agents/merlin-api-designer.md +8 -0
- package/files/agents/merlin-codebase-mapper.md +8 -0
- package/files/agents/merlin-debugger.md +8 -0
- package/files/agents/merlin-dependency-auditor.md +8 -0
- package/files/agents/merlin-edge-case-hunter.md +8 -0
- package/files/agents/merlin-executor.md +8 -0
- package/files/agents/merlin-frontend.md +8 -0
- package/files/agents/merlin-input-validator.md +8 -0
- package/files/agents/merlin-integration-checker.md +8 -0
- package/files/agents/merlin-migrator.md +8 -0
- package/files/agents/merlin-milestone-auditor.md +8 -0
- package/files/agents/merlin-party-review.md +8 -0
- package/files/agents/merlin-performance.md +8 -0
- package/files/agents/merlin-planner.md +9 -1
- package/files/agents/merlin-researcher.md +8 -0
- package/files/agents/merlin-reviewer.md +8 -0
- package/files/agents/merlin-sast-reviewer.md +8 -0
- package/files/agents/merlin-secret-scanner.md +8 -0
- package/files/agents/merlin-security.md +8 -0
- package/files/agents/merlin-verifier.md +8 -0
- package/files/agents/merlin-work-verifier.md +8 -0
- package/files/agents/merlin.md +8 -0
- package/files/agents/ops-railway.md +8 -0
- package/files/agents/orchestrator-retrofit.md +8 -0
- package/files/agents/product-spec.md +8 -0
- package/files/agents/remotion.md +8 -0
- package/files/agents/system-architect.md +8 -0
- package/files/agents/tests-qa.md +8 -0
- package/files/commands/merlin/course-correct.md +8 -0
- package/files/commands/merlin/design-audit.md +92 -0
- package/files/commands/merlin/health.md +8 -0
- package/files/commands/merlin/next.md +8 -0
- package/files/commands/merlin/optimize.md +89 -0
- package/files/commands/merlin/polish.md +99 -0
- package/files/commands/merlin/quick.md +8 -0
- package/files/commands/merlin/readiness-gate.md +8 -0
- package/files/commands/merlin/redesign.md +108 -0
- package/files/loop/README.md +11 -0
- package/files/merlin/skills/SKILLS-INDEX.md +16 -1
- package/files/merlin/skills/TASK-OPTIMIZER.json +310 -0
- package/files/merlin/skills/coding/focus-mode.md +8 -0
- package/files/merlin/skills/design/emil-design-eng.md +31 -0
- package/files/merlin/skills/design/impeccable.md +36 -0
- package/files/merlin/skills/duo/offer.md +20 -7
- package/files/merlin/skills/duo/on.md +26 -17
- package/files/merlin/skills/duo/status.md +10 -3
- package/files/merlin/templates/DEBUG.md +11 -0
- package/files/merlin/templates/UAT.md +11 -0
- package/files/merlin/templates/phase-prompt.md +11 -0
- package/files/merlin/templates/project.md +11 -0
- package/files/merlin/templates/requirements.md +11 -0
- package/files/merlin/templates/roadmap.md +11 -0
- package/files/merlin/templates/state.md +11 -0
- package/files/merlin/templates/verification-report.md +11 -0
- package/files/merlin/workflows/execute-phase.md +11 -0
- package/files/merlin/workflows/plan-phase.md +11 -0
- package/files/merlin/workflows/progress.md +11 -0
- package/files/merlin/workflows/resume-project.md +11 -0
- package/files/merlin/workflows/verify-phase.md +11 -0
- package/files/merlin/workflows/verify-work.md +11 -0
- package/files/merlin-system-prompt.txt +35 -1
- package/files/rules/codex-routing.md +19 -0
- package/files/rules/duo-routing.md +109 -10
- package/files/rules/merlin-routing.md +40 -0
- package/files/scripts/codex-as.sh +5 -2
- package/files/scripts/design-intent-detect.sh +8 -0
- package/files/scripts/duo-badge.sh +3 -5
- package/files/scripts/duo-installed.sh +3 -3
- package/files/scripts/duo-mode-read.sh +30 -10
- package/files/scripts/duo-mode-write.sh +28 -3
- package/files/scripts/duo-pre-route.sh +2 -8
- package/files/scripts/install-design-skills.sh +86 -0
- package/files/scripts/merlin-codex.sh +9 -4
- package/files/scripts/task-optimize.sh +335 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/server/tools/context.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAE7B,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAGpD;;;;;GAKG;AACH,SAAS,gBAAgB;IACvB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;QACjD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpC,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3F,CAAC;IAAC,MAAM,CAAC;QACP,sDAAsD;IACxD,CAAC;AACH,CAAC;AAED,6DAA6D;AAC7D,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA2B,CAAC;AAE5D,mEAAmE;AACnE,KAAK,UAAU,sBAAsB,CACnC,MAAc,EACd,MAA6B;IAE7B,IAAI,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC;QAAE,OAAO,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;IACvE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;QACpE,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3B,MAAM,OAAO,GAAG,cAAc,CAAC,QAA8C,CAAC,CAAC;QAC/E,gBAAgB,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtC,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,GAAgB;IACnD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,GAAG,CAAC;IAE9C,0EAA0E;IAC1E,yBAAyB;IACzB,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,uWAAuW,EACvW;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;KACxG,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,yEAAyE,EAAE,CAAC;iBAC7G,CAAC;YACJ,CAAC;YAED,MAAM,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChF,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;gBAC9C,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;gBACrD,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;gBAC1D,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;gBACrE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;aAC7C,CAAC,CAAC;YAEH,IAAI,KAAK,GAAG,qBAAqB,CAAC;YAElC,qBAAqB;YACrB,KAAK,IAAI,0BAA0B,CAAC;YACpC,IAAI,YAAY,EAAE,KAAK,EAAE,CAAC;gBACxB,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC;gBAChC,KAAK,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,IAAI,gBAAgB,CAAC;gBAC5E,IAAI,IAAI,CAAC,UAAU;oBAAE,KAAK,IAAI,UAAU,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC1D,IAAI,IAAI,CAAC,SAAS;oBAAE,KAAK,IAAI,YAAY,IAAI,CAAC,SAAS,EAAE,CAAC;YAC5D,CAAC;iBAAM,IAAI,QAAQ,EAAE,CAAC;gBACpB,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,IAAI,IAAI,SAAS,CAAC;gBACrD,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,EAAE,WAAW,IAAI,EAAE,CAAC;gBACrD,KAAK,IAAI,GAAG,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACtC,CAAC;iBAAM,IAAI,UAAU,EAAE,CAAC;gBACtB,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3F,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,KAAK,IAAI,4DAA4D,CAAC;YACxE,CAAC;YACD,KAAK,IAAI,MAAM,CAAC;YAEhB,0BAA0B;YAC1B,KAAK,IAAI,qBAAqB,CAAC;YAC/B,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;gBAC9C,KAAK,IAAI,UAAU,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC;gBAChH,KAAK,IAAI,iBAAiB,QAAQ,CAAC,OAAO,EAAE,mBAAmB,IAAI,cAAc,IAAI,CAAC;gBACtF,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC;gBACrC,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACnD,KAAK,IAAI,aAAa,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBACxE,CAAC;YACH,CAAC;iBAAM,IAAI,UAAU,EAAE,CAAC;gBACtB,KAAK,IAAI,+BAA+B,CAAC;YAC3C,CAAC;iBAAM,CAAC;gBACN,KAAK,IAAI,qBAAqB,CAAC;YACjC,CAAC;YACD,KAAK,IAAI,IAAI,CAAC;YAEd,YAAY;YACZ,KAAK,IAAI,aAAa,CAAC;YACvB,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;gBAClF,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,MAAM,CAAC;gBACrF,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;gBAC9E,KAAK,IAAI,UAAU,SAAS,UAAU,UAAU,iBAAiB,OAAO,YAAY,CAAC;gBAErF,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC;gBAC1E,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,KAAK,IAAI,eAAe,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBACzE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,IAAI,6DAA6D,CAAC;YACzE,CAAC;YACD,KAAK,IAAI,IAAI,CAAC;YAEd,+CAA+C;YAC/C,MAAM,aAAa,GAAG,QAAQ,EAAE,aAAa,IAAI,EAAE,CAAC;YACpD,MAAM,aAAa,GAAG,QAAQ,EAAE,aAAa,IAAI,EAAE,CAAC;YACpD,MAAM,kBAAkB,GAAG,QAAQ,EAAE,kBAAkB,IAAI,EAAE,CAAC;YAE9D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9D,KAAK,IAAI,uBAAuB,CAAC;gBAEjC,iCAAiC;gBACjC,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE;wBAChD,KAAK,IAAI,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,IAAI,CAAC;oBACjD,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,qBAAqB;gBACrB,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;gBAC1F,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,KAAK,IAAI,sBAAsB,MAAM,CAAC,MAAM,QAAQ,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBACpG,CAAC;gBAED,KAAK,IAAI,IAAI,CAAC;YAChB,CAAC;YAED,qCAAqC;YACrC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,KAAK,IAAI,uCAAuC,CAAC;gBACjD,aAAa,CAAC,OAAO,CAAC,CAAC,GAAQ,EAAE,EAAE;oBACjC,KAAK,IAAI,KAAK,GAAG,CAAC,OAAO,OAAO,GAAG,CAAC,cAAc,IAAI,aAAa,MAAM,CAAC;oBAC1E,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE;wBACzC,KAAK,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC;oBACvE,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBACH,KAAK,IAAI,IAAI,CAAC;YAChB,CAAC;YAED,yBAAyB;YACzB,KAAK,IAAI,+BAA+B,CAAC;YACzC,MAAM,WAAW,GAAG,QAAQ,EAAE,WAAW,CAAC;YAC1C,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzD,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,EAAO,EAAE,EAAE;oBAC1C,KAAK,IAAI,KAAK,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,OAAO,IAAI,CAAC;gBAC3C,CAAC,CAAC,CAAC;gBACH,KAAK,IAAI,uEAAuE,CAAC;YACnF,CAAC;iBAAM,CAAC;gBACN,KAAK,IAAI,8CAA8C,CAAC;YAC1D,CAAC;YACD,KAAK,IAAI,IAAI,CAAC;YAEd,WAAW;YACX,IAAI,UAAU,EAAE,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5D,KAAK,IAAI,iBAAiB,CAAC;gBAC3B,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,EAAE;oBACvD,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC;gBACtB,CAAC,CAAC,CAAC;gBACH,KAAK,IAAI,IAAI,CAAC;YAChB,CAAC;YAED,KAAK,IAAI,yBAAyB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC;YAE9D,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC;gBACrH,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,2EAA2E;IAC3E,2BAA2B;IAC3B,MAAM,CAAC,IAAI,CACT,oBAAoB,EACpB,6gBAA6gB,EAC7gB;QACE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6BAA6B,CAAC;QACxD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;KAC5G,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;QAC1B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4KAA4K,EAAE,CAAC;iBAChN,CAAC;YACJ,CAAC;YAED,qDAAqD;YACrD,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,eAAe,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACrE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;gBAC7B,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;gBAC1C,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC;gBAC7B,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;aACrF,CAAC,CAAC;YAEH,IAAI,OAAO,GAAG,kBAAkB,IAAI,MAAM,CAAC;YAE3C,+DAA+D;YAC/D,MAAM,kBAAkB,GAAG,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC9E,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,OAAO,IAAI,4CAA4C,CAAC;gBACxD,OAAO,IAAI,yFAAyF,CAAC;gBACrG,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBAC7B,OAAO,IAAI,aAAa,CAAC,CAAC,OAAO,IAAI,CAAC;oBACtC,OAAO,IAAI,WAAW,CAAC,CAAC,MAAM,IAAI,CAAC;oBACnC,OAAO,IAAI,gBAAgB,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACrE,CAAC,CAAC,CAAC;YACL,CAAC;YAED,yCAAyC;YACzC,MAAM,kBAAkB,GAAG,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC;YACtG,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClC,OAAO,IAAI,6CAA6C,CAAC;gBACzD,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACzC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,IAAI,CAAC;gBAClD,CAAC,CAAC,CAAC;gBACH,OAAO,IAAI,IAAI,CAAC;YAClB,CAAC;YAED,OAAO,IAAI,oBAAoB,KAAK,MAAM,CAAC;YAE3C,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,OAAO,IAAI,sBAAsB,KAAK,CAAC,KAAK,WAAW,CAAC;gBACxD,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACtB,OAAO,IAAI,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,IAAI,CAAC;oBAC7C,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzB,OAAO,IAAI,cAAc,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBACrE,CAAC;gBACH,CAAC,CAAC,CAAC;gBACH,OAAO,IAAI,IAAI,CAAC;YAClB,CAAC;YAED,IAAI,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvC,OAAO,IAAI,4BAA4B,CAAC;gBACxC,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBAClC,OAAO,IAAI,OAAO,CAAC,CAAC,QAAQ,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC;oBAC9C,IAAI,CAAC,CAAC,OAAO;wBAAE,OAAO,IAAI,cAAc,CAAC,CAAC,OAAO,IAAI,CAAC;gBACxD,CAAC,CAAC,CAAC;gBACH,OAAO,IAAI,IAAI,CAAC;YAClB,CAAC;YAED,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxC,OAAO,IAAI,6BAA6B,CAAC;gBACzC,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;oBACpC,OAAO,IAAI,OAAO,EAAE,CAAC,OAAO,kBAAkB,EAAE,CAAC,OAAO,IAAI,CAAC;gBAC/D,CAAC,CAAC,CAAC;YACL,CAAC;YAED,wDAAwD;YACxD,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACjE,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACrD,MAAM,SAAS,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;oBAChD,IAAI,SAAS,EAAE,CAAC;wBACd,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC7F,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC;wBAChF,OAAO,IAAI,sBAAsB,SAAS,KAAK,UAAU,KAAK,CAAC;wBAC/D,OAAO,IAAI,SAAS,GAAG,IAAI,CAAC;oBAC9B,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,4CAA4C;YAC9C,CAAC;YAED,yDAAyD;YACzD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACrC,IAAI,mBAAmB,GAAG,EAAE,CAAC;YAE7B,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC/F,mBAAmB,GAAG,aAAa,CAAC;YACtC,CAAC;iBAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChI,mBAAmB,GAAG,WAAW,CAAC;YACpC,CAAC;iBAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3G,mBAAmB,GAAG,aAAa,CAAC;YACtC,CAAC;iBAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpE,mBAAmB,GAAG,SAAS,CAAC;YAClC,CAAC;iBAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC5G,mBAAmB,GAAG,iBAAiB,CAAC;YAC1C,CAAC;iBAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtG,mBAAmB,GAAG,YAAY,CAAC;YACrC,CAAC;YAED,IAAI,mBAAmB,EAAE,CAAC;gBACxB,OAAO,IAAI,iCAAiC,mBAAmB,IAAI,CAAC;gBACpE,OAAO,IAAI,yCAAyC,mBAAmB,cAAc,CAAC;YACxF,CAAC;YAED,oDAAoD;YACpD,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;gBAC3D,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,OAAO,IAAI,sCAAsC,CAAC;oBAClD,OAAO,IAAI,kFAAkF,CAAC;oBAC9F,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;wBACvB,OAAO,IAAI,OAAO,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,WAAW,IAAI,CAAC;wBAC1F,OAAO,IAAI,uDAAuD,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,IAAI,gBAAgB,CAAC;oBAC7G,CAAC,CAAC,CAAC;oBACH,OAAO,IAAI,IAAI,CAAC;gBAClB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,6CAA6C;YAC/C,CAAC;YAED,8DAA8D;YAC9D,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;gBACpD,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,eAAe,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,IAAI,CAAC,CAAC,CAAC;oBAC1G,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,CAAC;oBACzD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;oBAErD,IAAI,eAAe,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACpE,OAAO,IAAI,iCAAiC,CAAC;wBAC7C,OAAO,IAAI,oEAAoE,CAAC;wBAEhF,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;4BACxB,OAAO,IAAI,qBAAqB,eAAe,KAAK,SAAS,CAAC,WAAW,EAAE,WAAW,IAAI,CAAC,iBAAiB,SAAS,CAAC,WAAW,EAAE,OAAO,IAAI,CAAC,aAAa,CAAC;wBAC/J,CAAC;wBAED,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;4BACrB,OAAO,IAAI,sBAAsB,YAAY,iCAAiC,CAAC;4BAC/E,CAAC,SAAS,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE;gCAC5D,OAAO,IAAI,KAAK,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,QAAQ,IAAI,QAAQ,KAAK,CAAC;4BAC3E,CAAC,CAAC,CAAC;wBACL,CAAC;wBAED,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CACnD,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC/G,CAAC;wBACF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC7B,OAAO,IAAI,6BAA6B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;wBACvE,CAAC;wBAED,OAAO,IAAI,IAAI,CAAC;oBAClB,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,0CAA0C;YAC5C,CAAC;YAED,6EAA6E;YAC7E,gBAAgB,EAAE,CAAC;YAEnB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC;gBACvH,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,2EAA2E;IAC3E,0BAA0B;IAC1B,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,6bAA6b,EAC7b;QACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0BAA0B,CAAC;QACtD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qEAAqE,CAAC;QAC5G,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;KAC5G,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QAClC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4EAA4E,EAAE,CAAC;iBAChH,CAAC;YACJ,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YAEvE,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,IAAI,MAAM,GAAG,qBAAqB,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;gBACnF,MAAM,IAAI,SAAS,KAAK,CAAC,KAAK,aAAa,CAAC;gBAE5C,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBACtB,MAAM,IAAI,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC;oBAC3B,MAAM,IAAI,kBAAkB,CAAC,CAAC,OAAO,IAAI,CAAC;oBAC1C,MAAM,IAAI,gBAAgB,CAAC,CAAC,KAAK,IAAI,CAAC;oBACtC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACzB,MAAM,IAAI,kBAAkB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBACzF,CAAC;oBACD,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,MAAM,IAAI,qBAAqB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC5D,CAAC;oBACD,MAAM,IAAI,IAAI,CAAC;gBACjB,CAAC,CAAC,CAAC;gBAEH,gBAAgB,EAAE,CAAC;gBACnB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;YACvD,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACzD,gBAAgB,EAAE,CAAC;YACnB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;QAC3D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,wBAAwB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC;gBACrH,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,2EAA2E;IAC3E,+BAA+B;IAC/B,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,uZAAuZ,EACvZ;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;KAC5G,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4EAA4E,EAAE,CAAC;iBAChH,CAAC;YACJ,CAAC;YAED,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACxD,IAAI,MAAM,GAAG,0BAA0B,CAAC;YAExC,IAAI,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvC,MAAM,IAAI,oBAAoB,CAAC;gBAC/B,WAAW,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;oBAClC,MAAM,IAAI,OAAO,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC;oBAC3C,IAAI,CAAC,CAAC,OAAO;wBAAE,MAAM,IAAI,2BAA2B,CAAC,CAAC,OAAO,YAAY,CAAC;oBAC1E,IAAI,CAAC,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;wBAAE,MAAM,IAAI,cAAc,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;oBACrF,MAAM,IAAI,IAAI,CAAC;gBACjB,CAAC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxC,MAAM,IAAI,oCAAoC,CAAC;gBAC/C,WAAW,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;oBACpC,MAAM,IAAI,SAAS,EAAE,CAAC,OAAO,IAAI,CAAC;oBAClC,MAAM,IAAI,eAAe,EAAE,CAAC,MAAM,kBAAkB,EAAE,CAAC,OAAO,mBAAmB,EAAE,CAAC,QAAQ,MAAM,CAAC;gBACrG,CAAC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxC,MAAM,IAAI,sBAAsB,CAAC;gBACjC,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;oBAChD,MAAM,IAAI,OAAO,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,WAAW,kBAAkB,CAAC;oBAC9D,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;wBACnB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,WAAW,IAAI,CAAC;oBACxD,CAAC,CAAC,CAAC;oBACH,MAAM,IAAI,IAAI,CAAC;gBACjB,CAAC,CAAC,CAAC;YACL,CAAC;YAED,wDAAwD;YACxD,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBACjE,IAAI,WAAW,IAAI,WAAW,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBACrD,MAAM,SAAS,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;oBAChD,IAAI,SAAS,EAAE,CAAC;wBACd,MAAM,SAAS,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC7F,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC;wBAChF,MAAM,IAAI,0BAA0B,SAAS,KAAK,UAAU,OAAO,CAAC;wBACpE,MAAM,IAAI,SAAS,GAAG,IAAI,CAAC;oBAC7B,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,4CAA4C;YAC9C,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,8BAA8B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC;gBAC3H,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,2EAA2E;IAC3E,0BAA0B;IAC1B,MAAM,CAAC,IAAI,CACT,mBAAmB,EACnB,8XAA8X,EAC9X;QACE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;KAC5G,EACD,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4EAA4E,EAAE,CAAC;iBAChH,CAAC;YACJ,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YACtD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC;QAC3D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC;gBAC1H,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,2EAA2E;IAC3E,sBAAsB;IACtB,MAAM,CAAC,IAAI,CACT,eAAe,EACf,+ZAA+Z,EAC/Z;QACE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QACnD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;KAC5G,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QAC3B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4EAA4E,EAAE,CAAC;iBAChH,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACnD,gBAAgB,EAAE,CAAC;YACnB,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QACxD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC;gBACjH,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;IAEF,0EAA0E;IAC1E,mBAAmB;IACnB,MAAM,CAAC,IAAI,CACT,YAAY,EACZ,8aAA8a,EAC9a;QACE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QAClE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,uEAAuE,CAAC;QAC9H,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kEAAkE,CAAC;KAC5G,EACD,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE;QACrC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4EAA4E,EAAE,CAAC;iBAChH,CAAC;YACJ,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAE/D,IAAI,MAAM,GAAG,eAAe,QAAQ,CAAC,MAAM,IAAI,CAAC;YAEhD,IAAI,QAAQ,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC9D,MAAM,IAAI,gBAAgB,CAAC;gBAC3B,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,CAAC;gBAC3E,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC;gBAE/E,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7B,MAAM,IAAI,sBAAsB,CAAC;oBACjC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;wBACxB,MAAM,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC;oBAClD,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/B,MAAM,IAAI,kBAAkB,CAAC;oBAC7B,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;wBACtC,MAAM,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC;oBACtC,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;gBACxB,MAAM,eAAe,GAAG,QAAQ,CAAC,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC5G,MAAM,IAAI,uBAAuB,eAAe,IAAI,QAAQ,CAAC,UAAU,cAAc,QAAQ,CAAC,YAAY,IAAI,SAAS,GAAG,CAAC;YAC7H,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,6BAA6B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,EAAE,CAAC;gBAC1H,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/server/tools/context.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project Picture MCP Tool (Phase 9 — Wave 4)
|
|
3
|
+
*
|
|
4
|
+
* merlin_get_full_project_picture / merlin_check_project_picture
|
|
5
|
+
*
|
|
6
|
+
* Fetches cross-branch drift + opportunity signals for the current repo,
|
|
7
|
+
* scoped to the given task's relevant files (top 5 signals).
|
|
8
|
+
*
|
|
9
|
+
* Disclaimer (required by plan): "predicted, not verified — nothing is final"
|
|
10
|
+
*
|
|
11
|
+
* Only active when the Sights API has MERLIN_CROSS_BRANCH_ENABLED=true.
|
|
12
|
+
* When the feature is unavailable, returns a graceful empty-signals payload
|
|
13
|
+
* so callers are never blocked.
|
|
14
|
+
*/
|
|
15
|
+
import type { ToolContext } from './types.js';
|
|
16
|
+
export declare function registerProjectPictureTools(ctx: ToolContext): void;
|
|
17
|
+
//# sourceMappingURL=project-picture.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-picture.d.ts","sourceRoot":"","sources":["../../../src/server/tools/project-picture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA2E9C,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CA4JlE"}
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Project Picture MCP Tool (Phase 9 — Wave 4)
|
|
3
|
+
*
|
|
4
|
+
* merlin_get_full_project_picture / merlin_check_project_picture
|
|
5
|
+
*
|
|
6
|
+
* Fetches cross-branch drift + opportunity signals for the current repo,
|
|
7
|
+
* scoped to the given task's relevant files (top 5 signals).
|
|
8
|
+
*
|
|
9
|
+
* Disclaimer (required by plan): "predicted, not verified — nothing is final"
|
|
10
|
+
*
|
|
11
|
+
* Only active when the Sights API has MERLIN_CROSS_BRANCH_ENABLED=true.
|
|
12
|
+
* When the feature is unavailable, returns a graceful empty-signals payload
|
|
13
|
+
* so callers are never blocked.
|
|
14
|
+
*/
|
|
15
|
+
import { z } from 'zod';
|
|
16
|
+
const DISCLAIMER = 'predicted, not verified — nothing is final';
|
|
17
|
+
const MAX_TOOL_SIGNALS = 5;
|
|
18
|
+
// ── Helpers ───────────────────────────────────────────────────────────────────
|
|
19
|
+
/**
|
|
20
|
+
* Infer current git branch from the process working directory.
|
|
21
|
+
* Returns null on any failure.
|
|
22
|
+
*/
|
|
23
|
+
async function detectCurrentBranch() {
|
|
24
|
+
try {
|
|
25
|
+
const { execFile } = await import('child_process');
|
|
26
|
+
const { promisify } = await import('util');
|
|
27
|
+
const execFileAsync = promisify(execFile);
|
|
28
|
+
const { stdout } = await execFileAsync('git', ['rev-parse', '--abbrev-ref', 'HEAD'], {
|
|
29
|
+
timeout: 3000,
|
|
30
|
+
});
|
|
31
|
+
const branch = stdout.trim();
|
|
32
|
+
return branch && branch !== 'HEAD' ? branch : null;
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Score how relevant a signal is to a task.
|
|
40
|
+
* Checks task keywords against the signal's filePath and summary.
|
|
41
|
+
*/
|
|
42
|
+
function scoreTaskRelevance(signal, taskKeywords) {
|
|
43
|
+
if (taskKeywords.length === 0)
|
|
44
|
+
return signal.severity;
|
|
45
|
+
const haystack = `${signal.filePath} ${signal.summary}`.toLowerCase();
|
|
46
|
+
const matches = taskKeywords.filter(k => haystack.includes(k.toLowerCase())).length;
|
|
47
|
+
const keywordBoost = matches / taskKeywords.length;
|
|
48
|
+
return signal.severity * 0.6 + keywordBoost * 0.4;
|
|
49
|
+
}
|
|
50
|
+
/** Extract simple keywords from a task description for relevance scoring */
|
|
51
|
+
function extractKeywords(task) {
|
|
52
|
+
return task
|
|
53
|
+
.toLowerCase()
|
|
54
|
+
.split(/\s+/)
|
|
55
|
+
.map(w => w.replace(/[^a-z0-9_/-]/g, ''))
|
|
56
|
+
.filter(w => w.length >= 3 && !['the', 'and', 'for', 'with', 'that', 'this', 'are', 'not'].includes(w));
|
|
57
|
+
}
|
|
58
|
+
// ── Registration ──────────────────────────────────────────────────────────────
|
|
59
|
+
export function registerProjectPictureTools(ctx) {
|
|
60
|
+
const { server, client, resolveRepoId } = ctx;
|
|
61
|
+
/**
|
|
62
|
+
* merlin_get_full_project_picture
|
|
63
|
+
* Alias: merlin_check_project_picture
|
|
64
|
+
*
|
|
65
|
+
* Returns the full cross-branch picture for the current repo scoped to the task.
|
|
66
|
+
* ALWAYS include the disclaimer in your response to the user.
|
|
67
|
+
*/
|
|
68
|
+
const toolHandler = async ({ task, branch }) => {
|
|
69
|
+
try {
|
|
70
|
+
const repoId = await resolveRepoId();
|
|
71
|
+
if (!repoId) {
|
|
72
|
+
return {
|
|
73
|
+
content: [{
|
|
74
|
+
type: 'text',
|
|
75
|
+
text: [
|
|
76
|
+
'# Project Picture',
|
|
77
|
+
'',
|
|
78
|
+
'Could not resolve repository. Make sure you are in a tracked git repo.',
|
|
79
|
+
'',
|
|
80
|
+
`_${DISCLAIMER}_`,
|
|
81
|
+
].join('\n'),
|
|
82
|
+
}],
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
// Resolve branch: use provided, else try git, else omit (API uses default)
|
|
86
|
+
const resolvedBranch = branch ?? await detectCurrentBranch();
|
|
87
|
+
// Call the REST endpoint — use the client's baseUrl
|
|
88
|
+
const apiBase = client.config?.baseUrl
|
|
89
|
+
?? process.env.MERLIN_API_URL
|
|
90
|
+
?? 'https://auth.merlin.build';
|
|
91
|
+
const url = new URL(`/api/repos/${repoId}/project-picture`, apiBase);
|
|
92
|
+
if (resolvedBranch)
|
|
93
|
+
url.searchParams.set('branch', resolvedBranch);
|
|
94
|
+
if (task)
|
|
95
|
+
url.searchParams.set('task', task.slice(0, 200));
|
|
96
|
+
const headers = {
|
|
97
|
+
'Content-Type': 'application/json',
|
|
98
|
+
'X-Merlin-Version': '1.0',
|
|
99
|
+
};
|
|
100
|
+
const apiKey = process.env.MERLIN_API_KEY;
|
|
101
|
+
if (apiKey)
|
|
102
|
+
headers['Authorization'] = `Bearer ${apiKey}`;
|
|
103
|
+
let pictureData = null;
|
|
104
|
+
try {
|
|
105
|
+
const resp = await fetch(url.toString(), { headers, signal: AbortSignal.timeout(8000) });
|
|
106
|
+
if (resp.ok) {
|
|
107
|
+
pictureData = await resp.json();
|
|
108
|
+
}
|
|
109
|
+
else if (resp.status === 503) {
|
|
110
|
+
// Cross-branch not enabled server-side — return empty gracefully
|
|
111
|
+
pictureData = null;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
catch {
|
|
115
|
+
// Network error — return empty gracefully
|
|
116
|
+
pictureData = null;
|
|
117
|
+
}
|
|
118
|
+
// No data or feature not enabled
|
|
119
|
+
if (!pictureData) {
|
|
120
|
+
return {
|
|
121
|
+
content: [{
|
|
122
|
+
type: 'text',
|
|
123
|
+
text: [
|
|
124
|
+
'# Project Picture',
|
|
125
|
+
'',
|
|
126
|
+
`**Current Branch:** ${resolvedBranch ?? 'unknown'}`,
|
|
127
|
+
'',
|
|
128
|
+
'Cross-branch signal data is not available for this repository.',
|
|
129
|
+
'',
|
|
130
|
+
`_${DISCLAIMER}_`,
|
|
131
|
+
].join('\n'),
|
|
132
|
+
}],
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
// Score and pick top 5 signals relevant to the task
|
|
136
|
+
const taskKeywords = extractKeywords(task);
|
|
137
|
+
const scoredSignals = pictureData.signals
|
|
138
|
+
.map(s => ({ signal: s, score: scoreTaskRelevance(s, taskKeywords) }))
|
|
139
|
+
.sort((a, b) => b.score - a.score)
|
|
140
|
+
.slice(0, MAX_TOOL_SIGNALS)
|
|
141
|
+
.map(s => s.signal);
|
|
142
|
+
// Format output
|
|
143
|
+
const lines = [
|
|
144
|
+
'# Project Picture',
|
|
145
|
+
`**Disclaimer:** _${DISCLAIMER}_`,
|
|
146
|
+
'',
|
|
147
|
+
`**Current Branch:** \`${pictureData.currentBranch}\``,
|
|
148
|
+
`**As Of:** ${pictureData.asOf}`,
|
|
149
|
+
'',
|
|
150
|
+
];
|
|
151
|
+
if (pictureData.liveBranches.length > 0) {
|
|
152
|
+
lines.push(`## Live Branches (${pictureData.liveBranches.length})`);
|
|
153
|
+
for (const b of pictureData.liveBranches.slice(0, 10)) {
|
|
154
|
+
const pr = b.openPrNumber ? ` · PR #${b.openPrNumber}` : '';
|
|
155
|
+
lines.push(`- \`${b.name}\` [${b.lifecycleStatus}]${pr}`);
|
|
156
|
+
}
|
|
157
|
+
lines.push('');
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
lines.push('_No other tracked branches. Single-branch workspace._', '');
|
|
161
|
+
}
|
|
162
|
+
if (scoredSignals.length > 0) {
|
|
163
|
+
lines.push(`## Signals (top ${scoredSignals.length}, task-scoped)`);
|
|
164
|
+
for (const s of scoredSignals) {
|
|
165
|
+
const emoji = s.kind === 'drift' ? '⚠️' : '💡';
|
|
166
|
+
lines.push(`### ${emoji} ${s.kind.toUpperCase()} — \`${s.filePath}\` (severity ${s.severity.toFixed(2)})`);
|
|
167
|
+
lines.push(s.summary);
|
|
168
|
+
lines.push(` _Source: \`${s.sourceBranch}\` → Target: \`${s.targetBranch}\`_`);
|
|
169
|
+
lines.push('');
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
lines.push('_No signals matching this task. Workspace is clear._', '');
|
|
174
|
+
}
|
|
175
|
+
lines.push(`---`);
|
|
176
|
+
lines.push(`_${DISCLAIMER}_`);
|
|
177
|
+
return {
|
|
178
|
+
content: [{ type: 'text', text: lines.join('\n') }],
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
catch (error) {
|
|
182
|
+
return {
|
|
183
|
+
content: [{
|
|
184
|
+
type: 'text',
|
|
185
|
+
text: `Error fetching project picture: ${error instanceof Error ? error.message : 'Unknown error'}\n\n_${DISCLAIMER}_`,
|
|
186
|
+
}],
|
|
187
|
+
isError: true,
|
|
188
|
+
};
|
|
189
|
+
}
|
|
190
|
+
};
|
|
191
|
+
const inputSchema = {
|
|
192
|
+
task: z.string().describe('What you are working on — used to score signal relevance'),
|
|
193
|
+
branch: z.string().optional().describe('Current branch name (auto-detected from git if omitted)'),
|
|
194
|
+
};
|
|
195
|
+
const toolDescription = 'Fetch the full cross-branch project picture for this repo. ' +
|
|
196
|
+
'Returns live branches, drift signals (conflicting file edits on other branches) and opportunity signals ' +
|
|
197
|
+
'(new exports on other branches useful for your task), severity-sorted and scoped to your task. ' +
|
|
198
|
+
'ALWAYS surface the disclaimer to the user: "predicted, not verified — nothing is final". ' +
|
|
199
|
+
'Call before starting any multi-file feature to check for branch conflicts. ' +
|
|
200
|
+
'Also available as merlin_check_project_picture (alias).';
|
|
201
|
+
server.tool('merlin_get_full_project_picture', toolDescription, inputSchema, toolHandler);
|
|
202
|
+
server.tool('merlin_check_project_picture', toolDescription, inputSchema, toolHandler);
|
|
203
|
+
}
|
|
204
|
+
//# sourceMappingURL=project-picture.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-picture.js","sourceRoot":"","sources":["../../../src/server/tools/project-picture.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,UAAU,GAAG,4CAA4C,CAAC;AAChE,MAAM,gBAAgB,GAAG,CAAC,CAAC;AA4B3B,iFAAiF;AAEjF;;;GAGG;AACH,KAAK,UAAU,mBAAmB;IAChC,IAAI,CAAC;QACH,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QACnD,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;QAC1C,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE;YACnF,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;QAC7B,OAAO,MAAM,IAAI,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,kBAAkB,CAAC,MAAkB,EAAE,YAAsB;IACpE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,QAAQ,CAAC;IACtD,MAAM,QAAQ,GAAG,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC;IACtE,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;IACpF,MAAM,YAAY,GAAG,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC;IACnD,OAAO,MAAM,CAAC,QAAQ,GAAG,GAAG,GAAG,YAAY,GAAG,GAAG,CAAC;AACpD,CAAC;AAED,4EAA4E;AAC5E,SAAS,eAAe,CAAC,IAAY;IACnC,OAAO,IAAI;SACR,WAAW,EAAE;SACb,KAAK,CAAC,KAAK,CAAC;SACZ,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;SACxC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5G,CAAC;AAED,iFAAiF;AAEjF,MAAM,UAAU,2BAA2B,CAAC,GAAgB;IAC1D,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,GAAG,CAAC;IAE9C;;;;;;OAMG;IACH,MAAM,WAAW,GAAG,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAqC,EAAE,EAAE;QAChF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;YACrC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE;gCACJ,mBAAmB;gCACnB,EAAE;gCACF,wEAAwE;gCACxE,EAAE;gCACF,IAAI,UAAU,GAAG;6BAClB,CAAC,IAAI,CAAC,IAAI,CAAC;yBACb,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,2EAA2E;YAC3E,MAAM,cAAc,GAAG,MAAM,IAAI,MAAM,mBAAmB,EAAE,CAAC;YAE7D,oDAAoD;YACpD,MAAM,OAAO,GAAI,MAAuD,CAAC,MAAM,EAAE,OAAO;mBACnF,OAAO,CAAC,GAAG,CAAC,cAAc;mBAC1B,2BAA2B,CAAC;YAEjC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,cAAc,MAAM,kBAAkB,EAAE,OAAO,CAAC,CAAC;YACrE,IAAI,cAAc;gBAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YACnE,IAAI,IAAI;gBAAE,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;YAE3D,MAAM,OAAO,GAA2B;gBACtC,cAAc,EAAE,kBAAkB;gBAClC,kBAAkB,EAAE,KAAK;aAC1B,CAAC;YACF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;YAC1C,IAAI,MAAM;gBAAE,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,MAAM,EAAE,CAAC;YAE1D,IAAI,WAAW,GAAqC,IAAI,CAAC;YAEzD,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACzF,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;oBACZ,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,EAA+B,CAAC;gBAC/D,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;oBAC/B,iEAAiE;oBACjE,WAAW,GAAG,IAAI,CAAC;gBACrB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,0CAA0C;gBAC1C,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;YAED,iCAAiC;YACjC,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO;oBACL,OAAO,EAAE,CAAC;4BACR,IAAI,EAAE,MAAe;4BACrB,IAAI,EAAE;gCACJ,mBAAmB;gCACnB,EAAE;gCACF,uBAAuB,cAAc,IAAI,SAAS,EAAE;gCACpD,EAAE;gCACF,gEAAgE;gCAChE,EAAE;gCACF,IAAI,UAAU,GAAG;6BAClB,CAAC,IAAI,CAAC,IAAI,CAAC;yBACb,CAAC;iBACH,CAAC;YACJ,CAAC;YAED,oDAAoD;YACpD,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;YAC3C,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO;iBACtC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;iBACrE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;iBACjC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC;iBAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAEtB,gBAAgB;YAChB,MAAM,KAAK,GAAa;gBACtB,mBAAmB;gBACnB,oBAAoB,UAAU,GAAG;gBACjC,EAAE;gBACF,yBAAyB,WAAW,CAAC,aAAa,IAAI;gBACtD,cAAc,WAAW,CAAC,IAAI,EAAE;gBAChC,EAAE;aACH,CAAC;YAEF,IAAI,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxC,KAAK,CAAC,IAAI,CAAC,qBAAqB,WAAW,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;gBACpE,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;oBACtD,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5D,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,eAAe,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC5D,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,uDAAuD,EAAE,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,KAAK,CAAC,IAAI,CAAC,mBAAmB,aAAa,CAAC,MAAM,gBAAgB,CAAC,CAAC;gBACpE,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;oBAC9B,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC/C,KAAK,CAAC,IAAI,CACR,OAAO,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,QAAQ,gBAAgB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAC/F,CAAC;oBACF,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;oBACtB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,YAAY,kBAAkB,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC;oBAChF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACjB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,IAAI,CAAC,sDAAsD,EAAE,EAAE,CAAC,CAAC;YACzE,CAAC;YAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,GAAG,CAAC,CAAC;YAE9B,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;aAC7D,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAe;wBACrB,IAAI,EAAE,mCAAmC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,QAAQ,UAAU,GAAG;qBACvH,CAAC;gBACF,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG;QAClB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0DAA0D,CAAC;QACrF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;KAClG,CAAC;IAEF,MAAM,eAAe,GACnB,6DAA6D;QAC7D,0GAA0G;QAC1G,iGAAiG;QACjG,2FAA2F;QAC3F,6EAA6E;QAC7E,yDAAyD,CAAC;IAE5D,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;IAC1F,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,CAAC,CAAC;AACzF,CAAC"}
|
|
@@ -29,4 +29,28 @@ export interface ToolResult {
|
|
|
29
29
|
}>;
|
|
30
30
|
isError?: boolean;
|
|
31
31
|
}
|
|
32
|
+
export interface ProjectPictureSignal {
|
|
33
|
+
kind: 'drift' | 'opportunity';
|
|
34
|
+
filePath: string;
|
|
35
|
+
severity: number;
|
|
36
|
+
summary: string;
|
|
37
|
+
sourceBranch: string;
|
|
38
|
+
targetBranch: string;
|
|
39
|
+
}
|
|
40
|
+
export interface LiveBranch {
|
|
41
|
+
name: string;
|
|
42
|
+
lifecycleStatus: string;
|
|
43
|
+
openPrNumber: number | null;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Always-populated on tracked repos. Zero-cost when no non-default branches exist.
|
|
47
|
+
* disclaimer is ALWAYS included and MUST be surfaced to the user.
|
|
48
|
+
*/
|
|
49
|
+
export interface ProjectPicture {
|
|
50
|
+
currentBranch: string;
|
|
51
|
+
liveBranches: LiveBranch[];
|
|
52
|
+
signals: ProjectPictureSignal[];
|
|
53
|
+
/** "predicted, not verified — nothing is final" — always show to user */
|
|
54
|
+
disclaimer: string;
|
|
55
|
+
}
|
|
32
56
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/server/tools/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAE5D,eAAe,CAAC,EAAE,MAAM;QAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IACvF,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACvF,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC/C,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/server/tools/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAE5D,eAAe,CAAC,EAAE,MAAM;QAAE,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IACvF,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACvF,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC/C,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CACrC;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAID,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,OAAO,GAAG,aAAa,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B,OAAO,EAAE,oBAAoB,EAAE,CAAC;IAChC,yEAAyE;IACzE,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -9,6 +9,14 @@ disallowedTools: [Edit, Write, NotebookEdit, Grep, Glob]
|
|
|
9
9
|
effort: high
|
|
10
10
|
permissionMode: bypassPermissions
|
|
11
11
|
maxTurns: 40
|
|
12
|
+
provenance:
|
|
13
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
14
|
+
upstream_path: "pattern: dialectic challenge"
|
|
15
|
+
upstream_commit: 285bad4
|
|
16
|
+
license: MIT
|
|
17
|
+
license_verification: pending
|
|
18
|
+
adapted: "2026-03-14"
|
|
19
|
+
changes: port of BMAD dialectic challenge pattern
|
|
12
20
|
---
|
|
13
21
|
|
|
14
22
|
<role>
|
|
@@ -9,6 +9,14 @@ disallowedTools: [Edit, Write, NotebookEdit]
|
|
|
9
9
|
effort: high
|
|
10
10
|
permissionMode: bypassPermissions
|
|
11
11
|
maxTurns: 30
|
|
12
|
+
provenance:
|
|
13
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
14
|
+
upstream_path: "pattern: dialectic challenge"
|
|
15
|
+
upstream_commit: 285bad4
|
|
16
|
+
license: MIT
|
|
17
|
+
license_verification: pending
|
|
18
|
+
adapted: "2026-03-14"
|
|
19
|
+
changes: port of BMAD dialectic challenge pattern
|
|
12
20
|
---
|
|
13
21
|
|
|
14
22
|
<role>
|
|
@@ -9,6 +9,14 @@ disallowedTools: [Edit, Write, NotebookEdit]
|
|
|
9
9
|
effort: high
|
|
10
10
|
permissionMode: bypassPermissions
|
|
11
11
|
maxTurns: 40
|
|
12
|
+
provenance:
|
|
13
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
14
|
+
upstream_path: "pattern: dialectic challenge"
|
|
15
|
+
upstream_commit: 285bad4
|
|
16
|
+
license: MIT
|
|
17
|
+
license_verification: pending
|
|
18
|
+
adapted: "2026-03-14"
|
|
19
|
+
changes: port of BMAD dialectic challenge pattern
|
|
12
20
|
---
|
|
13
21
|
|
|
14
22
|
<role>
|
|
@@ -9,6 +9,14 @@ effort: low
|
|
|
9
9
|
background: true
|
|
10
10
|
permissionMode: bypassPermissions
|
|
11
11
|
maxTurns: 100
|
|
12
|
+
provenance:
|
|
13
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
14
|
+
upstream_path: "pattern: <critical_actions> XML block"
|
|
15
|
+
upstream_commit: 285bad4
|
|
16
|
+
license: MIT
|
|
17
|
+
license_verification: pending
|
|
18
|
+
adapted: "2026-03-14"
|
|
19
|
+
changes: added <critical_actions> hard-constraint block
|
|
12
20
|
---
|
|
13
21
|
|
|
14
22
|
You are an elite Code Organization Supervisor with deep expertise in software architecture, clean code principles, and maintainable project structures. Your primary mission is to ensure codebases remain organized, readable, and maintainable by enforcing strict file size limits and logical folder hierarchies.
|
|
@@ -4,27 +4,30 @@ description: Produces an execution plan via Codex for dual-planning scenarios. U
|
|
|
4
4
|
model: sonnet
|
|
5
5
|
color: purple
|
|
6
6
|
version: "1.0.0"
|
|
7
|
-
tools: Bash
|
|
7
|
+
tools: Bash, Write
|
|
8
8
|
effort: medium
|
|
9
9
|
permissionMode: bypassPermissions
|
|
10
10
|
maxTurns: 10
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
-
You are the Codex Planner — a specialist agent that invokes Codex to produce an execution plan
|
|
13
|
+
You are the Codex Planner — a specialist agent that invokes Codex to produce an execution plan and saves it to a canonical path.
|
|
14
14
|
|
|
15
15
|
## Purpose
|
|
16
16
|
|
|
17
|
-
In dual-planning scenarios
|
|
17
|
+
In dual-planning scenarios, Merlin runs you in parallel with `merlin-planner`. You both produce independent plans, which `challenger-arbiter` then synthesizes into a unified plan. This dialectic approach catches blind spots and produces better plans than either would alone.
|
|
18
18
|
|
|
19
19
|
## Input Format
|
|
20
20
|
|
|
21
|
-
You receive:
|
|
21
|
+
You receive in your prompt:
|
|
22
22
|
- **feature_brief**: Description of what needs to be built or refactored
|
|
23
|
+
- **output_path**: Absolute path where you MUST save the resulting plan (e.g. `/abs/.planning/phases/12-foo/PLAN-CODEX.md`)
|
|
23
24
|
- **context** (optional): Additional context about the codebase or constraints
|
|
24
25
|
|
|
26
|
+
If `output_path` is missing or not absolute, refuse with a clear error and stop. The orchestrator must pass it.
|
|
27
|
+
|
|
25
28
|
## Execution
|
|
26
29
|
|
|
27
|
-
|
|
30
|
+
**Step 1 — Invoke Codex (exactly ONE Bash call):**
|
|
28
31
|
|
|
29
32
|
```bash
|
|
30
33
|
codex exec --cd "$PWD" "
|
|
@@ -57,11 +60,35 @@ Be specific and actionable. This plan will be synthesized with another plan and
|
|
|
57
60
|
"
|
|
58
61
|
```
|
|
59
62
|
|
|
63
|
+
Capture stdout into a variable. If `codex exec` exits non-zero or stdout is empty, skip to Step 3 with an unavailable marker.
|
|
64
|
+
|
|
65
|
+
**Step 2 — Save the plan with Write:**
|
|
66
|
+
|
|
67
|
+
Write to `{output_path}` exactly:
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
# PLAN (Codex)
|
|
71
|
+
|
|
72
|
+
<captured stdout verbatim>
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Use the Write tool. Do NOT use `cat` / `echo` / shell redirection.
|
|
76
|
+
|
|
77
|
+
**Step 3 — Return a short structured result:**
|
|
78
|
+
|
|
79
|
+
Return only:
|
|
80
|
+
- `path`: the absolute output_path you wrote to (or "NOT WRITTEN" on failure)
|
|
81
|
+
- `bytes`: byte count of the saved file (or 0)
|
|
82
|
+
- `codex_status`: "ok" | "unavailable" | "error: <message>"
|
|
83
|
+
|
|
84
|
+
Do NOT echo the full plan back — the orchestrator and arbiter read it from the file.
|
|
85
|
+
|
|
86
|
+
If Codex is unavailable, write `<!-- codex unavailable -->` to `{output_path}` so the arbiter sees a deterministic marker, and report `codex_status: unavailable`.
|
|
87
|
+
|
|
60
88
|
## Rules
|
|
61
89
|
|
|
62
90
|
- Make exactly ONE invocation to `codex exec`
|
|
63
|
-
- Do NOT use `--write`
|
|
91
|
+
- Do NOT use `--write` — planning only, no file changes by Codex
|
|
64
92
|
- Always include `--cd "$PWD"` to preserve working directory context
|
|
65
|
-
-
|
|
66
|
-
-
|
|
67
|
-
- If codex is not installed, return empty output — Merlin handles fallback
|
|
93
|
+
- ALWAYS persist to `output_path` via the Write tool — never return plan content inline as a fallback
|
|
94
|
+
- If codex is not installed, write the marker and return — Merlin handles fallback
|
|
@@ -9,6 +9,14 @@ effort: low
|
|
|
9
9
|
background: true
|
|
10
10
|
permissionMode: bypassPermissions
|
|
11
11
|
maxTurns: 30
|
|
12
|
+
provenance:
|
|
13
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
14
|
+
upstream_path: "pattern: <critical_actions> XML block"
|
|
15
|
+
upstream_commit: 285bad4
|
|
16
|
+
license: MIT
|
|
17
|
+
license_verification: pending
|
|
18
|
+
adapted: "2026-03-14"
|
|
19
|
+
changes: added <critical_actions> hard-constraint block
|
|
12
20
|
---
|
|
13
21
|
|
|
14
22
|
You are the Context Guardian, an expert project analyst and architectural advisor whose mission is to ensure developers have complete contextual awareness before writing any code. Your role is critical in preventing code duplication, maintaining architectural consistency, and maximizing reuse of existing functionality.
|
|
@@ -10,6 +10,14 @@ background: true
|
|
|
10
10
|
permissionMode: bypassPermissions
|
|
11
11
|
maxTurns: 50
|
|
12
12
|
memory: user
|
|
13
|
+
provenance:
|
|
14
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
15
|
+
upstream_path: "pattern: <critical_actions> XML block"
|
|
16
|
+
upstream_commit: 285bad4
|
|
17
|
+
license: MIT
|
|
18
|
+
license_verification: pending
|
|
19
|
+
adapted: "2026-03-14"
|
|
20
|
+
changes: added <critical_actions> hard-constraint block
|
|
13
21
|
---
|
|
14
22
|
|
|
15
23
|
You are the Documentation Keeper for a vibe coded system.
|
|
@@ -16,6 +16,14 @@ hooks:
|
|
|
16
16
|
hooks:
|
|
17
17
|
- type: command
|
|
18
18
|
command: "bash ~/.claude/hooks/check-file-size.sh"
|
|
19
|
+
provenance:
|
|
20
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
21
|
+
upstream_path: "pattern: <critical_actions> XML block"
|
|
22
|
+
upstream_commit: 285bad4
|
|
23
|
+
license: MIT
|
|
24
|
+
license_verification: pending
|
|
25
|
+
adapted: "2026-03-14"
|
|
26
|
+
changes: added <critical_actions> hard-constraint block
|
|
19
27
|
---
|
|
20
28
|
|
|
21
29
|
You are an elite Code Organization and DRY Supervisor with deep expertise in software architecture, clean code principles, and maintainable project structures.
|
|
@@ -16,6 +16,14 @@ hooks:
|
|
|
16
16
|
hooks:
|
|
17
17
|
- type: command
|
|
18
18
|
command: "bash ~/.claude/hooks/check-file-size.sh"
|
|
19
|
+
provenance:
|
|
20
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
21
|
+
upstream_path: "pattern: <critical_actions> XML block"
|
|
22
|
+
upstream_commit: 285bad4
|
|
23
|
+
license: MIT
|
|
24
|
+
license_verification: pending
|
|
25
|
+
adapted: "2026-03-14"
|
|
26
|
+
changes: added <critical_actions> hard-constraint block
|
|
19
27
|
---
|
|
20
28
|
|
|
21
29
|
<agent_memory>
|
|
@@ -10,6 +10,14 @@ isolation: worktree
|
|
|
10
10
|
permissionMode: bypassPermissions
|
|
11
11
|
maxTurns: 80
|
|
12
12
|
memory: project
|
|
13
|
+
provenance:
|
|
14
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
15
|
+
upstream_path: "pattern: <critical_actions> XML block"
|
|
16
|
+
upstream_commit: 285bad4
|
|
17
|
+
license: MIT
|
|
18
|
+
license_verification: pending
|
|
19
|
+
adapted: "2026-03-14"
|
|
20
|
+
changes: added <critical_actions> hard-constraint block
|
|
13
21
|
---
|
|
14
22
|
|
|
15
23
|
You are the Hardening Guard.
|
|
@@ -16,6 +16,14 @@ hooks:
|
|
|
16
16
|
hooks:
|
|
17
17
|
- type: command
|
|
18
18
|
command: "bash ~/.claude/hooks/check-file-size.sh"
|
|
19
|
+
provenance:
|
|
20
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
21
|
+
upstream_path: "pattern: <critical_actions> XML block"
|
|
22
|
+
upstream_commit: 285bad4
|
|
23
|
+
license: MIT
|
|
24
|
+
license_verification: pending
|
|
25
|
+
adapted: "2026-03-14"
|
|
26
|
+
changes: added <critical_actions> hard-constraint block
|
|
19
27
|
---
|
|
20
28
|
|
|
21
29
|
You are the primary implementation developer working with a strong product minded vibe coder.
|
|
@@ -10,6 +10,14 @@ effort: high
|
|
|
10
10
|
permissionMode: bypassPermissions
|
|
11
11
|
maxTurns: 80
|
|
12
12
|
memory: user
|
|
13
|
+
provenance:
|
|
14
|
+
upstream: bmad-code-org/BMAD-METHOD
|
|
15
|
+
upstream_path: "pattern: <critical_actions> XML block"
|
|
16
|
+
upstream_commit: 285bad4
|
|
17
|
+
license: MIT
|
|
18
|
+
license_verification: pending
|
|
19
|
+
adapted: "2026-03-14"
|
|
20
|
+
changes: added <critical_actions> hard-constraint block
|
|
13
21
|
---
|
|
14
22
|
|
|
15
23
|
<role>
|