@flyingrobots/graft 0.4.0 → 0.6.0
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/ARCHITECTURE.md +139 -0
- package/CHANGELOG.md +128 -0
- package/CODE_OF_CONDUCT.md +65 -0
- package/README.md +117 -143
- package/bin/graft.js +6 -14
- package/dist/adapters/canonical-json.d.ts +6 -0
- package/dist/adapters/canonical-json.d.ts.map +1 -0
- package/dist/adapters/canonical-json.js +52 -0
- package/dist/adapters/canonical-json.js.map +1 -0
- package/dist/adapters/node-fs.d.ts +3 -0
- package/dist/adapters/node-fs.d.ts.map +1 -0
- package/dist/adapters/node-fs.js +33 -0
- package/dist/adapters/node-fs.js.map +1 -0
- package/dist/adapters/node-git.d.ts +3 -0
- package/dist/adapters/node-git.d.ts.map +1 -0
- package/dist/adapters/node-git.js +44 -0
- package/dist/adapters/node-git.js.map +1 -0
- package/dist/adapters/node-process-runner.d.ts +3 -0
- package/dist/adapters/node-process-runner.d.ts.map +1 -0
- package/dist/adapters/node-process-runner.js +23 -0
- package/dist/adapters/node-process-runner.js.map +1 -0
- package/dist/adapters/repo-paths.d.ts +3 -0
- package/dist/adapters/repo-paths.d.ts.map +1 -0
- package/dist/adapters/repo-paths.js +22 -0
- package/dist/adapters/repo-paths.js.map +1 -0
- package/dist/adapters/rotating-ndjson-log.d.ts +18 -0
- package/dist/adapters/rotating-ndjson-log.d.ts.map +1 -0
- package/dist/adapters/rotating-ndjson-log.js +48 -0
- package/dist/adapters/rotating-ndjson-log.js.map +1 -0
- package/dist/api/index.d.ts +27 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +25 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/repo-local-graft.d.ts +7 -0
- package/dist/api/repo-local-graft.d.ts.map +1 -0
- package/dist/api/repo-local-graft.js +12 -0
- package/dist/api/repo-local-graft.js.map +1 -0
- package/dist/api/repo-workspace.d.ts +15 -0
- package/dist/api/repo-workspace.d.ts.map +1 -0
- package/dist/api/repo-workspace.js +23 -0
- package/dist/api/repo-workspace.js.map +1 -0
- package/dist/api/tool-bridge.d.ts +7 -0
- package/dist/api/tool-bridge.d.ts.map +1 -0
- package/dist/api/tool-bridge.js +14 -0
- package/dist/api/tool-bridge.js.map +1 -0
- package/dist/cli/activity-render.d.ts +2 -0
- package/dist/cli/activity-render.d.ts.map +1 -0
- package/dist/cli/activity-render.js +90 -0
- package/dist/cli/activity-render.js.map +1 -0
- package/dist/cli/cli-error.d.ts +10 -0
- package/dist/cli/cli-error.d.ts.map +1 -0
- package/dist/cli/cli-error.js +130 -0
- package/dist/cli/cli-error.js.map +1 -0
- package/dist/cli/command-parser.d.ts +17 -0
- package/dist/cli/command-parser.d.ts.map +1 -0
- package/dist/cli/command-parser.js +255 -0
- package/dist/cli/command-parser.js.map +1 -0
- package/dist/cli/entrypoint.d.ts +7 -0
- package/dist/cli/entrypoint.d.ts.map +1 -0
- package/dist/cli/entrypoint.js +8 -0
- package/dist/cli/entrypoint.js.map +1 -0
- package/dist/cli/index-cmd.d.ts +12 -0
- package/dist/cli/index-cmd.d.ts.map +1 -0
- package/dist/cli/index-cmd.js +73 -0
- package/dist/cli/index-cmd.js.map +1 -0
- package/dist/cli/index-model.d.ts +33 -0
- package/dist/cli/index-model.d.ts.map +1 -0
- package/dist/cli/index-model.js +55 -0
- package/dist/cli/index-model.js.map +1 -0
- package/dist/cli/init-bootstrap.d.ts +6 -0
- package/dist/cli/init-bootstrap.d.ts.map +1 -0
- package/dist/cli/init-bootstrap.js +27 -0
- package/dist/cli/init-bootstrap.js.map +1 -0
- package/dist/cli/init-client-config.d.ts +13 -0
- package/dist/cli/init-client-config.d.ts.map +1 -0
- package/dist/cli/init-client-config.js +215 -0
- package/dist/cli/init-client-config.js.map +1 -0
- package/dist/cli/init-model.d.ts +80 -0
- package/dist/cli/init-model.d.ts.map +1 -0
- package/dist/cli/init-model.js +202 -0
- package/dist/cli/init-model.js.map +1 -0
- package/dist/cli/init-render.d.ts +8 -0
- package/dist/cli/init-render.d.ts.map +1 -0
- package/dist/cli/init-render.js +43 -0
- package/dist/cli/init-render.js.map +1 -0
- package/dist/cli/init-target-hooks.d.ts +3 -0
- package/dist/cli/init-target-hooks.d.ts.map +1 -0
- package/dist/cli/init-target-hooks.js +75 -0
- package/dist/cli/init-target-hooks.js.map +1 -0
- package/dist/cli/init.d.ts +12 -0
- package/dist/cli/init.d.ts.map +1 -0
- package/dist/cli/init.js +96 -0
- package/dist/cli/init.js.map +1 -0
- package/dist/cli/json-document.d.ts +35 -0
- package/dist/cli/json-document.d.ts.map +1 -0
- package/dist/cli/json-document.js +107 -0
- package/dist/cli/json-document.js.map +1 -0
- package/dist/cli/local-history-dag-model.d.ts +43 -0
- package/dist/cli/local-history-dag-model.d.ts.map +1 -0
- package/dist/cli/local-history-dag-model.js +344 -0
- package/dist/cli/local-history-dag-model.js.map +1 -0
- package/dist/cli/local-history-dag-render.d.ts +3 -0
- package/dist/cli/local-history-dag-render.d.ts.map +1 -0
- package/dist/cli/local-history-dag-render.js +126 -0
- package/dist/cli/local-history-dag-render.js.map +1 -0
- package/dist/cli/local-history-dag.d.ts +13 -0
- package/dist/cli/local-history-dag.d.ts.map +1 -0
- package/dist/cli/local-history-dag.js +60 -0
- package/dist/cli/local-history-dag.js.map +1 -0
- package/dist/cli/main.d.ts +15 -0
- package/dist/cli/main.d.ts.map +1 -0
- package/dist/cli/main.js +126 -0
- package/dist/cli/main.js.map +1 -0
- package/dist/cli/migrate-local-history.d.ts +12 -0
- package/dist/cli/migrate-local-history.d.ts.map +1 -0
- package/dist/cli/migrate-local-history.js +82 -0
- package/dist/cli/migrate-local-history.js.map +1 -0
- package/dist/cli/peer-command.d.ts +9 -0
- package/dist/cli/peer-command.d.ts.map +1 -0
- package/dist/cli/peer-command.js +38 -0
- package/dist/cli/peer-command.js.map +1 -0
- package/dist/contracts/capabilities.d.ts +44 -0
- package/dist/contracts/capabilities.d.ts.map +1 -0
- package/dist/contracts/capabilities.js +382 -0
- package/dist/contracts/capabilities.js.map +1 -0
- package/dist/contracts/causal-ontology.d.ts +1937 -0
- package/dist/contracts/causal-ontology.d.ts.map +1 -0
- package/dist/contracts/causal-ontology.js +506 -0
- package/dist/contracts/causal-ontology.js.map +1 -0
- package/dist/contracts/causal-surface-next-action.d.ts +17 -0
- package/dist/contracts/causal-surface-next-action.d.ts.map +1 -0
- package/dist/contracts/causal-surface-next-action.js +16 -0
- package/dist/contracts/causal-surface-next-action.js.map +1 -0
- package/dist/contracts/json-object.d.ts +7 -0
- package/dist/contracts/json-object.d.ts.map +1 -0
- package/dist/contracts/json-object.js +24 -0
- package/dist/contracts/json-object.js.map +1 -0
- package/dist/contracts/mcp-runtime.d.ts +4 -0
- package/dist/contracts/mcp-runtime.d.ts.map +1 -0
- package/dist/contracts/mcp-runtime.js +11 -0
- package/dist/contracts/mcp-runtime.js.map +1 -0
- package/dist/contracts/output-schema-cli.d.ts +2716 -0
- package/dist/contracts/output-schema-cli.d.ts.map +1 -0
- package/dist/contracts/output-schema-cli.js +68 -0
- package/dist/contracts/output-schema-cli.js.map +1 -0
- package/dist/contracts/output-schema-fragments.d.ts +10819 -0
- package/dist/contracts/output-schema-fragments.d.ts.map +1 -0
- package/dist/contracts/output-schema-fragments.js +753 -0
- package/dist/contracts/output-schema-fragments.js.map +1 -0
- package/dist/contracts/output-schema-mcp.d.ts +5926 -0
- package/dist/contracts/output-schema-mcp.d.ts.map +1 -0
- package/dist/contracts/output-schema-mcp.js +231 -0
- package/dist/contracts/output-schema-mcp.js.map +1 -0
- package/dist/contracts/output-schema-meta.d.ts +30 -0
- package/dist/contracts/output-schema-meta.d.ts.map +1 -0
- package/dist/contracts/output-schema-meta.js +51 -0
- package/dist/contracts/output-schema-meta.js.map +1 -0
- package/dist/contracts/output-schemas.d.ts +1072 -0
- package/dist/contracts/output-schemas.d.ts.map +1 -0
- package/dist/contracts/output-schemas.js +1089 -0
- package/dist/contracts/output-schemas.js.map +1 -0
- package/dist/git/diff.d.ts +32 -0
- package/dist/git/diff.d.ts.map +1 -0
- package/dist/git/diff.js +82 -0
- package/dist/git/diff.js.map +1 -0
- package/dist/git/target-git-hook-bootstrap.d.ts +7 -0
- package/dist/git/target-git-hook-bootstrap.d.ts.map +1 -0
- package/dist/git/target-git-hook-bootstrap.js +40 -0
- package/dist/git/target-git-hook-bootstrap.js.map +1 -0
- package/dist/guards/stream-boundary.d.ts +41 -0
- package/dist/guards/stream-boundary.d.ts.map +1 -0
- package/dist/guards/stream-boundary.js +97 -0
- package/dist/guards/stream-boundary.js.map +1 -0
- package/dist/hooks/posttooluse-read.d.ts +4 -0
- package/dist/hooks/posttooluse-read.d.ts.map +1 -0
- package/dist/hooks/posttooluse-read.js +41 -0
- package/dist/hooks/posttooluse-read.js.map +1 -0
- package/dist/hooks/pretooluse-read.d.ts +4 -0
- package/dist/hooks/pretooluse-read.d.ts.map +1 -0
- package/dist/hooks/pretooluse-read.js +41 -0
- package/dist/hooks/pretooluse-read.js.map +1 -0
- package/dist/hooks/read-governor.d.ts +24 -0
- package/dist/hooks/read-governor.d.ts.map +1 -0
- package/dist/hooks/read-governor.js +76 -0
- package/dist/hooks/read-governor.js.map +1 -0
- package/dist/hooks/read-messages.d.ts +6 -0
- package/dist/hooks/read-messages.d.ts.map +1 -0
- package/dist/hooks/read-messages.js +45 -0
- package/dist/hooks/read-messages.js.map +1 -0
- package/dist/hooks/shared.d.ts +52 -0
- package/dist/hooks/shared.d.ts.map +1 -0
- package/dist/hooks/shared.js +137 -0
- package/dist/hooks/shared.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp/burden.d.ts +21 -0
- package/dist/mcp/burden.d.ts.map +1 -0
- package/dist/mcp/burden.js +96 -0
- package/dist/mcp/burden.js.map +1 -0
- package/dist/mcp/cache.d.ts +2 -0
- package/dist/mcp/cache.d.ts.map +1 -0
- package/dist/mcp/cache.js +2 -0
- package/dist/mcp/cache.js.map +1 -0
- package/dist/mcp/cached-file.d.ts +2 -0
- package/dist/mcp/cached-file.d.ts.map +1 -0
- package/dist/mcp/cached-file.js +2 -0
- package/dist/mcp/cached-file.js.map +1 -0
- package/dist/mcp/context.d.ts +84 -0
- package/dist/mcp/context.d.ts.map +1 -0
- package/dist/mcp/context.js +79 -0
- package/dist/mcp/context.js.map +1 -0
- package/dist/mcp/control-plane/authz-storage.d.ts +35 -0
- package/dist/mcp/control-plane/authz-storage.d.ts.map +1 -0
- package/dist/mcp/control-plane/authz-storage.js +85 -0
- package/dist/mcp/control-plane/authz-storage.js.map +1 -0
- package/dist/mcp/control-plane/session-registry.d.ts +12 -0
- package/dist/mcp/control-plane/session-registry.d.ts.map +1 -0
- package/dist/mcp/control-plane/session-registry.js +88 -0
- package/dist/mcp/control-plane/session-registry.js.map +1 -0
- package/dist/mcp/control-plane/status-projection.d.ts +8 -0
- package/dist/mcp/control-plane/status-projection.d.ts.map +1 -0
- package/dist/mcp/control-plane/status-projection.js +49 -0
- package/dist/mcp/control-plane/status-projection.js.map +1 -0
- package/dist/mcp/control-plane/types.d.ts +107 -0
- package/dist/mcp/control-plane/types.d.ts.map +1 -0
- package/dist/mcp/control-plane/types.js +2 -0
- package/dist/mcp/control-plane/types.js.map +1 -0
- package/dist/mcp/daemon-bootstrap.d.ts +9 -0
- package/dist/mcp/daemon-bootstrap.d.ts.map +1 -0
- package/dist/mcp/daemon-bootstrap.js +96 -0
- package/dist/mcp/daemon-bootstrap.js.map +1 -0
- package/dist/mcp/daemon-control-plane.d.ts +37 -0
- package/dist/mcp/daemon-control-plane.d.ts.map +1 -0
- package/dist/mcp/daemon-control-plane.js +200 -0
- package/dist/mcp/daemon-control-plane.js.map +1 -0
- package/dist/mcp/daemon-job-scheduler.d.ts +60 -0
- package/dist/mcp/daemon-job-scheduler.d.ts.map +1 -0
- package/dist/mcp/daemon-job-scheduler.js +203 -0
- package/dist/mcp/daemon-job-scheduler.js.map +1 -0
- package/dist/mcp/daemon-repos.d.ts +9 -0
- package/dist/mcp/daemon-repos.d.ts.map +1 -0
- package/dist/mcp/daemon-repos.js +73 -0
- package/dist/mcp/daemon-repos.js.map +1 -0
- package/dist/mcp/daemon-server.d.ts +23 -0
- package/dist/mcp/daemon-server.d.ts.map +1 -0
- package/dist/mcp/daemon-server.js +128 -0
- package/dist/mcp/daemon-server.js.map +1 -0
- package/dist/mcp/daemon-session-host.d.ts +31 -0
- package/dist/mcp/daemon-session-host.d.ts.map +1 -0
- package/dist/mcp/daemon-session-host.js +173 -0
- package/dist/mcp/daemon-session-host.js.map +1 -0
- package/dist/mcp/daemon-stdio-bridge.d.ts +17 -0
- package/dist/mcp/daemon-stdio-bridge.d.ts.map +1 -0
- package/dist/mcp/daemon-stdio-bridge.js +207 -0
- package/dist/mcp/daemon-stdio-bridge.js.map +1 -0
- package/dist/mcp/daemon-worker-child-pool.d.ts +22 -0
- package/dist/mcp/daemon-worker-child-pool.d.ts.map +1 -0
- package/dist/mcp/daemon-worker-child-pool.js +193 -0
- package/dist/mcp/daemon-worker-child-pool.js.map +1 -0
- package/dist/mcp/daemon-worker-inline-pool.d.ts +12 -0
- package/dist/mcp/daemon-worker-inline-pool.d.ts.map +1 -0
- package/dist/mcp/daemon-worker-inline-pool.js +43 -0
- package/dist/mcp/daemon-worker-inline-pool.js.map +1 -0
- package/dist/mcp/daemon-worker-pool.d.ts +4 -0
- package/dist/mcp/daemon-worker-pool.d.ts.map +1 -0
- package/dist/mcp/daemon-worker-pool.js +3 -0
- package/dist/mcp/daemon-worker-pool.js.map +1 -0
- package/dist/mcp/daemon-worker-process.d.ts +2 -0
- package/dist/mcp/daemon-worker-process.d.ts.map +1 -0
- package/dist/mcp/daemon-worker-process.js +26 -0
- package/dist/mcp/daemon-worker-process.js.map +1 -0
- package/dist/mcp/daemon-worker-types.d.ts +56 -0
- package/dist/mcp/daemon-worker-types.d.ts.map +1 -0
- package/dist/mcp/daemon-worker-types.js +2 -0
- package/dist/mcp/daemon-worker-types.js.map +1 -0
- package/dist/mcp/metrics.d.ts +57 -0
- package/dist/mcp/metrics.d.ts.map +1 -0
- package/dist/mcp/metrics.js +133 -0
- package/dist/mcp/metrics.js.map +1 -0
- package/dist/mcp/monitor-health.d.ts +29 -0
- package/dist/mcp/monitor-health.d.ts.map +1 -0
- package/dist/mcp/monitor-health.js +70 -0
- package/dist/mcp/monitor-health.js.map +1 -0
- package/dist/mcp/monitor-persistence.d.ts +17 -0
- package/dist/mcp/monitor-persistence.d.ts.map +1 -0
- package/dist/mcp/monitor-persistence.js +38 -0
- package/dist/mcp/monitor-persistence.js.map +1 -0
- package/dist/mcp/monitor-tick-job.d.ts +22 -0
- package/dist/mcp/monitor-tick-job.d.ts.map +1 -0
- package/dist/mcp/monitor-tick-job.js +65 -0
- package/dist/mcp/monitor-tick-job.js.map +1 -0
- package/dist/mcp/monitor-types.d.ts +123 -0
- package/dist/mcp/monitor-types.d.ts.map +1 -0
- package/dist/mcp/monitor-types.js +29 -0
- package/dist/mcp/monitor-types.js.map +1 -0
- package/dist/mcp/persisted-local-history-graph.d.ts +40 -0
- package/dist/mcp/persisted-local-history-graph.d.ts.map +1 -0
- package/dist/mcp/persisted-local-history-graph.js +388 -0
- package/dist/mcp/persisted-local-history-graph.js.map +1 -0
- package/dist/mcp/persisted-local-history-policy.d.ts +43 -0
- package/dist/mcp/persisted-local-history-policy.d.ts.map +1 -0
- package/dist/mcp/persisted-local-history-policy.js +372 -0
- package/dist/mcp/persisted-local-history-policy.js.map +1 -0
- package/dist/mcp/persisted-local-history-views.d.ts +24 -0
- package/dist/mcp/persisted-local-history-views.d.ts.map +1 -0
- package/dist/mcp/persisted-local-history-views.js +201 -0
- package/dist/mcp/persisted-local-history-views.js.map +1 -0
- package/dist/mcp/persisted-local-history.d.ts +795 -0
- package/dist/mcp/persisted-local-history.d.ts.map +1 -0
- package/dist/mcp/persisted-local-history.js +1076 -0
- package/dist/mcp/persisted-local-history.js.map +1 -0
- package/dist/mcp/persistent-monitor-runtime.d.ts +33 -0
- package/dist/mcp/persistent-monitor-runtime.d.ts.map +1 -0
- package/dist/mcp/persistent-monitor-runtime.js +356 -0
- package/dist/mcp/persistent-monitor-runtime.js.map +1 -0
- package/dist/mcp/policy.d.ts +29 -0
- package/dist/mcp/policy.d.ts.map +1 -0
- package/dist/mcp/policy.js +40 -0
- package/dist/mcp/policy.js.map +1 -0
- package/dist/mcp/receipt.d.ts +64 -0
- package/dist/mcp/receipt.d.ts.map +1 -0
- package/dist/mcp/receipt.js +99 -0
- package/dist/mcp/receipt.js.map +1 -0
- package/dist/mcp/repo-concurrency.d.ts +62 -0
- package/dist/mcp/repo-concurrency.d.ts.map +1 -0
- package/dist/mcp/repo-concurrency.js +195 -0
- package/dist/mcp/repo-concurrency.js.map +1 -0
- package/dist/mcp/repo-overview/filter.d.ts +6 -0
- package/dist/mcp/repo-overview/filter.d.ts.map +1 -0
- package/dist/mcp/repo-overview/filter.js +32 -0
- package/dist/mcp/repo-overview/filter.js.map +1 -0
- package/dist/mcp/repo-overview/types.d.ts +41 -0
- package/dist/mcp/repo-overview/types.d.ts.map +1 -0
- package/dist/mcp/repo-overview/types.js +2 -0
- package/dist/mcp/repo-overview/types.js.map +1 -0
- package/dist/mcp/repo-overview/view-projection.d.ts +8 -0
- package/dist/mcp/repo-overview/view-projection.d.ts.map +1 -0
- package/dist/mcp/repo-overview/view-projection.js +73 -0
- package/dist/mcp/repo-overview/view-projection.js.map +1 -0
- package/dist/mcp/repo-state-git.d.ts +8 -0
- package/dist/mcp/repo-state-git.d.ts.map +1 -0
- package/dist/mcp/repo-state-git.js +203 -0
- package/dist/mcp/repo-state-git.js.map +1 -0
- package/dist/mcp/repo-state-observation.d.ts +4 -0
- package/dist/mcp/repo-state-observation.d.ts.map +1 -0
- package/dist/mcp/repo-state-observation.js +171 -0
- package/dist/mcp/repo-state-observation.js.map +1 -0
- package/dist/mcp/repo-state-transition.d.ts +4 -0
- package/dist/mcp/repo-state-transition.d.ts.map +1 -0
- package/dist/mcp/repo-state-transition.js +124 -0
- package/dist/mcp/repo-state-transition.js.map +1 -0
- package/dist/mcp/repo-state-types.d.ts +88 -0
- package/dist/mcp/repo-state-types.d.ts.map +1 -0
- package/dist/mcp/repo-state-types.js +2 -0
- package/dist/mcp/repo-state-types.js.map +1 -0
- package/dist/mcp/repo-state.d.ts +37 -0
- package/dist/mcp/repo-state.d.ts.map +1 -0
- package/dist/mcp/repo-state.js +101 -0
- package/dist/mcp/repo-state.js.map +1 -0
- package/dist/mcp/repo-tool-job.d.ts +55 -0
- package/dist/mcp/repo-tool-job.d.ts.map +1 -0
- package/dist/mcp/repo-tool-job.js +50 -0
- package/dist/mcp/repo-tool-job.js.map +1 -0
- package/dist/mcp/repo-tool-worker-context.d.ts +8 -0
- package/dist/mcp/repo-tool-worker-context.d.ts.map +1 -0
- package/dist/mcp/repo-tool-worker-context.js +199 -0
- package/dist/mcp/repo-tool-worker-context.js.map +1 -0
- package/dist/mcp/repo-workspace.d.ts +4 -0
- package/dist/mcp/repo-workspace.d.ts.map +1 -0
- package/dist/mcp/repo-workspace.js +15 -0
- package/dist/mcp/repo-workspace.js.map +1 -0
- package/dist/mcp/run-capture-config.d.ts +11 -0
- package/dist/mcp/run-capture-config.d.ts.map +1 -0
- package/dist/mcp/run-capture-config.js +23 -0
- package/dist/mcp/run-capture-config.js.map +1 -0
- package/dist/mcp/runtime-causal-context.d.ts +22 -0
- package/dist/mcp/runtime-causal-context.d.ts.map +1 -0
- package/dist/mcp/runtime-causal-context.js +28 -0
- package/dist/mcp/runtime-causal-context.js.map +1 -0
- package/dist/mcp/runtime-observability.d.ts +102 -0
- package/dist/mcp/runtime-observability.d.ts.map +1 -0
- package/dist/mcp/runtime-observability.js +95 -0
- package/dist/mcp/runtime-observability.js.map +1 -0
- package/dist/mcp/runtime-staged-target.d.ts +28 -0
- package/dist/mcp/runtime-staged-target.d.ts.map +1 -0
- package/dist/mcp/runtime-staged-target.js +101 -0
- package/dist/mcp/runtime-staged-target.js.map +1 -0
- package/dist/mcp/runtime-workspace-overlay.d.ts +45 -0
- package/dist/mcp/runtime-workspace-overlay.d.ts.map +1 -0
- package/dist/mcp/runtime-workspace-overlay.js +153 -0
- package/dist/mcp/runtime-workspace-overlay.js.map +1 -0
- package/dist/mcp/secret-scrub.d.ts +17 -0
- package/dist/mcp/secret-scrub.d.ts.map +1 -0
- package/dist/mcp/secret-scrub.js +82 -0
- package/dist/mcp/secret-scrub.js.map +1 -0
- package/dist/mcp/semantic-transition-guidance.d.ts +6 -0
- package/dist/mcp/semantic-transition-guidance.d.ts.map +1 -0
- package/dist/mcp/semantic-transition-guidance.js +47 -0
- package/dist/mcp/semantic-transition-guidance.js.map +1 -0
- package/dist/mcp/semantic-transition-summary.d.ts +23 -0
- package/dist/mcp/semantic-transition-summary.d.ts.map +1 -0
- package/dist/mcp/semantic-transition-summary.js +82 -0
- package/dist/mcp/semantic-transition-summary.js.map +1 -0
- package/dist/mcp/server-context.d.ts +46 -0
- package/dist/mcp/server-context.d.ts.map +1 -0
- package/dist/mcp/server-context.js +163 -0
- package/dist/mcp/server-context.js.map +1 -0
- package/dist/mcp/server-invocation.d.ts +73 -0
- package/dist/mcp/server-invocation.d.ts.map +1 -0
- package/dist/mcp/server-invocation.js +265 -0
- package/dist/mcp/server-invocation.js.map +1 -0
- package/dist/mcp/server-tool-access.d.ts +18 -0
- package/dist/mcp/server-tool-access.d.ts.map +1 -0
- package/dist/mcp/server-tool-access.js +123 -0
- package/dist/mcp/server-tool-access.js.map +1 -0
- package/dist/mcp/server.d.ts +41 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +215 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/mcp/stdio-server.d.ts +6 -0
- package/dist/mcp/stdio-server.d.ts.map +1 -0
- package/dist/mcp/stdio-server.js +20 -0
- package/dist/mcp/stdio-server.js.map +1 -0
- package/dist/mcp/stdio.d.ts +2 -0
- package/dist/mcp/stdio.d.ts.map +1 -0
- package/dist/mcp/stdio.js +3 -0
- package/dist/mcp/stdio.js.map +1 -0
- package/dist/mcp/tool-registry.d.ts +5 -0
- package/dist/mcp/tool-registry.d.ts.map +1 -0
- package/dist/mcp/tool-registry.js +76 -0
- package/dist/mcp/tool-registry.js.map +1 -0
- package/dist/mcp/tools/activity-view.d.ts +3 -0
- package/dist/mcp/tools/activity-view.d.ts.map +1 -0
- package/dist/mcp/tools/activity-view.js +259 -0
- package/dist/mcp/tools/activity-view.js.map +1 -0
- package/dist/mcp/tools/budget.d.ts +3 -0
- package/dist/mcp/tools/budget.d.ts.map +1 -0
- package/dist/mcp/tools/budget.js +20 -0
- package/dist/mcp/tools/budget.js.map +1 -0
- package/dist/mcp/tools/causal-attach.d.ts +3 -0
- package/dist/mcp/tools/causal-attach.d.ts.map +1 -0
- package/dist/mcp/tools/causal-attach.js +53 -0
- package/dist/mcp/tools/causal-attach.js.map +1 -0
- package/dist/mcp/tools/causal-status.d.ts +3 -0
- package/dist/mcp/tools/causal-status.d.ts.map +1 -0
- package/dist/mcp/tools/causal-status.js +46 -0
- package/dist/mcp/tools/causal-status.js.map +1 -0
- package/dist/mcp/tools/changed-since.d.ts +3 -0
- package/dist/mcp/tools/changed-since.d.ts.map +1 -0
- package/dist/mcp/tools/changed-since.js +57 -0
- package/dist/mcp/tools/changed-since.js.map +1 -0
- package/dist/mcp/tools/code-find.d.ts +104 -0
- package/dist/mcp/tools/code-find.d.ts.map +1 -0
- package/dist/mcp/tools/code-find.js +125 -0
- package/dist/mcp/tools/code-find.js.map +1 -0
- package/dist/mcp/tools/code-refs.d.ts +3 -0
- package/dist/mcp/tools/code-refs.d.ts.map +1 -0
- package/dist/mcp/tools/code-refs.js +370 -0
- package/dist/mcp/tools/code-refs.js.map +1 -0
- package/dist/mcp/tools/code-show.d.ts +104 -0
- package/dist/mcp/tools/code-show.d.ts.map +1 -0
- package/dist/mcp/tools/code-show.js +202 -0
- package/dist/mcp/tools/code-show.js.map +1 -0
- package/dist/mcp/tools/daemon-monitors.d.ts +3 -0
- package/dist/mcp/tools/daemon-monitors.d.ts.map +1 -0
- package/dist/mcp/tools/daemon-monitors.js +12 -0
- package/dist/mcp/tools/daemon-monitors.js.map +1 -0
- package/dist/mcp/tools/daemon-repos.d.ts +3 -0
- package/dist/mcp/tools/daemon-repos.d.ts.map +1 -0
- package/dist/mcp/tools/daemon-repos.js +20 -0
- package/dist/mcp/tools/daemon-repos.js.map +1 -0
- package/dist/mcp/tools/daemon-sessions.d.ts +3 -0
- package/dist/mcp/tools/daemon-sessions.d.ts.map +1 -0
- package/dist/mcp/tools/daemon-sessions.js +12 -0
- package/dist/mcp/tools/daemon-sessions.js.map +1 -0
- package/dist/mcp/tools/daemon-status.d.ts +3 -0
- package/dist/mcp/tools/daemon-status.d.ts.map +1 -0
- package/dist/mcp/tools/daemon-status.js +10 -0
- package/dist/mcp/tools/daemon-status.js.map +1 -0
- package/dist/mcp/tools/diagnostic-models.d.ts +85 -0
- package/dist/mcp/tools/diagnostic-models.d.ts.map +1 -0
- package/dist/mcp/tools/diagnostic-models.js +5 -0
- package/dist/mcp/tools/diagnostic-models.js.map +1 -0
- package/dist/mcp/tools/doctor.d.ts +3 -0
- package/dist/mcp/tools/doctor.d.ts.map +1 -0
- package/dist/mcp/tools/doctor.js +54 -0
- package/dist/mcp/tools/doctor.js.map +1 -0
- package/dist/mcp/tools/explain.d.ts +3 -0
- package/dist/mcp/tools/explain.d.ts.map +1 -0
- package/dist/mcp/tools/explain.js +81 -0
- package/dist/mcp/tools/explain.js.map +1 -0
- package/dist/mcp/tools/file-outline.d.ts +3 -0
- package/dist/mcp/tools/file-outline.d.ts.map +1 -0
- package/dist/mcp/tools/file-outline.js +54 -0
- package/dist/mcp/tools/file-outline.js.map +1 -0
- package/dist/mcp/tools/git-files.d.ts +24 -0
- package/dist/mcp/tools/git-files.d.ts.map +1 -0
- package/dist/mcp/tools/git-files.js +57 -0
- package/dist/mcp/tools/git-files.js.map +1 -0
- package/dist/mcp/tools/graft-diff.d.ts +3 -0
- package/dist/mcp/tools/graft-diff.d.ts.map +1 -0
- package/dist/mcp/tools/graft-diff.js +33 -0
- package/dist/mcp/tools/graft-diff.js.map +1 -0
- package/dist/mcp/tools/map-collector.d.ts +85 -0
- package/dist/mcp/tools/map-collector.d.ts.map +1 -0
- package/dist/mcp/tools/map-collector.js +249 -0
- package/dist/mcp/tools/map-collector.js.map +1 -0
- package/dist/mcp/tools/map.d.ts +7 -0
- package/dist/mcp/tools/map.d.ts.map +1 -0
- package/dist/mcp/tools/map.js +154 -0
- package/dist/mcp/tools/map.js.map +1 -0
- package/dist/mcp/tools/monitor-pause.d.ts +3 -0
- package/dist/mcp/tools/monitor-pause.d.ts.map +1 -0
- package/dist/mcp/tools/monitor-pause.js +16 -0
- package/dist/mcp/tools/monitor-pause.js.map +1 -0
- package/dist/mcp/tools/monitor-resume.d.ts +3 -0
- package/dist/mcp/tools/monitor-resume.d.ts.map +1 -0
- package/dist/mcp/tools/monitor-resume.js +16 -0
- package/dist/mcp/tools/monitor-resume.js.map +1 -0
- package/dist/mcp/tools/monitor-start.d.ts +3 -0
- package/dist/mcp/tools/monitor-start.d.ts.map +1 -0
- package/dist/mcp/tools/monitor-start.js +18 -0
- package/dist/mcp/tools/monitor-start.js.map +1 -0
- package/dist/mcp/tools/monitor-stop.d.ts +3 -0
- package/dist/mcp/tools/monitor-stop.d.ts.map +1 -0
- package/dist/mcp/tools/monitor-stop.js +16 -0
- package/dist/mcp/tools/monitor-stop.js.map +1 -0
- package/dist/mcp/tools/precision-live.d.ts +20 -0
- package/dist/mcp/tools/precision-live.d.ts.map +1 -0
- package/dist/mcp/tools/precision-live.js +105 -0
- package/dist/mcp/tools/precision-live.js.map +1 -0
- package/dist/mcp/tools/precision-match.d.ts +21 -0
- package/dist/mcp/tools/precision-match.d.ts.map +1 -0
- package/dist/mcp/tools/precision-match.js +46 -0
- package/dist/mcp/tools/precision-match.js.map +1 -0
- package/dist/mcp/tools/precision-paths.d.ts +7 -0
- package/dist/mcp/tools/precision-paths.d.ts.map +1 -0
- package/dist/mcp/tools/precision-paths.js +53 -0
- package/dist/mcp/tools/precision-paths.js.map +1 -0
- package/dist/mcp/tools/precision-query.d.ts +38 -0
- package/dist/mcp/tools/precision-query.d.ts.map +1 -0
- package/dist/mcp/tools/precision-query.js +116 -0
- package/dist/mcp/tools/precision-query.js.map +1 -0
- package/dist/mcp/tools/precision-show.d.ts +15 -0
- package/dist/mcp/tools/precision-show.d.ts.map +1 -0
- package/dist/mcp/tools/precision-show.js +46 -0
- package/dist/mcp/tools/precision-show.js.map +1 -0
- package/dist/mcp/tools/precision-visibility.d.ts +10 -0
- package/dist/mcp/tools/precision-visibility.d.ts.map +1 -0
- package/dist/mcp/tools/precision-visibility.js +24 -0
- package/dist/mcp/tools/precision-visibility.js.map +1 -0
- package/dist/mcp/tools/precision-warp.d.ts +6 -0
- package/dist/mcp/tools/precision-warp.d.ts.map +1 -0
- package/dist/mcp/tools/precision-warp.js +76 -0
- package/dist/mcp/tools/precision-warp.js.map +1 -0
- package/dist/mcp/tools/precision.d.ts +7 -0
- package/dist/mcp/tools/precision.d.ts.map +1 -0
- package/dist/mcp/tools/precision.js +6 -0
- package/dist/mcp/tools/precision.js.map +1 -0
- package/dist/mcp/tools/read-range.d.ts +3 -0
- package/dist/mcp/tools/read-range.d.ts.map +1 -0
- package/dist/mcp/tools/read-range.js +26 -0
- package/dist/mcp/tools/read-range.js.map +1 -0
- package/dist/mcp/tools/run-capture.d.ts +3 -0
- package/dist/mcp/tools/run-capture.d.ts.map +1 -0
- package/dist/mcp/tools/run-capture.js +125 -0
- package/dist/mcp/tools/run-capture.js.map +1 -0
- package/dist/mcp/tools/safe-read.d.ts +3 -0
- package/dist/mcp/tools/safe-read.d.ts.map +1 -0
- package/dist/mcp/tools/safe-read.js +133 -0
- package/dist/mcp/tools/safe-read.js.map +1 -0
- package/dist/mcp/tools/since.d.ts +3 -0
- package/dist/mcp/tools/since.d.ts.map +1 -0
- package/dist/mcp/tools/since.js +46 -0
- package/dist/mcp/tools/since.js.map +1 -0
- package/dist/mcp/tools/state.d.ts +4 -0
- package/dist/mcp/tools/state.d.ts.map +1 -0
- package/dist/mcp/tools/state.js +35 -0
- package/dist/mcp/tools/state.js.map +1 -0
- package/dist/mcp/tools/stats.d.ts +3 -0
- package/dist/mcp/tools/stats.d.ts.map +1 -0
- package/dist/mcp/tools/stats.js +22 -0
- package/dist/mcp/tools/stats.js.map +1 -0
- package/dist/mcp/tools/workspace-authorizations.d.ts +3 -0
- package/dist/mcp/tools/workspace-authorizations.d.ts.map +1 -0
- package/dist/mcp/tools/workspace-authorizations.js +12 -0
- package/dist/mcp/tools/workspace-authorizations.js.map +1 -0
- package/dist/mcp/tools/workspace-authorize.d.ts +3 -0
- package/dist/mcp/tools/workspace-authorize.d.ts.map +1 -0
- package/dist/mcp/tools/workspace-authorize.js +18 -0
- package/dist/mcp/tools/workspace-authorize.js.map +1 -0
- package/dist/mcp/tools/workspace-bind.d.ts +3 -0
- package/dist/mcp/tools/workspace-bind.d.ts.map +1 -0
- package/dist/mcp/tools/workspace-bind.js +23 -0
- package/dist/mcp/tools/workspace-bind.js.map +1 -0
- package/dist/mcp/tools/workspace-rebind.d.ts +3 -0
- package/dist/mcp/tools/workspace-rebind.d.ts.map +1 -0
- package/dist/mcp/tools/workspace-rebind.js +23 -0
- package/dist/mcp/tools/workspace-rebind.js.map +1 -0
- package/dist/mcp/tools/workspace-revoke.d.ts +3 -0
- package/dist/mcp/tools/workspace-revoke.d.ts.map +1 -0
- package/dist/mcp/tools/workspace-revoke.js +16 -0
- package/dist/mcp/tools/workspace-revoke.js.map +1 -0
- package/dist/mcp/tools/workspace-status.d.ts +3 -0
- package/dist/mcp/tools/workspace-status.d.ts.map +1 -0
- package/dist/mcp/tools/workspace-status.js +10 -0
- package/dist/mcp/tools/workspace-status.js.map +1 -0
- package/dist/mcp/warp-pool.d.ts +13 -0
- package/dist/mcp/warp-pool.d.ts.map +1 -0
- package/dist/mcp/warp-pool.js +30 -0
- package/dist/mcp/warp-pool.js.map +1 -0
- package/dist/mcp/workspace-read-observation-model.d.ts +34 -0
- package/dist/mcp/workspace-read-observation-model.d.ts.map +1 -0
- package/dist/mcp/workspace-read-observation-model.js +35 -0
- package/dist/mcp/workspace-read-observation-model.js.map +1 -0
- package/dist/mcp/workspace-read-observation.d.ts +19 -0
- package/dist/mcp/workspace-read-observation.d.ts.map +1 -0
- package/dist/mcp/workspace-read-observation.js +71 -0
- package/dist/mcp/workspace-read-observation.js.map +1 -0
- package/dist/mcp/workspace-router-capability.d.ts +14 -0
- package/dist/mcp/workspace-router-capability.d.ts.map +1 -0
- package/dist/mcp/workspace-router-capability.js +22 -0
- package/dist/mcp/workspace-router-capability.js.map +1 -0
- package/dist/mcp/workspace-router-history.d.ts +65 -0
- package/dist/mcp/workspace-router-history.d.ts.map +1 -0
- package/dist/mcp/workspace-router-history.js +142 -0
- package/dist/mcp/workspace-router-history.js.map +1 -0
- package/dist/mcp/workspace-router-model.d.ts +96 -0
- package/dist/mcp/workspace-router-model.d.ts.map +1 -0
- package/dist/mcp/workspace-router-model.js +31 -0
- package/dist/mcp/workspace-router-model.js.map +1 -0
- package/dist/mcp/workspace-router-resolution.d.ts +10 -0
- package/dist/mcp/workspace-router-resolution.d.ts.map +1 -0
- package/dist/mcp/workspace-router-resolution.js +56 -0
- package/dist/mcp/workspace-router-resolution.js.map +1 -0
- package/dist/mcp/workspace-router-runtime.d.ts +79 -0
- package/dist/mcp/workspace-router-runtime.d.ts.map +1 -0
- package/dist/mcp/workspace-router-runtime.js +126 -0
- package/dist/mcp/workspace-router-runtime.js.map +1 -0
- package/dist/mcp/workspace-router.d.ts +72 -0
- package/dist/mcp/workspace-router.d.ts.map +1 -0
- package/dist/mcp/workspace-router.js +494 -0
- package/dist/mcp/workspace-router.js.map +1 -0
- package/dist/metrics/logger.d.ts +14 -0
- package/dist/metrics/logger.d.ts.map +1 -0
- package/dist/metrics/logger.js +30 -0
- package/dist/metrics/logger.js.map +1 -0
- package/dist/metrics/types.d.ts +25 -0
- package/dist/metrics/types.d.ts.map +1 -0
- package/dist/metrics/types.js +28 -0
- package/dist/metrics/types.js.map +1 -0
- package/dist/operations/cached-file.d.ts +24 -0
- package/dist/operations/cached-file.d.ts.map +1 -0
- package/dist/operations/cached-file.js +37 -0
- package/dist/operations/cached-file.js.map +1 -0
- package/dist/operations/diff-identity.d.ts +32 -0
- package/dist/operations/diff-identity.d.ts.map +1 -0
- package/dist/operations/diff-identity.js +93 -0
- package/dist/operations/diff-identity.js.map +1 -0
- package/dist/operations/file-outline.d.ts +15 -0
- package/dist/operations/file-outline.d.ts.map +1 -0
- package/dist/operations/file-outline.js +32 -0
- package/dist/operations/file-outline.js.map +1 -0
- package/dist/operations/graft-diff.d.ts +43 -0
- package/dist/operations/graft-diff.d.ts.map +1 -0
- package/dist/operations/graft-diff.js +115 -0
- package/dist/operations/graft-diff.js.map +1 -0
- package/dist/operations/observation-cache.d.ts +64 -0
- package/dist/operations/observation-cache.d.ts.map +1 -0
- package/dist/operations/observation-cache.js +104 -0
- package/dist/operations/observation-cache.js.map +1 -0
- package/dist/operations/read-range.d.ts +14 -0
- package/dist/operations/read-range.d.ts.map +1 -0
- package/dist/operations/read-range.js +41 -0
- package/dist/operations/read-range.js.map +1 -0
- package/dist/operations/repo-workspace.d.ts +114 -0
- package/dist/operations/repo-workspace.d.ts.map +1 -0
- package/dist/operations/repo-workspace.js +228 -0
- package/dist/operations/repo-workspace.js.map +1 -0
- package/dist/operations/result-dto.d.ts +10 -0
- package/dist/operations/result-dto.d.ts.map +1 -0
- package/dist/operations/result-dto.js +21 -0
- package/dist/operations/result-dto.js.map +1 -0
- package/dist/operations/safe-read.d.ts +35 -0
- package/dist/operations/safe-read.d.ts.map +1 -0
- package/dist/operations/safe-read.js +75 -0
- package/dist/operations/safe-read.js.map +1 -0
- package/dist/operations/state.d.ts +25 -0
- package/dist/operations/state.d.ts.map +1 -0
- package/dist/operations/state.js +47 -0
- package/dist/operations/state.js.map +1 -0
- package/dist/operations/structured-buffer-compare.d.ts +5 -0
- package/dist/operations/structured-buffer-compare.d.ts.map +1 -0
- package/dist/operations/structured-buffer-compare.js +392 -0
- package/dist/operations/structured-buffer-compare.js.map +1 -0
- package/dist/operations/structured-buffer-model.d.ts +232 -0
- package/dist/operations/structured-buffer-model.d.ts.map +1 -0
- package/dist/operations/structured-buffer-model.js +175 -0
- package/dist/operations/structured-buffer-model.js.map +1 -0
- package/dist/operations/structured-buffer-query.d.ts +24 -0
- package/dist/operations/structured-buffer-query.d.ts.map +1 -0
- package/dist/operations/structured-buffer-query.js +690 -0
- package/dist/operations/structured-buffer-query.js.map +1 -0
- package/dist/operations/structured-buffer.d.ts +43 -0
- package/dist/operations/structured-buffer.d.ts.map +1 -0
- package/dist/operations/structured-buffer.js +96 -0
- package/dist/operations/structured-buffer.js.map +1 -0
- package/dist/parser/diff.d.ts +63 -0
- package/dist/parser/diff.d.ts.map +1 -0
- package/dist/parser/diff.js +259 -0
- package/dist/parser/diff.js.map +1 -0
- package/dist/parser/lang.d.ts +17 -0
- package/dist/parser/lang.d.ts.map +1 -0
- package/dist/parser/lang.js +51 -0
- package/dist/parser/lang.js.map +1 -0
- package/dist/parser/markdown.d.ts +3 -0
- package/dist/parser/markdown.d.ts.map +1 -0
- package/dist/parser/markdown.js +168 -0
- package/dist/parser/markdown.js.map +1 -0
- package/dist/parser/outline.d.ts +12 -0
- package/dist/parser/outline.d.ts.map +1 -0
- package/dist/parser/outline.js +251 -0
- package/dist/parser/outline.js.map +1 -0
- package/dist/parser/runtime.d.ts +13 -0
- package/dist/parser/runtime.d.ts.map +1 -0
- package/dist/parser/runtime.js +43 -0
- package/dist/parser/runtime.js.map +1 -0
- package/dist/parser/types.d.ts +41 -0
- package/dist/parser/types.d.ts.map +1 -0
- package/dist/parser/types.js +46 -0
- package/dist/parser/types.js.map +1 -0
- package/dist/policy/evaluate.d.ts +8 -0
- package/dist/policy/evaluate.d.ts.map +1 -0
- package/dist/policy/evaluate.js +153 -0
- package/dist/policy/evaluate.js.map +1 -0
- package/dist/policy/graftignore.d.ts +2 -0
- package/dist/policy/graftignore.d.ts.map +1 -0
- package/dist/policy/graftignore.js +7 -0
- package/dist/policy/graftignore.js.map +1 -0
- package/dist/policy/types.d.ts +104 -0
- package/dist/policy/types.d.ts.map +1 -0
- package/dist/policy/types.js +49 -0
- package/dist/policy/types.js.map +1 -0
- package/dist/ports/codec.d.ts +10 -0
- package/dist/ports/codec.d.ts.map +1 -0
- package/dist/ports/codec.js +5 -0
- package/dist/ports/codec.js.map +1 -0
- package/dist/ports/filesystem.d.ts +19 -0
- package/dist/ports/filesystem.d.ts.map +1 -0
- package/dist/ports/filesystem.js +5 -0
- package/dist/ports/filesystem.js.map +1 -0
- package/dist/ports/git.d.ts +11 -0
- package/dist/ports/git.d.ts.map +1 -0
- package/dist/ports/git.js +5 -0
- package/dist/ports/git.js.map +1 -0
- package/dist/ports/guards.d.ts +15 -0
- package/dist/ports/guards.d.ts.map +1 -0
- package/dist/ports/guards.js +43 -0
- package/dist/ports/guards.js.map +1 -0
- package/dist/ports/process-runner.d.ts +17 -0
- package/dist/ports/process-runner.d.ts.map +1 -0
- package/dist/ports/process-runner.js +5 -0
- package/dist/ports/process-runner.js.map +1 -0
- package/dist/ports/warp.d.ts +45 -0
- package/dist/ports/warp.d.ts.map +1 -0
- package/dist/ports/warp.js +5 -0
- package/dist/ports/warp.js.map +1 -0
- package/dist/release/security-gate.d.ts +24 -0
- package/dist/release/security-gate.d.ts.map +1 -0
- package/dist/release/security-gate.js +69 -0
- package/dist/release/security-gate.js.map +1 -0
- package/dist/session/tracker.d.ts +36 -0
- package/dist/session/tracker.d.ts.map +1 -0
- package/dist/session/tracker.js +113 -0
- package/dist/session/tracker.js.map +1 -0
- package/dist/session/types.d.ts +14 -0
- package/dist/session/types.d.ts.map +1 -0
- package/dist/session/types.js +18 -0
- package/dist/session/types.js.map +1 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +3 -0
- package/dist/version.js.map +1 -0
- package/dist/warp/identity-resolver.d.ts +14 -0
- package/dist/warp/identity-resolver.d.ts.map +1 -0
- package/dist/warp/identity-resolver.js +31 -0
- package/dist/warp/identity-resolver.js.map +1 -0
- package/dist/warp/indexer-git.d.ts +22 -0
- package/dist/warp/indexer-git.d.ts.map +1 -0
- package/dist/warp/indexer-git.js +148 -0
- package/dist/warp/indexer-git.js.map +1 -0
- package/dist/warp/indexer-graph.d.ts +17 -0
- package/dist/warp/indexer-graph.d.ts.map +1 -0
- package/dist/warp/indexer-graph.js +179 -0
- package/dist/warp/indexer-graph.js.map +1 -0
- package/dist/warp/indexer-model.d.ts +51 -0
- package/dist/warp/indexer-model.d.ts.map +1 -0
- package/dist/warp/indexer-model.js +21 -0
- package/dist/warp/indexer-model.js.map +1 -0
- package/dist/warp/indexer.d.ts +9 -0
- package/dist/warp/indexer.d.ts.map +1 -0
- package/dist/warp/indexer.js +112 -0
- package/dist/warp/indexer.js.map +1 -0
- package/dist/warp/observers.d.ts +54 -0
- package/dist/warp/observers.d.ts.map +1 -0
- package/dist/warp/observers.js +88 -0
- package/dist/warp/observers.js.map +1 -0
- package/dist/warp/open.d.ts +15 -0
- package/dist/warp/open.d.ts.map +1 -0
- package/dist/warp/open.js +67 -0
- package/dist/warp/open.js.map +1 -0
- package/dist/warp/symbol-identity.d.ts +11 -0
- package/dist/warp/symbol-identity.d.ts.map +1 -0
- package/dist/warp/symbol-identity.js +67 -0
- package/dist/warp/symbol-identity.js.map +1 -0
- package/dist/warp/writer-id.d.ts +5 -0
- package/dist/warp/writer-id.d.ts.map +1 -0
- package/dist/warp/writer-id.js +25 -0
- package/dist/warp/writer-id.js.map +1 -0
- package/docs/CLI.md +65 -0
- package/docs/MCP.md +63 -0
- package/package.json +31 -4
- package/src/adapters/node-fs.ts +4 -0
- package/src/adapters/node-git.ts +47 -0
- package/src/adapters/node-process-runner.ts +27 -0
- package/src/adapters/repo-paths.ts +22 -0
- package/src/adapters/rotating-ndjson-log.ts +66 -0
- package/src/api/index.ts +107 -0
- package/src/api/repo-local-graft.ts +21 -0
- package/src/api/repo-workspace.ts +34 -0
- package/src/api/tool-bridge.ts +21 -0
- package/src/cli/activity-render.ts +112 -0
- package/src/cli/cli-error.ts +153 -0
- package/src/cli/command-parser.ts +302 -0
- package/src/cli/entrypoint.ts +18 -0
- package/src/cli/index-cmd.ts +83 -11
- package/src/cli/index-model.ts +76 -0
- package/src/cli/init-bootstrap.ts +47 -0
- package/src/cli/init-client-config.ts +299 -0
- package/src/cli/init-model.ts +229 -0
- package/src/cli/init-render.ts +54 -0
- package/src/cli/init-target-hooks.ts +93 -0
- package/src/cli/init.ts +82 -72
- package/src/cli/json-document.ts +144 -0
- package/src/cli/local-history-dag-model.ts +437 -0
- package/src/cli/local-history-dag-render.ts +133 -0
- package/src/cli/local-history-dag.ts +103 -0
- package/src/cli/main.ts +150 -0
- package/src/cli/migrate-local-history.ts +118 -0
- package/src/cli/peer-command.ts +59 -0
- package/src/contracts/capabilities.ts +450 -0
- package/src/contracts/causal-ontology.ts +627 -0
- package/src/contracts/causal-surface-next-action.ts +18 -0
- package/src/contracts/json-object.ts +28 -0
- package/src/contracts/mcp-runtime.ts +16 -0
- package/src/contracts/output-schema-cli.ts +70 -0
- package/src/contracts/output-schema-fragments.ts +831 -0
- package/src/contracts/output-schema-mcp.ts +282 -0
- package/src/contracts/output-schema-meta.ts +119 -0
- package/src/contracts/output-schemas.ts +1230 -0
- package/src/git/diff.ts +25 -21
- package/src/git/target-git-hook-bootstrap.ts +56 -0
- package/src/hooks/posttooluse-read.ts +21 -74
- package/src/hooks/pretooluse-read.ts +20 -56
- package/src/hooks/read-governor.ts +95 -0
- package/src/hooks/read-messages.ts +53 -0
- package/src/index.ts +1 -0
- package/src/mcp/burden.ts +123 -0
- package/src/mcp/cache.ts +7 -94
- package/src/mcp/cached-file.ts +1 -38
- package/src/mcp/context.ts +147 -14
- package/src/mcp/control-plane/authz-storage.ts +129 -0
- package/src/mcp/control-plane/session-registry.ts +115 -0
- package/src/mcp/control-plane/status-projection.ts +76 -0
- package/src/mcp/control-plane/types.ts +144 -0
- package/src/mcp/daemon-bootstrap.ts +100 -0
- package/src/mcp/daemon-control-plane.ts +310 -0
- package/src/mcp/daemon-job-scheduler.ts +279 -0
- package/src/mcp/daemon-repos.ts +99 -0
- package/src/mcp/daemon-server.ts +165 -0
- package/src/mcp/daemon-session-host.ts +230 -0
- package/src/mcp/daemon-stdio-bridge.ts +260 -0
- package/src/mcp/daemon-worker-child-pool.ts +213 -0
- package/src/mcp/daemon-worker-inline-pool.ts +46 -0
- package/src/mcp/daemon-worker-pool.ts +7 -0
- package/src/mcp/daemon-worker-process.ts +52 -0
- package/src/mcp/daemon-worker-types.ts +66 -0
- package/src/mcp/metrics.ts +127 -4
- package/src/mcp/monitor-health.ts +83 -0
- package/src/mcp/monitor-persistence.ts +54 -0
- package/src/mcp/monitor-tick-job.ts +102 -0
- package/src/mcp/monitor-types.ts +103 -0
- package/src/mcp/persisted-local-history-graph.ts +591 -0
- package/src/mcp/persisted-local-history-policy.ts +501 -0
- package/src/mcp/persisted-local-history-views.ts +250 -0
- package/src/mcp/persisted-local-history.ts +1621 -0
- package/src/mcp/persistent-monitor-runtime.ts +445 -0
- package/src/mcp/policy.ts +75 -0
- package/src/mcp/receipt.ts +136 -18
- package/src/mcp/repo-concurrency.ts +392 -0
- package/src/mcp/repo-overview/filter.ts +44 -0
- package/src/mcp/repo-overview/types.ts +63 -0
- package/src/mcp/repo-overview/view-projection.ts +90 -0
- package/src/mcp/repo-state-git.ts +247 -0
- package/src/mcp/repo-state-observation.ts +203 -0
- package/src/mcp/repo-state-transition.ts +151 -0
- package/src/mcp/repo-state-types.ts +107 -0
- package/src/mcp/repo-state.ts +146 -0
- package/src/mcp/repo-tool-job.ts +102 -0
- package/src/mcp/repo-tool-worker-context.ts +212 -0
- package/src/mcp/repo-workspace.ts +21 -0
- package/src/mcp/run-capture-config.ts +33 -0
- package/src/mcp/runtime-causal-context.ts +72 -0
- package/src/mcp/runtime-observability.ts +217 -0
- package/src/mcp/runtime-staged-target.ts +161 -0
- package/src/mcp/runtime-workspace-overlay.ts +255 -0
- package/src/mcp/secret-scrub.ts +89 -0
- package/src/mcp/semantic-transition-guidance.ts +60 -0
- package/src/mcp/semantic-transition-summary.ts +130 -0
- package/src/mcp/server-context.ts +223 -0
- package/src/mcp/server-invocation.ts +388 -0
- package/src/mcp/server-tool-access.ts +145 -0
- package/src/mcp/server.ts +207 -126
- package/src/mcp/stdio-server.ts +26 -0
- package/src/mcp/stdio.ts +2 -5
- package/src/mcp/tool-registry.ts +80 -0
- package/src/mcp/tools/activity-view.ts +325 -0
- package/src/mcp/tools/budget.ts +10 -7
- package/src/mcp/tools/causal-attach.ts +67 -0
- package/src/mcp/tools/causal-status.ts +58 -0
- package/src/mcp/tools/changed-since.ts +16 -13
- package/src/mcp/tools/code-find.ts +169 -0
- package/src/mcp/tools/code-refs.ts +470 -0
- package/src/mcp/tools/code-show.ts +262 -0
- package/src/mcp/tools/daemon-monitors.ts +14 -0
- package/src/mcp/tools/daemon-repos.ts +22 -0
- package/src/mcp/tools/daemon-sessions.ts +14 -0
- package/src/mcp/tools/daemon-status.ts +12 -0
- package/src/mcp/tools/diagnostic-models.ts +95 -0
- package/src/mcp/tools/doctor.ts +54 -8
- package/src/mcp/tools/explain.ts +7 -3
- package/src/mcp/tools/file-outline.ts +17 -7
- package/src/mcp/tools/git-files.ts +73 -0
- package/src/mcp/tools/graft-diff.ts +17 -6
- package/src/mcp/tools/map-collector.ts +338 -0
- package/src/mcp/tools/map.ts +142 -39
- package/src/mcp/tools/monitor-pause.ts +18 -0
- package/src/mcp/tools/monitor-resume.ts +18 -0
- package/src/mcp/tools/monitor-start.ts +20 -0
- package/src/mcp/tools/monitor-stop.ts +18 -0
- package/src/mcp/tools/precision-live.ts +158 -0
- package/src/mcp/tools/precision-match.ts +54 -0
- package/src/mcp/tools/precision-paths.ts +59 -0
- package/src/mcp/tools/precision-query.ts +127 -0
- package/src/mcp/tools/precision-show.ts +86 -0
- package/src/mcp/tools/precision-visibility.ts +44 -0
- package/src/mcp/tools/precision-warp.ts +90 -0
- package/src/mcp/tools/precision.ts +21 -0
- package/src/mcp/tools/read-range.ts +12 -5
- package/src/mcp/tools/run-capture.ts +128 -46
- package/src/mcp/tools/safe-read.ts +33 -20
- package/src/mcp/tools/since.ts +13 -4
- package/src/mcp/tools/state.ts +19 -10
- package/src/mcp/tools/stats.ts +8 -4
- package/src/mcp/tools/workspace-authorizations.ts +14 -0
- package/src/mcp/tools/workspace-authorize.ts +20 -0
- package/src/mcp/tools/workspace-bind.ts +25 -0
- package/src/mcp/tools/workspace-rebind.ts +25 -0
- package/src/mcp/tools/workspace-revoke.ts +18 -0
- package/src/mcp/tools/workspace-status.ts +12 -0
- package/src/mcp/warp-pool.ts +36 -0
- package/src/mcp/workspace-read-observation-model.ts +48 -0
- package/src/mcp/workspace-read-observation.ts +103 -0
- package/src/mcp/workspace-router-capability.ts +32 -0
- package/src/mcp/workspace-router-history.ts +233 -0
- package/src/mcp/workspace-router-model.ts +131 -0
- package/src/mcp/workspace-router-resolution.ts +71 -0
- package/src/mcp/workspace-router-runtime.ts +243 -0
- package/src/mcp/workspace-router.ts +681 -0
- package/src/metrics/logger.ts +22 -51
- package/src/metrics/types.ts +32 -4
- package/src/operations/cached-file.ts +40 -0
- package/src/operations/diff-identity.ts +127 -0
- package/src/operations/file-outline.ts +13 -3
- package/src/operations/graft-diff.ts +56 -11
- package/src/operations/observation-cache.ts +149 -0
- package/src/operations/read-range.ts +0 -1
- package/src/operations/repo-workspace.ts +339 -0
- package/src/operations/result-dto.ts +23 -0
- package/src/operations/safe-read.ts +30 -8
- package/src/operations/state.ts +48 -15
- package/src/operations/structured-buffer-compare.ts +429 -0
- package/src/operations/structured-buffer-model.ts +456 -0
- package/src/operations/structured-buffer-query.ts +794 -0
- package/src/operations/structured-buffer.ts +181 -0
- package/src/parser/diff.ts +172 -1
- package/src/parser/lang.ts +66 -7
- package/src/parser/markdown.ts +197 -0
- package/src/parser/outline.ts +27 -38
- package/src/parser/runtime.ts +71 -0
- package/src/parser/types.ts +9 -1
- package/src/policy/evaluate.ts +2 -2
- package/src/policy/types.ts +12 -11
- package/src/ports/filesystem.ts +1 -0
- package/src/ports/git.ts +16 -0
- package/src/ports/guards.ts +68 -0
- package/src/ports/process-runner.ts +22 -0
- package/src/ports/warp.ts +55 -0
- package/src/release/security-gate.ts +102 -0
- package/src/session/tracker.ts +34 -3
- package/src/session/types.ts +4 -1
- package/src/version.ts +3 -0
- package/src/warp/identity-resolver.ts +35 -0
- package/src/warp/indexer-git.ts +182 -0
- package/src/warp/indexer-graph.ts +276 -0
- package/src/warp/indexer-model.ts +69 -0
- package/src/warp/indexer.ts +141 -353
- package/src/warp/observers.ts +7 -12
- package/src/warp/open.ts +70 -7
- package/src/warp/plumbing.d.ts +5 -1
- package/src/warp/symbol-identity.ts +100 -0
- package/src/warp/writer-id.ts +30 -0
- package/docs/GUIDE.md +0 -388
package/ARCHITECTURE.md
ADDED
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# ARCHITECTURE
|
|
2
|
+
|
|
3
|
+
Graft is an industrial-grade context governor converging on a strict Hexagonal (Ports and Adapters) architecture.
|
|
4
|
+
|
|
5
|
+
Repo truth today is narrower than a finished strict-hex claim:
|
|
6
|
+
|
|
7
|
+
- explicit ports and adapters exist
|
|
8
|
+
- foundational dependency guardrails are mechanically enforced
|
|
9
|
+
- primary adapters and composition roots are still mid-migration
|
|
10
|
+
- WARP is still becoming a first-class port boundary rather than an ambient capability
|
|
11
|
+
|
|
12
|
+
## Official Entry Points
|
|
13
|
+
|
|
14
|
+
Graft now has three official product entry points:
|
|
15
|
+
|
|
16
|
+
1. **API** — the direct package/library surface exported from the root
|
|
17
|
+
package entry point
|
|
18
|
+
2. **CLI** — the operator and debugging surface
|
|
19
|
+
3. **MCP** — the agent transport surface
|
|
20
|
+
|
|
21
|
+
Repo truth today:
|
|
22
|
+
|
|
23
|
+
- API is first-class, not a side door
|
|
24
|
+
- CLI and MCP remain primary adapters
|
|
25
|
+
- not every capability is symmetric across all three entry points yet
|
|
26
|
+
- every capability should explicitly declare which entry points it is
|
|
27
|
+
available on and, for API, whether the exposure is a direct typed
|
|
28
|
+
surface or an MCP-style tool bridge
|
|
29
|
+
|
|
30
|
+
The convergence target is:
|
|
31
|
+
|
|
32
|
+
- one application core
|
|
33
|
+
- three thin primary adapters
|
|
34
|
+
- explicit surface metadata and invariants
|
|
35
|
+
- capability parity where parity is intended, with narrow documented
|
|
36
|
+
exceptions where it is not
|
|
37
|
+
|
|
38
|
+
## Repo Topology
|
|
39
|
+
|
|
40
|
+
The source tree should make the three entry points visible:
|
|
41
|
+
|
|
42
|
+
- `src/api/` is the API primary adapter home
|
|
43
|
+
- `src/cli/` is the CLI primary adapter home
|
|
44
|
+
- `src/mcp/` is the MCP primary adapter home
|
|
45
|
+
|
|
46
|
+
The package export root is:
|
|
47
|
+
|
|
48
|
+
- `src/index.ts`
|
|
49
|
+
|
|
50
|
+
That root file is intentionally thinner than the adapter homes. It is
|
|
51
|
+
the public package entrypoint, not the place where API behavior should
|
|
52
|
+
accumulate.
|
|
53
|
+
|
|
54
|
+
Supporting roles stay explicit too:
|
|
55
|
+
|
|
56
|
+
- `src/hooks/` is an adjunct entrypoint for local automation and
|
|
57
|
+
governance, not one of the three official product surfaces
|
|
58
|
+
- `src/operations/`, `src/policy/`, `src/session/`, `src/git/`,
|
|
59
|
+
`src/metrics/`, and `src/release/` are the current application/core
|
|
60
|
+
areas
|
|
61
|
+
- `src/contracts/`, `src/ports/`, `src/guards/`, and `src/format/`
|
|
62
|
+
carry foundational contracts and helpers
|
|
63
|
+
- `src/adapters/`, `src/parser/`, and `src/warp/` remain secondary
|
|
64
|
+
adapters or infrastructure bindings
|
|
65
|
+
|
|
66
|
+
See [docs/repo-topology.md](./docs/repo-topology.md) for the repo-local
|
|
67
|
+
topology contract.
|
|
68
|
+
|
|
69
|
+
## Core Boundary
|
|
70
|
+
|
|
71
|
+
The Graft core is TypeScript. Platform-specific concerns are intended to enter through explicit secondary ports:
|
|
72
|
+
|
|
73
|
+
| Port | Responsibility | Official Adapter |
|
|
74
|
+
| :--- | :--- | :--- |
|
|
75
|
+
| **`FileSystem`** | Path resolution, file reads, directory creation | `nodeFs` |
|
|
76
|
+
| **`JsonCodec`** | Canonical JSON shaping and serialization | `CanonicalJsonCodec` |
|
|
77
|
+
| **`GitClient`** | Git history enumeration and status observation | `nodeGit` |
|
|
78
|
+
| **`ProcessRunner`** | Shell execution and diagnostic capture | `nodeProcessRunner` |
|
|
79
|
+
|
|
80
|
+
Primary adapters should sit above that core boundary:
|
|
81
|
+
|
|
82
|
+
| Primary Adapter | Responsibility |
|
|
83
|
+
| :--- | :--- |
|
|
84
|
+
| **API** | Direct typed package surface for in-process integrations |
|
|
85
|
+
| **CLI** | Human/operator command surface and scripting |
|
|
86
|
+
| **MCP** | Agent-facing transport surface with receipts and schemas |
|
|
87
|
+
|
|
88
|
+
The architecture rule is that none of these primary adapters own
|
|
89
|
+
business flow. They validate input, call application services, and
|
|
90
|
+
shape edge-specific output.
|
|
91
|
+
|
|
92
|
+
## Pipeline: From File to Governance
|
|
93
|
+
|
|
94
|
+
```mermaid
|
|
95
|
+
flowchart TD
|
|
96
|
+
subgraph Core["Graft Core (Policy)"]
|
|
97
|
+
P1[Read Governance]
|
|
98
|
+
P2[Budget / Session Caps]
|
|
99
|
+
end
|
|
100
|
+
subgraph Parser["Parser (Meaning)"]
|
|
101
|
+
PA1[Tree-Sitter WASM]
|
|
102
|
+
PA2[Structural Outlines / Diffs]
|
|
103
|
+
end
|
|
104
|
+
subgraph Host["Host (Execution)"]
|
|
105
|
+
H1[Daemon Authority]
|
|
106
|
+
H2[Worker Execution]
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
PA2 --> P1
|
|
110
|
+
P1 --> P2
|
|
111
|
+
P2 --> H1
|
|
112
|
+
H1 --> H2
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## Layered Worldline Model
|
|
116
|
+
|
|
117
|
+
Graft models repository state through three distinct layers:
|
|
118
|
+
|
|
119
|
+
1. **`commit_worldline`**: Durable structural history grounded in Git commits.
|
|
120
|
+
2. **`ref_view`**: Branch and reference comparisons over durable history.
|
|
121
|
+
3. **`workspace_overlay`**: The current dirty working tree and reactive edit signals.
|
|
122
|
+
|
|
123
|
+
## WARP: Structural Worldline Memory
|
|
124
|
+
|
|
125
|
+
### Write Path (Indexer)
|
|
126
|
+
The write path turns Git history into structural worldline facts by extracting AST outlines and writing them into the WARP graph.
|
|
127
|
+
|
|
128
|
+
### Read Path (Observers)
|
|
129
|
+
The read path uses the **Observer Law**: projections are read through lenses (e.g., `graft_diff`, `code_show`) rather than traversing graph internals directly.
|
|
130
|
+
|
|
131
|
+
## Execution Authority: The Daemon
|
|
132
|
+
|
|
133
|
+
The Daemon is the system-wide authority for multi-repo coordination. It manages:
|
|
134
|
+
- **Authorization**: Workspace and session binding.
|
|
135
|
+
- **Scheduling**: Job queueing and fairness.
|
|
136
|
+
- **Resources**: Shared worker pools for heavy indexing and parsing tasks.
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
**The goal is to move the repository from a collection of bytes to a provenance-aware professional bedrock.**
|
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,134 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/).
|
|
7
7
|
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
## [0.6.0] - 2026-04-18
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
|
|
14
|
+
- **Runtime port guards**: `assertFileSystem()`, `assertJsonCodec()`,
|
|
15
|
+
and `assertToolContext()` validate adapter contracts at construction
|
|
16
|
+
time. Plumbing conformance test catches drift against
|
|
17
|
+
`@git-stunts/plumbing`.
|
|
18
|
+
- **Secret scrubbing**: shared `scrubSecrets()` and
|
|
19
|
+
`sanitizeArgValues()` redact sensitive keys, truncate oversized
|
|
20
|
+
values, and scrub secret patterns across both `run_capture` output
|
|
21
|
+
and observability arg logging.
|
|
22
|
+
- **Path escape invariants**: dedicated test suite for traversal
|
|
23
|
+
attacks, symlink escapes, and root-confinement.
|
|
24
|
+
- **Worktree identity canonicalization**: `fs.realpathSync` resolves
|
|
25
|
+
path aliases (`/tmp` vs `/private/tmp`) before deriving workspace
|
|
26
|
+
IDs.
|
|
27
|
+
- **Tool-call provenance footprints**: `ToolCallFootprint` records
|
|
28
|
+
paths, symbols, and line regions per tool invocation. Read-family
|
|
29
|
+
and search tools instrumented.
|
|
30
|
+
- **Canonical symbol identity projection**: `graft_diff` and
|
|
31
|
+
`graft_since` enrich diff entries with `identityId` from WARP
|
|
32
|
+
`sid:*` anchors when indexed. Graceful degradation when unavailable.
|
|
33
|
+
- **Dynamic project root**: `GRAFT_PROJECT_ROOT` env var overrides
|
|
34
|
+
the default `process.cwd()` binding. Git root auto-detection
|
|
35
|
+
fallback.
|
|
36
|
+
- **Implicit daemon binding**: daemon-mode sessions auto-bind when
|
|
37
|
+
a repo-scoped tool is called with path evidence, removing the
|
|
38
|
+
mandatory `workspace_bind` step.
|
|
39
|
+
- **Attribution fallback hardening**: transport session, environment
|
|
40
|
+
inference (CI/CD, editor detection), and session continuity
|
|
41
|
+
strategies reduce `actor:unknown` to the exception path.
|
|
42
|
+
- **Anti-sludge policy**: semgrep rules and shell checks for
|
|
43
|
+
boundary discipline, banned patterns, and core-layer hygiene.
|
|
44
|
+
- **`toJsonObject()` DTO bridge**: universal serialization boundary
|
|
45
|
+
between typed operation results and `ctx.respond()`.
|
|
46
|
+
|
|
47
|
+
### Changed
|
|
48
|
+
|
|
49
|
+
- **Explicit execution context**: `ToolHandler` now receives `ctx`
|
|
50
|
+
as an explicit parameter `(args, ctx)` instead of closing over it
|
|
51
|
+
via `createHandler(ctx)`. `AsyncLocalStorage` removed from
|
|
52
|
+
execution context threading.
|
|
53
|
+
- **Session concept disambiguation**: `SessionTracker` renamed to
|
|
54
|
+
`GovernorTracker`, `RegisteredSession` to `RegisteredTransport`,
|
|
55
|
+
`WorkspaceSessionMode` to `WorkspaceMode`. Wire format preserved.
|
|
56
|
+
- **MCP composition decomposition**: `server.ts` split into barrel +
|
|
57
|
+
`server-context.ts` + `server-invocation.ts`. `repo-state.ts` into
|
|
58
|
+
4 sub-modules. `daemon-control-plane.ts` into `control-plane/`.
|
|
59
|
+
`daemon-repos.ts` into `repo-overview/`. `daemon-worker-pool.ts`
|
|
60
|
+
into 3 sub-modules. `persistent-monitor-runtime.ts` into 3
|
|
61
|
+
sub-modules. `workspace-router.ts` gains capability and history
|
|
62
|
+
sub-modules.
|
|
63
|
+
- **Parser decomposition**: markdown extraction split into
|
|
64
|
+
`src/parser/markdown.ts`. Parser reclassified as application module
|
|
65
|
+
(Layer 3) with enforced hex layer guardrails.
|
|
66
|
+
- **Result type hardening**: `MetricsSnapshot`, `MetricsDelta`,
|
|
67
|
+
`DecisionEntry`, `StateSaveResult`, `StateLoadResult` promoted to
|
|
68
|
+
runtime classes. `[key: string]: unknown` index signatures removed
|
|
69
|
+
from all operation results. Receipt builder uses mutable draft
|
|
70
|
+
instead of `as` casts.
|
|
71
|
+
- **`code_find` approximate discovery**: plain-text queries now use
|
|
72
|
+
case-insensitive exact/prefix/substring matching with deterministic
|
|
73
|
+
ranking.
|
|
74
|
+
- **Claude hook governed reads**: `PreToolUse` now redirects large
|
|
75
|
+
JS/TS native `Read` calls to graft's bounded-read path.
|
|
76
|
+
- **Codex bootstrap posture**: `graft init --write-codex-mcp` now
|
|
77
|
+
seeds `AGENTS.md` alongside `.codex/config.toml`.
|
|
78
|
+
- **MCP runtime observability**: sessions emit metadata-only events
|
|
79
|
+
to `.graft/logs/mcp-runtime.ndjson`, receipts carry `traceId` and
|
|
80
|
+
`latencyMs`.
|
|
81
|
+
- **Map tool collector extraction**: `map.ts` reduced from 328 to
|
|
82
|
+
52 lines; collection logic in `map-collector.ts`.
|
|
83
|
+
- **Typed diagnostic responses**: `DoctorResponse`, `StatsResponse`,
|
|
84
|
+
`ExplainResponse`, `SetBudgetResponse`, `RunCaptureResponse`.
|
|
85
|
+
|
|
86
|
+
### Fixed
|
|
87
|
+
|
|
88
|
+
- **Worktree identity drift on macOS**: `/tmp` and `/private/tmp`
|
|
89
|
+
aliases no longer produce different workspace IDs.
|
|
90
|
+
- **`GRAFT_PROJECT_ROOT` env var**: MCP servers no longer hardcoded
|
|
91
|
+
to their own repo path.
|
|
92
|
+
- **Path resolver security**: absolute paths now confined to project
|
|
93
|
+
root. Symlink escapes detected via `fs.realpathSync` double-check.
|
|
94
|
+
- **WARP symbol disambiguation**: `symNodeId` uses qualified names
|
|
95
|
+
(`Header.render` vs `Footer.render`) — same-named methods across
|
|
96
|
+
classes no longer collide.
|
|
97
|
+
- **WARP indexer error propagation**: `IndexResult` is a discriminated
|
|
98
|
+
union. Git failures propagate instead of producing silently empty
|
|
99
|
+
graphs.
|
|
100
|
+
- **Daemon session cleanup**: session directories removed on close
|
|
101
|
+
instead of leaking forever.
|
|
102
|
+
- **Rotating log preservation**: oversized entries preserved instead
|
|
103
|
+
of erasing the entire log during rotation.
|
|
104
|
+
- **`graft_map` output caps**: `MAX_MAP_FILES=100`, `MAX_MAP_BYTES=50000`
|
|
105
|
+
with automatic summary-only fallback. Budget-exhausted sessions get
|
|
106
|
+
compact `BUDGET_EXHAUSTED` response.
|
|
107
|
+
- **hono vulnerability**: override to >=4.12.14 patches HTML
|
|
108
|
+
injection in `hono/jsx` SSR (Dependabot alert #10).
|
|
109
|
+
|
|
110
|
+
## [0.5.0] - 2026-04-11
|
|
111
|
+
|
|
112
|
+
### Added
|
|
113
|
+
|
|
114
|
+
- **Between-commit activity view**: new bounded `activity_view` MCP
|
|
115
|
+
tool and `graft diag activity` CLI peer surface for inspecting
|
|
116
|
+
recent local `artifact_history` around the active causal workspace.
|
|
117
|
+
- **Persisted local history substrate**: continuity, attribution,
|
|
118
|
+
staged-target, transition, and recent read/stage activity now
|
|
119
|
+
survive across local sessions as bounded artifact history.
|
|
120
|
+
- **Same-repo concurrency posture**: bounded `repoConcurrency`
|
|
121
|
+
summaries and lawful same-worktree cross-session handoff semantics.
|
|
122
|
+
|
|
123
|
+
### Changed
|
|
124
|
+
|
|
125
|
+
- **Reactive workspace footing**: checkout-boundary footing, hook
|
|
126
|
+
posture, and forked-vs-stable lineage are now explicit product truth
|
|
127
|
+
instead of implied inference.
|
|
128
|
+
- **Semantic transitions**: bounded surfaces now summarize
|
|
129
|
+
`index_update`, `conflict_resolution`, `merge_phase`,
|
|
130
|
+
`rebase_phase`, `bulk_transition`, and lawful `unknown` with
|
|
131
|
+
transition-aware guidance.
|
|
132
|
+
- **Signpost docs**: README, GUIDE, BEARING, VISION, release notes,
|
|
133
|
+
and the new CLI/MCP/advanced signposts now reflect the 0.5.0
|
|
134
|
+
release cut.
|
|
135
|
+
|
|
8
136
|
## [0.4.0] - 2026-04-05
|
|
9
137
|
|
|
10
138
|
### Added
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Code of Conduct
|
|
2
|
+
|
|
3
|
+
Graft is a public developer tool project. Participation in this
|
|
4
|
+
repository, its issue tracker, pull requests, discussions, and other
|
|
5
|
+
project spaces should be respectful, constructive, and professional.
|
|
6
|
+
|
|
7
|
+
## Expected behavior
|
|
8
|
+
|
|
9
|
+
Participants are expected to:
|
|
10
|
+
|
|
11
|
+
- assume good intent while still being direct about technical concerns
|
|
12
|
+
- give feedback that is specific, evidence-based, and useful
|
|
13
|
+
- respect differences in experience level, background, and viewpoint
|
|
14
|
+
- keep disagreements focused on ideas, code, design, or process
|
|
15
|
+
- accept correction gracefully when impact is pointed out
|
|
16
|
+
|
|
17
|
+
## Unacceptable behavior
|
|
18
|
+
|
|
19
|
+
The following behavior is not acceptable in project spaces:
|
|
20
|
+
|
|
21
|
+
- harassment, intimidation, threats, or sustained hostility
|
|
22
|
+
- personal attacks, insults, or demeaning language
|
|
23
|
+
- discrimination based on personal characteristics or identity
|
|
24
|
+
- sexualized language or unwanted sexual attention
|
|
25
|
+
- doxxing, sharing private information, or encouraging others to do so
|
|
26
|
+
- trolling, deliberate disruption, or bad-faith escalation
|
|
27
|
+
- retaliation against someone who reports a conduct concern
|
|
28
|
+
|
|
29
|
+
## Scope
|
|
30
|
+
|
|
31
|
+
This code of conduct applies in:
|
|
32
|
+
|
|
33
|
+
- GitHub issues, pull requests, discussions, and reviews
|
|
34
|
+
- project chat or coordination spaces, if any
|
|
35
|
+
- any public interaction where someone is representing the Graft
|
|
36
|
+
project
|
|
37
|
+
|
|
38
|
+
## Reporting
|
|
39
|
+
|
|
40
|
+
If you experience or witness unacceptable behavior, report it to the
|
|
41
|
+
maintainer:
|
|
42
|
+
|
|
43
|
+
- `james@flyingrobots.dev`
|
|
44
|
+
|
|
45
|
+
Please include as much context as you can, including links, screenshots,
|
|
46
|
+
or timestamps when available.
|
|
47
|
+
|
|
48
|
+
## Enforcement
|
|
49
|
+
|
|
50
|
+
Reports will be reviewed promptly and handled as fairly as possible.
|
|
51
|
+
Responses may include:
|
|
52
|
+
|
|
53
|
+
- clarification or warning
|
|
54
|
+
- moderation of comments or discussion
|
|
55
|
+
- removal of content
|
|
56
|
+
- temporary or permanent exclusion from project spaces
|
|
57
|
+
|
|
58
|
+
The maintainer may take any action needed to protect participants and
|
|
59
|
+
the project.
|
|
60
|
+
|
|
61
|
+
## Project standard
|
|
62
|
+
|
|
63
|
+
This document is intentionally concise. The standard is simple: be
|
|
64
|
+
respectful, stay constructive, and do not make project participation
|
|
65
|
+
unsafe for other people.
|
package/README.md
CHANGED
|
@@ -1,170 +1,144 @@
|
|
|
1
|
-
|
|
2
|
-
<img src="./docs/assets/graft.svg" />
|
|
3
|
-
<h3>Context governor for coding agents</h3>
|
|
4
|
-
</div>
|
|
1
|
+
# Graft
|
|
5
2
|
|
|
6
|
-
Graft enforces read policy so
|
|
7
|
-
structurally correct view of a codebase instead of dumping entire
|
|
8
|
-
files into their context window. Agent-first, but the structural
|
|
9
|
-
tools (outlines, diffs, symbol history) are useful to anyone.
|
|
3
|
+
An industrial-grade context governor for coding agents. Graft enforces read policy so agents consume the smallest structurally correct view of a codebase instead of dumping raw files into their context window.
|
|
10
4
|
|
|
11
|
-
|
|
5
|
+
Graft is designed for the operator who demands precision and the architect who needs a stable foundation for agentic work. It scales from simple policy-aware reads to high-fidelity causal provenance tracking across multi-session worktrees.
|
|
12
6
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
other tools combined. 58% of reads are full-file. The fattest 2.4%
|
|
16
|
-
of reads produce 24% of raw bytes. Dynamic read caps + session
|
|
17
|
-
management reduce this by **75.1%**.
|
|
7
|
+
[](https://www.npmjs.com/package/@flyingrobots/graft)
|
|
8
|
+
[](./LICENSE)
|
|
18
9
|
|
|
19
|
-
|
|
10
|
+

|
|
20
11
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
12
|
+
## Why Graft?
|
|
13
|
+
|
|
14
|
+
Unlike simple file-scraping tools, Graft treats the repository as a layered worldline of code structure and causal activity.
|
|
15
|
+
|
|
16
|
+
- **Policy-Enforced Reads**: Automatically degrades large files to structural outlines and jump tables. Refuses binaries, secrets, and lockfiles with machine-readable reasons.
|
|
17
|
+
- **Machine-Readable Contracts**: Responses carry versioned `_schema` metadata and decision receipts so agents can reason about outcomes without scraping prose.
|
|
18
|
+
- **Structural Memory**: Uses WARP (Structural Worldline Memory) to track AST evolution across Git commits. Query what changed structurally without reading a single byte of source code.
|
|
19
|
+
- **Causal Provenance**: Tracks the *why* behind structural changes by logging read, stage, and transition activity into strand-scoped causal workspaces.
|
|
20
|
+
- **Industrial-Grade Daemon**: A same-user local runtime that manages multi-repo authorization, background indexing, and shared-machine worker pools.
|
|
24
21
|
|
|
25
|
-
|
|
22
|
+
## Quick Start
|
|
26
23
|
|
|
24
|
+
Graft has three official entry points:
|
|
25
|
+
|
|
26
|
+
- **API** for direct in-process integration
|
|
27
|
+
- **CLI** for operator and debugging workflows
|
|
28
|
+
- **MCP** for agent transport integration
|
|
29
|
+
|
|
30
|
+
### 1. Bootstrap a Repo
|
|
31
|
+
Scaffold `.graftignore`, setup git hooks, and seed agent instructions.
|
|
27
32
|
```bash
|
|
28
|
-
npx @flyingrobots/graft
|
|
33
|
+
npx @flyingrobots/graft init --write-claude-hooks --write-codex-mcp
|
|
29
34
|
```
|
|
30
35
|
|
|
31
|
-
|
|
36
|
+
### 2. Repo-Local Stdio MCP
|
|
37
|
+
This is the simplest per-repo path for most clients. The current
|
|
38
|
+
checkout is the authority, and there is no separate workspace binding
|
|
39
|
+
step.
|
|
40
|
+
```bash
|
|
41
|
+
npx @flyingrobots/graft serve
|
|
42
|
+
```
|
|
32
43
|
|
|
44
|
+
### 3. Standalone CLI
|
|
45
|
+
Enforce policy on a single read or inspect structural history.
|
|
33
46
|
```bash
|
|
34
|
-
|
|
47
|
+
npx @flyingrobots/graft read safe src/app.ts
|
|
48
|
+
npx @flyingrobots/graft struct since HEAD~3
|
|
35
49
|
```
|
|
36
50
|
|
|
37
|
-
|
|
51
|
+
### 4. Direct Library API
|
|
52
|
+
Embed Graft in-process when you want direct access without MCP transport
|
|
53
|
+
or CLI process orchestration.
|
|
54
|
+
```ts
|
|
55
|
+
import { createRepoLocalGraft, callGraftTool } from "@flyingrobots/graft";
|
|
38
56
|
|
|
39
|
-
|
|
40
|
-
|
|
57
|
+
const graft = createRepoLocalGraft({ cwd: process.cwd() });
|
|
58
|
+
const outline = await callGraftTool(graft, "file_outline", { path: "src/app.ts" });
|
|
41
59
|
```
|
|
42
60
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
61
|
+
This uses the same repo-local core as the CLI and MCP server, but it
|
|
62
|
+
lets host tools call Graft directly inside the same process.
|
|
63
|
+
|
|
64
|
+
When you want a direct repo-local read surface instead of tool receipts,
|
|
65
|
+
use the workspace API:
|
|
66
|
+
```ts
|
|
67
|
+
import { createRepoWorkspace } from "@flyingrobots/graft";
|
|
68
|
+
|
|
69
|
+
const workspace = await createRepoWorkspace({ cwd: process.cwd() });
|
|
70
|
+
const first = await workspace.safeRead({ path: "src/app.ts" });
|
|
71
|
+
const second = await workspace.safeRead({ path: "src/app.ts" });
|
|
72
|
+
const outline = await workspace.fileOutline({ path: "src/app.ts" });
|
|
58
73
|
```
|
|
59
74
|
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|---|---|
|
|
96
|
-
| `safe_read` | Policy-enforced file read (content, outline, refusal, or diff) |
|
|
97
|
-
| `file_outline` | Structural skeleton with jump table |
|
|
98
|
-
| `read_range` | Bounded range read (max 250 lines), policy-gated |
|
|
99
|
-
| `graft_diff` | Structural diff between git refs with per-file summary lines |
|
|
100
|
-
| `changed_since` | Check if a file changed since last read (peek or consume) |
|
|
101
|
-
| `run_capture` | Shell output capture — tee to log, tail to agent |
|
|
102
|
-
| `state_save` | Save session working state (max 8 KB) |
|
|
103
|
-
| `state_load` | Restore session working state |
|
|
104
|
-
| `set_budget` | Declare session byte budget — governor tightens as it drains |
|
|
105
|
-
| `explain` | Human-readable help for any reason code |
|
|
106
|
-
| `doctor` | Runtime health check |
|
|
107
|
-
| `stats` | Decision metrics summary |
|
|
108
|
-
|
|
109
|
-
## Claude Code hooks
|
|
110
|
-
|
|
111
|
-
Two hooks work alongside the MCP server to govern native `Read`
|
|
112
|
-
calls — a safety net for when agents bypass graft's tools:
|
|
113
|
-
|
|
114
|
-
```json
|
|
115
|
-
{
|
|
116
|
-
"hooks": {
|
|
117
|
-
"PreToolUse": [
|
|
118
|
-
{
|
|
119
|
-
"matcher": "Read",
|
|
120
|
-
"hooks": [
|
|
121
|
-
{
|
|
122
|
-
"type": "command",
|
|
123
|
-
"command": "node --import tsx node_modules/@flyingrobots/graft/src/hooks/pretooluse-read.ts"
|
|
124
|
-
}
|
|
125
|
-
]
|
|
126
|
-
}
|
|
127
|
-
],
|
|
128
|
-
"PostToolUse": [
|
|
129
|
-
{
|
|
130
|
-
"matcher": "Read",
|
|
131
|
-
"hooks": [
|
|
132
|
-
{
|
|
133
|
-
"type": "command",
|
|
134
|
-
"command": "node --import tsx node_modules/@flyingrobots/graft/src/hooks/posttooluse-read.ts"
|
|
135
|
-
}
|
|
136
|
-
]
|
|
137
|
-
}
|
|
138
|
-
]
|
|
139
|
-
}
|
|
140
|
-
}
|
|
75
|
+
This exposes the same governed repo-local read behavior that the MCP
|
|
76
|
+
surface uses for `safe_read`, `file_outline`, `read_range`, and
|
|
77
|
+
`changed_since`, but without going through MCP receipts at all.
|
|
78
|
+
|
|
79
|
+
For close editor integration, use the buffer-native surface directly:
|
|
80
|
+
```ts
|
|
81
|
+
import { createProjectionBundle, createStructuredBuffer } from "@flyingrobots/graft";
|
|
82
|
+
|
|
83
|
+
const buffer = createStructuredBuffer("src/app.tsx", liveEditorText, {
|
|
84
|
+
basis: { kind: "editor_head", headId: "head-42", tick: 17 },
|
|
85
|
+
});
|
|
86
|
+
const spans = buffer.syntaxSpans({
|
|
87
|
+
viewport: {
|
|
88
|
+
start: { row: 0, column: 0 },
|
|
89
|
+
end: { row: 80, column: 0 },
|
|
90
|
+
},
|
|
91
|
+
});
|
|
92
|
+
const context = buffer.nodeAt({ row: 24, column: 12 });
|
|
93
|
+
const rename = buffer.renamePreview({
|
|
94
|
+
position: { row: 24, column: 12 },
|
|
95
|
+
nextName: "nextValue",
|
|
96
|
+
});
|
|
97
|
+
|
|
98
|
+
// Every warm result now carries the basis it was derived from.
|
|
99
|
+
console.log(spans.basis);
|
|
100
|
+
|
|
101
|
+
const bundle = createProjectionBundle("src/app.tsx", liveEditorText, {
|
|
102
|
+
basis: { kind: "editor_head", headId: "head-42", tick: 17 },
|
|
103
|
+
viewport: {
|
|
104
|
+
start: { row: 0, column: 0 },
|
|
105
|
+
end: { row: 80, column: 0 },
|
|
106
|
+
},
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
console.log(bundle.parseStatus.status);
|
|
141
110
|
```
|
|
142
111
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
112
|
+
### 5. Shared Daemon Runtime
|
|
113
|
+
Start the same-user execution authority for multi-session or multi-repo
|
|
114
|
+
work.
|
|
115
|
+
```bash
|
|
116
|
+
npx @flyingrobots/graft daemon
|
|
117
|
+
```
|
|
146
118
|
|
|
147
|
-
|
|
148
|
-
|
|
119
|
+
Daemon sessions start `unbound`. If your client connects through the
|
|
120
|
+
daemon instead of repo-local stdio, the first repo-scoped flow is:
|
|
149
121
|
|
|
150
|
-
|
|
122
|
+
1. `workspace_authorize` for the target repo/worktree
|
|
123
|
+
2. `workspace_bind` for the active daemon session
|
|
124
|
+
3. then use repository-scoped tools such as `safe_read`
|
|
151
125
|
|
|
152
|
-
|
|
153
|
-
|
|
126
|
+
Use [docs/SETUP.md](./docs/SETUP.md) for the exact client bootstrap and
|
|
127
|
+
daemon control-plane posture.
|
|
154
128
|
|
|
155
|
-
|
|
156
|
-
|------|---------|
|
|
157
|
-
| `CONTENT` | File within thresholds — full content returned |
|
|
158
|
-
| `OUTLINE` | File exceeds thresholds — structural outline returned |
|
|
159
|
-
| `SESSION_CAP` | Session-depth byte cap triggered |
|
|
160
|
-
| `BUDGET_CAP` | Budget-proportional cap triggered |
|
|
161
|
-
| `BINARY` | Binary file refused |
|
|
162
|
-
| `LOCKFILE` | Machine-generated lockfile refused |
|
|
163
|
-
| `MINIFIED` | Minified file refused |
|
|
164
|
-
| `BUILD_OUTPUT` | Build output directory refused |
|
|
165
|
-
| `SECRET` | Potential secrets file refused |
|
|
166
|
-
| `GRAFTIGNORE` | Matches .graftignore pattern |
|
|
129
|
+
## Documentation
|
|
167
130
|
|
|
168
|
-
|
|
131
|
+
- **[Guide](./GUIDE.md)**: Orientation, the fast path, and agent bootstrap.
|
|
132
|
+
- **[Setup Guide](./docs/SETUP.md)**: Client-specific MCP setup, daemon posture, and workspace binding.
|
|
133
|
+
- **[Advanced Guide](./ADVANCED_GUIDE.md)**: Deep dives into the pipeline, worldlines, and daemon mechanics.
|
|
134
|
+
- **[Architecture](./ARCHITECTURE.md)**: The authoritative structural reference (Ports, Adapters, WARP).
|
|
135
|
+
- **[Public API Contract](./docs/public-api.md)**: The semver-public root import surface and stability policy.
|
|
136
|
+
- **[Repo Topology](./docs/repo-topology.md)**: Where API, CLI, MCP, and the core live in the source tree.
|
|
137
|
+
- **[Three-Surface Capability Matrix](./docs/three-surface-capability-matrix.md)**: Current API / CLI / MCP baseline and peer posture.
|
|
138
|
+
- **[Security Model](./docs/strategy/security-model.md)**: Same-user daemon trust boundaries, authz, and observability posture.
|
|
139
|
+
- **[Causal Provenance](./docs/strategy/causal-provenance.md)**: Transport sessions, causal workspaces, strands, and handoff truth.
|
|
140
|
+
- **[Vision](./docs/VISION.md)**: Core tenets and the provenance-aware mission.
|
|
141
|
+
- **[Method](./METHOD.md)**: Repo work doctrine and the cycle loop.
|
|
169
142
|
|
|
170
|
-
|
|
143
|
+
---
|
|
144
|
+
Built with precision by [FLYING ROBOTS](https://github.com/flyingrobots)
|
package/bin/graft.js
CHANGED
|
@@ -13,20 +13,12 @@ const require = createRequire(import.meta.url);
|
|
|
13
13
|
|
|
14
14
|
// If already running under tsx, proceed directly
|
|
15
15
|
if (process.env.__GRAFT_TSX_LOADED === "1") {
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
await runIndex();
|
|
23
|
-
} else {
|
|
24
|
-
const { createGraftServer } = await import("../src/mcp/server.js");
|
|
25
|
-
const { StdioServerTransport } = await import("@modelcontextprotocol/sdk/server/stdio.js");
|
|
26
|
-
const graft = createGraftServer();
|
|
27
|
-
const transport = new StdioServerTransport();
|
|
28
|
-
await graft.getMcpServer().connect(transport);
|
|
29
|
-
}
|
|
16
|
+
const { runCliEntrypoint } = await import("../src/cli/entrypoint.js");
|
|
17
|
+
await runCliEntrypoint({
|
|
18
|
+
argv: process.argv.slice(2),
|
|
19
|
+
stdinIsTTY: process.stdin.isTTY,
|
|
20
|
+
stdoutIsTTY: process.stdout.isTTY,
|
|
21
|
+
});
|
|
30
22
|
} else {
|
|
31
23
|
// Re-exec with tsx loader from our own node_modules
|
|
32
24
|
const tsxPath = require.resolve("tsx/esm");
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canonical-json.d.ts","sourceRoot":"","sources":["../../src/adapters/canonical-json.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAmCnD,qBAAa,kBAAmB,YAAW,SAAS;IAClD,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM;IAI9B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAG9B"}
|