@stackmemoryai/stackmemory 1.10.5 → 1.14.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/LICENSE +131 -64
- package/README.md +107 -24
- package/bin/claude-sm +16 -1
- package/bin/claude-smd +16 -1
- package/bin/codex-smd +16 -1
- package/bin/gemini-sm +16 -1
- package/bin/hermes-sm +21 -0
- package/bin/hermes-smd +21 -0
- package/bin/opencode-sm +16 -1
- package/dist/src/cli/claude-sm.js +266 -84
- package/dist/src/cli/codex-sm.js +225 -33
- package/dist/src/cli/commands/bench.js +209 -2
- package/dist/src/cli/commands/brain.js +206 -0
- package/dist/src/cli/commands/cache.js +126 -0
- package/dist/src/cli/commands/company-os.js +184 -0
- package/dist/src/cli/commands/context.js +5 -0
- package/dist/src/cli/commands/daemon.js +41 -0
- package/dist/src/cli/commands/handoff.js +40 -9
- package/dist/src/cli/commands/onboard.js +70 -3
- package/dist/src/cli/commands/operator.js +127 -0
- package/dist/src/cli/commands/optimize.js +117 -0
- package/dist/src/cli/commands/orchestrate.js +232 -5
- package/dist/src/cli/commands/orchestrator.js +315 -26
- package/dist/src/cli/commands/pack.js +322 -0
- package/dist/src/cli/commands/patterns.js +254 -0
- package/dist/src/cli/commands/portal.js +161 -0
- package/dist/src/cli/commands/scaffold.js +92 -0
- package/dist/src/cli/commands/search.js +40 -1
- package/dist/src/cli/commands/setup.js +178 -11
- package/dist/src/cli/commands/skills.js +10 -1
- package/dist/src/cli/commands/state.js +265 -0
- package/dist/src/cli/commands/sync.js +253 -0
- package/dist/src/cli/commands/tasks.js +130 -1
- package/dist/src/cli/commands/vision.js +221 -0
- package/dist/src/cli/gemini-sm.js +19 -29
- package/dist/src/cli/hermes-sm.js +224 -0
- package/dist/src/cli/index.js +105 -39
- package/dist/src/cli/opencode-sm.js +38 -21
- package/dist/src/cli/utils/determinism-watcher.js +66 -0
- package/dist/src/cli/utils/real-cli-bin.js +116 -0
- package/dist/src/core/brain/brain-store.js +187 -0
- package/dist/src/core/brain/brain-sync.js +193 -0
- package/dist/src/core/brain/index.js +78 -0
- package/dist/src/core/brain/types.js +10 -0
- package/dist/src/core/cache/content-cache.js +238 -0
- package/dist/src/{integrations/diffmem → core/cache}/index.js +5 -5
- package/dist/src/core/cache/token-estimator.js +39 -0
- package/dist/src/core/config/feature-flags.js +2 -6
- package/dist/src/core/context/frame-database.js +79 -27
- package/dist/src/core/context/recursive-context-manager.js +1 -1
- package/dist/src/core/context/rehydration.js +2 -1
- package/dist/src/core/cross-search/cross-project-search.js +269 -0
- package/dist/src/core/cross-search/index.js +10 -0
- package/dist/src/core/database/sqlite-adapter.js +14 -84
- package/dist/src/core/extensions/provider-adapter.js +5 -0
- package/dist/src/core/models/model-router.js +54 -2
- package/dist/src/core/models/provider-pricing.js +58 -4
- package/dist/src/core/monitoring/logger.js +2 -1
- package/dist/src/core/optimization/trace-optimizer.js +413 -0
- package/dist/src/core/patterns/index.js +22 -0
- package/dist/src/core/patterns/pattern-applier.js +39 -0
- package/dist/src/core/patterns/pattern-observer.js +157 -0
- package/dist/src/core/patterns/pattern-store.js +259 -0
- package/dist/src/core/patterns/types.js +19 -0
- package/dist/src/core/provenance/confidence-scorer.js +128 -0
- package/dist/src/core/provenance/index.js +40 -0
- package/dist/src/core/provenance/provenance-store.js +194 -0
- package/dist/src/core/provenance/types.js +82 -0
- package/dist/src/core/retrieval/llm-context-retrieval.js +5 -4
- package/dist/src/core/retrieval/unified-context-assembler.js +11 -66
- package/dist/src/core/session/project-handoff.js +64 -0
- package/dist/src/core/session/session-manager.js +28 -0
- package/dist/src/core/shared-state/canonical-store.js +564 -0
- package/dist/src/core/skill-packs/index.js +18 -0
- package/dist/src/core/skill-packs/parser.js +42 -0
- package/dist/src/core/skill-packs/registry.js +224 -0
- package/dist/src/core/skill-packs/types.js +79 -0
- package/dist/src/core/storage/cloud-sync-manager.js +116 -0
- package/dist/src/core/storage/cloud-sync.js +574 -0
- package/dist/src/core/storage/two-tier-storage.js +5 -1
- package/dist/src/core/tasks/master-tasks-template.js +43 -0
- package/dist/src/core/tasks/md-task-parser.js +138 -0
- package/dist/src/core/trace/trace-event-store.js +282 -0
- package/dist/src/core/vision/index.js +27 -0
- package/dist/src/core/vision/signals.js +79 -0
- package/dist/src/core/vision/types.js +22 -0
- package/dist/src/core/vision/vision-file.js +146 -0
- package/dist/src/core/vision/vision-loop.js +220 -0
- package/dist/src/core/wiki/wiki-compiler.js +103 -1
- package/dist/src/daemon/daemon-config.js +52 -0
- package/dist/src/daemon/services/desire-path-service.js +566 -0
- package/dist/src/daemon/services/github-service.js +126 -0
- package/dist/src/daemon/services/research-stream-service.js +320 -0
- package/dist/src/daemon/services/telemetry-service.js +192 -0
- package/dist/src/daemon/unified-daemon.js +58 -1
- package/dist/src/features/browser/cli-browser-agent.js +417 -0
- package/dist/src/features/browser/stagehand-workflows.js +578 -0
- package/dist/src/features/operator/adapter-factory.js +62 -0
- package/dist/src/features/operator/browser-adapter.js +109 -0
- package/dist/src/features/operator/desktop-adapter.js +125 -0
- package/dist/src/features/operator/index.js +39 -0
- package/dist/src/features/operator/llm-decision.js +137 -0
- package/dist/src/features/operator/operator-logger.js +92 -0
- package/dist/src/features/operator/overnight-runner.js +327 -0
- package/dist/src/features/operator/screen-adapter.js +91 -0
- package/dist/src/features/operator/session-manager.js +127 -0
- package/dist/src/features/operator/state-machine.js +227 -0
- package/dist/src/features/operator/task-queue.js +81 -0
- package/dist/src/features/portal/index.js +26 -0
- package/dist/src/features/portal/server.js +240 -0
- package/dist/src/features/portal/types.js +14 -0
- package/dist/src/features/portal/ui.js +195 -0
- package/dist/src/features/sweep/pty-wrapper.js +13 -5
- package/dist/src/features/tasks/task-aware-context.js +2 -1
- package/dist/src/features/tui/simple-monitor.js +0 -23
- package/dist/src/features/tui/swarm-monitor.js +8 -66
- package/dist/src/features/web/client/hooks/use-socket.js +12 -0
- package/dist/src/{core/merge/index.js → features/web/client/lib/utils.js} +8 -4
- package/dist/src/features/web/client/next-env.d.js +4 -0
- package/dist/src/features/web/client/stores/session-store.js +12 -0
- package/dist/src/features/web/server/gcp-billing.js +76 -0
- package/dist/src/features/web/server/index.js +10 -0
- package/dist/src/features/web/server/spend-calculator.js +228 -0
- package/dist/src/hooks/schemas.js +6 -1
- package/dist/src/integrations/anthropic/client.js +3 -2
- package/dist/src/integrations/claude-code/agent-bridge.js +0 -3
- package/dist/src/integrations/claude-code/subagent-client.js +307 -11
- package/dist/src/integrations/claude-code/task-coordinator.js +2 -1
- package/dist/src/integrations/github/pr-state.js +158 -0
- package/dist/src/integrations/linear/client.js +4 -1
- package/dist/src/integrations/linear/webhook-retry.js +196 -0
- package/dist/src/integrations/linear/webhook-server.js +18 -22
- package/dist/src/integrations/mcp/handlers/cloud-sync-handlers.js +101 -0
- package/dist/src/integrations/mcp/handlers/index.js +40 -84
- package/dist/src/integrations/mcp/server.js +542 -641
- package/dist/src/integrations/mcp/tool-alias-registry.js +297 -0
- package/dist/src/integrations/mcp/tool-definitions.js +152 -682
- package/dist/src/mcp/stackmemory-mcp-server.js +571 -231
- package/dist/src/orchestrators/multimodal/determinism.js +244 -0
- package/dist/src/orchestrators/multimodal/harness.js +149 -78
- package/dist/src/orchestrators/multimodal/providers.js +44 -3
- package/dist/src/skills/recursive-agent-orchestrator.js +2 -4
- package/dist/src/utils/hook-installer.js +0 -8
- package/dist/src/utils/process-cleanup.js +1 -7
- package/docs/README.md +42 -0
- package/docs/guides/README_INSTALL.md +208 -0
- package/package.json +27 -9
- package/packs/coding/python-fastapi/instructions.md +60 -0
- package/packs/coding/python-fastapi/pack.yaml +28 -0
- package/packs/coding/typescript-react/instructions.md +47 -0
- package/packs/coding/typescript-react/pack.yaml +28 -0
- package/packs/core/commands/capture.md +32 -0
- package/packs/core/commands/learn.md +73 -0
- package/packs/core/commands/next.md +36 -0
- package/packs/core/commands/restart.md +58 -0
- package/packs/core/commands/restore.md +29 -0
- package/packs/core/commands/start.md +57 -0
- package/packs/core/commands/stop.md +65 -0
- package/packs/core/commands/summary.md +40 -0
- package/packs/core/manifest.json +24 -0
- package/packs/ops/decision-recovery/instructions.md +65 -0
- package/packs/ops/decision-recovery/pack.yaml +89 -0
- package/scripts/claude-code-wrapper.sh +11 -0
- package/scripts/claude-sm-setup.sh +12 -1
- package/scripts/codex-wrapper.sh +11 -0
- package/scripts/git-hooks/branch-context-manager.sh +11 -0
- package/scripts/git-hooks/post-checkout-stackmemory.sh +11 -0
- package/scripts/git-hooks/post-commit-stackmemory.sh +11 -0
- package/scripts/git-hooks/pre-commit-stackmemory.sh +11 -0
- package/scripts/hooks/cleanup-shell.sh +12 -1
- package/scripts/hooks/task-complete.sh +12 -1
- package/scripts/install-code-execution-hooks.sh +12 -1
- package/scripts/install-sweep-hook.sh +12 -0
- package/scripts/install.sh +11 -0
- package/scripts/opencode-wrapper.sh +11 -0
- package/scripts/portal/cloud-init.yaml +69 -0
- package/scripts/portal/setup.sh +69 -0
- package/scripts/portal/stackmemory-portal.service +34 -0
- package/scripts/setup-claude-integration.sh +12 -1
- package/scripts/smoke-init-db.sh +23 -0
- package/scripts/stackmemory-daemon.sh +11 -0
- package/scripts/verify-dist.cjs +11 -4
- package/dist/src/cli/commands/ralph.js +0 -1053
- package/dist/src/cli/commands/team.js +0 -168
- package/dist/src/core/context/shared-context-layer.js +0 -620
- package/dist/src/core/context/stack-merge-resolver.js +0 -748
- package/dist/src/core/merge/conflict-detector.js +0 -430
- package/dist/src/core/merge/resolution-engine.js +0 -557
- package/dist/src/core/merge/stack-diff.js +0 -531
- package/dist/src/core/merge/unified-merge-resolver.js +0 -302
- package/dist/src/hooks/diffmem-hooks.js +0 -376
- package/dist/src/integrations/diffmem/client.js +0 -208
- package/dist/src/integrations/diffmem/config.js +0 -14
- package/dist/src/integrations/greptile/client.js +0 -101
- package/dist/src/integrations/greptile/config.js +0 -14
- package/dist/src/integrations/greptile/index.js +0 -11
- package/dist/src/integrations/mcp/handlers/cord-handlers.js +0 -397
- package/dist/src/integrations/mcp/handlers/diffmem-handlers.js +0 -455
- package/dist/src/integrations/mcp/handlers/greptile-handlers.js +0 -456
- package/dist/src/integrations/mcp/handlers/provider-handlers.js +0 -227
- package/dist/src/integrations/mcp/handlers/team-handlers.js +0 -211
- package/dist/src/integrations/ralph/bridge/ralph-stackmemory-bridge.js +0 -863
- package/dist/src/integrations/ralph/context/context-budget-manager.js +0 -308
- package/dist/src/integrations/ralph/context/stackmemory-context-loader.js +0 -391
- package/dist/src/integrations/ralph/index.js +0 -17
- package/dist/src/integrations/ralph/learning/pattern-learner.js +0 -435
- package/dist/src/integrations/ralph/lifecycle/iteration-lifecycle.js +0 -448
- package/dist/src/integrations/ralph/loopmax.js +0 -488
- package/dist/src/integrations/ralph/monitoring/swarm-dashboard.js +0 -293
- package/dist/src/integrations/ralph/monitoring/swarm-registry.js +0 -107
- package/dist/src/integrations/ralph/orchestration/multi-loop-orchestrator.js +0 -508
- package/dist/src/integrations/ralph/patterns/compounding-engineering-pattern.js +0 -407
- package/dist/src/integrations/ralph/patterns/extended-coherence-sessions.js +0 -495
- package/dist/src/integrations/ralph/patterns/oracle-worker-pattern.js +0 -387
- package/dist/src/integrations/ralph/performance/performance-optimizer.js +0 -357
- package/dist/src/integrations/ralph/recovery/crash-recovery.js +0 -461
- package/dist/src/integrations/ralph/state/state-reconciler.js +0 -420
- package/dist/src/integrations/ralph/swarm/git-workflow-manager.js +0 -444
- package/dist/src/integrations/ralph/swarm/swarm-coordinator.js +0 -1007
- package/dist/src/integrations/ralph/visualization/ralph-debugger.js +0 -635
- package/scripts/ralph-loop-implementation.js +0 -404
- /package/dist/src/core/{merge → cache}/types.js +0 -0
- /package/dist/src/{integrations/diffmem/types.js → core/storage/cloud-sync-types.js} +0 -0
- /package/dist/src/{integrations/greptile/types.js → core/trace/trace-event.js} +0 -0
- /package/dist/src/{integrations/ralph → features/operator}/types.js +0 -0
|
@@ -15,14 +15,12 @@ import {
|
|
|
15
15
|
import {
|
|
16
16
|
DiscoveryHandlers
|
|
17
17
|
} from "./discovery-handlers.js";
|
|
18
|
-
import {
|
|
19
|
-
ProviderHandlers
|
|
20
|
-
} from "./provider-handlers.js";
|
|
21
|
-
import { TeamHandlers } from "./team-handlers.js";
|
|
22
|
-
import { CordHandlers } from "./cord-handlers.js";
|
|
23
18
|
import {
|
|
24
19
|
ProvenantHandlers
|
|
25
20
|
} from "./provenant-handlers.js";
|
|
21
|
+
import {
|
|
22
|
+
CloudSyncHandlers
|
|
23
|
+
} from "./cloud-sync-handlers.js";
|
|
26
24
|
import {
|
|
27
25
|
ContextHandlers as ContextHandlers2
|
|
28
26
|
} from "./context-handlers.js";
|
|
@@ -31,19 +29,18 @@ import {
|
|
|
31
29
|
LinearHandlers as LinearHandlers2
|
|
32
30
|
} from "./linear-handlers.js";
|
|
33
31
|
import { TraceHandlers as TraceHandlers2 } from "./trace-handlers.js";
|
|
34
|
-
import { ProviderHandlers as ProviderHandlers2 } from "./provider-handlers.js";
|
|
35
|
-
import { TeamHandlers as TeamHandlers2 } from "./team-handlers.js";
|
|
36
|
-
import { CordHandlers as CordHandlers2 } from "./cord-handlers.js";
|
|
37
32
|
import { ProvenantHandlers as ProvenantHandlers2 } from "./provenant-handlers.js";
|
|
33
|
+
import { CloudSyncHandlers as CloudSyncHandlers2 } from "./cloud-sync-handlers.js";
|
|
34
|
+
import {
|
|
35
|
+
resolveToolAlias
|
|
36
|
+
} from "../tool-alias-registry.js";
|
|
38
37
|
class MCPHandlerFactory {
|
|
39
38
|
contextHandlers;
|
|
40
39
|
taskHandlers;
|
|
41
40
|
linearHandlers;
|
|
42
41
|
traceHandlers;
|
|
43
|
-
providerHandlers;
|
|
44
|
-
teamHandlers;
|
|
45
|
-
cordHandlers;
|
|
46
42
|
provenantHandlers;
|
|
43
|
+
cloudSyncHandlers;
|
|
47
44
|
constructor(deps) {
|
|
48
45
|
this.contextHandlers = new ContextHandlers2({
|
|
49
46
|
frameManager: deps.frameManager
|
|
@@ -61,28 +58,29 @@ class MCPHandlerFactory {
|
|
|
61
58
|
traceDetector: deps.traceDetector,
|
|
62
59
|
browserMCP: deps.browserMCP
|
|
63
60
|
});
|
|
64
|
-
this.providerHandlers = new ProviderHandlers2();
|
|
65
|
-
if (deps.dbAdapter) {
|
|
66
|
-
this.teamHandlers = new TeamHandlers2({
|
|
67
|
-
frameManager: deps.frameManager,
|
|
68
|
-
dbAdapter: deps.dbAdapter
|
|
69
|
-
});
|
|
70
|
-
this.cordHandlers = new CordHandlers2({
|
|
71
|
-
frameManager: deps.frameManager,
|
|
72
|
-
dbAdapter: deps.dbAdapter
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
61
|
if (deps.projectDir) {
|
|
76
62
|
this.provenantHandlers = new ProvenantHandlers2({
|
|
77
63
|
projectDir: deps.projectDir
|
|
78
64
|
});
|
|
79
65
|
}
|
|
66
|
+
this.cloudSyncHandlers = new CloudSyncHandlers2({
|
|
67
|
+
syncManager: null
|
|
68
|
+
// Initialized lazily when cloud sync is configured
|
|
69
|
+
});
|
|
80
70
|
}
|
|
81
71
|
/**
|
|
82
|
-
*
|
|
72
|
+
* Set the cloud sync manager (called after config/auth is loaded)
|
|
73
|
+
*/
|
|
74
|
+
setCloudSyncManager(manager) {
|
|
75
|
+
this.cloudSyncHandlers = new CloudSyncHandlers2({ syncManager: manager });
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Get handler for a specific tool.
|
|
79
|
+
* Resolves tool name aliases before lookup.
|
|
83
80
|
*/
|
|
84
81
|
getHandler(toolName) {
|
|
85
|
-
|
|
82
|
+
const { canonicalName } = resolveToolAlias(toolName);
|
|
83
|
+
switch (canonicalName) {
|
|
86
84
|
// Context handlers
|
|
87
85
|
case "get_context":
|
|
88
86
|
return this.contextHandlers.handleGetContext.bind(this.contextHandlers);
|
|
@@ -138,45 +136,6 @@ class MCPHandlerFactory {
|
|
|
138
136
|
this.traceHandlers
|
|
139
137
|
);
|
|
140
138
|
// Provider handlers
|
|
141
|
-
case "delegate_to_model":
|
|
142
|
-
return this.providerHandlers.handleDelegateToModel.bind(
|
|
143
|
-
this.providerHandlers
|
|
144
|
-
);
|
|
145
|
-
case "batch_submit":
|
|
146
|
-
return this.providerHandlers.handleBatchSubmit.bind(
|
|
147
|
-
this.providerHandlers
|
|
148
|
-
);
|
|
149
|
-
case "batch_check":
|
|
150
|
-
return this.providerHandlers.handleBatchCheck.bind(
|
|
151
|
-
this.providerHandlers
|
|
152
|
-
);
|
|
153
|
-
// Team handlers
|
|
154
|
-
case "team_context_get":
|
|
155
|
-
if (!this.teamHandlers) throw new Error("Team tools require dbAdapter");
|
|
156
|
-
return this.teamHandlers.handleTeamContextGet.bind(this.teamHandlers);
|
|
157
|
-
case "team_context_share":
|
|
158
|
-
if (!this.teamHandlers) throw new Error("Team tools require dbAdapter");
|
|
159
|
-
return this.teamHandlers.handleTeamContextShare.bind(this.teamHandlers);
|
|
160
|
-
case "team_search":
|
|
161
|
-
if (!this.teamHandlers) throw new Error("Team tools require dbAdapter");
|
|
162
|
-
return this.teamHandlers.handleTeamSearch.bind(this.teamHandlers);
|
|
163
|
-
// Cord orchestration handlers
|
|
164
|
-
case "cord_spawn":
|
|
165
|
-
if (!this.cordHandlers) throw new Error("Cord tools require dbAdapter");
|
|
166
|
-
return this.cordHandlers.handleCordSpawn.bind(this.cordHandlers);
|
|
167
|
-
case "cord_fork":
|
|
168
|
-
if (!this.cordHandlers) throw new Error("Cord tools require dbAdapter");
|
|
169
|
-
return this.cordHandlers.handleCordFork.bind(this.cordHandlers);
|
|
170
|
-
case "cord_complete":
|
|
171
|
-
if (!this.cordHandlers) throw new Error("Cord tools require dbAdapter");
|
|
172
|
-
return this.cordHandlers.handleCordComplete.bind(this.cordHandlers);
|
|
173
|
-
case "cord_ask":
|
|
174
|
-
if (!this.cordHandlers) throw new Error("Cord tools require dbAdapter");
|
|
175
|
-
return this.cordHandlers.handleCordAsk.bind(this.cordHandlers);
|
|
176
|
-
case "cord_tree":
|
|
177
|
-
if (!this.cordHandlers) throw new Error("Cord tools require dbAdapter");
|
|
178
|
-
return this.cordHandlers.handleCordTree.bind(this.cordHandlers);
|
|
179
|
-
// Provenant decision graph handlers
|
|
180
139
|
case "provenant_search":
|
|
181
140
|
if (!this.provenantHandlers)
|
|
182
141
|
throw new Error("Provenant tools require projectDir");
|
|
@@ -201,6 +160,14 @@ class MCPHandlerFactory {
|
|
|
201
160
|
return this.provenantHandlers.handleResolve.bind(
|
|
202
161
|
this.provenantHandlers
|
|
203
162
|
);
|
|
163
|
+
// Cross-project search handlers
|
|
164
|
+
case "cloud_sync_push":
|
|
165
|
+
return this.cloudSyncHandlers.handlePush.bind(this.cloudSyncHandlers);
|
|
166
|
+
case "cloud_sync_pull":
|
|
167
|
+
return this.cloudSyncHandlers.handlePull.bind(this.cloudSyncHandlers);
|
|
168
|
+
case "cloud_sync_status":
|
|
169
|
+
return this.cloudSyncHandlers.handleStatus.bind(this.cloudSyncHandlers);
|
|
170
|
+
// Workflow handlers
|
|
204
171
|
default:
|
|
205
172
|
throw new Error(`Unknown tool: ${toolName}`);
|
|
206
173
|
}
|
|
@@ -233,44 +200,33 @@ class MCPHandlerFactory {
|
|
|
233
200
|
"take_screenshot",
|
|
234
201
|
"execute_script",
|
|
235
202
|
"stop_browser_debug",
|
|
236
|
-
//
|
|
237
|
-
"delegate_to_model",
|
|
238
|
-
"batch_submit",
|
|
239
|
-
"batch_check",
|
|
240
|
-
// Team tools
|
|
241
|
-
"team_context_get",
|
|
242
|
-
"team_context_share",
|
|
243
|
-
"team_search",
|
|
244
|
-
// Cord orchestration tools
|
|
245
|
-
"cord_spawn",
|
|
246
|
-
"cord_fork",
|
|
247
|
-
"cord_complete",
|
|
248
|
-
"cord_ask",
|
|
249
|
-
"cord_tree",
|
|
250
|
-
// Provenant decision graph tools
|
|
203
|
+
// Provenant tools
|
|
251
204
|
"provenant_search",
|
|
252
205
|
"provenant_log",
|
|
253
206
|
"provenant_status",
|
|
254
207
|
"provenant_contradictions",
|
|
255
|
-
"provenant_resolve"
|
|
208
|
+
"provenant_resolve",
|
|
209
|
+
// Cloud sync tools
|
|
210
|
+
"cloud_sync_push",
|
|
211
|
+
"cloud_sync_pull",
|
|
212
|
+
"cloud_sync_status"
|
|
256
213
|
];
|
|
257
214
|
}
|
|
258
215
|
/**
|
|
259
|
-
* Check if a tool exists
|
|
216
|
+
* Check if a tool exists (resolves aliases)
|
|
260
217
|
*/
|
|
261
218
|
hasHandler(toolName) {
|
|
262
|
-
|
|
219
|
+
const { canonicalName } = resolveToolAlias(toolName);
|
|
220
|
+
return this.getAvailableTools().includes(canonicalName);
|
|
263
221
|
}
|
|
264
222
|
}
|
|
265
223
|
export {
|
|
224
|
+
CloudSyncHandlers,
|
|
266
225
|
ContextHandlers,
|
|
267
|
-
CordHandlers,
|
|
268
226
|
DiscoveryHandlers,
|
|
269
227
|
LinearHandlers,
|
|
270
228
|
MCPHandlerFactory,
|
|
271
229
|
ProvenantHandlers,
|
|
272
|
-
ProviderHandlers,
|
|
273
230
|
TaskHandlers,
|
|
274
|
-
TeamHandlers,
|
|
275
231
|
TraceHandlers
|
|
276
232
|
};
|