@monoes/monomindcli 2.9.25 → 2.9.27
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/helpers/control-start.cjs +15 -1
- package/.claude/helpers/handlers/edit-handler.cjs +3 -2
- package/.claude/helpers/handlers/route-handler.cjs +19 -4
- package/.claude/helpers/hook-handler.cjs +2 -0
- package/.claude/helpers/utils/monograph.cjs +8 -0
- package/.claude/skills/mastermind/SKILL.md +21 -0
- package/.claude/skills/mastermind/references/antigravity-tools.md +60 -0
- package/.claude/skills/mastermind/references/claude-code-tools.md +50 -0
- package/.claude/skills/mastermind/references/codex-tools.md +64 -0
- package/.claude/skills/mastermind/references/copilot-tools.md +49 -0
- package/.claude/skills/mastermind/references/gemini-tools.md +63 -0
- package/.claude/skills/mastermind/references/pi-tools.md +28 -0
- package/.claude/skills/mastermind-org/SKILL.md +16 -0
- package/dist/src/commands/browse.d.ts +2 -10
- package/dist/src/commands/browse.d.ts.map +1 -1
- package/dist/src/commands/browse.js +7 -2
- package/dist/src/commands/browse.js.map +1 -1
- package/dist/src/commands/doctor.d.ts.map +1 -1
- package/dist/src/commands/doctor.js +16 -1
- package/dist/src/commands/doctor.js.map +1 -1
- package/dist/src/commands/index.d.ts +1 -1
- package/dist/src/commands/index.d.ts.map +1 -1
- package/dist/src/commands/index.js +10 -1
- package/dist/src/commands/index.js.map +1 -1
- package/dist/src/commands/init.d.ts.map +1 -1
- package/dist/src/commands/init.js +63 -5
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/mastermind.d.ts +10 -0
- package/dist/src/commands/mastermind.d.ts.map +1 -0
- package/dist/src/commands/mastermind.js +62 -0
- package/dist/src/commands/mastermind.js.map +1 -0
- package/dist/src/commands/platforms.d.ts +9 -7
- package/dist/src/commands/platforms.d.ts.map +1 -1
- package/dist/src/commands/platforms.js +225 -571
- package/dist/src/commands/platforms.js.map +1 -1
- package/dist/src/commands/status.d.ts.map +1 -1
- package/dist/src/commands/status.js +7 -1
- package/dist/src/commands/status.js.map +1 -1
- package/dist/src/commands/update.d.ts.map +1 -1
- package/dist/src/commands/update.js +22 -0
- package/dist/src/commands/update.js.map +1 -1
- package/dist/src/init/codex-generator.d.ts.map +1 -1
- package/dist/src/init/codex-generator.js +5 -3
- package/dist/src/init/codex-generator.js.map +1 -1
- package/dist/src/init/executor.d.ts +6 -0
- package/dist/src/init/executor.d.ts.map +1 -1
- package/dist/src/init/executor.js +32 -3
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/mcp-generator.d.ts.map +1 -1
- package/dist/src/init/mcp-generator.js +5 -40
- package/dist/src/init/mcp-generator.js.map +1 -1
- package/dist/src/init/shared.d.ts.map +1 -1
- package/dist/src/init/shared.js +6 -5
- package/dist/src/init/shared.js.map +1 -1
- package/dist/src/init/types.d.ts +4 -0
- package/dist/src/init/types.d.ts.map +1 -1
- package/dist/src/init/types.js.map +1 -1
- package/dist/src/init/upgrade.d.ts.map +1 -1
- package/dist/src/init/upgrade.js +11 -1
- package/dist/src/init/upgrade.js.map +1 -1
- package/dist/src/init/write-antigravity.d.ts.map +1 -1
- package/dist/src/init/write-antigravity.js +5 -50
- package/dist/src/init/write-antigravity.js.map +1 -1
- package/dist/src/init/write-claude.d.ts.map +1 -1
- package/dist/src/init/write-claude.js +4 -88
- package/dist/src/init/write-claude.js.map +1 -1
- package/dist/src/init/write-codex.d.ts.map +1 -1
- package/dist/src/init/write-codex.js +12 -8
- package/dist/src/init/write-codex.js.map +1 -1
- package/dist/src/init/write-kimicode.d.ts.map +1 -1
- package/dist/src/init/write-kimicode.js +4 -48
- package/dist/src/init/write-kimicode.js.map +1 -1
- package/dist/src/knowledge/document-pipeline.d.ts.map +1 -1
- package/dist/src/knowledge/document-pipeline.js +6 -4
- package/dist/src/knowledge/document-pipeline.js.map +1 -1
- package/dist/src/knowledge/eval/harness.d.ts.map +1 -1
- package/dist/src/knowledge/eval/harness.js +9 -11
- package/dist/src/knowledge/eval/harness.js.map +1 -1
- package/dist/src/mastermind/manifest-data.d.ts +10 -0
- package/dist/src/mastermind/manifest-data.d.ts.map +1 -0
- package/dist/src/mastermind/manifest-data.js +67 -0
- package/dist/src/mastermind/manifest-data.js.map +1 -0
- package/dist/src/mastermind/manifest.d.ts +22 -0
- package/dist/src/mastermind/manifest.d.ts.map +1 -0
- package/dist/src/mastermind/manifest.js +36 -0
- package/dist/src/mastermind/manifest.js.map +1 -0
- package/dist/src/mcp-client.d.ts.map +1 -1
- package/dist/src/mcp-client.js +2 -0
- package/dist/src/mcp-client.js.map +1 -1
- package/dist/src/mcp-tools/index.d.ts +1 -0
- package/dist/src/mcp-tools/index.d.ts.map +1 -1
- package/dist/src/mcp-tools/index.js +1 -0
- package/dist/src/mcp-tools/index.js.map +1 -1
- package/dist/src/mcp-tools/platforms-tools.d.ts +5 -0
- package/dist/src/mcp-tools/platforms-tools.d.ts.map +1 -0
- package/dist/src/mcp-tools/platforms-tools.js +38 -0
- package/dist/src/mcp-tools/platforms-tools.js.map +1 -0
- package/dist/src/memory/intelligence.d.ts.map +1 -1
- package/dist/src/memory/intelligence.js +54 -20
- package/dist/src/memory/intelligence.js.map +1 -1
- package/dist/src/memory/memory-bridge.d.ts.map +1 -1
- package/dist/src/memory/memory-bridge.js +3 -2
- package/dist/src/memory/memory-bridge.js.map +1 -1
- package/dist/src/memory/memory-kg.js +3 -3
- package/dist/src/memory/memory-kg.js.map +1 -1
- package/dist/src/monovector/diff-classifier.d.ts +2 -2
- package/dist/src/monovector/diff-classifier.d.ts.map +1 -1
- package/dist/src/monovector/diff-classifier.js.map +1 -1
- package/dist/src/orgrt/session.d.ts.map +1 -1
- package/dist/src/orgrt/session.js +54 -24
- package/dist/src/orgrt/session.js.map +1 -1
- package/dist/src/orgrt/task-dag.d.ts.map +1 -1
- package/dist/src/orgrt/task-dag.js +5 -1
- package/dist/src/orgrt/task-dag.js.map +1 -1
- package/dist/src/platform-adapters/core.d.ts +20 -0
- package/dist/src/platform-adapters/core.d.ts.map +1 -0
- package/dist/src/platform-adapters/core.js +34 -0
- package/dist/src/platform-adapters/core.js.map +1 -0
- package/dist/src/platform-adapters/discovery.d.ts +15 -0
- package/dist/src/platform-adapters/discovery.d.ts.map +1 -0
- package/dist/src/platform-adapters/discovery.js +64 -0
- package/dist/src/platform-adapters/discovery.js.map +1 -0
- package/dist/src/platform-adapters/docs.d.ts +4 -0
- package/dist/src/platform-adapters/docs.d.ts.map +1 -0
- package/dist/src/platform-adapters/docs.js +34 -0
- package/dist/src/platform-adapters/docs.js.map +1 -0
- package/dist/src/platform-adapters/hook-bridge.d.ts +44 -0
- package/dist/src/platform-adapters/hook-bridge.d.ts.map +1 -0
- package/dist/src/platform-adapters/hook-bridge.js +133 -0
- package/dist/src/platform-adapters/hook-bridge.js.map +1 -0
- package/dist/src/platform-adapters/merge.d.ts +32 -0
- package/dist/src/platform-adapters/merge.d.ts.map +1 -0
- package/dist/src/platform-adapters/merge.js +209 -0
- package/dist/src/platform-adapters/merge.js.map +1 -0
- package/dist/src/platform-adapters/migration.d.ts +31 -0
- package/dist/src/platform-adapters/migration.d.ts.map +1 -0
- package/dist/src/platform-adapters/migration.js +402 -0
- package/dist/src/platform-adapters/migration.js.map +1 -0
- package/dist/src/platform-adapters/operations.d.ts +23 -0
- package/dist/src/platform-adapters/operations.d.ts.map +1 -0
- package/dist/src/platform-adapters/operations.js +405 -0
- package/dist/src/platform-adapters/operations.js.map +1 -0
- package/dist/src/platform-adapters/registry.d.ts +9 -0
- package/dist/src/platform-adapters/registry.d.ts.map +1 -0
- package/dist/src/platform-adapters/registry.js +614 -0
- package/dist/src/platform-adapters/registry.js.map +1 -0
- package/dist/src/platform-adapters/renderers/agents.d.ts +5 -0
- package/dist/src/platform-adapters/renderers/agents.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/agents.js +46 -0
- package/dist/src/platform-adapters/renderers/agents.js.map +1 -0
- package/dist/src/platform-adapters/renderers/aider.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/aider.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/aider.js +3 -0
- package/dist/src/platform-adapters/renderers/aider.js.map +1 -0
- package/dist/src/platform-adapters/renderers/antigravity.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/antigravity.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/antigravity.js +3 -0
- package/dist/src/platform-adapters/renderers/antigravity.js.map +1 -0
- package/dist/src/platform-adapters/renderers/claude.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/claude.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/claude.js +3 -0
- package/dist/src/platform-adapters/renderers/claude.js.map +1 -0
- package/dist/src/platform-adapters/renderers/codex.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/codex.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/codex.js +3 -0
- package/dist/src/platform-adapters/renderers/codex.js.map +1 -0
- package/dist/src/platform-adapters/renderers/commands.d.ts +13 -0
- package/dist/src/platform-adapters/renderers/commands.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/commands.js +78 -0
- package/dist/src/platform-adapters/renderers/commands.js.map +1 -0
- package/dist/src/platform-adapters/renderers/copilot.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/copilot.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/copilot.js +3 -0
- package/dist/src/platform-adapters/renderers/copilot.js.map +1 -0
- package/dist/src/platform-adapters/renderers/cursor.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/cursor.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/cursor.js +3 -0
- package/dist/src/platform-adapters/renderers/cursor.js.map +1 -0
- package/dist/src/platform-adapters/renderers/droid.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/droid.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/droid.js +3 -0
- package/dist/src/platform-adapters/renderers/droid.js.map +1 -0
- package/dist/src/platform-adapters/renderers/experimental.d.ts +6 -0
- package/dist/src/platform-adapters/renderers/experimental.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/experimental.js +9 -0
- package/dist/src/platform-adapters/renderers/experimental.js.map +1 -0
- package/dist/src/platform-adapters/renderers/factory.d.ts +14 -0
- package/dist/src/platform-adapters/renderers/factory.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/factory.js +53 -0
- package/dist/src/platform-adapters/renderers/factory.js.map +1 -0
- package/dist/src/platform-adapters/renderers/gemini.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/gemini.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/gemini.js +3 -0
- package/dist/src/platform-adapters/renderers/gemini.js.map +1 -0
- package/dist/src/platform-adapters/renderers/hooks.d.ts +37 -0
- package/dist/src/platform-adapters/renderers/hooks.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/hooks.js +166 -0
- package/dist/src/platform-adapters/renderers/hooks.js.map +1 -0
- package/dist/src/platform-adapters/renderers/index.d.ts +8 -0
- package/dist/src/platform-adapters/renderers/index.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/index.js +39 -0
- package/dist/src/platform-adapters/renderers/index.js.map +1 -0
- package/dist/src/platform-adapters/renderers/instructions.d.ts +6 -0
- package/dist/src/platform-adapters/renderers/instructions.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/instructions.js +31 -0
- package/dist/src/platform-adapters/renderers/instructions.js.map +1 -0
- package/dist/src/platform-adapters/renderers/kimi.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/kimi.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/kimi.js +3 -0
- package/dist/src/platform-adapters/renderers/kimi.js.map +1 -0
- package/dist/src/platform-adapters/renderers/kiro.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/kiro.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/kiro.js +3 -0
- package/dist/src/platform-adapters/renderers/kiro.js.map +1 -0
- package/dist/src/platform-adapters/renderers/mcp.d.ts +29 -0
- package/dist/src/platform-adapters/renderers/mcp.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/mcp.js +69 -0
- package/dist/src/platform-adapters/renderers/mcp.js.map +1 -0
- package/dist/src/platform-adapters/renderers/openclaw.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/openclaw.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/openclaw.js +3 -0
- package/dist/src/platform-adapters/renderers/openclaw.js.map +1 -0
- package/dist/src/platform-adapters/renderers/opencode.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/opencode.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/opencode.js +3 -0
- package/dist/src/platform-adapters/renderers/opencode.js.map +1 -0
- package/dist/src/platform-adapters/renderers/skills.d.ts +11 -0
- package/dist/src/platform-adapters/renderers/skills.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/skills.js +60 -0
- package/dist/src/platform-adapters/renderers/skills.js.map +1 -0
- package/dist/src/platform-adapters/renderers/status.d.ts +23 -0
- package/dist/src/platform-adapters/renderers/status.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/status.js +63 -0
- package/dist/src/platform-adapters/renderers/status.js.map +1 -0
- package/dist/src/platform-adapters/renderers/vscode.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/vscode.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/vscode.js +3 -0
- package/dist/src/platform-adapters/renderers/vscode.js.map +1 -0
- package/dist/src/platform-adapters/renderers/zed.d.ts +2 -0
- package/dist/src/platform-adapters/renderers/zed.d.ts.map +1 -0
- package/dist/src/platform-adapters/renderers/zed.js +3 -0
- package/dist/src/platform-adapters/renderers/zed.js.map +1 -0
- package/dist/src/platform-adapters/types.d.ts +105 -0
- package/dist/src/platform-adapters/types.d.ts.map +1 -0
- package/dist/src/platform-adapters/types.js +13 -0
- package/dist/src/platform-adapters/types.js.map +1 -0
- package/dist/src/platform-adapters/verification-ledger.d.ts +8 -0
- package/dist/src/platform-adapters/verification-ledger.d.ts.map +1 -0
- package/dist/src/platform-adapters/verification-ledger.js +24 -0
- package/dist/src/platform-adapters/verification-ledger.js.map +1 -0
- package/dist/src/ui/markdown.js +10 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/dist/src/ui/data/mastermind-sessions.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-dag.d.ts","sourceRoot":"","sources":["../../../src/orgrt/task-dag.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,OAAO,GACP,SAAS,GACT,SAAS,GACT,MAAM,GACN,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,WAAW,CAAC;AAEhB,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;+CAM2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAKD,qBAAa,OAAO;IAClB,OAAO,CAAC,KAAK,CAA8B;IAC3C,OAAO,CAAC,OAAO,CAAK;IAEpB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,
|
|
1
|
+
{"version":3,"file":"task-dag.d.ts","sourceRoot":"","sources":["../../../src/orgrt/task-dag.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,aAAa,GACrB,SAAS,GACT,OAAO,GACP,SAAS,GACT,SAAS,GACT,MAAM,GACN,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,WAAW,CAAC;AAEhB,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;+CAM2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAKD,qBAAa,OAAO;IAClB,OAAO,CAAC,KAAK,CAA8B;IAC3C,OAAO,CAAC,OAAO,CAAK;IAEpB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,CAqBjE;IAED,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE,CAO/C;IAED,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAMtC;IAED,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAM5B;IAED;;;yCAGqC;IACrC,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAU3D;IAED;;yEAEqE;IACrE,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,EAAE,CAWrC;IAED;;;;;;;;gFAQ4E;IAC5E,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAWnC;IAED,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,OAAO,EAAE,CAkDzD;IAED,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAgCjD;IAED,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE,CAQ7C;IAED,KAAK,IAAI,OAAO,EAAE,CAEjB;IAED,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAEnC;IAED,GAAG,IAAI,OAAO,EAAE,CAEf;IAED,MAAM,IAAI,OAAO,EAAE,CAElB;IAED,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAQxC;IAED,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,QAAQ;CAqBjB"}
|
|
@@ -16,7 +16,11 @@ export class TaskDag {
|
|
|
16
16
|
this.tasks.delete(id);
|
|
17
17
|
throw new Error(`adding "${id}" would create a cycle`);
|
|
18
18
|
}
|
|
19
|
-
if (deps.length === 0 ||
|
|
19
|
+
if (deps.length === 0 ||
|
|
20
|
+
deps.every((d) => {
|
|
21
|
+
const dependency = this.tasks.get(d);
|
|
22
|
+
return dependency !== undefined && SATISFIED.has(dependency.status);
|
|
23
|
+
})) {
|
|
20
24
|
task.status = 'ready';
|
|
21
25
|
}
|
|
22
26
|
return task;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-dag.js","sourceRoot":"","sources":["../../../src/orgrt/task-dag.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAyC/C,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAgB,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;AAC5F,MAAM,SAAS,GAAG,IAAI,GAAG,CAAgB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC;AAEhE,MAAM,OAAO,OAAO;IACV,KAAK,GAAG,IAAI,GAAG,EAAmB,CAAC;IACnC,OAAO,GAAG,CAAC,CAAC;IAEpB,GAAG,CAAC,KAAa,EAAE,QAAgB,EAAE,IAAI,GAAa,EAAE;QACtD,MAAM,EAAE,GAAG,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QACpC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;gBAAE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,IAAI,GAAY,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAC9F,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACzB,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,WAAW,EAAE,wBAAwB,CAAC,CAAC;QACzD,CAAC;QACD,
|
|
1
|
+
{"version":3,"file":"task-dag.js","sourceRoot":"","sources":["../../../src/orgrt/task-dag.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** Platform-neutral Mastermind artifact intents. */
|
|
2
|
+
import { mcpCommand as renderMcpCommand } from './renderers/mcp.js';
|
|
3
|
+
import type { ArtifactIntent, InstallScope, PlatformAdapter } from './types.js';
|
|
4
|
+
export { platformInstruction } from './renderers/instructions.js';
|
|
5
|
+
export interface CoreRenderOptions {
|
|
6
|
+
scope: InstallScope;
|
|
7
|
+
enableHooks?: boolean;
|
|
8
|
+
os?: NodeJS.Platform;
|
|
9
|
+
}
|
|
10
|
+
export declare const mcpCommand: typeof renderMcpCommand;
|
|
11
|
+
/**
|
|
12
|
+
* Produce only artifacts that the evidence-gated registry permits. Individual
|
|
13
|
+
* renderers may add richer platform-specific data, but cannot turn fallback or
|
|
14
|
+
* discovery-only capabilities into files.
|
|
15
|
+
*/
|
|
16
|
+
export declare function renderCoreArtifacts(adapter: PlatformAdapter, options: CoreRenderOptions): {
|
|
17
|
+
intents: ArtifactIntent[];
|
|
18
|
+
diagnostics: string[];
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=core.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../src/platform-adapters/core.ts"],"names":[],"mappings":"AAAA,oDAAoD;AAGpD,OAAO,EAAE,UAAU,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEpE,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEhF,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAElE,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,YAAY,CAAC;IACpB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,EAAE,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;CACtB;AAED,eAAO,MAAM,UAAU,yBAAmB,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,iBAAiB,GACzB;IAAE,OAAO,EAAE,cAAc,EAAE,CAAC;IAAC,WAAW,EAAE,MAAM,EAAE,CAAA;CAAE,CA4BtD"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** Platform-neutral Mastermind artifact intents. */
|
|
2
|
+
import { renderInstruction } from './renderers/instructions.js';
|
|
3
|
+
import { mcpCommand as renderMcpCommand } from './renderers/mcp.js';
|
|
4
|
+
import { renderSkillRouter } from './renderers/skills.js';
|
|
5
|
+
export { platformInstruction } from './renderers/instructions.js';
|
|
6
|
+
export const mcpCommand = renderMcpCommand;
|
|
7
|
+
/**
|
|
8
|
+
* Produce only artifacts that the evidence-gated registry permits. Individual
|
|
9
|
+
* renderers may add richer platform-specific data, but cannot turn fallback or
|
|
10
|
+
* discovery-only capabilities into files.
|
|
11
|
+
*/
|
|
12
|
+
export function renderCoreArtifacts(adapter, options) {
|
|
13
|
+
const intents = [];
|
|
14
|
+
const diagnostics = [];
|
|
15
|
+
const instruction = renderInstruction(adapter, options.scope);
|
|
16
|
+
if (instruction) {
|
|
17
|
+
intents.push(instruction);
|
|
18
|
+
}
|
|
19
|
+
else {
|
|
20
|
+
diagnostics.push(`${adapter.displayName}: instructions are ${adapter.capabilities.instructions}; use the CLI fallback`);
|
|
21
|
+
}
|
|
22
|
+
const skills = renderSkillRouter(adapter, options.scope);
|
|
23
|
+
if (skills.length > 0) {
|
|
24
|
+
intents.push(...skills);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
diagnostics.push(`${adapter.displayName}: use monomind mastermind run <skill> --print for workflow fallback`);
|
|
28
|
+
}
|
|
29
|
+
if (adapter.capabilities.mcp !== 'native') {
|
|
30
|
+
diagnostics.push(`${adapter.displayName}: MCP is ${adapter.capabilities.mcp}; use the Monomind CLI fallback`);
|
|
31
|
+
}
|
|
32
|
+
return { intents, diagnostics };
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=core.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../src/platform-adapters/core.ts"],"names":[],"mappings":"AAAA,oDAAoD;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,UAAU,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAQlE,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC;AAE3C;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAAwB,EACxB,OAA0B;IAE1B,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,MAAM,WAAW,GAAa,EAAE,CAAC;IAEjC,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9D,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5B,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,IAAI,CACd,GAAG,OAAO,CAAC,WAAW,sBAAsB,OAAO,CAAC,YAAY,CAAC,YAAY,wBAAwB,CACtG,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACzD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,CAAC;IAC1B,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,IAAI,CACd,GAAG,OAAO,CAAC,WAAW,qEAAqE,CAC5F,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC1C,WAAW,CAAC,IAAI,CACd,GAAG,OAAO,CAAC,WAAW,YAAY,OAAO,CAAC,YAAY,CAAC,GAAG,iCAAiC,CAC5F,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;AAClC,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** Read-only availability probes for adapters whose layouts must be discovered. */
|
|
2
|
+
import type { DiscoveryResult, PlatformAdapter } from './types.js';
|
|
3
|
+
export interface DiscoveryEnvironment {
|
|
4
|
+
/** Explicit configuration paths supplied by the caller's environment. */
|
|
5
|
+
environment?: Readonly<Record<string, string | undefined>>;
|
|
6
|
+
/** Injectable for deterministic callers and tests. This function must be read-only. */
|
|
7
|
+
exists?: (path: string) => boolean;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Reports whether an explicitly configured platform surface exists. It never
|
|
11
|
+
* creates files, derives fallback paths, or treats a configuration file as an
|
|
12
|
+
* artifact location; renderers must still validate any locations they use.
|
|
13
|
+
*/
|
|
14
|
+
export declare function discover(adapter: PlatformAdapter, options?: DiscoveryEnvironment): DiscoveryResult;
|
|
15
|
+
//# sourceMappingURL=discovery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../src/platform-adapters/discovery.ts"],"names":[],"mappings":"AAAA,mFAAmF;AAGnF,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAc,MAAM,YAAY,CAAC;AAE/E,MAAM,WAAW,oBAAoB;IACnC,yEAAyE;IACzE,WAAW,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IAC3D,uFAAuF;IACvF,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;CACpC;AASD;;;;GAIG;AACH,wBAAgB,QAAQ,CACtB,OAAO,EAAE,eAAe,EACxB,OAAO,GAAE,oBAAyB,GACjC,eAAe,CAqDjB"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/** Read-only availability probes for adapters whose layouts must be discovered. */
|
|
2
|
+
import { existsSync } from 'node:fs';
|
|
3
|
+
const CONFIG_PATH_VARIABLES = {
|
|
4
|
+
trae: 'TRAE_CONFIG_PATH',
|
|
5
|
+
hermes: 'HERMES_CONFIG_PATH',
|
|
6
|
+
antigravity: 'ANTIGRAVITY_CONFIG_PATH',
|
|
7
|
+
zed: 'ZED_CONFIG_PATH',
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Reports whether an explicitly configured platform surface exists. It never
|
|
11
|
+
* creates files, derives fallback paths, or treats a configuration file as an
|
|
12
|
+
* artifact location; renderers must still validate any locations they use.
|
|
13
|
+
*/
|
|
14
|
+
export function discover(adapter, options = {}) {
|
|
15
|
+
if (!adapter.requiresDiscovery) {
|
|
16
|
+
return {
|
|
17
|
+
available: false,
|
|
18
|
+
paths: {},
|
|
19
|
+
features: new Set(),
|
|
20
|
+
verification: {},
|
|
21
|
+
diagnostics: [`${adapter.id}: discovery is not required`],
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
const variable = CONFIG_PATH_VARIABLES[adapter.id];
|
|
25
|
+
if (!variable) {
|
|
26
|
+
return {
|
|
27
|
+
available: false,
|
|
28
|
+
paths: {},
|
|
29
|
+
features: new Set(),
|
|
30
|
+
verification: {},
|
|
31
|
+
diagnostics: [`${adapter.id}: no explicit discovery variable is configured`],
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
const configuredPath = (options.environment ?? process.env)[variable];
|
|
35
|
+
if (!configuredPath?.trim()) {
|
|
36
|
+
return {
|
|
37
|
+
available: false,
|
|
38
|
+
paths: {},
|
|
39
|
+
features: new Set(),
|
|
40
|
+
verification: {},
|
|
41
|
+
diagnostics: [`${adapter.id}: ${variable} must name an existing configuration path`],
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
const exists = options.exists ?? existsSync;
|
|
45
|
+
if (!exists(configuredPath)) {
|
|
46
|
+
return {
|
|
47
|
+
available: false,
|
|
48
|
+
paths: {},
|
|
49
|
+
features: new Set(),
|
|
50
|
+
verification: {},
|
|
51
|
+
diagnostics: [`${adapter.id}: ${variable} does not exist`],
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
return {
|
|
55
|
+
available: true,
|
|
56
|
+
paths: { config: configuredPath },
|
|
57
|
+
features: new Set(),
|
|
58
|
+
verification: {},
|
|
59
|
+
diagnostics: [
|
|
60
|
+
`${adapter.id}: explicit configuration path is available; artifact locations require renderer validation`,
|
|
61
|
+
],
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=discovery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../../src/platform-adapters/discovery.ts"],"names":[],"mappings":"AAAA,mFAAmF;AAEnF,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAUrC,MAAM,qBAAqB,GAAwC;IACjE,IAAI,EAAE,kBAAkB;IACxB,MAAM,EAAE,oBAAoB;IAC5B,WAAW,EAAE,yBAAyB;IACtC,GAAG,EAAE,iBAAiB;CACvB,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CACtB,OAAwB,EACxB,OAAO,GAAyB,EAAE;IAElC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,IAAI,GAAG,EAAE;YACnB,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,EAAE,6BAA6B,CAAC;SAC1D,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACnD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,IAAI,GAAG,EAAE;YACnB,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,EAAE,gDAAgD,CAAC;SAC7E,CAAC;IACJ,CAAC;IAED,MAAM,cAAc,GAAG,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IACtE,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE,CAAC;QAC5B,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,IAAI,GAAG,EAAE;YACnB,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,EAAE,KAAK,QAAQ,2CAA2C,CAAC;SACrF,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,UAAU,CAAC;IAC5C,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;QAC5B,OAAO;YACL,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,EAAE;YACT,QAAQ,EAAE,IAAI,GAAG,EAAE;YACnB,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,CAAC,GAAG,OAAO,CAAC,EAAE,KAAK,QAAQ,iBAAiB,CAAC;SAC3D,CAAC;IACJ,CAAC;IAED,OAAO;QACL,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE;QACjC,QAAQ,EAAE,IAAI,GAAG,EAAE;QACnB,YAAY,EAAE,EAAE;QAChB,WAAW,EAAE;YACX,GAAG,OAAO,CAAC,EAAE,4FAA4F;SAC1G;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../../src/platform-adapters/docs.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAE7C,OAAO,EAA8B,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AASjF,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,MAAM,CAqB3F"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/** Generated public compatibility matrix. */
|
|
2
|
+
import { CAPABILITIES, PLATFORM_IDS } from './registry.js';
|
|
3
|
+
function symbol(level) {
|
|
4
|
+
if (level === 'native')
|
|
5
|
+
return 'native';
|
|
6
|
+
if (level === 'cli_fallback')
|
|
7
|
+
return 'CLI fallback';
|
|
8
|
+
if (level === 'experimental')
|
|
9
|
+
return 'experimental';
|
|
10
|
+
return 'unsupported';
|
|
11
|
+
}
|
|
12
|
+
export function renderCompatibilityMatrix(registry) {
|
|
13
|
+
const header = ['Platform', ...CAPABILITIES, 'Discovery'].join(' | ');
|
|
14
|
+
const separator = ['---', ...CAPABILITIES.map(() => '---'), '---'].join(' | ');
|
|
15
|
+
const rows = PLATFORM_IDS.map((id) => {
|
|
16
|
+
const adapter = registry[id];
|
|
17
|
+
return [
|
|
18
|
+
adapter.displayName,
|
|
19
|
+
...CAPABILITIES.map((capability) => symbol(adapter.capabilities[capability])),
|
|
20
|
+
adapter.requiresDiscovery ? 'required' : 'no',
|
|
21
|
+
].join(' | ');
|
|
22
|
+
});
|
|
23
|
+
return [
|
|
24
|
+
'# Platform compatibility',
|
|
25
|
+
'',
|
|
26
|
+
'> Generated from the evidence-gated adapter registry. “experimental” means Monomind does not install an unverified native artifact.',
|
|
27
|
+
'',
|
|
28
|
+
header,
|
|
29
|
+
separator,
|
|
30
|
+
...rows,
|
|
31
|
+
'',
|
|
32
|
+
].join('\n');
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=docs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../../../src/platform-adapters/docs.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAE7C,OAAO,EAAE,YAAY,EAAE,YAAY,EAAwB,MAAM,eAAe,CAAC;AAEjF,SAAS,MAAM,CAAC,KAAa;IAC3B,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC;IACxC,IAAI,KAAK,KAAK,cAAc;QAAE,OAAO,cAAc,CAAC;IACpD,IAAI,KAAK,KAAK,cAAc;QAAE,OAAO,cAAc,CAAC;IACpD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,QAAyC;IACjF,MAAM,MAAM,GAAG,CAAC,UAAU,EAAE,GAAG,YAAY,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtE,MAAM,SAAS,GAAG,CAAC,KAAK,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/E,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACnC,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7B,OAAO;YACL,OAAO,CAAC,WAAW;YACnB,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC;YAC7E,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI;SAC9C,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,OAAO;QACL,0BAA0B;QAC1B,EAAE;QACF,qIAAqI;QACrI,EAAE;QACF,MAAM;QACN,SAAS;QACT,GAAG,IAAI;QACP,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/** Runtime-neutral hook input validation and decision handling. */
|
|
2
|
+
declare const HOOK_EVENTS: readonly ['PreToolUse', 'PostToolUse', 'SessionStart', 'SessionEnd'];
|
|
3
|
+
export interface NormalizedHookEvent {
|
|
4
|
+
event: (typeof HOOK_EVENTS)[number];
|
|
5
|
+
tool: string;
|
|
6
|
+
cwd: string;
|
|
7
|
+
sessionId: string;
|
|
8
|
+
input: Record<string, unknown>;
|
|
9
|
+
}
|
|
10
|
+
export type HookDecision = {
|
|
11
|
+
action: 'allow';
|
|
12
|
+
reason?: string;
|
|
13
|
+
} | {
|
|
14
|
+
action: 'block';
|
|
15
|
+
reason?: string;
|
|
16
|
+
} | {
|
|
17
|
+
action: 'observe';
|
|
18
|
+
reason?: string;
|
|
19
|
+
};
|
|
20
|
+
export interface HookPolicy {
|
|
21
|
+
mode: 'observe' | 'block';
|
|
22
|
+
timeoutMs: Partial<Record<NormalizedHookEvent['event'], number>>;
|
|
23
|
+
}
|
|
24
|
+
export declare const DEFAULT_TIMEOUTS: Readonly<Record<NormalizedHookEvent['event'], number>>;
|
|
25
|
+
/** Parse untrusted platform stdin without guessing a platform-specific payload shape. */
|
|
26
|
+
export declare function parseNormalizedHookEvent(payload: unknown): NormalizedHookEvent | null;
|
|
27
|
+
export type HookHandler = (event: NormalizedHookEvent) => Promise<HookDecision> | HookDecision;
|
|
28
|
+
/**
|
|
29
|
+
* A self-contained Node bridge for native hook runners. It intentionally has
|
|
30
|
+
* no dependency on a Claude installation or helper tree: every supported
|
|
31
|
+
* runner can invoke the same executable and receive a protocol-only result.
|
|
32
|
+
*
|
|
33
|
+
* The generated program currently performs neutral observation. Blocking is
|
|
34
|
+
* a transport capability, not an implicit policy: a future policy must return
|
|
35
|
+
* an explicit `block` decision before a runner is allowed to stop a tool.
|
|
36
|
+
*/
|
|
37
|
+
export declare function renderNeutralHookBridge(): string;
|
|
38
|
+
/**
|
|
39
|
+
* Run a normalized policy handler. Observe mode is deliberately fail-open:
|
|
40
|
+
* handler failures and deadlines never become a platform-level block.
|
|
41
|
+
*/
|
|
42
|
+
export declare function runHook(event: NormalizedHookEvent, policy: HookPolicy, handler?: HookHandler): Promise<HookDecision>;
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=hook-bridge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hook-bridge.d.ts","sourceRoot":"","sources":["../../../src/platform-adapters/hook-bridge.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAInE,QAAA,MAAM,WAAW,YAAI,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,CAAU,CAAC;AAEzF,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,MAAM,YAAY,GACpB;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;CAClE;AAED,eAAO,MAAM,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAMhF,CAAC;AAYL,yFAAyF;AACzF,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,mBAAmB,GAAG,IAAI,CAGrF;AAED,MAAM,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,mBAAmB,KAAK,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;AAE/F;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CA+DhD;AAyBD;;;GAGG;AACH,wBAAsB,OAAO,CAC3B,KAAK,EAAE,mBAAmB,EAC1B,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,WAAyC,GACjD,OAAO,CAAC,YAAY,CAAC,CAUvB"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
/** Runtime-neutral hook input validation and decision handling. */
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
const HOOK_EVENTS = ['PreToolUse', 'PostToolUse', 'SessionStart', 'SessionEnd'];
|
|
4
|
+
export const DEFAULT_TIMEOUTS = Object.freeze({
|
|
5
|
+
PreToolUse: 2_000,
|
|
6
|
+
PostToolUse: 10_000,
|
|
7
|
+
SessionStart: 2_000,
|
|
8
|
+
SessionEnd: 2_000,
|
|
9
|
+
});
|
|
10
|
+
const NormalizedHookEventSchema = z
|
|
11
|
+
.object({
|
|
12
|
+
event: z.enum(HOOK_EVENTS),
|
|
13
|
+
tool: z.string(),
|
|
14
|
+
cwd: z.string(),
|
|
15
|
+
sessionId: z.string(),
|
|
16
|
+
input: z.record(z.string(), z.unknown()),
|
|
17
|
+
})
|
|
18
|
+
.strict();
|
|
19
|
+
/** Parse untrusted platform stdin without guessing a platform-specific payload shape. */
|
|
20
|
+
export function parseNormalizedHookEvent(payload) {
|
|
21
|
+
const result = NormalizedHookEventSchema.safeParse(payload);
|
|
22
|
+
return result.success ? result.data : null;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* A self-contained Node bridge for native hook runners. It intentionally has
|
|
26
|
+
* no dependency on a Claude installation or helper tree: every supported
|
|
27
|
+
* runner can invoke the same executable and receive a protocol-only result.
|
|
28
|
+
*
|
|
29
|
+
* The generated program currently performs neutral observation. Blocking is
|
|
30
|
+
* a transport capability, not an implicit policy: a future policy must return
|
|
31
|
+
* an explicit `block` decision before a runner is allowed to stop a tool.
|
|
32
|
+
*/
|
|
33
|
+
export function renderNeutralHookBridge() {
|
|
34
|
+
return `#!/usr/bin/env node
|
|
35
|
+
import { appendFileSync, mkdirSync, readFileSync } from 'node:fs';
|
|
36
|
+
import { dirname, join } from 'node:path';
|
|
37
|
+
|
|
38
|
+
const MAX_STDIN_BYTES = 1024 * 1024;
|
|
39
|
+
const DEFAULT_TIMEOUTS = { PreToolUse: 2000, PostToolUse: 10000, SessionStart: 2000, SessionEnd: 2000 };
|
|
40
|
+
const start = process.hrtime.bigint();
|
|
41
|
+
const args = new Set(process.argv.slice(2));
|
|
42
|
+
const blocking = args.has('--enable-blocking-hooks');
|
|
43
|
+
|
|
44
|
+
function eventName(value) {
|
|
45
|
+
return ['PreToolUse', 'PostToolUse', 'SessionStart', 'SessionEnd'].includes(value) ? value : null;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
function normalize(payload) {
|
|
49
|
+
if (!payload || typeof payload !== 'object' || Array.isArray(payload)) return null;
|
|
50
|
+
const event = eventName(payload.hook_event_name || payload.event || payload.event_name);
|
|
51
|
+
const tool = payload.tool_name || payload.tool || payload.toolName || '';
|
|
52
|
+
const cwd = payload.cwd || payload.workspace || process.cwd();
|
|
53
|
+
const sessionId = payload.session_id || payload.sessionId || '';
|
|
54
|
+
const input = payload.tool_input || payload.input || {};
|
|
55
|
+
if (!event || typeof tool !== 'string' || typeof cwd !== 'string' || typeof sessionId !== 'string') return null;
|
|
56
|
+
if (!input || typeof input !== 'object' || Array.isArray(input)) return null;
|
|
57
|
+
return { event, tool, cwd, sessionId, input };
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
function writeLatency(event, cwd, action) {
|
|
61
|
+
try {
|
|
62
|
+
const latencyMs = Number(process.hrtime.bigint() - start) / 1e6;
|
|
63
|
+
const path = join(cwd, '.monomind', 'hook-latency.jsonl');
|
|
64
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
65
|
+
appendFileSync(path, JSON.stringify({ event, action, latencyMs, timeoutMs: DEFAULT_TIMEOUTS[event] }) + '\\n', 'utf8');
|
|
66
|
+
return latencyMs;
|
|
67
|
+
} catch {
|
|
68
|
+
return Number(process.hrtime.bigint() - start) / 1e6;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
function finish(decision, event, cwd) {
|
|
73
|
+
const latencyMs = writeLatency(event, cwd, decision.action);
|
|
74
|
+
// Hook protocols reserve stdout for the host. Diagnostics are structured
|
|
75
|
+
// stderr only, so a host can never mistake prose for an allow decision.
|
|
76
|
+
process.stderr.write(JSON.stringify({ decision: decision.action, reason: decision.reason, latencyMs }) + '\\n');
|
|
77
|
+
process.exitCode = blocking && decision.action === 'block' ? 2 : 0;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
try {
|
|
81
|
+
const raw = readFileSync(0, 'utf8');
|
|
82
|
+
if (Buffer.byteLength(raw, 'utf8') > MAX_STDIN_BYTES) {
|
|
83
|
+
finish({ action: 'allow', reason: 'hook stdin exceeds 1 MiB' }, 'PreToolUse', process.cwd());
|
|
84
|
+
} else {
|
|
85
|
+
let payload;
|
|
86
|
+
try { payload = JSON.parse(raw || '{}'); } catch { payload = null; }
|
|
87
|
+
const event = normalize(payload);
|
|
88
|
+
if (!event) finish({ action: 'allow', reason: 'invalid hook payload' }, 'PreToolUse', process.cwd());
|
|
89
|
+
else finish({ action: 'allow' }, event.event, event.cwd);
|
|
90
|
+
}
|
|
91
|
+
} catch {
|
|
92
|
+
// A broken bridge must never make an observe hook block a user operation.
|
|
93
|
+
finish({ action: 'allow', reason: 'hook bridge failed open' }, 'PreToolUse', process.cwd());
|
|
94
|
+
}
|
|
95
|
+
`;
|
|
96
|
+
}
|
|
97
|
+
function timeoutFor(event, policy) {
|
|
98
|
+
const configured = policy.timeoutMs[event] ?? DEFAULT_TIMEOUTS[event];
|
|
99
|
+
return Number.isFinite(configured) && configured > 0 ? configured : DEFAULT_TIMEOUTS[event];
|
|
100
|
+
}
|
|
101
|
+
async function runWithTimeout(event, timeoutMs, handler) {
|
|
102
|
+
let timer;
|
|
103
|
+
try {
|
|
104
|
+
return await Promise.race([
|
|
105
|
+
Promise.resolve(handler(event)),
|
|
106
|
+
new Promise((_, reject) => {
|
|
107
|
+
timer = setTimeout(() => reject(new Error('hook bridge timed out')), timeoutMs);
|
|
108
|
+
}),
|
|
109
|
+
]);
|
|
110
|
+
}
|
|
111
|
+
finally {
|
|
112
|
+
if (timer)
|
|
113
|
+
clearTimeout(timer);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Run a normalized policy handler. Observe mode is deliberately fail-open:
|
|
118
|
+
* handler failures and deadlines never become a platform-level block.
|
|
119
|
+
*/
|
|
120
|
+
export async function runHook(event, policy, handler = () => ({ action: 'allow' })) {
|
|
121
|
+
try {
|
|
122
|
+
return await runWithTimeout(event, timeoutFor(event.event, policy), handler);
|
|
123
|
+
}
|
|
124
|
+
catch (error) {
|
|
125
|
+
if (policy.mode === 'observe')
|
|
126
|
+
return { action: 'allow' };
|
|
127
|
+
return {
|
|
128
|
+
action: 'observe',
|
|
129
|
+
reason: error instanceof Error ? error.message : 'hook bridge failed',
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=hook-bridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hook-bridge.js","sourceRoot":"","sources":["../../../src/platform-adapters/hook-bridge.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/** Safe, format-neutral primitives for Monomind-managed configuration content. */
|
|
2
|
+
export interface SafeJsonResult {
|
|
3
|
+
content: string;
|
|
4
|
+
diagnostics: readonly string[];
|
|
5
|
+
}
|
|
6
|
+
type MarkerComment = '#' | '//';
|
|
7
|
+
/**
|
|
8
|
+
* Adds or replaces one managed marker block. Blocks for other artifacts and
|
|
9
|
+
* platforms are deliberately left untouched.
|
|
10
|
+
*/
|
|
11
|
+
export declare function mergeManagedBlock(existing: string, marker: string, content: string, comment?: MarkerComment): string;
|
|
12
|
+
/** Removes exactly one artifact/platform block, leaving all other content unchanged. */
|
|
13
|
+
export declare function removeManagedBlock(content: string, artifact: string, platform: string): string;
|
|
14
|
+
/** Removes a block by its full marker for artifacts with qualified names. */
|
|
15
|
+
export declare function removeManagedMarker(content: string, marker: string): string;
|
|
16
|
+
/**
|
|
17
|
+
* SKILL.md requires YAML frontmatter to be its first bytes. Keep it outside
|
|
18
|
+
* the managed marker and replace only Monomind's body block. A same-name file
|
|
19
|
+
* may contain user guidance around the block; a different-name file is foreign
|
|
20
|
+
* and is never overwritten by an adapter install.
|
|
21
|
+
*/
|
|
22
|
+
export declare function mergeSkillManagedBlock(existing: string, marker: string, rendered: string): SafeJsonResult;
|
|
23
|
+
/** Merges a named JSON object entry, leaving malformed input unmodified. */
|
|
24
|
+
export declare function safeJsonMerge(content: string, path: readonly string[], entry: unknown): SafeJsonResult;
|
|
25
|
+
/** Convenience form for callers that do not need malformed-input diagnostics. */
|
|
26
|
+
export declare function mergeNamedEntry(content: string, path: readonly string[], entry: unknown): string;
|
|
27
|
+
/** Removes a named JSON object entry, leaving malformed input unmodified. */
|
|
28
|
+
export declare function safeJsonRemove(content: string, path: readonly string[], name: string): SafeJsonResult;
|
|
29
|
+
/** Convenience form for callers that do not need malformed-input diagnostics. */
|
|
30
|
+
export declare function removeNamedEntry(content: string, path: readonly string[], name: string): string;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=merge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../../src/platform-adapters/merge.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAElF,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC;AAgCD,KAAK,aAAa,GAAG,GAAG,GAAG,IAAI,CAAC;AAchC;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,aAAmB,GAC3B,MAAM,CAgBR;AAED,wFAAwF;AACxF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE9F;AAED,6EAA6E;AAC7E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAG3E;AAcD;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,cAAc,CAqBhB;AAgFD,4EAA4E;AAC5E,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,KAAK,EAAE,OAAO,GACb,cAAc,CAiBhB;AAED,iFAAiF;AACjF,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAEhG;AAED,6EAA6E;AAC7E,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,IAAI,EAAE,MAAM,GACX,cAAc,CAahB;AAED,iFAAiF;AACjF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/F"}
|