@stackmemoryai/stackmemory 0.5.59 → 0.5.61
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +105 -1
- package/dist/src/cli/claude-sm.js +130 -50
- package/dist/src/cli/claude-sm.js.map +2 -2
- package/dist/src/cli/index.js +18 -3
- package/dist/src/cli/index.js.map +3 -3
- package/dist/src/core/extensions/custom-tools.js +567 -0
- package/dist/src/core/extensions/custom-tools.js.map +7 -0
- package/dist/src/core/extensions/index.js +55 -0
- package/dist/src/core/extensions/index.js.map +7 -0
- package/dist/src/core/extensions/loader.js +709 -0
- package/dist/src/core/extensions/loader.js.map +7 -0
- package/dist/src/core/extensions/plugin-system.js +506 -0
- package/dist/src/core/extensions/plugin-system.js.map +7 -0
- package/dist/src/core/extensions/provider-adapter.js +617 -0
- package/dist/src/core/extensions/provider-adapter.js.map +7 -0
- package/dist/src/core/extensions/sandbox-runtime.js +664 -0
- package/dist/src/core/extensions/sandbox-runtime.js.map +7 -0
- package/dist/src/core/storage/chromadb-adapter.js +32 -6
- package/dist/src/core/storage/chromadb-adapter.js.map +2 -2
- package/dist/src/skills/repo-ingestion-skill.js +35 -12
- package/dist/src/skills/repo-ingestion-skill.js.map +2 -2
- package/package.json +11 -7
- package/scripts/background-sync-manager.js +145 -83
- package/scripts/claude-sm-autostart.js +17 -12
- package/scripts/gepa/README.md +275 -0
- package/scripts/gepa/config.json +53 -0
- package/scripts/gepa/evals/coding-tasks.jsonl +5 -0
- package/scripts/gepa/evals/fixtures/buggy-loop.js +18 -0
- package/scripts/gepa/evals/fixtures/callback-hell.js +53 -0
- package/scripts/gepa/generations/gen-000/baseline.md +124 -0
- package/scripts/gepa/hooks/auto-optimize.js +494 -0
- package/scripts/gepa/hooks/eval-tracker.js +203 -0
- package/scripts/gepa/hooks/reflect.js +311 -0
- package/scripts/gepa/optimize.js +611 -0
- package/scripts/gepa/state.json +14 -0
- package/scripts/test-pre-publish-quick.sh +1 -1
- package/dist/agents/core/agent-task-manager.js +0 -527
- package/dist/agents/core/agent-task-manager.js.map +0 -7
- package/dist/agents/testing-agent.js +0 -614
- package/dist/agents/testing-agent.js.map +0 -7
- package/dist/agents/verifiers/base-verifier.js +0 -133
- package/dist/agents/verifiers/base-verifier.js.map +0 -7
- package/dist/agents/verifiers/formatter-verifier.js +0 -130
- package/dist/agents/verifiers/formatter-verifier.js.map +0 -7
- package/dist/agents/verifiers/llm-judge.js +0 -252
- package/dist/agents/verifiers/llm-judge.js.map +0 -7
- package/dist/cli/auto-detect.js +0 -321
- package/dist/cli/auto-detect.js.map +0 -7
- package/dist/cli/browser-test.js +0 -33
- package/dist/cli/browser-test.js.map +0 -7
- package/dist/cli/claude-sm-danger.js +0 -21
- package/dist/cli/claude-sm-danger.js.map +0 -7
- package/dist/cli/claude-sm.js +0 -1156
- package/dist/cli/claude-sm.js.map +0 -7
- package/dist/cli/codex-sm-danger.js +0 -21
- package/dist/cli/codex-sm-danger.js.map +0 -7
- package/dist/cli/codex-sm.js +0 -349
- package/dist/cli/codex-sm.js.map +0 -7
- package/dist/cli/commands/api.js +0 -232
- package/dist/cli/commands/api.js.map +0 -7
- package/dist/cli/commands/auto-background.js +0 -180
- package/dist/cli/commands/auto-background.js.map +0 -7
- package/dist/cli/commands/cleanup-processes.js +0 -68
- package/dist/cli/commands/cleanup-processes.js.map +0 -7
- package/dist/cli/commands/clear.js +0 -202
- package/dist/cli/commands/clear.js.map +0 -7
- package/dist/cli/commands/config.js +0 -445
- package/dist/cli/commands/config.js.map +0 -7
- package/dist/cli/commands/context-rehydrate.js +0 -751
- package/dist/cli/commands/context-rehydrate.js.map +0 -7
- package/dist/cli/commands/context.js +0 -343
- package/dist/cli/commands/context.js.map +0 -7
- package/dist/cli/commands/daemon.js +0 -392
- package/dist/cli/commands/daemon.js.map +0 -7
- package/dist/cli/commands/dashboard.js +0 -210
- package/dist/cli/commands/dashboard.js.map +0 -7
- package/dist/cli/commands/db.js +0 -147
- package/dist/cli/commands/db.js.map +0 -7
- package/dist/cli/commands/decision.js +0 -266
- package/dist/cli/commands/decision.js.map +0 -7
- package/dist/cli/commands/discovery.js +0 -279
- package/dist/cli/commands/discovery.js.map +0 -7
- package/dist/cli/commands/handoff.js +0 -624
- package/dist/cli/commands/handoff.js.map +0 -7
- package/dist/cli/commands/hooks.js +0 -298
- package/dist/cli/commands/hooks.js.map +0 -7
- package/dist/cli/commands/linear-unified.js +0 -353
- package/dist/cli/commands/linear-unified.js.map +0 -7
- package/dist/cli/commands/linear.js +0 -529
- package/dist/cli/commands/linear.js.map +0 -7
- package/dist/cli/commands/log.js +0 -169
- package/dist/cli/commands/log.js.map +0 -7
- package/dist/cli/commands/login.js +0 -172
- package/dist/cli/commands/login.js.map +0 -7
- package/dist/cli/commands/migrate.js +0 -240
- package/dist/cli/commands/migrate.js.map +0 -7
- package/dist/cli/commands/model.js +0 -533
- package/dist/cli/commands/model.js.map +0 -7
- package/dist/cli/commands/monitor.js +0 -313
- package/dist/cli/commands/monitor.js.map +0 -7
- package/dist/cli/commands/onboard.js +0 -536
- package/dist/cli/commands/onboard.js.map +0 -7
- package/dist/cli/commands/projects.js +0 -199
- package/dist/cli/commands/projects.js.map +0 -7
- package/dist/cli/commands/quality.js +0 -413
- package/dist/cli/commands/quality.js.map +0 -7
- package/dist/cli/commands/ralph.js +0 -909
- package/dist/cli/commands/ralph.js.map +0 -7
- package/dist/cli/commands/retrieval.js +0 -248
- package/dist/cli/commands/retrieval.js.map +0 -7
- package/dist/cli/commands/search.js +0 -173
- package/dist/cli/commands/search.js.map +0 -7
- package/dist/cli/commands/service.js +0 -749
- package/dist/cli/commands/service.js.map +0 -7
- package/dist/cli/commands/session.js +0 -200
- package/dist/cli/commands/session.js.map +0 -7
- package/dist/cli/commands/settings.js +0 -306
- package/dist/cli/commands/settings.js.map +0 -7
- package/dist/cli/commands/setup.js +0 -701
- package/dist/cli/commands/setup.js.map +0 -7
- package/dist/cli/commands/shell.js +0 -249
- package/dist/cli/commands/shell.js.map +0 -7
- package/dist/cli/commands/signup.js +0 -50
- package/dist/cli/commands/signup.js.map +0 -7
- package/dist/cli/commands/skills.js +0 -470
- package/dist/cli/commands/skills.js.map +0 -7
- package/dist/cli/commands/sms-notify.js +0 -795
- package/dist/cli/commands/sms-notify.js.map +0 -7
- package/dist/cli/commands/storage-tier.js +0 -183
- package/dist/cli/commands/storage-tier.js.map +0 -7
- package/dist/cli/commands/storage.js +0 -360
- package/dist/cli/commands/storage.js.map +0 -7
- package/dist/cli/commands/sweep.js +0 -249
- package/dist/cli/commands/sweep.js.map +0 -7
- package/dist/cli/commands/tasks.js +0 -213
- package/dist/cli/commands/tasks.js.map +0 -7
- package/dist/cli/commands/test.js +0 -286
- package/dist/cli/commands/test.js.map +0 -7
- package/dist/cli/commands/workflow.js +0 -142
- package/dist/cli/commands/workflow.js.map +0 -7
- package/dist/cli/commands/worktree.js +0 -319
- package/dist/cli/commands/worktree.js.map +0 -7
- package/dist/cli/index.js +0 -594
- package/dist/cli/index.js.map +0 -7
- package/dist/cli/opencode-sm.js +0 -448
- package/dist/cli/opencode-sm.js.map +0 -7
- package/dist/cli/utils/viewer.js +0 -96
- package/dist/cli/utils/viewer.js.map +0 -7
- package/dist/core/analytics/team-analytics.js +0 -378
- package/dist/core/analytics/team-analytics.js.map +0 -7
- package/dist/core/config/config-manager.js +0 -398
- package/dist/core/config/config-manager.js.map +0 -7
- package/dist/core/config/feature-flags.js +0 -76
- package/dist/core/config/feature-flags.js.map +0 -7
- package/dist/core/config/storage-config.js +0 -115
- package/dist/core/config/storage-config.js.map +0 -7
- package/dist/core/config/types.js +0 -144
- package/dist/core/config/types.js.map +0 -7
- package/dist/core/context/auto-context.js +0 -80
- package/dist/core/context/auto-context.js.map +0 -7
- package/dist/core/context/dual-stack-manager.js +0 -870
- package/dist/core/context/dual-stack-manager.js.map +0 -7
- package/dist/core/context/enhanced-rehydration.js +0 -994
- package/dist/core/context/enhanced-rehydration.js.map +0 -7
- package/dist/core/context/frame-database.js +0 -479
- package/dist/core/context/frame-database.js.map +0 -7
- package/dist/core/context/frame-digest.js +0 -250
- package/dist/core/context/frame-digest.js.map +0 -7
- package/dist/core/context/frame-handoff-manager.js +0 -778
- package/dist/core/context/frame-handoff-manager.js.map +0 -7
- package/dist/core/context/frame-lifecycle-hooks.js +0 -119
- package/dist/core/context/frame-lifecycle-hooks.js.map +0 -7
- package/dist/core/context/frame-manager.js +0 -1069
- package/dist/core/context/frame-manager.js.map +0 -7
- package/dist/core/context/frame-recovery.js +0 -302
- package/dist/core/context/frame-recovery.js.map +0 -7
- package/dist/core/context/frame-stack.js +0 -314
- package/dist/core/context/frame-stack.js.map +0 -7
- package/dist/core/context/frame-types.js +0 -5
- package/dist/core/context/frame-types.js.map +0 -7
- package/dist/core/context/incremental-gc.js +0 -290
- package/dist/core/context/incremental-gc.js.map +0 -7
- package/dist/core/context/index.js +0 -25
- package/dist/core/context/index.js.map +0 -7
- package/dist/core/context/model-aware-compaction.js +0 -623
- package/dist/core/context/model-aware-compaction.js.map +0 -7
- package/dist/core/context/permission-manager.js +0 -185
- package/dist/core/context/permission-manager.js.map +0 -7
- package/dist/core/context/recursive-context-manager.js +0 -592
- package/dist/core/context/recursive-context-manager.js.map +0 -7
- package/dist/core/context/refactored-frame-manager.js +0 -754
- package/dist/core/context/refactored-frame-manager.js.map +0 -7
- package/dist/core/context/shared-context-layer.js +0 -621
- package/dist/core/context/shared-context-layer.js.map +0 -7
- package/dist/core/context/stack-merge-resolver.js +0 -749
- package/dist/core/context/stack-merge-resolver.js.map +0 -7
- package/dist/core/context/validation.js +0 -130
- package/dist/core/context/validation.js.map +0 -7
- package/dist/core/database/batch-operations.js +0 -384
- package/dist/core/database/batch-operations.js.map +0 -7
- package/dist/core/database/connection-pool.js +0 -330
- package/dist/core/database/connection-pool.js.map +0 -7
- package/dist/core/database/database-adapter.js +0 -60
- package/dist/core/database/database-adapter.js.map +0 -7
- package/dist/core/database/migration-manager.js +0 -614
- package/dist/core/database/migration-manager.js.map +0 -7
- package/dist/core/database/paradedb-adapter.js +0 -990
- package/dist/core/database/paradedb-adapter.js.map +0 -7
- package/dist/core/database/query-cache.js +0 -298
- package/dist/core/database/query-cache.js.map +0 -7
- package/dist/core/database/query-router.js +0 -430
- package/dist/core/database/query-router.js.map +0 -7
- package/dist/core/database/sqlite-adapter.js +0 -738
- package/dist/core/database/sqlite-adapter.js.map +0 -7
- package/dist/core/digest/enhanced-hybrid-digest.js +0 -277
- package/dist/core/digest/enhanced-hybrid-digest.js.map +0 -7
- package/dist/core/digest/frame-digest-integration.js +0 -176
- package/dist/core/digest/frame-digest-integration.js.map +0 -7
- package/dist/core/digest/hybrid-digest-generator.js +0 -553
- package/dist/core/digest/hybrid-digest-generator.js.map +0 -7
- package/dist/core/digest/index.js +0 -9
- package/dist/core/digest/index.js.map +0 -7
- package/dist/core/digest/types.js +0 -25
- package/dist/core/digest/types.js.map +0 -7
- package/dist/core/errors/error-utils.js +0 -208
- package/dist/core/errors/error-utils.js.map +0 -7
- package/dist/core/errors/index.js +0 -521
- package/dist/core/errors/index.js.map +0 -7
- package/dist/core/errors/recovery.js +0 -269
- package/dist/core/errors/recovery.js.map +0 -7
- package/dist/core/execution/parallel-executor.js +0 -258
- package/dist/core/execution/parallel-executor.js.map +0 -7
- package/dist/core/frame/workflow-templates.js +0 -319
- package/dist/core/frame/workflow-templates.js.map +0 -7
- package/dist/core/merge/conflict-detector.js +0 -431
- package/dist/core/merge/conflict-detector.js.map +0 -7
- package/dist/core/merge/index.js +0 -9
- package/dist/core/merge/index.js.map +0 -7
- package/dist/core/merge/resolution-engine.js +0 -558
- package/dist/core/merge/resolution-engine.js.map +0 -7
- package/dist/core/merge/stack-diff.js +0 -532
- package/dist/core/merge/stack-diff.js.map +0 -7
- package/dist/core/merge/unified-merge-resolver.js +0 -303
- package/dist/core/merge/unified-merge-resolver.js.map +0 -7
- package/dist/core/models/fallback-monitor.js +0 -232
- package/dist/core/models/fallback-monitor.js.map +0 -7
- package/dist/core/models/model-router.js +0 -340
- package/dist/core/models/model-router.js.map +0 -7
- package/dist/core/monitoring/error-handler.js +0 -49
- package/dist/core/monitoring/error-handler.js.map +0 -7
- package/dist/core/monitoring/logger.js +0 -202
- package/dist/core/monitoring/logger.js.map +0 -7
- package/dist/core/monitoring/metrics.js +0 -172
- package/dist/core/monitoring/metrics.js.map +0 -7
- package/dist/core/monitoring/progress-tracker.js +0 -189
- package/dist/core/monitoring/progress-tracker.js.map +0 -7
- package/dist/core/monitoring/session-monitor.js +0 -300
- package/dist/core/monitoring/session-monitor.js.map +0 -7
- package/dist/core/performance/context-cache.js +0 -273
- package/dist/core/performance/context-cache.js.map +0 -7
- package/dist/core/performance/index.js +0 -11
- package/dist/core/performance/index.js.map +0 -7
- package/dist/core/performance/lazy-context-loader.js +0 -327
- package/dist/core/performance/lazy-context-loader.js.map +0 -7
- package/dist/core/performance/monitor.js +0 -221
- package/dist/core/performance/monitor.js.map +0 -7
- package/dist/core/performance/optimized-frame-context.js +0 -345
- package/dist/core/performance/optimized-frame-context.js.map +0 -7
- package/dist/core/performance/performance-benchmark.js +0 -277
- package/dist/core/performance/performance-benchmark.js.map +0 -7
- package/dist/core/performance/performance-profiler.js +0 -370
- package/dist/core/performance/performance-profiler.js.map +0 -7
- package/dist/core/performance/streaming-jsonl-parser.js +0 -195
- package/dist/core/performance/streaming-jsonl-parser.js.map +0 -7
- package/dist/core/persistence/postgres-adapter.js +0 -349
- package/dist/core/persistence/postgres-adapter.js.map +0 -7
- package/dist/core/projects/project-isolation.js +0 -201
- package/dist/core/projects/project-isolation.js.map +0 -7
- package/dist/core/projects/project-manager.js +0 -697
- package/dist/core/projects/project-manager.js.map +0 -7
- package/dist/core/query/query-parser.js +0 -370
- package/dist/core/query/query-parser.js.map +0 -7
- package/dist/core/query/query-templates.js +0 -321
- package/dist/core/query/query-templates.js.map +0 -7
- package/dist/core/retrieval/context-retriever.js +0 -479
- package/dist/core/retrieval/context-retriever.js.map +0 -7
- package/dist/core/retrieval/graph-retrieval.js +0 -662
- package/dist/core/retrieval/graph-retrieval.js.map +0 -7
- package/dist/core/retrieval/hierarchical-retrieval.js +0 -656
- package/dist/core/retrieval/hierarchical-retrieval.js.map +0 -7
- package/dist/core/retrieval/index.js +0 -8
- package/dist/core/retrieval/index.js.map +0 -7
- package/dist/core/retrieval/llm-context-retrieval.js +0 -613
- package/dist/core/retrieval/llm-context-retrieval.js.map +0 -7
- package/dist/core/retrieval/llm-provider.js +0 -151
- package/dist/core/retrieval/llm-provider.js.map +0 -7
- package/dist/core/retrieval/retrieval-audit.js +0 -236
- package/dist/core/retrieval/retrieval-audit.js.map +0 -7
- package/dist/core/retrieval/retrieval-benchmarks.js +0 -521
- package/dist/core/retrieval/retrieval-benchmarks.js.map +0 -7
- package/dist/core/retrieval/summary-generator.js +0 -589
- package/dist/core/retrieval/summary-generator.js.map +0 -7
- package/dist/core/retrieval/types.js +0 -21
- package/dist/core/retrieval/types.js.map +0 -7
- package/dist/core/security/index.js +0 -35
- package/dist/core/security/index.js.map +0 -7
- package/dist/core/security/input-sanitizer.js +0 -321
- package/dist/core/security/input-sanitizer.js.map +0 -7
- package/dist/core/session/clear-survival.js +0 -465
- package/dist/core/session/clear-survival.js.map +0 -7
- package/dist/core/session/enhanced-handoff.js +0 -792
- package/dist/core/session/enhanced-handoff.js.map +0 -7
- package/dist/core/session/handoff-generator.js +0 -343
- package/dist/core/session/handoff-generator.js.map +0 -7
- package/dist/core/session/index.js +0 -15
- package/dist/core/session/index.js.map +0 -7
- package/dist/core/session/session-manager.js +0 -347
- package/dist/core/session/session-manager.js.map +0 -7
- package/dist/core/skills/index.js +0 -7
- package/dist/core/skills/index.js.map +0 -7
- package/dist/core/skills/skill-storage.js +0 -764
- package/dist/core/skills/skill-storage.js.map +0 -7
- package/dist/core/skills/types.js +0 -193
- package/dist/core/skills/types.js.map +0 -7
- package/dist/core/storage/chromadb-adapter.js +0 -354
- package/dist/core/storage/chromadb-adapter.js.map +0 -7
- package/dist/core/storage/infinite-storage.js +0 -510
- package/dist/core/storage/infinite-storage.js.map +0 -7
- package/dist/core/storage/railway-optimized-storage.js +0 -591
- package/dist/core/storage/railway-optimized-storage.js.map +0 -7
- package/dist/core/storage/remote-storage.js +0 -489
- package/dist/core/storage/remote-storage.js.map +0 -7
- package/dist/core/storage/two-tier-storage.js +0 -766
- package/dist/core/storage/two-tier-storage.js.map +0 -7
- package/dist/core/trace/cli-trace-wrapper.js +0 -132
- package/dist/core/trace/cli-trace-wrapper.js.map +0 -7
- package/dist/core/trace/db-trace-wrapper.js +0 -247
- package/dist/core/trace/db-trace-wrapper.js.map +0 -7
- package/dist/core/trace/debug-trace.js +0 -417
- package/dist/core/trace/debug-trace.js.map +0 -7
- package/dist/core/trace/index.js +0 -109
- package/dist/core/trace/index.js.map +0 -7
- package/dist/core/trace/linear-api-wrapper.js +0 -178
- package/dist/core/trace/linear-api-wrapper.js.map +0 -7
- package/dist/core/trace/trace-demo.js +0 -154
- package/dist/core/trace/trace-demo.js.map +0 -7
- package/dist/core/trace/trace-detector.demo.js +0 -142
- package/dist/core/trace/trace-detector.demo.js.map +0 -7
- package/dist/core/trace/trace-detector.js +0 -528
- package/dist/core/trace/trace-detector.js.map +0 -7
- package/dist/core/trace/trace-store.js +0 -345
- package/dist/core/trace/trace-store.js.map +0 -7
- package/dist/core/trace/types.js +0 -77
- package/dist/core/trace/types.js.map +0 -7
- package/dist/core/types.js +0 -5
- package/dist/core/types.js.map +0 -7
- package/dist/core/utils/async-mutex.js +0 -114
- package/dist/core/utils/async-mutex.js.map +0 -7
- package/dist/core/utils/compression.js +0 -83
- package/dist/core/utils/compression.js.map +0 -7
- package/dist/core/utils/update-checker.js +0 -218
- package/dist/core/utils/update-checker.js.map +0 -7
- package/dist/core/worktree/worktree-manager.js +0 -465
- package/dist/core/worktree/worktree-manager.js.map +0 -7
- package/dist/daemon/daemon-config.js +0 -149
- package/dist/daemon/daemon-config.js.map +0 -7
- package/dist/daemon/services/context-service.js +0 -122
- package/dist/daemon/services/context-service.js.map +0 -7
- package/dist/daemon/services/linear-service.js +0 -136
- package/dist/daemon/services/linear-service.js.map +0 -7
- package/dist/daemon/session-daemon.js +0 -312
- package/dist/daemon/session-daemon.js.map +0 -7
- package/dist/daemon/unified-daemon.js +0 -276
- package/dist/daemon/unified-daemon.js.map +0 -7
- package/dist/features/analytics/api/analytics-api.js +0 -287
- package/dist/features/analytics/api/analytics-api.js.map +0 -7
- package/dist/features/analytics/core/analytics-service.js +0 -282
- package/dist/features/analytics/core/analytics-service.js.map +0 -7
- package/dist/features/analytics/index.js +0 -18
- package/dist/features/analytics/index.js.map +0 -7
- package/dist/features/analytics/queries/metrics-queries.js +0 -277
- package/dist/features/analytics/queries/metrics-queries.js.map +0 -7
- package/dist/features/analytics/types/metrics.js +0 -5
- package/dist/features/analytics/types/metrics.js.map +0 -7
- package/dist/features/browser/browser-mcp.js +0 -492
- package/dist/features/browser/browser-mcp.js.map +0 -7
- package/dist/features/sweep/index.js +0 -20
- package/dist/features/sweep/index.js.map +0 -7
- package/dist/features/sweep/prediction-client.js +0 -155
- package/dist/features/sweep/prediction-client.js.map +0 -7
- package/dist/features/sweep/prompt-builder.js +0 -85
- package/dist/features/sweep/prompt-builder.js.map +0 -7
- package/dist/features/sweep/pty-wrapper.js +0 -171
- package/dist/features/sweep/pty-wrapper.js.map +0 -7
- package/dist/features/sweep/state-watcher.js +0 -87
- package/dist/features/sweep/state-watcher.js.map +0 -7
- package/dist/features/sweep/status-bar.js +0 -88
- package/dist/features/sweep/status-bar.js.map +0 -7
- package/dist/features/sweep/sweep-server-manager.js +0 -226
- package/dist/features/sweep/sweep-server-manager.js.map +0 -7
- package/dist/features/sweep/tab-interceptor.js +0 -38
- package/dist/features/sweep/tab-interceptor.js.map +0 -7
- package/dist/features/sweep/types.js +0 -18
- package/dist/features/sweep/types.js.map +0 -7
- package/dist/features/tasks/linear-task-manager.js +0 -487
- package/dist/features/tasks/linear-task-manager.js.map +0 -7
- package/dist/features/tasks/task-aware-context.js +0 -410
- package/dist/features/tasks/task-aware-context.js.map +0 -7
- package/dist/features/tui/simple-monitor.js +0 -116
- package/dist/features/tui/simple-monitor.js.map +0 -7
- package/dist/features/tui/swarm-monitor.js +0 -648
- package/dist/features/tui/swarm-monitor.js.map +0 -7
- package/dist/features/web/client/stores/task-store.js +0 -26
- package/dist/features/web/client/stores/task-store.js.map +0 -7
- package/dist/features/web/server/index.js +0 -194
- package/dist/features/web/server/index.js.map +0 -7
- package/dist/hooks/auto-background.js +0 -151
- package/dist/hooks/auto-background.js.map +0 -7
- package/dist/hooks/claude-code-whatsapp-hook.js +0 -197
- package/dist/hooks/claude-code-whatsapp-hook.js.map +0 -7
- package/dist/hooks/config.js +0 -150
- package/dist/hooks/config.js.map +0 -7
- package/dist/hooks/daemon.js +0 -364
- package/dist/hooks/daemon.js.map +0 -7
- package/dist/hooks/events.js +0 -58
- package/dist/hooks/events.js.map +0 -7
- package/dist/hooks/index.js +0 -12
- package/dist/hooks/index.js.map +0 -7
- package/dist/hooks/linear-task-picker.js +0 -186
- package/dist/hooks/linear-task-picker.js.map +0 -7
- package/dist/hooks/schemas.js +0 -197
- package/dist/hooks/schemas.js.map +0 -7
- package/dist/hooks/secure-fs.js +0 -49
- package/dist/hooks/secure-fs.js.map +0 -7
- package/dist/hooks/security-logger.js +0 -155
- package/dist/hooks/security-logger.js.map +0 -7
- package/dist/hooks/session-summary.js +0 -222
- package/dist/hooks/session-summary.js.map +0 -7
- package/dist/hooks/sms-action-runner.js +0 -371
- package/dist/hooks/sms-action-runner.js.map +0 -7
- package/dist/hooks/sms-notify.js +0 -506
- package/dist/hooks/sms-notify.js.map +0 -7
- package/dist/hooks/sms-watcher.js +0 -93
- package/dist/hooks/sms-watcher.js.map +0 -7
- package/dist/hooks/sms-webhook.js +0 -555
- package/dist/hooks/sms-webhook.js.map +0 -7
- package/dist/hooks/whatsapp-commands.js +0 -479
- package/dist/hooks/whatsapp-commands.js.map +0 -7
- package/dist/hooks/whatsapp-scheduler.js +0 -317
- package/dist/hooks/whatsapp-scheduler.js.map +0 -7
- package/dist/hooks/whatsapp-sync.js +0 -409
- package/dist/hooks/whatsapp-sync.js.map +0 -7
- package/dist/index.js +0 -25
- package/dist/index.js.map +0 -7
- package/dist/integrations/anthropic/client.js +0 -263
- package/dist/integrations/anthropic/client.js.map +0 -7
- package/dist/integrations/claude-code/agent-bridge.js +0 -768
- package/dist/integrations/claude-code/agent-bridge.js.map +0 -7
- package/dist/integrations/claude-code/enhanced-pre-clear-hooks.js +0 -459
- package/dist/integrations/claude-code/enhanced-pre-clear-hooks.js.map +0 -7
- package/dist/integrations/claude-code/lifecycle-hooks.js +0 -254
- package/dist/integrations/claude-code/lifecycle-hooks.js.map +0 -7
- package/dist/integrations/claude-code/post-task-hooks.js +0 -545
- package/dist/integrations/claude-code/post-task-hooks.js.map +0 -7
- package/dist/integrations/claude-code/subagent-client-stub.js +0 -20
- package/dist/integrations/claude-code/subagent-client-stub.js.map +0 -7
- package/dist/integrations/claude-code/subagent-client.js +0 -511
- package/dist/integrations/claude-code/subagent-client.js.map +0 -7
- package/dist/integrations/claude-code/task-coordinator.js +0 -360
- package/dist/integrations/claude-code/task-coordinator.js.map +0 -7
- package/dist/integrations/linear/auth.js +0 -337
- package/dist/integrations/linear/auth.js.map +0 -7
- package/dist/integrations/linear/auto-sync.js +0 -258
- package/dist/integrations/linear/auto-sync.js.map +0 -7
- package/dist/integrations/linear/client.js +0 -634
- package/dist/integrations/linear/client.js.map +0 -7
- package/dist/integrations/linear/config.js +0 -130
- package/dist/integrations/linear/config.js.map +0 -7
- package/dist/integrations/linear/migration.js +0 -361
- package/dist/integrations/linear/migration.js.map +0 -7
- package/dist/integrations/linear/oauth-server.js +0 -454
- package/dist/integrations/linear/oauth-server.js.map +0 -7
- package/dist/integrations/linear/rest-client.js +0 -213
- package/dist/integrations/linear/rest-client.js.map +0 -7
- package/dist/integrations/linear/sync-manager.js +0 -236
- package/dist/integrations/linear/sync-manager.js.map +0 -7
- package/dist/integrations/linear/sync-service.js +0 -231
- package/dist/integrations/linear/sync-service.js.map +0 -7
- package/dist/integrations/linear/sync.js +0 -782
- package/dist/integrations/linear/sync.js.map +0 -7
- package/dist/integrations/linear/types.js +0 -5
- package/dist/integrations/linear/types.js.map +0 -7
- package/dist/integrations/linear/unified-sync.js +0 -589
- package/dist/integrations/linear/unified-sync.js.map +0 -7
- package/dist/integrations/linear/webhook-handler.js +0 -219
- package/dist/integrations/linear/webhook-handler.js.map +0 -7
- package/dist/integrations/linear/webhook-server.js +0 -218
- package/dist/integrations/linear/webhook-server.js.map +0 -7
- package/dist/integrations/linear/webhook.js +0 -291
- package/dist/integrations/linear/webhook.js.map +0 -7
- package/dist/integrations/mcp/handlers/code-execution-handlers.js +0 -266
- package/dist/integrations/mcp/handlers/code-execution-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/context-handlers.js +0 -257
- package/dist/integrations/mcp/handlers/context-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/discovery-handlers.js +0 -497
- package/dist/integrations/mcp/handlers/discovery-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/index.js +0 -166
- package/dist/integrations/mcp/handlers/index.js.map +0 -7
- package/dist/integrations/mcp/handlers/linear-handlers.js +0 -247
- package/dist/integrations/mcp/handlers/linear-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/skill-handlers.js +0 -529
- package/dist/integrations/mcp/handlers/skill-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/task-handlers.js +0 -239
- package/dist/integrations/mcp/handlers/task-handlers.js.map +0 -7
- package/dist/integrations/mcp/handlers/trace-handlers.js +0 -308
- package/dist/integrations/mcp/handlers/trace-handlers.js.map +0 -7
- package/dist/integrations/mcp/index.js +0 -23
- package/dist/integrations/mcp/index.js.map +0 -7
- package/dist/integrations/mcp/middleware/tool-scoring.js +0 -356
- package/dist/integrations/mcp/middleware/tool-scoring.js.map +0 -7
- package/dist/integrations/mcp/refactored-server.js +0 -374
- package/dist/integrations/mcp/refactored-server.js.map +0 -7
- package/dist/integrations/mcp/remote-server.js +0 -682
- package/dist/integrations/mcp/remote-server.js.map +0 -7
- package/dist/integrations/mcp/schemas.js +0 -147
- package/dist/integrations/mcp/schemas.js.map +0 -7
- package/dist/integrations/mcp/server.js +0 -1975
- package/dist/integrations/mcp/server.js.map +0 -7
- package/dist/integrations/mcp/tool-definitions-code.js +0 -125
- package/dist/integrations/mcp/tool-definitions-code.js.map +0 -7
- package/dist/integrations/mcp/tool-definitions.js +0 -702
- package/dist/integrations/mcp/tool-definitions.js.map +0 -7
- package/dist/integrations/mcp/trace-test.js +0 -48
- package/dist/integrations/mcp/trace-test.js.map +0 -7
- package/dist/integrations/pg-aiguide/embedding-provider.js +0 -189
- package/dist/integrations/pg-aiguide/embedding-provider.js.map +0 -7
- package/dist/integrations/pg-aiguide/semantic-search.js +0 -187
- package/dist/integrations/pg-aiguide/semantic-search.js.map +0 -7
- package/dist/integrations/pg-aiguide/timescale-analytics.js +0 -224
- package/dist/integrations/pg-aiguide/timescale-analytics.js.map +0 -7
- package/dist/integrations/ralph/bridge/ralph-stackmemory-bridge.js +0 -860
- package/dist/integrations/ralph/bridge/ralph-stackmemory-bridge.js.map +0 -7
- package/dist/integrations/ralph/context/context-budget-manager.js +0 -301
- package/dist/integrations/ralph/context/context-budget-manager.js.map +0 -7
- package/dist/integrations/ralph/context/stackmemory-context-loader.js +0 -360
- package/dist/integrations/ralph/context/stackmemory-context-loader.js.map +0 -7
- package/dist/integrations/ralph/coordination/enhanced-coordination.js +0 -410
- package/dist/integrations/ralph/coordination/enhanced-coordination.js.map +0 -7
- package/dist/integrations/ralph/index.js +0 -18
- package/dist/integrations/ralph/index.js.map +0 -7
- package/dist/integrations/ralph/learning/pattern-learner.js +0 -401
- package/dist/integrations/ralph/learning/pattern-learner.js.map +0 -7
- package/dist/integrations/ralph/lifecycle/iteration-lifecycle.js +0 -448
- package/dist/integrations/ralph/lifecycle/iteration-lifecycle.js.map +0 -7
- package/dist/integrations/ralph/monitoring/swarm-dashboard.js +0 -294
- package/dist/integrations/ralph/monitoring/swarm-dashboard.js.map +0 -7
- package/dist/integrations/ralph/monitoring/swarm-registry.js +0 -108
- package/dist/integrations/ralph/monitoring/swarm-registry.js.map +0 -7
- package/dist/integrations/ralph/orchestration/multi-loop-orchestrator.js +0 -463
- package/dist/integrations/ralph/orchestration/multi-loop-orchestrator.js.map +0 -7
- package/dist/integrations/ralph/patterns/compounding-engineering-pattern.js +0 -400
- package/dist/integrations/ralph/patterns/compounding-engineering-pattern.js.map +0 -7
- package/dist/integrations/ralph/patterns/extended-coherence-sessions.js +0 -473
- package/dist/integrations/ralph/patterns/extended-coherence-sessions.js.map +0 -7
- package/dist/integrations/ralph/patterns/oracle-worker-pattern.js +0 -388
- package/dist/integrations/ralph/patterns/oracle-worker-pattern.js.map +0 -7
- package/dist/integrations/ralph/performance/performance-optimizer.js +0 -358
- package/dist/integrations/ralph/performance/performance-optimizer.js.map +0 -7
- package/dist/integrations/ralph/ralph-integration-demo.js +0 -182
- package/dist/integrations/ralph/ralph-integration-demo.js.map +0 -7
- package/dist/integrations/ralph/recovery/crash-recovery.js +0 -462
- package/dist/integrations/ralph/recovery/crash-recovery.js.map +0 -7
- package/dist/integrations/ralph/state/state-reconciler.js +0 -404
- package/dist/integrations/ralph/state/state-reconciler.js.map +0 -7
- package/dist/integrations/ralph/swarm/git-workflow-manager.js +0 -428
- package/dist/integrations/ralph/swarm/git-workflow-manager.js.map +0 -7
- package/dist/integrations/ralph/swarm/swarm-coordinator.js +0 -996
- package/dist/integrations/ralph/swarm/swarm-coordinator.js.map +0 -7
- package/dist/integrations/ralph/types.js +0 -5
- package/dist/integrations/ralph/types.js.map +0 -7
- package/dist/integrations/ralph/visualization/ralph-debugger.js +0 -585
- package/dist/integrations/ralph/visualization/ralph-debugger.js.map +0 -7
- package/dist/mcp/stackmemory-mcp-server.js +0 -554
- package/dist/mcp/stackmemory-mcp-server.js.map +0 -7
- package/dist/middleware/exponential-rate-limiter.js +0 -289
- package/dist/middleware/exponential-rate-limiter.js.map +0 -7
- package/dist/models/user.model.js +0 -358
- package/dist/models/user.model.js.map +0 -7
- package/dist/servers/production/auth-middleware.js +0 -528
- package/dist/servers/production/auth-middleware.js.map +0 -7
- package/dist/servers/railway/config.js +0 -55
- package/dist/servers/railway/config.js.map +0 -7
- package/dist/servers/railway/index-enhanced.js +0 -160
- package/dist/servers/railway/index-enhanced.js.map +0 -7
- package/dist/servers/railway/index.js +0 -1349
- package/dist/servers/railway/index.js.map +0 -7
- package/dist/servers/railway/simple.js +0 -64
- package/dist/servers/railway/simple.js.map +0 -7
- package/dist/servers/railway/storage-test.js +0 -459
- package/dist/servers/railway/storage-test.js.map +0 -7
- package/dist/services/config-service.js +0 -65
- package/dist/services/config-service.js.map +0 -7
- package/dist/services/context-service.js +0 -194
- package/dist/services/context-service.js.map +0 -7
- package/dist/skills/api-discovery.js +0 -354
- package/dist/skills/api-discovery.js.map +0 -7
- package/dist/skills/api-skill.js +0 -475
- package/dist/skills/api-skill.js.map +0 -7
- package/dist/skills/claude-skills.js +0 -1061
- package/dist/skills/claude-skills.js.map +0 -7
- package/dist/skills/dashboard-launcher.js +0 -216
- package/dist/skills/dashboard-launcher.js.map +0 -7
- package/dist/skills/recursive-agent-orchestrator.js +0 -575
- package/dist/skills/recursive-agent-orchestrator.js.map +0 -7
- package/dist/skills/repo-ingestion-skill.js +0 -609
- package/dist/skills/repo-ingestion-skill.js.map +0 -7
- package/dist/skills/security-secrets-scanner.js +0 -284
- package/dist/skills/security-secrets-scanner.js.map +0 -7
- package/dist/skills/unified-rlm-orchestrator.js +0 -404
- package/dist/skills/unified-rlm-orchestrator.js.map +0 -7
- package/dist/types/task.js +0 -5
- package/dist/types/task.js.map +0 -7
- package/dist/utils/env.js +0 -50
- package/dist/utils/env.js.map +0 -7
- package/dist/utils/formatting.js +0 -62
- package/dist/utils/formatting.js.map +0 -7
- package/dist/utils/process-cleanup.js +0 -136
- package/dist/utils/process-cleanup.js.map +0 -7
- package/dist/validation/schemas.js +0 -222
- package/dist/validation/schemas.js.map +0 -7
- /package/dist/{core/merge → src/core/extensions}/types.js +0 -0
- /package/dist/{core/merge → src/core/extensions}/types.js.map +0 -0
|
@@ -1,166 +0,0 @@
|
|
|
1
|
-
import { fileURLToPath as __fileURLToPath } from 'url';
|
|
2
|
-
import { dirname as __pathDirname } from 'path';
|
|
3
|
-
const __filename = __fileURLToPath(import.meta.url);
|
|
4
|
-
const __dirname = __pathDirname(__filename);
|
|
5
|
-
import {
|
|
6
|
-
ContextHandlers
|
|
7
|
-
} from "./context-handlers.js";
|
|
8
|
-
import { TaskHandlers } from "./task-handlers.js";
|
|
9
|
-
import {
|
|
10
|
-
LinearHandlers
|
|
11
|
-
} from "./linear-handlers.js";
|
|
12
|
-
import {
|
|
13
|
-
TraceHandlers
|
|
14
|
-
} from "./trace-handlers.js";
|
|
15
|
-
import {
|
|
16
|
-
DiscoveryHandlers
|
|
17
|
-
} from "./discovery-handlers.js";
|
|
18
|
-
import {
|
|
19
|
-
ContextHandlers as ContextHandlers2
|
|
20
|
-
} from "./context-handlers.js";
|
|
21
|
-
import { TaskHandlers as TaskHandlers2 } from "./task-handlers.js";
|
|
22
|
-
import {
|
|
23
|
-
LinearHandlers as LinearHandlers2
|
|
24
|
-
} from "./linear-handlers.js";
|
|
25
|
-
import { TraceHandlers as TraceHandlers2 } from "./trace-handlers.js";
|
|
26
|
-
class MCPHandlerFactory {
|
|
27
|
-
contextHandlers;
|
|
28
|
-
taskHandlers;
|
|
29
|
-
linearHandlers;
|
|
30
|
-
traceHandlers;
|
|
31
|
-
constructor(deps) {
|
|
32
|
-
this.contextHandlers = new ContextHandlers2({
|
|
33
|
-
frameManager: deps.frameManager,
|
|
34
|
-
contextRetrieval: deps.contextRetrieval
|
|
35
|
-
});
|
|
36
|
-
this.taskHandlers = new TaskHandlers2({
|
|
37
|
-
taskStore: deps.taskStore,
|
|
38
|
-
projectId: deps.projectId
|
|
39
|
-
});
|
|
40
|
-
this.linearHandlers = new LinearHandlers2({
|
|
41
|
-
linearAuthManager: deps.linearAuthManager,
|
|
42
|
-
linearSync: deps.linearSync,
|
|
43
|
-
taskStore: deps.taskStore
|
|
44
|
-
});
|
|
45
|
-
this.traceHandlers = new TraceHandlers2({
|
|
46
|
-
traceDetector: deps.traceDetector,
|
|
47
|
-
browserMCP: deps.browserMCP
|
|
48
|
-
});
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Get handler for a specific tool
|
|
52
|
-
*/
|
|
53
|
-
getHandler(toolName) {
|
|
54
|
-
switch (toolName) {
|
|
55
|
-
// Context handlers
|
|
56
|
-
case "get_context":
|
|
57
|
-
return this.contextHandlers.handleGetContext.bind(this.contextHandlers);
|
|
58
|
-
case "add_decision":
|
|
59
|
-
return this.contextHandlers.handleAddDecision.bind(
|
|
60
|
-
this.contextHandlers
|
|
61
|
-
);
|
|
62
|
-
case "start_frame":
|
|
63
|
-
return this.contextHandlers.handleStartFrame.bind(this.contextHandlers);
|
|
64
|
-
case "close_frame":
|
|
65
|
-
return this.contextHandlers.handleCloseFrame.bind(this.contextHandlers);
|
|
66
|
-
case "add_anchor":
|
|
67
|
-
return this.contextHandlers.handleAddAnchor.bind(this.contextHandlers);
|
|
68
|
-
case "get_hot_stack":
|
|
69
|
-
return this.contextHandlers.handleGetHotStack.bind(
|
|
70
|
-
this.contextHandlers
|
|
71
|
-
);
|
|
72
|
-
// Task handlers
|
|
73
|
-
case "create_task":
|
|
74
|
-
return this.taskHandlers.handleCreateTask.bind(this.taskHandlers);
|
|
75
|
-
case "update_task_status":
|
|
76
|
-
return this.taskHandlers.handleUpdateTaskStatus.bind(this.taskHandlers);
|
|
77
|
-
case "get_active_tasks":
|
|
78
|
-
return this.taskHandlers.handleGetActiveTasks.bind(this.taskHandlers);
|
|
79
|
-
case "get_task_metrics":
|
|
80
|
-
return this.taskHandlers.handleGetTaskMetrics.bind(this.taskHandlers);
|
|
81
|
-
case "add_task_dependency":
|
|
82
|
-
return this.taskHandlers.handleAddTaskDependency.bind(
|
|
83
|
-
this.taskHandlers
|
|
84
|
-
);
|
|
85
|
-
// Linear handlers
|
|
86
|
-
case "linear_sync":
|
|
87
|
-
return this.linearHandlers.handleLinearSync.bind(this.linearHandlers);
|
|
88
|
-
case "linear_update_task":
|
|
89
|
-
return this.linearHandlers.handleLinearUpdateTask.bind(
|
|
90
|
-
this.linearHandlers
|
|
91
|
-
);
|
|
92
|
-
case "linear_get_tasks":
|
|
93
|
-
return this.linearHandlers.handleLinearGetTasks.bind(
|
|
94
|
-
this.linearHandlers
|
|
95
|
-
);
|
|
96
|
-
case "linear_status":
|
|
97
|
-
return this.linearHandlers.handleLinearStatus.bind(this.linearHandlers);
|
|
98
|
-
// Trace handlers
|
|
99
|
-
case "get_traces":
|
|
100
|
-
return this.traceHandlers.handleGetTraces.bind(this.traceHandlers);
|
|
101
|
-
case "analyze_traces":
|
|
102
|
-
return this.traceHandlers.handleAnalyzeTraces.bind(this.traceHandlers);
|
|
103
|
-
case "start_browser_debug":
|
|
104
|
-
return this.traceHandlers.handleStartBrowserDebug.bind(
|
|
105
|
-
this.traceHandlers
|
|
106
|
-
);
|
|
107
|
-
case "take_screenshot":
|
|
108
|
-
return this.traceHandlers.handleTakeScreenshot.bind(this.traceHandlers);
|
|
109
|
-
case "execute_script":
|
|
110
|
-
return this.traceHandlers.handleExecuteScript.bind(this.traceHandlers);
|
|
111
|
-
case "stop_browser_debug":
|
|
112
|
-
return this.traceHandlers.handleStopBrowserDebug.bind(
|
|
113
|
-
this.traceHandlers
|
|
114
|
-
);
|
|
115
|
-
default:
|
|
116
|
-
throw new Error(`Unknown tool: ${toolName}`);
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Get all available tool names
|
|
121
|
-
*/
|
|
122
|
-
getAvailableTools() {
|
|
123
|
-
return [
|
|
124
|
-
// Context tools
|
|
125
|
-
"get_context",
|
|
126
|
-
"add_decision",
|
|
127
|
-
"start_frame",
|
|
128
|
-
"close_frame",
|
|
129
|
-
"add_anchor",
|
|
130
|
-
"get_hot_stack",
|
|
131
|
-
// Task tools
|
|
132
|
-
"create_task",
|
|
133
|
-
"update_task_status",
|
|
134
|
-
"get_active_tasks",
|
|
135
|
-
"get_task_metrics",
|
|
136
|
-
"add_task_dependency",
|
|
137
|
-
// Linear tools
|
|
138
|
-
"linear_sync",
|
|
139
|
-
"linear_update_task",
|
|
140
|
-
"linear_get_tasks",
|
|
141
|
-
"linear_status",
|
|
142
|
-
// Trace tools
|
|
143
|
-
"get_traces",
|
|
144
|
-
"analyze_traces",
|
|
145
|
-
"start_browser_debug",
|
|
146
|
-
"take_screenshot",
|
|
147
|
-
"execute_script",
|
|
148
|
-
"stop_browser_debug"
|
|
149
|
-
];
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Check if a tool exists
|
|
153
|
-
*/
|
|
154
|
-
hasHandler(toolName) {
|
|
155
|
-
return this.getAvailableTools().includes(toolName);
|
|
156
|
-
}
|
|
157
|
-
}
|
|
158
|
-
export {
|
|
159
|
-
ContextHandlers,
|
|
160
|
-
DiscoveryHandlers,
|
|
161
|
-
LinearHandlers,
|
|
162
|
-
MCPHandlerFactory,
|
|
163
|
-
TaskHandlers,
|
|
164
|
-
TraceHandlers
|
|
165
|
-
};
|
|
166
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/integrations/mcp/handlers/index.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * MCP Handler Modules\n * Centralized exports for all MCP tool handlers\n */\n\nexport {\n ContextHandlers,\n type ContextHandlerDependencies,\n} from './context-handlers.js';\nexport { TaskHandlers, type TaskHandlerDependencies } from './task-handlers.js';\nexport {\n LinearHandlers,\n type LinearHandlerDependencies,\n} from './linear-handlers.js';\nexport {\n TraceHandlers,\n type TraceHandlerDependencies,\n} from './trace-handlers.js';\nexport {\n DiscoveryHandlers,\n type DiscoveryDependencies,\n} from './discovery-handlers.js';\n\nimport {\n ContextHandlers,\n ContextHandlerDependencies,\n} from './context-handlers.js';\nimport { TaskHandlers, TaskHandlerDependencies } from './task-handlers.js';\nimport {\n LinearHandlers,\n LinearHandlerDependencies,\n} from './linear-handlers.js';\nimport { TraceHandlers, TraceHandlerDependencies } from './trace-handlers.js';\n\n// Combined dependencies interface\nexport interface MCPHandlerDependencies\n extends\n ContextHandlerDependencies,\n TaskHandlerDependencies,\n LinearHandlerDependencies,\n TraceHandlerDependencies {}\n\n/**\n * Handler factory that creates all MCP tool handlers\n */\nexport class MCPHandlerFactory {\n private contextHandlers: ContextHandlers;\n private taskHandlers: TaskHandlers;\n private linearHandlers: LinearHandlers;\n private traceHandlers: TraceHandlers;\n\n constructor(deps: MCPHandlerDependencies) {\n this.contextHandlers = new ContextHandlers({\n frameManager: deps.frameManager,\n contextRetrieval: deps.contextRetrieval,\n });\n\n this.taskHandlers = new TaskHandlers({\n taskStore: deps.taskStore,\n projectId: deps.projectId,\n });\n\n this.linearHandlers = new LinearHandlers({\n linearAuthManager: deps.linearAuthManager,\n linearSync: deps.linearSync,\n taskStore: deps.taskStore,\n });\n\n this.traceHandlers = new TraceHandlers({\n traceDetector: deps.traceDetector,\n browserMCP: deps.browserMCP,\n });\n }\n\n /**\n * Get handler for a specific tool\n */\n getHandler(toolName: string): (args: any) => Promise<any> {\n switch (toolName) {\n // Context handlers\n case 'get_context':\n return this.contextHandlers.handleGetContext.bind(this.contextHandlers);\n case 'add_decision':\n return this.contextHandlers.handleAddDecision.bind(\n this.contextHandlers\n );\n case 'start_frame':\n return this.contextHandlers.handleStartFrame.bind(this.contextHandlers);\n case 'close_frame':\n return this.contextHandlers.handleCloseFrame.bind(this.contextHandlers);\n case 'add_anchor':\n return this.contextHandlers.handleAddAnchor.bind(this.contextHandlers);\n case 'get_hot_stack':\n return this.contextHandlers.handleGetHotStack.bind(\n this.contextHandlers\n );\n\n // Task handlers\n case 'create_task':\n return this.taskHandlers.handleCreateTask.bind(this.taskHandlers);\n case 'update_task_status':\n return this.taskHandlers.handleUpdateTaskStatus.bind(this.taskHandlers);\n case 'get_active_tasks':\n return this.taskHandlers.handleGetActiveTasks.bind(this.taskHandlers);\n case 'get_task_metrics':\n return this.taskHandlers.handleGetTaskMetrics.bind(this.taskHandlers);\n case 'add_task_dependency':\n return this.taskHandlers.handleAddTaskDependency.bind(\n this.taskHandlers\n );\n\n // Linear handlers\n case 'linear_sync':\n return this.linearHandlers.handleLinearSync.bind(this.linearHandlers);\n case 'linear_update_task':\n return this.linearHandlers.handleLinearUpdateTask.bind(\n this.linearHandlers\n );\n case 'linear_get_tasks':\n return this.linearHandlers.handleLinearGetTasks.bind(\n this.linearHandlers\n );\n case 'linear_status':\n return this.linearHandlers.handleLinearStatus.bind(this.linearHandlers);\n\n // Trace handlers\n case 'get_traces':\n return this.traceHandlers.handleGetTraces.bind(this.traceHandlers);\n case 'analyze_traces':\n return this.traceHandlers.handleAnalyzeTraces.bind(this.traceHandlers);\n case 'start_browser_debug':\n return this.traceHandlers.handleStartBrowserDebug.bind(\n this.traceHandlers\n );\n case 'take_screenshot':\n return this.traceHandlers.handleTakeScreenshot.bind(this.traceHandlers);\n case 'execute_script':\n return this.traceHandlers.handleExecuteScript.bind(this.traceHandlers);\n case 'stop_browser_debug':\n return this.traceHandlers.handleStopBrowserDebug.bind(\n this.traceHandlers\n );\n\n default:\n throw new Error(`Unknown tool: ${toolName}`);\n }\n }\n\n /**\n * Get all available tool names\n */\n getAvailableTools(): string[] {\n return [\n // Context tools\n 'get_context',\n 'add_decision',\n 'start_frame',\n 'close_frame',\n 'add_anchor',\n 'get_hot_stack',\n\n // Task tools\n 'create_task',\n 'update_task_status',\n 'get_active_tasks',\n 'get_task_metrics',\n 'add_task_dependency',\n\n // Linear tools\n 'linear_sync',\n 'linear_update_task',\n 'linear_get_tasks',\n 'linear_status',\n\n // Trace tools\n 'get_traces',\n 'analyze_traces',\n 'start_browser_debug',\n 'take_screenshot',\n 'execute_script',\n 'stop_browser_debug',\n ];\n }\n\n /**\n * Check if a tool exists\n */\n hasHandler(toolName: string): boolean {\n return this.getAvailableTools().includes(toolName);\n }\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["ContextHandlers", "TaskHandlers", "LinearHandlers", "TraceHandlers"]
|
|
7
|
-
}
|
|
@@ -1,247 +0,0 @@
|
|
|
1
|
-
import { fileURLToPath as __fileURLToPath } from 'url';
|
|
2
|
-
import { dirname as __pathDirname } from 'path';
|
|
3
|
-
const __filename = __fileURLToPath(import.meta.url);
|
|
4
|
-
const __dirname = __pathDirname(__filename);
|
|
5
|
-
import { logger } from "../../../core/monitoring/logger.js";
|
|
6
|
-
class LinearHandlers {
|
|
7
|
-
constructor(deps) {
|
|
8
|
-
this.deps = deps;
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* Sync tasks with Linear
|
|
12
|
-
*/
|
|
13
|
-
async handleLinearSync(args) {
|
|
14
|
-
try {
|
|
15
|
-
const { direction = "both", force = false } = args;
|
|
16
|
-
try {
|
|
17
|
-
await this.deps.linearAuthManager.getValidToken();
|
|
18
|
-
} catch {
|
|
19
|
-
return {
|
|
20
|
-
content: [
|
|
21
|
-
{
|
|
22
|
-
type: "text",
|
|
23
|
-
text: "Linear auth required. Please run: stackmemory linear setup"
|
|
24
|
-
}
|
|
25
|
-
],
|
|
26
|
-
metadata: {
|
|
27
|
-
authRequired: true
|
|
28
|
-
}
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
logger.info("Starting Linear sync", { direction, force });
|
|
32
|
-
const result = await this.deps.linearSync.sync();
|
|
33
|
-
const syncText = `Linear Sync Complete:
|
|
34
|
-
- To Linear: ${result.synced.toLinear} tasks
|
|
35
|
-
- From Linear: ${result.synced.fromLinear} tasks
|
|
36
|
-
- Updated: ${result.synced.updated} tasks
|
|
37
|
-
- Errors: ${result.errors.length}`;
|
|
38
|
-
return {
|
|
39
|
-
content: [
|
|
40
|
-
{
|
|
41
|
-
type: "text",
|
|
42
|
-
text: syncText
|
|
43
|
-
}
|
|
44
|
-
],
|
|
45
|
-
metadata: result
|
|
46
|
-
};
|
|
47
|
-
} catch (error) {
|
|
48
|
-
logger.error("Linear sync failed", error instanceof Error ? error : new Error(String(error)));
|
|
49
|
-
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
50
|
-
if (errorMessage?.includes("unauthorized") || errorMessage?.includes("auth")) {
|
|
51
|
-
return {
|
|
52
|
-
content: [
|
|
53
|
-
{
|
|
54
|
-
type: "text",
|
|
55
|
-
text: "Linear authentication failed. Please run: stackmemory linear setup"
|
|
56
|
-
}
|
|
57
|
-
],
|
|
58
|
-
metadata: {
|
|
59
|
-
authError: true
|
|
60
|
-
}
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
throw error;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Update Linear task status
|
|
68
|
-
*/
|
|
69
|
-
async handleLinearUpdateTask(args) {
|
|
70
|
-
try {
|
|
71
|
-
const { linear_id, status, assignee_id, priority, labels } = args;
|
|
72
|
-
if (!linear_id) {
|
|
73
|
-
throw new Error("Linear ID is required");
|
|
74
|
-
}
|
|
75
|
-
try {
|
|
76
|
-
await this.deps.linearAuthManager.getValidToken();
|
|
77
|
-
} catch {
|
|
78
|
-
throw new Error("Linear authentication required");
|
|
79
|
-
}
|
|
80
|
-
const updateData = {};
|
|
81
|
-
if (status) {
|
|
82
|
-
updateData.status = status;
|
|
83
|
-
}
|
|
84
|
-
if (assignee_id) {
|
|
85
|
-
updateData.assigneeId = assignee_id;
|
|
86
|
-
}
|
|
87
|
-
if (priority) {
|
|
88
|
-
updateData.priority = priority;
|
|
89
|
-
}
|
|
90
|
-
if (labels) {
|
|
91
|
-
updateData.labels = Array.isArray(labels) ? labels : [labels];
|
|
92
|
-
}
|
|
93
|
-
const result = { success: true };
|
|
94
|
-
logger.info("Updated Linear task", { linearId: linear_id, updates: updateData });
|
|
95
|
-
return {
|
|
96
|
-
content: [
|
|
97
|
-
{
|
|
98
|
-
type: "text",
|
|
99
|
-
text: `Updated Linear issue ${linear_id}: ${Object.keys(updateData).join(", ")}`
|
|
100
|
-
}
|
|
101
|
-
],
|
|
102
|
-
metadata: {
|
|
103
|
-
linearId: linear_id,
|
|
104
|
-
updates: updateData,
|
|
105
|
-
result
|
|
106
|
-
}
|
|
107
|
-
};
|
|
108
|
-
} catch (error) {
|
|
109
|
-
logger.error("Error updating Linear task", error instanceof Error ? error : new Error(String(error)));
|
|
110
|
-
throw error;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Get tasks from Linear
|
|
115
|
-
*/
|
|
116
|
-
async handleLinearGetTasks(args) {
|
|
117
|
-
try {
|
|
118
|
-
const {
|
|
119
|
-
team_id,
|
|
120
|
-
assignee_id,
|
|
121
|
-
state = "active",
|
|
122
|
-
limit = 20,
|
|
123
|
-
search
|
|
124
|
-
} = args;
|
|
125
|
-
try {
|
|
126
|
-
await this.deps.linearAuthManager.getValidToken();
|
|
127
|
-
} catch {
|
|
128
|
-
throw new Error("Linear authentication required");
|
|
129
|
-
}
|
|
130
|
-
const filters = {
|
|
131
|
-
limit
|
|
132
|
-
};
|
|
133
|
-
if (team_id) {
|
|
134
|
-
filters.teamId = team_id;
|
|
135
|
-
}
|
|
136
|
-
if (assignee_id) {
|
|
137
|
-
filters.assigneeId = assignee_id;
|
|
138
|
-
}
|
|
139
|
-
if (state) {
|
|
140
|
-
filters.state = state;
|
|
141
|
-
}
|
|
142
|
-
if (search) {
|
|
143
|
-
filters.search = search;
|
|
144
|
-
}
|
|
145
|
-
const issues = [];
|
|
146
|
-
const issuesSummary = issues.map((issue) => ({
|
|
147
|
-
id: issue.id,
|
|
148
|
-
identifier: issue.identifier,
|
|
149
|
-
title: issue.title,
|
|
150
|
-
state: issue.state?.name || "Unknown",
|
|
151
|
-
priority: issue.priority || 0,
|
|
152
|
-
assignee: issue.assignee?.name || "Unassigned",
|
|
153
|
-
team: issue.team?.name || "Unknown",
|
|
154
|
-
url: issue.url
|
|
155
|
-
}));
|
|
156
|
-
const summaryText = issuesSummary.length > 0 ? issuesSummary.map(
|
|
157
|
-
(i) => `${i.identifier}: ${i.title} [${i.state}] (${i.assignee})`
|
|
158
|
-
).join("\n") : "No Linear issues found";
|
|
159
|
-
return {
|
|
160
|
-
content: [
|
|
161
|
-
{
|
|
162
|
-
type: "text",
|
|
163
|
-
text: `Linear Issues (${issues.length}):
|
|
164
|
-
${summaryText}`
|
|
165
|
-
}
|
|
166
|
-
],
|
|
167
|
-
metadata: {
|
|
168
|
-
issues: issuesSummary,
|
|
169
|
-
totalCount: issues.length,
|
|
170
|
-
filters
|
|
171
|
-
}
|
|
172
|
-
};
|
|
173
|
-
} catch (error) {
|
|
174
|
-
logger.error("Error getting Linear tasks", error instanceof Error ? error : new Error(String(error)));
|
|
175
|
-
throw error;
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
/**
|
|
179
|
-
* Get Linear integration status
|
|
180
|
-
*/
|
|
181
|
-
async handleLinearStatus(args) {
|
|
182
|
-
try {
|
|
183
|
-
let authStatus = false;
|
|
184
|
-
try {
|
|
185
|
-
await this.deps.linearAuthManager.getValidToken();
|
|
186
|
-
authStatus = true;
|
|
187
|
-
} catch {
|
|
188
|
-
authStatus = false;
|
|
189
|
-
}
|
|
190
|
-
if (!authStatus) {
|
|
191
|
-
return {
|
|
192
|
-
content: [
|
|
193
|
-
{
|
|
194
|
-
type: "text",
|
|
195
|
-
text: "Linear: Not connected\nRun: stackmemory linear setup"
|
|
196
|
-
}
|
|
197
|
-
],
|
|
198
|
-
metadata: {
|
|
199
|
-
connected: false,
|
|
200
|
-
authRequired: true
|
|
201
|
-
}
|
|
202
|
-
};
|
|
203
|
-
}
|
|
204
|
-
const userInfo = null;
|
|
205
|
-
const teams = [];
|
|
206
|
-
const syncStats = { lastSync: "Never", totalSynced: 0, errors: 0 };
|
|
207
|
-
const statusText = `Linear Integration Status:
|
|
208
|
-
\u2713 Connected as: ${userInfo?.name || "Unknown"}
|
|
209
|
-
\u2713 Teams: ${teams.length || 0}
|
|
210
|
-
\u2713 Last sync: ${syncStats.lastSync || "Never"}
|
|
211
|
-
\u2713 Synced tasks: ${syncStats.totalSynced || 0}
|
|
212
|
-
\u2713 Sync errors: ${syncStats.errors || 0}`;
|
|
213
|
-
return {
|
|
214
|
-
content: [
|
|
215
|
-
{
|
|
216
|
-
type: "text",
|
|
217
|
-
text: statusText
|
|
218
|
-
}
|
|
219
|
-
],
|
|
220
|
-
metadata: {
|
|
221
|
-
connected: true,
|
|
222
|
-
user: userInfo,
|
|
223
|
-
teams,
|
|
224
|
-
syncStats
|
|
225
|
-
}
|
|
226
|
-
};
|
|
227
|
-
} catch (error) {
|
|
228
|
-
logger.error("Error getting Linear status", error instanceof Error ? error : new Error(String(error)));
|
|
229
|
-
return {
|
|
230
|
-
content: [
|
|
231
|
-
{
|
|
232
|
-
type: "text",
|
|
233
|
-
text: "Linear: Connection error - please check auth"
|
|
234
|
-
}
|
|
235
|
-
],
|
|
236
|
-
metadata: {
|
|
237
|
-
connected: false,
|
|
238
|
-
error: error instanceof Error ? error.message : String(error)
|
|
239
|
-
}
|
|
240
|
-
};
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
export {
|
|
245
|
-
LinearHandlers
|
|
246
|
-
};
|
|
247
|
-
//# sourceMappingURL=linear-handlers.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/integrations/mcp/handlers/linear-handlers.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * Linear integration MCP tool handlers\n * Handles Linear sync, task updates, and status queries\n */\n\nimport { LinearAuthManager } from '../../linear/auth.js';\nimport { LinearSyncEngine, DEFAULT_SYNC_CONFIG } from '../../linear/sync.js';\nimport { LinearTaskManager } from '../../../features/tasks/linear-task-manager.js';\nimport { logger } from '../../../core/monitoring/logger.js';\n\nexport interface LinearHandlerDependencies {\n linearAuthManager: LinearAuthManager;\n linearSync: LinearSyncEngine;\n taskStore: LinearTaskManager;\n}\n\nexport class LinearHandlers {\n constructor(private deps: LinearHandlerDependencies) {}\n\n /**\n * Sync tasks with Linear\n */\n async handleLinearSync(args: any): Promise<any> {\n try {\n const { direction = 'both', force = false } = args;\n\n // Check auth first\n try {\n await this.deps.linearAuthManager.getValidToken();\n } catch {\n return {\n content: [\n {\n type: 'text',\n text: 'Linear auth required. Please run: stackmemory linear setup',\n },\n ],\n metadata: {\n authRequired: true,\n },\n };\n }\n\n logger.info('Starting Linear sync', { direction, force });\n\n const result = await this.deps.linearSync.sync();\n\n const syncText = `Linear Sync Complete:\n- To Linear: ${result.synced.toLinear} tasks\n- From Linear: ${result.synced.fromLinear} tasks \n- Updated: ${result.synced.updated} tasks\n- Errors: ${result.errors.length}`;\n\n return {\n content: [\n {\n type: 'text',\n text: syncText,\n },\n ],\n metadata: result,\n };\n } catch (error: unknown) {\n logger.error('Linear sync failed', error instanceof Error ? error : new Error(String(error)));\n \n const errorMessage = error instanceof Error ? error.message : String(error);\n if (errorMessage?.includes('unauthorized') || errorMessage?.includes('auth')) {\n return {\n content: [\n {\n type: 'text',\n text: 'Linear authentication failed. Please run: stackmemory linear setup',\n },\n ],\n metadata: {\n authError: true,\n },\n };\n }\n \n throw error;\n }\n }\n\n /**\n * Update Linear task status\n */\n async handleLinearUpdateTask(args: any): Promise<any> {\n try {\n const { linear_id, status, assignee_id, priority, labels } = args;\n \n if (!linear_id) {\n throw new Error('Linear ID is required');\n }\n\n try {\n await this.deps.linearAuthManager.getValidToken();\n } catch {\n throw new Error('Linear authentication required');\n }\n\n const updateData: any = {};\n \n if (status) {\n updateData.status = status;\n }\n \n if (assignee_id) {\n updateData.assigneeId = assignee_id;\n }\n \n if (priority) {\n updateData.priority = priority;\n }\n \n if (labels) {\n updateData.labels = Array.isArray(labels) ? labels : [labels];\n }\n\n // TODO: Implement updateLinearIssue public method\n const result = { success: true };\n\n logger.info('Updated Linear task', { linearId: linear_id, updates: updateData });\n\n return {\n content: [\n {\n type: 'text',\n text: `Updated Linear issue ${linear_id}: ${Object.keys(updateData).join(', ')}`,\n },\n ],\n metadata: {\n linearId: linear_id,\n updates: updateData,\n result,\n },\n };\n } catch (error: unknown) {\n logger.error('Error updating Linear task', error instanceof Error ? error : new Error(String(error)));\n throw error;\n }\n }\n\n /**\n * Get tasks from Linear\n */\n async handleLinearGetTasks(args: any): Promise<any> {\n try {\n const { \n team_id, \n assignee_id, \n state = 'active',\n limit = 20,\n search \n } = args;\n\n try {\n await this.deps.linearAuthManager.getValidToken();\n } catch {\n throw new Error('Linear authentication required');\n }\n\n const filters: any = {\n limit,\n };\n \n if (team_id) {\n filters.teamId = team_id;\n }\n \n if (assignee_id) {\n filters.assigneeId = assignee_id;\n }\n \n if (state) {\n filters.state = state;\n }\n \n if (search) {\n filters.search = search;\n }\n\n // TODO: Implement getLinearIssues public method\n const issues: any[] = [];\n\n const issuesSummary = issues.map((issue: any) => ({\n id: issue.id,\n identifier: issue.identifier,\n title: issue.title,\n state: issue.state?.name || 'Unknown',\n priority: issue.priority || 0,\n assignee: issue.assignee?.name || 'Unassigned',\n team: issue.team?.name || 'Unknown',\n url: issue.url,\n }));\n\n const summaryText = issuesSummary.length > 0\n ? issuesSummary.map((i: any) => \n `${i.identifier}: ${i.title} [${i.state}] (${i.assignee})`\n ).join('\\n')\n : 'No Linear issues found';\n\n return {\n content: [\n {\n type: 'text',\n text: `Linear Issues (${issues.length}):\\n${summaryText}`,\n },\n ],\n metadata: {\n issues: issuesSummary,\n totalCount: issues.length,\n filters,\n },\n };\n } catch (error: unknown) {\n logger.error('Error getting Linear tasks', error instanceof Error ? error : new Error(String(error)));\n throw error;\n }\n }\n\n /**\n * Get Linear integration status\n */\n async handleLinearStatus(args: any): Promise<any> {\n try {\n let authStatus = false;\n try {\n await this.deps.linearAuthManager.getValidToken();\n authStatus = true;\n } catch {\n authStatus = false;\n }\n \n if (!authStatus) {\n return {\n content: [\n {\n type: 'text',\n text: 'Linear: Not connected\\nRun: stackmemory linear setup',\n },\n ],\n metadata: {\n connected: false,\n authRequired: true,\n },\n };\n }\n\n // Get basic Linear info\n const userInfo = null; // TODO: Implement getUserInfo\n const teams: any[] = []; // TODO: Implement getTeams\n \n // Get sync stats\n const syncStats = { lastSync: 'Never', totalSynced: 0, errors: 0 }; // TODO: Implement getSyncStatistics\n\n const statusText = `Linear Integration Status:\n\u2713 Connected as: ${userInfo?.name || 'Unknown'}\n\u2713 Teams: ${teams.length || 0}\n\u2713 Last sync: ${syncStats.lastSync || 'Never'}\n\u2713 Synced tasks: ${syncStats.totalSynced || 0}\n\u2713 Sync errors: ${syncStats.errors || 0}`;\n\n return {\n content: [\n {\n type: 'text',\n text: statusText,\n },\n ],\n metadata: {\n connected: true,\n user: userInfo,\n teams,\n syncStats,\n },\n };\n } catch (error: unknown) {\n logger.error('Error getting Linear status', error instanceof Error ? error : new Error(String(error)));\n \n return {\n content: [\n {\n type: 'text',\n text: 'Linear: Connection error - please check auth',\n },\n ],\n metadata: {\n connected: false,\n error: error instanceof Error ? error.message : String(error),\n },\n };\n }\n }\n}"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|