squish-memory 1.0.2 → 1.2.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/.env.example +146 -0
- package/CHANGELOG.md +202 -0
- package/README.md +192 -287
- package/{scripts → bin}/dependency-manager.mjs +217 -217
- package/{scripts → bin}/detect-clients.mjs +78 -78
- package/bin/install-interactive.mjs +321 -0
- package/bin/squish-mcp.mjs +46 -0
- package/bin/squish.mjs +33 -0
- package/config/mcp-migration-map.json +1 -6
- package/config/mcp-mode-semantics.json +10 -12
- package/config/mcp-remote-auth.json +3 -26
- package/config/mcp-universal.schema.json +5 -35
- package/config/settings.json +78 -22
- package/config.js +5 -0
- package/config.ts +218 -0
- package/core/adapters/config/claude-code.ts +133 -0
- package/core/adapters/config/cursor.ts +90 -0
- package/core/adapters/config/opencode.ts +89 -0
- package/core/adapters/config/windsurf.ts +90 -0
- package/core/adapters/index.ts +102 -0
- package/core/adapters/timeline.ts +116 -0
- package/core/adapters/types.ts +166 -0
- package/core/agent-preferences.ts +140 -0
- package/core/algorithms/analytics/token-estimator.ts +216 -0
- package/core/algorithms/detection/hash-filters.ts +260 -0
- package/core/algorithms/detection/semantic-ranker.ts +194 -0
- package/core/algorithms/detection/two-stage-detector.ts +421 -0
- package/core/algorithms/handlers/approve-merge.ts +215 -0
- package/core/algorithms/handlers/detect-duplicates.ts +192 -0
- package/core/algorithms/handlers/get-stats.ts +132 -0
- package/core/algorithms/handlers/list-proposals.ts +130 -0
- package/core/algorithms/handlers/preview-merge.ts +139 -0
- package/core/algorithms/handlers/reject-merge.ts +93 -0
- package/core/algorithms/handlers/reverse-merge.ts +155 -0
- package/core/algorithms/index.ts +39 -0
- package/core/algorithms/operations/cache-maintenance.ts +182 -0
- package/core/algorithms/safety/safety-checks.ts +256 -0
- package/core/algorithms/strategies/merge-strategies.ts +381 -0
- package/core/algorithms/types.ts +140 -0
- package/core/algorithms/utils/response-builder.ts +61 -0
- package/core/associations.ts +363 -0
- package/core/beliefs/decay.ts +289 -0
- package/core/beliefs/extractor.ts +131 -0
- package/core/beliefs/store.ts +557 -0
- package/core/beliefs/types.ts +38 -0
- package/core/commands/mcp-server.ts +5 -0
- package/core/compression.ts +177 -0
- package/core/config.js +2 -0
- package/core/consolidation.ts +330 -0
- package/core/context/agent-context.ts +388 -0
- package/core/context/context-paging.ts +449 -0
- package/core/context/context-window.ts +234 -0
- package/core/context/context.ts +35 -0
- package/core/embeddings/embeddings.ts +616 -0
- package/core/embeddings/google-multimodal.ts +200 -0
- package/core/embeddings/local-embeddings.ts +12 -0
- package/core/embeddings/qmd-client.ts +495 -0
- package/core/embeddings/transformers-local.ts +261 -0
- package/core/embeddings.js +4 -0
- package/core/error-handling.ts +206 -0
- package/core/external +219 -0
- package/core/graph/entity-deduplicator.ts +232 -0
- package/core/graph/graph-builder.ts +257 -0
- package/core/graph/graph-traversal.ts +490 -0
- package/core/graph/index.ts +24 -0
- package/core/graph/llm-entity-extractor.ts +402 -0
- package/core/graph/multi-hop-retrieval.ts +317 -0
- package/core/graph/relationship-extractor.ts +465 -0
- package/core/hooks/agent-hooks.ts +653 -0
- package/core/hooks/auto-tagger.ts +149 -0
- package/core/hooks/capture-filter.ts +169 -0
- package/core/hot-cache.ts +388 -0
- package/core/index.ts +10 -0
- package/core/ingestion/agent-memory.ts +167 -0
- package/core/ingestion/core-memory.ts +326 -0
- package/core/ingestion/learnings.ts +260 -0
- package/core/ingestion/signal-engine.ts +266 -0
- package/core/integrations/obsidian-vault.ts +197 -0
- package/core/layers/generator.ts +115 -0
- package/core/lib/db-client.ts +168 -0
- package/core/lib/parse-embedding.ts +59 -0
- package/core/lib/schemas.ts +102 -0
- package/core/lib/types.ts +49 -0
- package/core/lib/utils.ts +151 -0
- package/core/lib/validation.ts +180 -0
- package/core/lifecycle.ts +353 -0
- package/core/logger.ts +59 -0
- package/core/memory/bridge-discovery.ts +395 -0
- package/core/memory/categorizer.ts +390 -0
- package/core/memory/conflict-detector.ts +62 -0
- package/core/memory/consolidation.ts +372 -0
- package/core/memory/context-collector.ts +75 -0
- package/core/memory/contradiction-resolver.ts +494 -0
- package/core/memory/edit-workflow.ts +174 -0
- package/core/memory/entity-extractor.ts +426 -0
- package/core/memory/entity-resolver.ts +89 -0
- package/core/memory/explain.ts +112 -0
- package/core/memory/fact-deriver.ts +300 -0
- package/core/memory/fact-extractor.ts +120 -0
- package/core/memory/feedback-tracker.ts +200 -0
- package/core/memory/hooks.ts +230 -0
- package/core/memory/hybrid-retrieval.ts +65 -0
- package/core/memory/hybrid-scorer.ts +325 -0
- package/core/memory/hybrid-search.ts +748 -0
- package/core/memory/importance.ts +319 -0
- package/core/memory/index.ts +11 -0
- package/core/memory/loader.ts +178 -0
- package/core/memory/markdown/markdown-storage.ts +318 -0
- package/core/memory/memories.ts +565 -0
- package/core/memory/memory-lifecycle.ts +51 -0
- package/core/memory/memory-manager.ts +53 -0
- package/core/memory/migrate.ts +173 -0
- package/core/memory/normalization.ts +30 -0
- package/core/memory/path-strengthener.ts +211 -0
- package/core/memory/progressive-disclosure.ts +392 -0
- package/core/memory/query-processor.ts +130 -0
- package/core/memory/query-rewriter.ts +153 -0
- package/core/memory/response-analyzer.ts +81 -0
- package/core/memory/retrieval-feedback.ts +276 -0
- package/core/memory/serialization.ts +83 -0
- package/core/memory/stale-cleaner.ts +147 -0
- package/core/memory/stats.ts +181 -0
- package/core/memory/telemetry.ts +392 -0
- package/core/memory/temporal-facts.ts +356 -0
- package/core/memory/temporal-parser.ts +477 -0
- package/core/memory/trigger-detector.ts +104 -0
- package/core/memory/write-gate.ts +288 -0
- package/core/places/index.ts +14 -0
- package/core/places/memory-places.ts +339 -0
- package/core/places/places.ts +406 -0
- package/core/places/rules.ts +308 -0
- package/core/places/walking.ts +192 -0
- package/core/projects +89 -0
- package/core/projects.ts +131 -0
- package/core/redis.ts +82 -0
- package/core/responses.ts +187 -0
- package/core/runtime/trust-report.ts +195 -0
- package/core/runtime/trust-state.ts +360 -0
- package/core/scheduler/cron-scheduler.ts +581 -0
- package/core/scheduler/heartbeat.ts +91 -0
- package/core/scheduler/index.ts +8 -0
- package/core/scheduler/job-runner.ts +197 -0
- package/core/search/conversations.ts +166 -0
- package/core/search/entities.ts +46 -0
- package/core/search/folder-context.ts +154 -0
- package/core/search/graph-boost.ts +22 -0
- package/core/search/index.ts +4 -0
- package/core/search/qmd-wrapper.ts +84 -0
- package/core/security/encrypt.ts +51 -0
- package/core/security/governance.ts +102 -0
- package/core/security/privacy.ts +108 -0
- package/core/security/secret-detector.ts +122 -0
- package/core/session/auto-load.ts +160 -0
- package/core/session/entity-tracker.ts +363 -0
- package/core/session/index.ts +7 -0
- package/core/session/reference-resolver.ts +158 -0
- package/core/session/self-iteration-job.ts +478 -0
- package/core/session/session-hooks.ts +69 -0
- package/core/session/types.ts +36 -0
- package/core/session/working-set.ts +275 -0
- package/core/snapshots/cleanup.ts +13 -0
- package/core/snapshots/comparison.ts +59 -0
- package/core/snapshots/creation.ts +139 -0
- package/core/snapshots/retrieval.ts +44 -0
- package/core/snapshots/stats.ts +63 -0
- package/core/storage/cache.ts +241 -0
- package/core/storage/database.ts +23 -0
- package/core/summarization/cleanup.ts +13 -0
- package/core/summarization/queries.ts +32 -0
- package/core/summarization/stats.ts +64 -0
- package/core/summarization/strategies.ts +52 -0
- package/core/summarization.ts +248 -0
- package/core/temporal-facts.ts +244 -0
- package/core/tracing/collector.ts +470 -0
- package/core/tracing/visualizer.ts +195 -0
- package/core/utils/cleanup-operations.ts +50 -0
- package/core/utils/content-extraction.ts +95 -0
- package/core/utils/filter-builder.ts +56 -0
- package/core/utils/history-traversal.ts +63 -0
- package/core/utils/memory-operations.ts +56 -0
- package/core/utils/query-operations.ts +83 -0
- package/core/utils/summarization-helpers.ts +45 -0
- package/core/utils/temporal-queries.ts +39 -0
- package/core/utils/vector-operations.ts +135 -0
- package/core/utils/version-management.ts +74 -0
- package/core/worker.ts +324 -0
- package/db/adapter.ts +215 -0
- package/db/bootstrap.ts +1055 -0
- package/db/drizzle/migrations/0000_needy_cerebro.sql +402 -0
- package/db/drizzle/migrations/meta/0000_snapshot.json +3451 -0
- package/db/drizzle/migrations/meta/_journal.json +13 -0
- package/db/drizzle/schema-sqlite.ts +1032 -0
- package/db/drizzle/schema.ts +1128 -0
- package/db/drizzle.config.ts +12 -0
- package/db/index.ts +83 -0
- package/db/init.sql +5 -0
- package/db/migrations/associations.ts +35 -0
- package/db/migrations/beliefs.ts +89 -0
- package/db/migrations/core-memory.ts +35 -0
- package/db/migrations/fts.ts +59 -0
- package/db/migrations/index.ts +54 -0
- package/db/migrations/indexes.ts +36 -0
- package/db/migrations/learnings.ts +34 -0
- package/db/migrations/maintenance.ts +68 -0
- package/db/migrations/memories.ts +22 -0
- package/db/migrations/memory-places.ts +35 -0
- package/db/migrations/places.ts +49 -0
- package/db/migrations/projects.ts +21 -0
- package/db/migrations/tier-conversion.ts +24 -0
- package/db/neon.ts +22 -0
- package/db/schema/beliefs.ts +50 -0
- package/db/schema/generator.ts +159 -0
- package/db/schema/index.ts +58 -0
- package/db/schema/learnings.ts +32 -0
- package/db/schema/memories.ts +83 -0
- package/db/schema/projects.ts +33 -0
- package/db/schema.ts +13 -0
- package/db/supabase.ts +27 -0
- package/dist/config.d.ts +61 -14
- package/dist/config.js +159 -139
- package/dist/core/adapters/config/claude-code.d.ts +45 -0
- package/dist/core/adapters/config/claude-code.js +113 -0
- package/dist/core/adapters/config/cursor.d.ts +26 -0
- package/dist/core/adapters/config/cursor.js +74 -0
- package/dist/core/adapters/config/opencode.d.ts +23 -0
- package/dist/core/adapters/config/opencode.js +73 -0
- package/dist/core/adapters/config/windsurf.d.ts +26 -0
- package/dist/core/adapters/config/windsurf.js +74 -0
- package/dist/core/adapters/index.d.ts +45 -0
- package/dist/core/adapters/index.js +84 -0
- package/dist/core/adapters/scripts/install-adapter.d.ts +19 -0
- package/dist/core/adapters/scripts/install-adapter.js +149 -0
- package/dist/core/adapters/timeline.d.ts +23 -0
- package/dist/core/adapters/timeline.js +88 -0
- package/dist/core/adapters/types.d.ts +137 -0
- package/dist/core/adapters/types.js +50 -0
- package/dist/core/agent-preferences.d.ts +16 -0
- package/dist/core/agent-preferences.js +124 -0
- package/dist/{algorithms → core/algorithms}/analytics/token-estimator.d.ts +1 -1
- package/dist/{algorithms → core/algorithms}/analytics/token-estimator.js +3 -3
- package/dist/{algorithms → core/algorithms}/detection/semantic-ranker.d.ts +1 -1
- package/dist/{algorithms → core/algorithms}/detection/semantic-ranker.js +1 -1
- package/dist/{algorithms → core/algorithms}/detection/two-stage-detector.d.ts +1 -1
- package/dist/{algorithms → core/algorithms}/detection/two-stage-detector.js +7 -10
- package/dist/{algorithms → core/algorithms}/handlers/approve-merge.js +4 -4
- package/dist/{algorithms → core/algorithms}/handlers/detect-duplicates.js +3 -3
- package/dist/{algorithms → core/algorithms}/handlers/get-stats.js +3 -3
- package/dist/{algorithms → core/algorithms}/handlers/list-proposals.js +3 -3
- package/dist/{algorithms → core/algorithms}/handlers/preview-merge.js +3 -3
- package/dist/{algorithms → core/algorithms}/handlers/reject-merge.js +3 -3
- package/dist/{algorithms → core/algorithms}/handlers/reverse-merge.js +3 -3
- package/dist/core/algorithms/index.d.ts +21 -0
- package/dist/core/algorithms/index.js +26 -0
- package/dist/core/algorithms/operations/cache-maintenance.d.ts +12 -0
- package/dist/core/algorithms/operations/cache-maintenance.js +157 -0
- package/dist/{algorithms → core/algorithms}/safety/safety-checks.d.ts +2 -6
- package/dist/{algorithms → core/algorithms}/strategies/merge-strategies.d.ts +19 -1
- package/dist/{algorithms → core/algorithms}/strategies/merge-strategies.js +74 -123
- package/dist/core/algorithms/types.d.ts +125 -0
- package/dist/core/algorithms/types.js +5 -0
- package/dist/core/associations.d.ts +3 -2
- package/dist/core/associations.js +37 -2
- package/dist/core/autosave.d.ts +19 -0
- package/dist/core/autosave.js +16 -0
- package/dist/core/beliefs/decay.d.ts +27 -0
- package/dist/core/beliefs/decay.js +217 -0
- package/dist/core/beliefs/extractor.d.ts +9 -0
- package/dist/core/beliefs/extractor.js +113 -0
- package/dist/core/beliefs/store.d.ts +46 -0
- package/dist/core/beliefs/store.js +466 -0
- package/dist/core/beliefs/types.d.ts +28 -0
- package/dist/core/beliefs/types.js +2 -0
- package/dist/core/commands/mcp-server.d.ts +2 -0
- package/dist/core/commands/mcp-server.js +6 -0
- package/dist/core/commands/remember.d.ts +24 -0
- package/dist/core/commands/remember.js +144 -0
- package/dist/core/compression.d.ts +45 -0
- package/dist/core/compression.js +160 -0
- package/dist/core/context/agent-context.d.ts +106 -0
- package/dist/core/context/agent-context.js +274 -0
- package/dist/core/{context-paging.d.ts → context/context-paging.d.ts} +2 -12
- package/dist/core/{context-paging.js → context/context-paging.js} +19 -39
- package/dist/core/context/context-window.d.ts +40 -0
- package/dist/core/context/context-window.js +177 -0
- package/dist/core/context/context.js +22 -0
- package/dist/core/embeddings/embeddings.d.ts +29 -0
- package/dist/core/embeddings/embeddings.js +546 -0
- package/dist/core/embeddings/google-multimodal.js +6 -2
- package/dist/core/embeddings/local-embeddings.d.ts +11 -0
- package/dist/core/embeddings/local-embeddings.js +11 -0
- package/dist/core/embeddings/qmd-client.js +1 -1
- package/dist/core/embeddings/transformers-local.d.ts +64 -0
- package/dist/core/embeddings/transformers-local.js +213 -0
- package/dist/core/embeddings.d.ts +1 -28
- package/dist/core/embeddings.js +2 -401
- package/dist/core/error-handling.d.ts +63 -0
- package/dist/core/error-handling.js +173 -0
- package/dist/core/graph/entity-deduplicator.d.ts +24 -0
- package/dist/core/graph/entity-deduplicator.js +183 -0
- package/dist/core/graph/graph-builder.d.ts +46 -0
- package/dist/core/graph/graph-builder.js +174 -0
- package/dist/core/graph/graph-traversal.d.ts +80 -0
- package/dist/core/graph/graph-traversal.js +315 -0
- package/dist/core/graph/index.d.ts +19 -0
- package/dist/core/graph/index.js +13 -0
- package/dist/core/graph/llm-entity-extractor.d.ts +49 -0
- package/dist/core/graph/llm-entity-extractor.js +313 -0
- package/dist/core/graph/multi-hop-retrieval.d.ts +48 -0
- package/dist/core/graph/multi-hop-retrieval.js +215 -0
- package/dist/core/graph/relationship-extractor.d.ts +48 -0
- package/dist/core/graph/relationship-extractor.js +351 -0
- package/dist/core/hooks/agent-hooks.d.ts +83 -0
- package/dist/core/hooks/agent-hooks.js +521 -0
- package/dist/core/hooks/auto-tagger.d.ts +19 -0
- package/dist/core/hooks/auto-tagger.js +155 -0
- package/dist/core/hooks/capture-filter.d.ts +41 -0
- package/dist/core/hooks/capture-filter.js +128 -0
- package/dist/core/hot-cache.d.ts +86 -0
- package/dist/core/hot-cache.js +285 -0
- package/dist/core/index.d.ts +9 -9
- package/dist/core/index.js +9 -12
- package/dist/core/{agent-memory.js → ingestion/agent-memory.js} +5 -7
- package/dist/core/{core-memory.d.ts → ingestion/core-memory.d.ts} +2 -2
- package/dist/core/{core-memory.js → ingestion/core-memory.js} +7 -7
- package/dist/core/ingestion/learnings.d.ts +57 -0
- package/dist/core/ingestion/learnings.js +205 -0
- package/dist/core/ingestion/signal-engine.d.ts +41 -0
- package/dist/core/ingestion/signal-engine.js +201 -0
- package/dist/core/integrations/obsidian-vault.d.ts +31 -0
- package/dist/core/integrations/obsidian-vault.js +156 -0
- package/dist/core/lib/db-client.d.ts +114 -0
- package/dist/core/lib/db-client.js +130 -0
- package/dist/core/lib/parse-embedding.d.ts +9 -0
- package/dist/core/lib/parse-embedding.js +58 -0
- package/dist/core/lib/schemas.d.ts +132 -0
- package/dist/core/lib/schemas.js +87 -0
- package/dist/core/lib/types.d.ts +45 -0
- package/dist/core/lib/types.js +6 -0
- package/dist/core/{utils.d.ts → lib/utils.d.ts} +5 -0
- package/dist/core/lib/utils.js +145 -0
- package/dist/core/lib/validation.d.ts +38 -0
- package/dist/core/lib/validation.js +151 -0
- package/dist/core/lifecycle.d.ts +7 -1
- package/dist/core/lifecycle.js +152 -42
- package/dist/core/logger.d.ts +1 -0
- package/dist/core/logger.js +13 -1
- package/dist/core/mcp/tools.d.ts +0 -2
- package/dist/core/mcp/tools.js +35 -90
- package/dist/core/mcp/types.d.ts +25 -253
- package/dist/core/mcp/types.js +2 -2
- package/dist/core/memory/categorizer.js +2 -0
- package/dist/core/memory/conflict-detector.js +1 -1
- package/dist/core/memory/consolidation.d.ts +1 -10
- package/dist/core/memory/consolidation.js +4 -39
- package/dist/core/memory/context-collector.js +1 -1
- package/dist/core/memory/edit-workflow.js +1 -1
- package/dist/core/memory/entity-extractor.d.ts +4 -0
- package/dist/core/memory/entity-extractor.js +30 -16
- package/dist/core/memory/entity-resolver.js +7 -7
- package/dist/core/memory/explain.d.ts +18 -0
- package/dist/core/memory/explain.js +92 -0
- package/dist/core/memory/fact-deriver.d.ts +31 -0
- package/dist/core/memory/fact-deriver.js +236 -0
- package/dist/core/memory/fact-extractor.js +12 -12
- package/dist/core/memory/feedback-tracker.js +1 -1
- package/dist/core/memory/hooks.d.ts +88 -0
- package/dist/core/memory/hooks.js +174 -0
- package/dist/core/memory/hybrid-retrieval.d.ts +14 -16
- package/dist/core/memory/hybrid-retrieval.js +25 -127
- package/dist/core/memory/hybrid-scorer.js +6 -23
- package/dist/core/memory/hybrid-search.d.ts +9 -11
- package/dist/core/memory/hybrid-search.js +496 -273
- package/dist/core/memory/importance.d.ts +2 -24
- package/dist/core/memory/importance.js +7 -91
- package/dist/core/memory/index.d.ts +1 -0
- package/dist/core/memory/index.js +1 -0
- package/dist/core/memory/loader.d.ts +31 -0
- package/dist/core/memory/loader.js +141 -0
- package/dist/core/memory/markdown/markdown-storage.d.ts +72 -0
- package/dist/core/memory/markdown/markdown-storage.js +243 -0
- package/dist/core/memory/memories.d.ts +23 -19
- package/dist/core/memory/memories.js +243 -228
- package/dist/core/memory/memory-lifecycle.d.ts +8 -0
- package/dist/core/memory/memory-lifecycle.js +47 -0
- package/dist/core/memory/migrate.d.ts +21 -0
- package/dist/core/memory/migrate.js +134 -0
- package/dist/core/memory/normalization.d.ts +7 -0
- package/dist/core/memory/normalization.js +26 -0
- package/dist/core/memory/path-strengthener.d.ts +39 -0
- package/dist/core/memory/path-strengthener.js +150 -0
- package/dist/core/memory/progressive-disclosure.js +1 -1
- package/dist/core/memory/query-processor.js +37 -3
- package/dist/core/memory/query-rewriter.js +9 -9
- package/dist/core/memory/retrieval-feedback.d.ts +70 -0
- package/dist/core/memory/retrieval-feedback.js +213 -0
- package/dist/core/memory/serialization.d.ts +4 -0
- package/dist/core/memory/serialization.js +49 -0
- package/dist/core/memory/stale-cleaner.d.ts +26 -0
- package/dist/core/memory/stale-cleaner.js +97 -0
- package/dist/core/memory/stats.d.ts +15 -0
- package/dist/core/memory/stats.js +69 -13
- package/dist/core/memory/temporal-facts.js +21 -0
- package/dist/core/memory/trigger-detector.d.ts +8 -1
- package/dist/core/memory/trigger-detector.js +42 -5
- package/dist/core/memory/write-gate.js +1 -1
- package/dist/core/places/index.d.ts +14 -0
- package/dist/core/places/index.js +14 -0
- package/dist/core/places/memory-places.d.ts +68 -0
- package/dist/core/places/memory-places.js +261 -0
- package/dist/core/places/places.d.ts +88 -0
- package/dist/core/places/places.js +314 -0
- package/dist/core/places/rules.d.ts +74 -0
- package/dist/core/places/rules.js +240 -0
- package/dist/core/places/walking.d.ts +56 -0
- package/dist/core/places/walking.js +121 -0
- package/dist/core/projects.d.ts +5 -0
- package/dist/core/projects.js +47 -18
- package/dist/core/responses.d.ts +96 -0
- package/dist/core/responses.js +122 -0
- package/dist/core/runtime/trust-report.d.ts +102 -0
- package/dist/core/runtime/trust-report.js +107 -0
- package/dist/core/runtime/trust-state.d.ts +12 -0
- package/dist/core/runtime/trust-state.js +309 -0
- package/dist/core/scheduler/cron-scheduler.d.ts +1 -1
- package/dist/core/scheduler/cron-scheduler.js +193 -10
- package/dist/core/scheduler/index.d.ts +1 -1
- package/dist/core/scheduler/index.js +1 -1
- package/dist/core/scheduler/job-runner.js +2 -2
- package/dist/core/search/conversations.js +40 -42
- package/dist/core/search/entities.js +6 -9
- package/dist/core/search/graph-boost.d.ts +7 -0
- package/dist/core/search/graph-boost.js +23 -0
- package/dist/core/search/qmd-wrapper.d.ts +36 -0
- package/dist/core/search/qmd-wrapper.js +58 -0
- package/dist/core/security/encrypt.d.ts +6 -0
- package/dist/core/security/encrypt.js +47 -0
- package/dist/core/{governance.d.ts → security/governance.d.ts} +6 -1
- package/dist/core/security/governance.js +79 -0
- package/dist/core/session/auto-load.js +34 -9
- package/dist/core/session/entity-tracker.d.ts +62 -0
- package/dist/core/session/entity-tracker.js +287 -0
- package/dist/core/session/index.d.ts +1 -1
- package/dist/core/session/index.js +1 -1
- package/dist/core/session/reference-resolver.d.ts +26 -0
- package/dist/core/session/reference-resolver.js +121 -0
- package/dist/core/{session-hooks → session}/self-iteration-job.d.ts +15 -0
- package/dist/core/{session-hooks → session}/self-iteration-job.js +195 -90
- package/dist/core/session/working-set.d.ts +50 -0
- package/dist/core/session/working-set.js +212 -0
- package/dist/core/snapshots/creation.d.ts +2 -8
- package/dist/core/snapshots/creation.js +3 -12
- package/dist/core/{cache.js → storage/cache.js} +2 -2
- package/dist/core/utils/memory-operations.js +1 -1
- package/dist/core/utils/summarization-helpers.d.ts +0 -4
- package/dist/core/utils/summarization-helpers.js +1 -6
- package/dist/core/utils/vector-operations.d.ts +71 -0
- package/dist/core/utils/vector-operations.js +129 -0
- package/dist/db/adapter.d.ts +3 -3
- package/dist/db/adapter.js +99 -88
- package/dist/db/bootstrap.d.ts +2 -0
- package/dist/db/bootstrap.js +921 -674
- package/dist/{drizzle → db/drizzle}/schema-sqlite.d.ts +775 -25
- package/dist/{drizzle → db/drizzle}/schema-sqlite.js +170 -24
- package/dist/{drizzle → db/drizzle}/schema.d.ts +731 -32
- package/dist/{drizzle → db/drizzle}/schema.js +192 -32
- package/dist/db/drizzle.config.d.ts +3 -0
- package/dist/db/drizzle.config.js +12 -0
- package/dist/db/index.d.ts +1 -5
- package/dist/db/index.js +51 -8
- package/dist/db/migrations/associations.d.ts +6 -0
- package/dist/db/migrations/associations.js +29 -0
- package/dist/db/migrations/beliefs.d.ts +10 -0
- package/dist/db/migrations/beliefs.js +76 -0
- package/dist/db/migrations/core-memory.d.ts +6 -0
- package/dist/db/migrations/core-memory.js +29 -0
- package/dist/db/migrations/fts.d.ts +6 -0
- package/dist/db/migrations/fts.js +52 -0
- package/dist/db/migrations/index.d.ts +25 -0
- package/dist/db/migrations/index.js +51 -0
- package/dist/db/migrations/indexes.d.ts +6 -0
- package/dist/db/migrations/indexes.js +30 -0
- package/dist/db/migrations/learnings.d.ts +7 -0
- package/dist/db/migrations/learnings.js +26 -0
- package/dist/db/migrations/maintenance.d.ts +6 -0
- package/dist/db/migrations/maintenance.js +61 -0
- package/dist/db/migrations/memories.d.ts +7 -0
- package/dist/db/migrations/memories.js +16 -0
- package/dist/db/migrations/memory-places.d.ts +6 -0
- package/dist/db/migrations/memory-places.js +29 -0
- package/dist/db/migrations/places.d.ts +6 -0
- package/dist/db/migrations/places.js +43 -0
- package/dist/db/migrations/projects.d.ts +3 -0
- package/dist/db/migrations/projects.js +13 -0
- package/dist/db/migrations/tier-conversion.d.ts +7 -0
- package/dist/db/migrations/tier-conversion.js +20 -0
- package/dist/db/neon.d.ts +8 -0
- package/dist/db/neon.js +20 -0
- package/dist/db/schema/beliefs.d.ts +9 -0
- package/dist/db/schema/beliefs.js +46 -0
- package/dist/db/schema/generator.d.ts +38 -0
- package/dist/db/schema/generator.js +108 -0
- package/dist/db/schema/index.d.ts +39 -0
- package/dist/db/schema/index.js +51 -0
- package/dist/db/schema/learnings.d.ts +7 -0
- package/dist/db/schema/learnings.js +30 -0
- package/dist/db/schema/memories.d.ts +7 -0
- package/dist/db/schema/memories.js +81 -0
- package/dist/db/schema/projects.d.ts +4 -0
- package/dist/db/schema/projects.js +31 -0
- package/dist/db/schema/tables/context-sessions.d.ts +9 -0
- package/dist/db/schema/tables/context-sessions.js +37 -0
- package/dist/db/schema/tables/conversations.d.ts +9 -0
- package/dist/db/schema/tables/conversations.js +47 -0
- package/dist/db/schema/tables/core-memory.d.ts +9 -0
- package/dist/db/schema/tables/core-memory.js +41 -0
- package/dist/db/schema/tables/entities.d.ts +9 -0
- package/dist/db/schema/tables/entities.js +39 -0
- package/dist/db/schema/tables/entity-relations.d.ts +9 -0
- package/dist/db/schema/tables/entity-relations.js +31 -0
- package/dist/db/schema/tables/learnings.d.ts +9 -0
- package/dist/db/schema/tables/learnings.js +66 -0
- package/dist/db/schema/tables/memories.d.ts +9 -0
- package/dist/db/schema/tables/memories.js +161 -0
- package/dist/db/schema/tables/memory-associations.d.ts +9 -0
- package/dist/db/schema/tables/memory-associations.js +39 -0
- package/dist/db/schema/tables/memory-hash-cache.d.ts +9 -0
- package/dist/db/schema/tables/memory-hash-cache.js +29 -0
- package/dist/db/schema/tables/memory-merge-history.d.ts +9 -0
- package/dist/db/schema/tables/memory-merge-history.js +33 -0
- package/dist/db/schema/tables/memory-merge-proposals.d.ts +9 -0
- package/dist/db/schema/tables/memory-merge-proposals.js +39 -0
- package/dist/db/schema/tables/messages.d.ts +9 -0
- package/dist/db/schema/tables/messages.js +41 -0
- package/dist/db/schema/tables/namespaces.d.ts +9 -0
- package/dist/db/schema/tables/namespaces.js +37 -0
- package/dist/db/schema/tables/projects.d.ts +9 -0
- package/dist/db/schema/tables/projects.js +31 -0
- package/dist/db/schema/tables/users.d.ts +9 -0
- package/dist/db/schema/tables/users.js +27 -0
- package/dist/db/schema.d.ts +1 -1
- package/dist/db/schema.js +2 -2
- package/dist/db/supabase.d.ts +9 -0
- package/dist/db/supabase.js +24 -0
- package/dist/packages/mcp/src/index.d.ts +3 -0
- package/dist/packages/mcp/src/index.js +733 -0
- package/mcp.json.example +8 -0
- package/package.json +132 -173
- package/packages/cli/package.json +22 -0
- package/packages/cli/src/commands/clean.ts +68 -0
- package/packages/cli/src/commands/context.ts +79 -0
- package/packages/cli/src/commands/doctor.ts +357 -0
- package/packages/cli/src/commands/forget.ts +72 -0
- package/packages/cli/src/commands/health.ts +36 -0
- package/packages/cli/src/commands/inspect.ts +41 -0
- package/packages/cli/src/commands/link.ts +50 -0
- package/packages/cli/src/commands/migrate.ts +93 -0
- package/packages/cli/src/commands/recall.ts +99 -0
- package/packages/cli/src/commands/recent.ts +57 -0
- package/packages/cli/src/commands/remember.ts +139 -0
- package/packages/cli/src/commands/run.ts +58 -0
- package/packages/cli/src/commands/stale.ts +43 -0
- package/packages/cli/src/commands/stats.ts +42 -0
- package/packages/cli/src/index.ts +57 -0
- package/packages/cli/tsconfig.json +24 -0
- package/packages/mcp/package.json +26 -0
- package/packages/mcp/src/index.ts +877 -0
- package/packages/mcp/tsconfig.json +20 -0
- package/skills/squish-memory/SKILL.md +107 -114
- package/skills/squish-memory/install.sh +3 -3
- package/skills/squish-memory/{claude-desktop.json → references/claude-desktop.json} +12 -12
- package/skills/squish-memory/{openclaw.json → references/openclaw.json} +13 -13
- package/skills/squish-memory/{opencode.json → references/opencode.json} +14 -14
- package/.claude-plugin/marketplace.json +0 -20
- package/.claude-plugin/plugin.json +0 -32
- package/.env.mcp.example +0 -60
- package/.mcp.json +0 -11
- package/QUICK-START.md +0 -71
- package/bin/squish-add.mjs +0 -32
- package/bin/squish-rm.mjs +0 -21
- package/commands/context-paging.md +0 -51
- package/commands/context-status.md +0 -22
- package/commands/context.md +0 -5
- package/commands/core-memory.md +0 -56
- package/commands/health.md +0 -5
- package/commands/init.md +0 -39
- package/commands/merge.md +0 -113
- package/commands/observe.md +0 -5
- package/commands/recall.md +0 -5
- package/commands/remember.md +0 -11
- package/commands/search.md +0 -10
- package/config/mcp-cli-fallback-policy.json +0 -22
- package/config/mcp.json +0 -38
- package/config/plugin-manifest.json +0 -152
- package/config/plugin-manifest.schema.json +0 -244
- package/config/remote-memory-policy.json +0 -32
- package/dist/api/web/index.d.ts +0 -3
- package/dist/api/web/index.js +0 -4
- package/dist/api/web/web-server.d.ts +0 -3
- package/dist/api/web/web-server.js +0 -6
- package/dist/api/web/web.d.ts +0 -4
- package/dist/api/web/web.js +0 -639
- package/dist/commands/managed-sync.d.ts +0 -10
- package/dist/commands/managed-sync.js +0 -64
- package/dist/commands/mcp-server.d.ts +0 -3
- package/dist/commands/mcp-server.js +0 -393
- package/dist/core/context.js +0 -24
- package/dist/core/governance.js +0 -64
- package/dist/core/local-embeddings.d.ts +0 -6
- package/dist/core/local-embeddings.js +0 -20
- package/dist/core/namespaces/index.d.ts +0 -71
- package/dist/core/namespaces/index.js +0 -305
- package/dist/core/namespaces/uri-parser.d.ts +0 -31
- package/dist/core/namespaces/uri-parser.js +0 -74
- package/dist/core/observations.d.ts +0 -26
- package/dist/core/observations.js +0 -110
- package/dist/core/requirements.d.ts +0 -20
- package/dist/core/requirements.js +0 -35
- package/dist/core/search/qmd-search.d.ts +0 -61
- package/dist/core/search/qmd-search.js +0 -178
- package/dist/core/snapshots.d.ts +0 -29
- package/dist/core/snapshots.js +0 -220
- package/dist/core/sync/qmd-sync.d.ts +0 -106
- package/dist/core/sync/qmd-sync.js +0 -213
- package/dist/core/utils.js +0 -74
- package/dist/index.d.ts +0 -19
- package/dist/index.js +0 -997
- package/generated/mcp/manifest.json +0 -23
- package/generated/mcp/mcp-servers.json +0 -25
- package/generated/mcp/mcporter.json +0 -34
- package/generated/mcp/openclaw-memory-qmd.json +0 -17
- package/generated/mcp/runtime.json +0 -12
- package/hooks/hooks.json +0 -52
- package/hooks/post-tool-use.js +0 -26
- package/hooks/session-end.js +0 -28
- package/hooks/session-start.js +0 -33
- package/hooks/user-prompt-submit.js +0 -26
- package/hooks/utils.js +0 -153
- package/npx-installer.js +0 -208
- package/packages/plugin-claude-code/README.md +0 -73
- package/packages/plugin-claude-code/dist/plugin-wrapper.d.ts +0 -35
- package/packages/plugin-claude-code/dist/plugin-wrapper.js +0 -191
- package/packages/plugin-claude-code/package.json +0 -31
- package/packages/plugin-openclaw/README.md +0 -70
- package/packages/plugin-openclaw/dist/index.d.ts +0 -49
- package/packages/plugin-openclaw/dist/index.js +0 -262
- package/packages/plugin-openclaw/openclaw.plugin.json +0 -94
- package/packages/plugin-openclaw/package.json +0 -31
- package/packages/plugin-opencode/install.mjs +0 -217
- package/packages/plugin-opencode/package.json +0 -21
- package/plugin.json +0 -32
- package/scripts/build-release.sh +0 -36
- package/scripts/check-secrets.js +0 -132
- package/scripts/db/check-db.mjs +0 -88
- package/scripts/db/fix-all-columns.mjs +0 -52
- package/scripts/db/fix-schema-all.mjs +0 -55
- package/scripts/db/fix-schema-full.mjs +0 -46
- package/scripts/db/fix-schema.mjs +0 -38
- package/scripts/db/init-db.mjs +0 -13
- package/scripts/db/recreate-db.mjs +0 -14
- package/scripts/generate-mcp.mjs +0 -264
- package/scripts/github-release.sh +0 -77
- package/scripts/init-dirs.mjs +0 -13
- package/scripts/install-interactive.mjs +0 -677
- package/scripts/install-mcp.mjs +0 -116
- package/scripts/install-plugin.mjs +0 -415
- package/scripts/install-web.sh +0 -120
- package/scripts/install.mjs +0 -340
- package/scripts/openclaw-bootstrap.mjs +0 -127
- package/scripts/package-release.sh +0 -71
- package/scripts/remote-preflight.mjs +0 -62
- package/scripts/squish-fallback.mjs +0 -132
- package/scripts/test/test-all-systems.mjs +0 -139
- package/scripts/test/test-memory-system.mjs +0 -139
- package/scripts/test/test-v0.5.0.mjs +0 -210
- package/scripts/test-interactive.mjs +0 -131
- package/scripts/verify-mcp.mjs +0 -214
- package/skills/memory-guide/SKILL.md +0 -332
- package/skills/squish-cli/SKILL.md +0 -240
- package/skills/squish-mcp/SKILL.md +0 -355
- package/skills/squish-memory/install.mjs +0 -335
- package/skills/squish-memory/skill.json +0 -32
- /package/dist/{algorithms → core/algorithms}/detection/hash-filters.d.ts +0 -0
- /package/dist/{algorithms → core/algorithms}/detection/hash-filters.js +0 -0
- /package/dist/{algorithms → core/algorithms}/handlers/approve-merge.d.ts +0 -0
- /package/dist/{algorithms → core/algorithms}/handlers/detect-duplicates.d.ts +0 -0
- /package/dist/{algorithms → core/algorithms}/handlers/get-stats.d.ts +0 -0
- /package/dist/{algorithms → core/algorithms}/handlers/list-proposals.d.ts +0 -0
- /package/dist/{algorithms → core/algorithms}/handlers/preview-merge.d.ts +0 -0
- /package/dist/{algorithms → core/algorithms}/handlers/reject-merge.d.ts +0 -0
- /package/dist/{algorithms → core/algorithms}/handlers/reverse-merge.d.ts +0 -0
- /package/dist/{algorithms → core/algorithms}/safety/safety-checks.js +0 -0
- /package/dist/{algorithms → core/algorithms}/utils/response-builder.d.ts +0 -0
- /package/dist/{algorithms → core/algorithms}/utils/response-builder.js +0 -0
- /package/dist/core/{context.d.ts → context/context.d.ts} +0 -0
- /package/dist/core/{agent-memory.d.ts → ingestion/agent-memory.d.ts} +0 -0
- /package/dist/core/{privacy.d.ts → security/privacy.d.ts} +0 -0
- /package/dist/core/{privacy.js → security/privacy.js} +0 -0
- /package/dist/core/{secret-detector.d.ts → security/secret-detector.d.ts} +0 -0
- /package/dist/core/{secret-detector.js → security/secret-detector.js} +0 -0
- /package/dist/core/{session-hooks → session}/session-hooks.d.ts +0 -0
- /package/dist/core/{session-hooks → session}/session-hooks.js +0 -0
- /package/dist/core/{cache.d.ts → storage/cache.d.ts} +0 -0
- /package/dist/core/{database.d.ts → storage/database.d.ts} +0 -0
- /package/dist/core/{database.js → storage/database.js} +0 -0
|
@@ -1,240 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: squish-cli
|
|
3
|
-
description: Squish CLI commands for OpenClaw and other CLI-based agents. Use for bash execution, scripting, and automation.
|
|
4
|
-
version: 1.0.2
|
|
5
|
-
author: michielhdoteth
|
|
6
|
-
tags: [cli, memory, persistence, command-line, openclaw, bash, automation]
|
|
7
|
-
emoji: terminal
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Squish CLI Commands
|
|
11
|
-
|
|
12
|
-
Use these CLI commands when MCP is not available or when working with OpenClaw, CLI-based agents, or bash scripting.
|
|
13
|
-
|
|
14
|
-
## Install
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
npm install -g squish-memory
|
|
18
|
-
# or
|
|
19
|
-
bun add -g squish-memory
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## Overview
|
|
23
|
-
|
|
24
|
-
Squish v1.0.1 introduces a new interaction model:
|
|
25
|
-
- **Default (`squish`)**: Interactive wizard/menu
|
|
26
|
-
- **Server modes**: `squish run mcp` and `squish run web`
|
|
27
|
-
- **CLI commands**: For agents and scripting (unchanged)
|
|
28
|
-
|
|
29
|
-
## Commands
|
|
30
|
-
|
|
31
|
-
### squish remember
|
|
32
|
-
|
|
33
|
-
Store a memory.
|
|
34
|
-
|
|
35
|
-
```bash
|
|
36
|
-
squish remember "User prefers TypeScript" --type preference
|
|
37
|
-
squish remember "API uses JWT tokens" --type fact --tags auth,api
|
|
38
|
-
squish remember "Chose PostgreSQL" --type decision --project /path/to/project
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
Options:
|
|
42
|
-
- `-t, --type <type>` - Memory type: observation, fact, decision, context, preference (default: observation)
|
|
43
|
-
- `-T, --tags <tags>` - Comma-separated tags
|
|
44
|
-
- `-p, --project <project>` - Project path (default: current directory)
|
|
45
|
-
|
|
46
|
-
### squish search
|
|
47
|
-
|
|
48
|
-
Search memories.
|
|
49
|
-
|
|
50
|
-
```bash
|
|
51
|
-
squish search "authentication patterns"
|
|
52
|
-
squish search "database schema" --limit 10
|
|
53
|
-
squish search "user preferences" --type preference
|
|
54
|
-
squish search "" --project /path/to/project # List recent
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
Options:
|
|
58
|
-
- `-t, --type <type>` - Filter by memory type
|
|
59
|
-
- `-l, --limit <number>` - Max results (default: 10)
|
|
60
|
-
- `-p, --project <project>` - Project path
|
|
61
|
-
|
|
62
|
-
### squish recall
|
|
63
|
-
|
|
64
|
-
Retrieve a memory by ID.
|
|
65
|
-
|
|
66
|
-
```bash
|
|
67
|
-
squish recall <memory-uuid>
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
### squish core_memory
|
|
71
|
-
|
|
72
|
-
Manage core memory (always-visible context).
|
|
73
|
-
|
|
74
|
-
```bash
|
|
75
|
-
# View all sections
|
|
76
|
-
squish core_memory view
|
|
77
|
-
|
|
78
|
-
# Edit a section
|
|
79
|
-
squish core_memory edit persona --content "I am a helpful coding assistant"
|
|
80
|
-
squish core_memory edit user_info --content "User likes TypeScript"
|
|
81
|
-
squish core_memory edit project_context --content "Stack: React, Node.js, PostgreSQL"
|
|
82
|
-
squish core_memory edit working_notes --content "TODO: Implement auth"
|
|
83
|
-
|
|
84
|
-
# Append to a section
|
|
85
|
-
squish core_memory append user_info --text "Also prefers dark mode"
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
Options:
|
|
89
|
-
- `-s, --section <section>` - Section: persona, user_info, project_context, working_notes
|
|
90
|
-
- `-c, --content <content>` - New content (for edit)
|
|
91
|
-
- `-t, --text <text>` - Text to append (for append)
|
|
92
|
-
- `-p, --project <project>` - Project path
|
|
93
|
-
|
|
94
|
-
### squish set-importance
|
|
95
|
-
|
|
96
|
-
Set importance score (0-100).
|
|
97
|
-
|
|
98
|
-
```bash
|
|
99
|
-
squish set-importance <memory-id> --importance 80
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
### squish pin / squish unpin
|
|
103
|
-
|
|
104
|
-
Pin/unpin memory to prevent pruning.
|
|
105
|
-
|
|
106
|
-
```bash
|
|
107
|
-
squish pin <memory-id>
|
|
108
|
-
squish unpin <memory-id>
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
### squish consolidate
|
|
112
|
-
|
|
113
|
-
Trigger manual memory consolidation.
|
|
114
|
-
|
|
115
|
-
```bash
|
|
116
|
-
squish consolidate
|
|
117
|
-
squish consolidate --project-id <project-id>
|
|
118
|
-
squish consolidate --min-age 30 --threshold 0.8
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
Options:
|
|
122
|
-
- `-p, --project-id <id>` - Project ID (default: current directory)
|
|
123
|
-
- `-a, --min-age <number>` - Minimum age in days (default: 90)
|
|
124
|
-
- `-i, --max-importance <number>` - Max importance to consolidate (default: 30)
|
|
125
|
-
- `-t, --threshold <number>` - Similarity threshold 0-1 (default: 0.7)
|
|
126
|
-
- `-l, --limit <number>` - Max memories to process (default: 100)
|
|
127
|
-
|
|
128
|
-
### squish consolidation-stats
|
|
129
|
-
|
|
130
|
-
Get consolidation statistics.
|
|
131
|
-
|
|
132
|
-
```bash
|
|
133
|
-
squish consolidation-stats
|
|
134
|
-
squish consolidation-stats --project-id <project-id>
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
### squish health
|
|
138
|
-
|
|
139
|
-
Check service health.
|
|
140
|
-
|
|
141
|
-
```bash
|
|
142
|
-
squish health
|
|
143
|
-
squish health --json
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
### squish stats
|
|
147
|
-
|
|
148
|
-
Get memory statistics.
|
|
149
|
-
|
|
150
|
-
```bash
|
|
151
|
-
squish stats
|
|
152
|
-
squish stats --project /path/to/project
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
### squish
|
|
156
|
-
|
|
157
|
-
Interactive wizard/menu (default when no args provided).
|
|
158
|
-
|
|
159
|
-
```bash
|
|
160
|
-
squish
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
Shows interactive menu:
|
|
164
|
-
```
|
|
165
|
-
[1] Start MCP Server (for Claude Code, etc.)
|
|
166
|
-
[2] Start Web UI Only
|
|
167
|
-
[3] Check Health Status
|
|
168
|
-
[4] View Memory Stats
|
|
169
|
-
[5] Open Installer Wizard
|
|
170
|
-
[6] Show Help
|
|
171
|
-
[0] Exit
|
|
172
|
-
```
|
|
173
|
-
|
|
174
|
-
### squish run mcp
|
|
175
|
-
|
|
176
|
-
Start MCP server (also starts Web UI):
|
|
177
|
-
|
|
178
|
-
```bash
|
|
179
|
-
squish run mcp
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
### squish run web
|
|
183
|
-
|
|
184
|
-
Start Web UI only:
|
|
185
|
-
|
|
186
|
-
```bash
|
|
187
|
-
squish run web
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
## Quick Reference
|
|
191
|
-
|
|
192
|
-
| Command | Purpose | Example |
|
|
193
|
-
|---------|---------|---------|
|
|
194
|
-
| `squish` | Interactive wizard/menu | `squish` |
|
|
195
|
-
| `squish run mcp` | Start MCP server | `squish run mcp` |
|
|
196
|
-
| `squish run web` | Start Web UI only | `squish run web` |
|
|
197
|
-
| `squish remember` | Store memory | `squish remember "text"` |
|
|
198
|
-
| `squish search` | Find memories | `squish search "query"` |
|
|
199
|
-
| `squish recall` | Get by ID | `squish recall <id>` |
|
|
200
|
-
| `squish core_memory` | Manage context | `squish core_memory view` |
|
|
201
|
-
| `squish set-importance` | Set score | `squish set-importance <id> 80` |
|
|
202
|
-
| `squish pin/unpin` | Prevent pruning | `squish pin <id>` |
|
|
203
|
-
| `squish consolidate` | Summarize old | `squish consolidate` |
|
|
204
|
-
| `squish health` | Check status | `squish health` |
|
|
205
|
-
| `squish stats` | View stats | `squish stats` |
|
|
206
|
-
|
|
207
|
-
## Output Format
|
|
208
|
-
|
|
209
|
-
All commands output JSON by default:
|
|
210
|
-
|
|
211
|
-
```json
|
|
212
|
-
{
|
|
213
|
-
"ok": true,
|
|
214
|
-
"id": "memory-uuid",
|
|
215
|
-
"content": "...",
|
|
216
|
-
"type": "observation"
|
|
217
|
-
}
|
|
218
|
-
```
|
|
219
|
-
|
|
220
|
-
Use `--json` flag where available for JSON output.
|
|
221
|
-
|
|
222
|
-
## Environment
|
|
223
|
-
|
|
224
|
-
```bash
|
|
225
|
-
export SQUISH_MODE=local # or team
|
|
226
|
-
export SQUISH_DATA_DIR=~/.squish
|
|
227
|
-
export SQUISH_EMBEDDINGS_PROVIDER=local # or openai
|
|
228
|
-
```
|
|
229
|
-
|
|
230
|
-
## Migration from v0.9.x
|
|
231
|
-
|
|
232
|
-
**Breaking Changes:**
|
|
233
|
-
- `squish install` removed (replaced by interactive wizard option 5)
|
|
234
|
-
- `squish` now shows interactive menu (was MCP server + Web UI)
|
|
235
|
-
- Added `squish run mcp` and `squish run web` subcommands
|
|
236
|
-
|
|
237
|
-
**What stays the same:**
|
|
238
|
-
- All CLI command syntax and options
|
|
239
|
-
- Environment variables
|
|
240
|
-
- Configuration files
|
|
@@ -1,355 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: squish-mcp
|
|
3
|
-
description: Squish MCP tools for Claude Code, OpenCode, Cursor and other MCP clients. 16 tools for persistent memory storage, search, and context management.
|
|
4
|
-
version: 1.0.2
|
|
5
|
-
author: michielhdoteth
|
|
6
|
-
tags: [mcp, memory, persistence, search, semantic-search, claude-code, opencode, cursor]
|
|
7
|
-
emoji: plug
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# Squish MCP Tools
|
|
11
|
-
|
|
12
|
-
Use these MCP tools when working with Claude Code, OpenCode, Cursor, or any MCP-compatible client.
|
|
13
|
-
|
|
14
|
-
## Install
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
npm install -g squish-memory
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
Then start the MCP server:
|
|
21
|
-
```bash
|
|
22
|
-
squish run mcp
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
This will also start the Web UI at http://localhost:37777
|
|
26
|
-
|
|
27
|
-
Configure in your client's MCP settings:
|
|
28
|
-
- **Command**: `squish-mcp`
|
|
29
|
-
- **Args**: (none needed)
|
|
30
|
-
- **Environment**:
|
|
31
|
-
- `SQUISH_MODE=local` or `team`
|
|
32
|
-
- `SQUISH_DATA_DIR=~/.squish`
|
|
33
|
-
|
|
34
|
-
## MCP Tools (16 Tools)
|
|
35
|
-
|
|
36
|
-
### 1. squish_remember
|
|
37
|
-
Store a new memory with automatic embedding.
|
|
38
|
-
|
|
39
|
-
```typescript
|
|
40
|
-
{
|
|
41
|
-
name: "squish_remember",
|
|
42
|
-
description: "Store a new memory in Squish with automatic embedding",
|
|
43
|
-
inputSchema: {
|
|
44
|
-
type: "object",
|
|
45
|
-
properties: {
|
|
46
|
-
content: { type: "string", description: "Memory content to store" },
|
|
47
|
-
type: {
|
|
48
|
-
type: "string",
|
|
49
|
-
enum: ["observation", "fact", "decision", "context", "preference"],
|
|
50
|
-
description: "Memory type (default: observation)"
|
|
51
|
-
},
|
|
52
|
-
tags: {
|
|
53
|
-
type: "array",
|
|
54
|
-
items: { type: "string" },
|
|
55
|
-
description: "Optional tags"
|
|
56
|
-
},
|
|
57
|
-
project: { type: "string", description: "Project path" }
|
|
58
|
-
},
|
|
59
|
-
required: ["content"]
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
### 2. squish_search
|
|
65
|
-
Hybrid search across QMD, SQLite DB, and embeddings.
|
|
66
|
-
|
|
67
|
-
```typescript
|
|
68
|
-
{
|
|
69
|
-
name: "squish_search",
|
|
70
|
-
description: "Hybrid search across QMD, SQLite DB, and embeddings with graph expansion",
|
|
71
|
-
inputSchema: {
|
|
72
|
-
type: "object",
|
|
73
|
-
properties: {
|
|
74
|
-
query: { type: "string", description: "Search query" },
|
|
75
|
-
limit: { type: "number", description: "Max results (default: 5, max: 100)" },
|
|
76
|
-
project: { type: "string", description: "Project path filter" },
|
|
77
|
-
mode: {
|
|
78
|
-
type: "string",
|
|
79
|
-
enum: ["hybrid", "qmd", "db", "semantic"],
|
|
80
|
-
description: "Search mode (default: hybrid)"
|
|
81
|
-
}
|
|
82
|
-
},
|
|
83
|
-
required: ["query"]
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
```
|
|
87
|
-
|
|
88
|
-
### 3. squish_recall
|
|
89
|
-
Retrieve a specific memory by ID.
|
|
90
|
-
|
|
91
|
-
```typescript
|
|
92
|
-
{
|
|
93
|
-
name: "squish_recall",
|
|
94
|
-
description: "Retrieve a specific memory by ID",
|
|
95
|
-
inputSchema: {
|
|
96
|
-
type: "object",
|
|
97
|
-
properties: {
|
|
98
|
-
memoryId: { type: "string", description: "Memory UUID to retrieve" }
|
|
99
|
-
},
|
|
100
|
-
required: ["memoryId"]
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
### 4. squish_forget
|
|
106
|
-
Delete a memory by ID.
|
|
107
|
-
|
|
108
|
-
```typescript
|
|
109
|
-
{
|
|
110
|
-
name: "squish_forget",
|
|
111
|
-
description: "Delete a memory by ID",
|
|
112
|
-
inputSchema: {
|
|
113
|
-
type: "object",
|
|
114
|
-
properties: {
|
|
115
|
-
memoryId: { type: "string", description: "Memory UUID to delete" }
|
|
116
|
-
},
|
|
117
|
-
required: ["memoryId"]
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
### 5. squish_update
|
|
123
|
-
Update an existing memory.
|
|
124
|
-
|
|
125
|
-
```typescript
|
|
126
|
-
{
|
|
127
|
-
name: "squish_update",
|
|
128
|
-
description: "Update an existing memory",
|
|
129
|
-
inputSchema: {
|
|
130
|
-
type: "object",
|
|
131
|
-
properties: {
|
|
132
|
-
memoryId: { type: "string", description: "Memory UUID to update" },
|
|
133
|
-
content: { type: "string", description: "New content" },
|
|
134
|
-
tags: { type: "array", items: { type: "string" }, description: "New tags" },
|
|
135
|
-
type: {
|
|
136
|
-
type: "string",
|
|
137
|
-
enum: ["observation", "fact", "decision", "context", "preference"],
|
|
138
|
-
description: "New type"
|
|
139
|
-
}
|
|
140
|
-
},
|
|
141
|
-
required: ["memoryId"]
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
### 6. squish_associate
|
|
147
|
-
Create association between two memories.
|
|
148
|
-
|
|
149
|
-
```typescript
|
|
150
|
-
{
|
|
151
|
-
name: "squish_associate",
|
|
152
|
-
description: "Create an association between two memories in the graph",
|
|
153
|
-
inputSchema: {
|
|
154
|
-
type: "object",
|
|
155
|
-
properties: {
|
|
156
|
-
fromMemoryId: { type: "string", description: "Source memory UUID" },
|
|
157
|
-
toMemoryId: { type: "string", description: "Target memory UUID" },
|
|
158
|
-
type: {
|
|
159
|
-
type: "string",
|
|
160
|
-
enum: ["relates_to", "supersedes", "contradicts", "supports", "duplicate", "merged"],
|
|
161
|
-
description: "Association type"
|
|
162
|
-
},
|
|
163
|
-
weight: { type: "number", description: "Strength 0-1 (default: 0.5)" }
|
|
164
|
-
},
|
|
165
|
-
required: ["fromMemoryId", "toMemoryId", "type"]
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
```
|
|
169
|
-
|
|
170
|
-
### 7. squish_related
|
|
171
|
-
Find related memories via graph.
|
|
172
|
-
|
|
173
|
-
```typescript
|
|
174
|
-
{
|
|
175
|
-
name: "squish_related",
|
|
176
|
-
description: "Get related memories via graph traversal",
|
|
177
|
-
inputSchema: {
|
|
178
|
-
type: "object",
|
|
179
|
-
properties: {
|
|
180
|
-
memoryId: { type: "string", description: "Memory UUID" },
|
|
181
|
-
depth: { type: "number", description: "Graph depth 1-5 (default: 2)" },
|
|
182
|
-
minWeight: { type: "number", description: "Min weight 0-1 (default: 0.3)" }
|
|
183
|
-
},
|
|
184
|
-
required: ["memoryId"]
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
|
-
```
|
|
188
|
-
|
|
189
|
-
### 8. squish_context
|
|
190
|
-
Get project context.
|
|
191
|
-
|
|
192
|
-
```typescript
|
|
193
|
-
{
|
|
194
|
-
name: "squish_context",
|
|
195
|
-
description: "Get project context with relevant memories",
|
|
196
|
-
inputSchema: {
|
|
197
|
-
type: "object",
|
|
198
|
-
properties: {
|
|
199
|
-
project: { type: "string", description: "Project path" },
|
|
200
|
-
limit: { type: "number", description: "Max memories (default: 10)" }
|
|
201
|
-
},
|
|
202
|
-
required: ["project"]
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
```
|
|
206
|
-
|
|
207
|
-
### 9. squish_observe
|
|
208
|
-
Record observations.
|
|
209
|
-
|
|
210
|
-
```typescript
|
|
211
|
-
{
|
|
212
|
-
name: "squish_observe",
|
|
213
|
-
description: "Store an observation about tool usage, patterns, or insights",
|
|
214
|
-
inputSchema: {
|
|
215
|
-
type: "object",
|
|
216
|
-
properties: {
|
|
217
|
-
type: {
|
|
218
|
-
type: "string",
|
|
219
|
-
enum: ["tool_use", "file_change", "error", "pattern", "insight"],
|
|
220
|
-
description: "Observation type"
|
|
221
|
-
},
|
|
222
|
-
action: { type: "string", description: "Action performed" },
|
|
223
|
-
summary: { type: "string", description: "Summary of observation" },
|
|
224
|
-
target: { type: "string", description: "Target file or resource" },
|
|
225
|
-
project: { type: "string", description: "Project path" }
|
|
226
|
-
},
|
|
227
|
-
required: ["type", "action", "summary"]
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
```
|
|
231
|
-
|
|
232
|
-
### 10. squish_qmd_search
|
|
233
|
-
Search markdown files.
|
|
234
|
-
|
|
235
|
-
```typescript
|
|
236
|
-
{
|
|
237
|
-
name: "squish_qmd_search",
|
|
238
|
-
description: "Search markdown files using QMD (BM25 + vector)",
|
|
239
|
-
inputSchema: {
|
|
240
|
-
type: "object",
|
|
241
|
-
properties: {
|
|
242
|
-
query: { type: "string", description: "Search query" },
|
|
243
|
-
collection: { type: "string", description: "QMD collection name" },
|
|
244
|
-
limit: { type: "number", description: "Max results (default: 10)" }
|
|
245
|
-
},
|
|
246
|
-
required: ["query"]
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
```
|
|
250
|
-
|
|
251
|
-
### 11. squish_embed
|
|
252
|
-
Generate embeddings.
|
|
253
|
-
|
|
254
|
-
```typescript
|
|
255
|
-
{
|
|
256
|
-
name: "squish_embed",
|
|
257
|
-
description: "Generate embeddings for text using configured provider",
|
|
258
|
-
inputSchema: {
|
|
259
|
-
type: "object",
|
|
260
|
-
properties: {
|
|
261
|
-
text: { type: "string", description: "Text to embed" }
|
|
262
|
-
},
|
|
263
|
-
required: ["text"]
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
```
|
|
267
|
-
|
|
268
|
-
### 12. squish_health
|
|
269
|
-
Check system health. No input required.
|
|
270
|
-
|
|
271
|
-
```typescript
|
|
272
|
-
{
|
|
273
|
-
name: "squish_health",
|
|
274
|
-
description: "Check system health",
|
|
275
|
-
inputSchema: {
|
|
276
|
-
type: "object",
|
|
277
|
-
properties: {}
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
```
|
|
281
|
-
|
|
282
|
-
### 13. squish_stats
|
|
283
|
-
Get memory statistics.
|
|
284
|
-
|
|
285
|
-
```typescript
|
|
286
|
-
{
|
|
287
|
-
name: "squish_stats",
|
|
288
|
-
description: "Get memory statistics for a project",
|
|
289
|
-
inputSchema: {
|
|
290
|
-
type: "object",
|
|
291
|
-
properties: {
|
|
292
|
-
project: { type: "string", description: "Project path (defaults to current)" }
|
|
293
|
-
}
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
```
|
|
297
|
-
|
|
298
|
-
### 14. squish_projects
|
|
299
|
-
List all projects. No input required.
|
|
300
|
-
|
|
301
|
-
```typescript
|
|
302
|
-
{
|
|
303
|
-
name: "squish_projects",
|
|
304
|
-
description: "List all projects",
|
|
305
|
-
inputSchema: {
|
|
306
|
-
type: "object"
|
|
307
|
-
}
|
|
308
|
-
}
|
|
309
|
-
```
|
|
310
|
-
|
|
311
|
-
## Quick Reference
|
|
312
|
-
|
|
313
|
-
| Tool | Purpose | Required Input |
|
|
314
|
-
|------|---------|----------------|
|
|
315
|
-
| squish_remember | Store memory | content |
|
|
316
|
-
| squish_search | Find memories | query |
|
|
317
|
-
| squish_recall | Get by ID | memoryId |
|
|
318
|
-
| squish_forget | Delete memory | memoryId |
|
|
319
|
-
| squish_update | Edit memory | memoryId |
|
|
320
|
-
| squish_associate | Link memories | fromMemoryId, toMemoryId, type |
|
|
321
|
-
| squish_related | Find related | memoryId |
|
|
322
|
-
| squish_context | Project overview | project |
|
|
323
|
-
| squish_observe | Record observation | type, action, summary |
|
|
324
|
-
| squish_qmd_search | Search docs | query |
|
|
325
|
-
| squish_embed | Generate embedding | text |
|
|
326
|
-
| squish_health | Check status | - |
|
|
327
|
-
| squish_stats | View stats | project (optional) |
|
|
328
|
-
| squish_projects | List projects | - |
|
|
329
|
-
|
|
330
|
-
## Configuration
|
|
331
|
-
|
|
332
|
-
```json
|
|
333
|
-
{
|
|
334
|
-
"mcpServers": {
|
|
335
|
-
"squish": {
|
|
336
|
-
"command": "squish-mcp",
|
|
337
|
-
"env": {
|
|
338
|
-
"SQUISH_MODE": "local",
|
|
339
|
-
"SQUISH_DATA_DIR": "~/.squish"
|
|
340
|
-
}
|
|
341
|
-
}
|
|
342
|
-
}
|
|
343
|
-
}
|
|
344
|
-
```
|
|
345
|
-
|
|
346
|
-
## Migration from v0.9.x
|
|
347
|
-
|
|
348
|
-
**Breaking Changes:**
|
|
349
|
-
- Added `squish run mcp` and `squish run web` commands to start servers
|
|
350
|
-
- The `squish` command now shows interactive wizard (was MCP server + Web UI)
|
|
351
|
-
|
|
352
|
-
**What stays the same:**
|
|
353
|
-
- All MCP tool names and schemas
|
|
354
|
-
- Environment variables
|
|
355
|
-
- Configuration format
|