squish-memory 0.7.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/.claude-plugin/marketplace.json +20 -0
- package/.claude-plugin/plugin.json +32 -0
- package/.mcp.json +14 -0
- package/LICENSE +21 -0
- package/README.md +556 -0
- package/commands/context-paging.md +51 -0
- package/commands/context-status.md +22 -0
- package/commands/context.md +5 -0
- package/commands/core-memory.md +56 -0
- package/commands/health.md +5 -0
- package/commands/init.md +39 -0
- package/commands/merge.md +113 -0
- package/commands/observe.md +5 -0
- package/commands/recall.md +5 -0
- package/commands/remember.md +11 -0
- package/commands/search.md +10 -0
- package/dist/adapters/claude-code/capture.d.ts +11 -0
- package/dist/adapters/claude-code/capture.d.ts.map +1 -0
- package/dist/adapters/claude-code/capture.js +100 -0
- package/dist/adapters/claude-code/capture.js.map +1 -0
- package/dist/adapters/claude-code/index.d.ts +5 -0
- package/dist/adapters/claude-code/index.d.ts.map +1 -0
- package/dist/adapters/claude-code/index.js +6 -0
- package/dist/adapters/claude-code/index.js.map +1 -0
- package/dist/adapters/claude-code/injection.d.ts +34 -0
- package/dist/adapters/claude-code/injection.d.ts.map +1 -0
- package/dist/adapters/claude-code/injection.js +127 -0
- package/dist/adapters/claude-code/injection.js.map +1 -0
- package/dist/adapters/claude-code/plugin-wrapper.d.ts +21 -0
- package/dist/adapters/claude-code/plugin-wrapper.d.ts.map +1 -0
- package/dist/adapters/claude-code/plugin-wrapper.js +239 -0
- package/dist/adapters/claude-code/plugin-wrapper.js.map +1 -0
- package/dist/adapters/claude-code/types.d.ts +46 -0
- package/dist/adapters/claude-code/types.d.ts.map +1 -0
- package/dist/adapters/claude-code/types.js +6 -0
- package/dist/adapters/claude-code/types.js.map +1 -0
- package/dist/algorithms/merge/analytics/token-estimator.d.ts +50 -0
- package/dist/algorithms/merge/analytics/token-estimator.d.ts.map +1 -0
- package/dist/algorithms/merge/analytics/token-estimator.js +154 -0
- package/dist/algorithms/merge/analytics/token-estimator.js.map +1 -0
- package/dist/algorithms/merge/detection/hash-filters.d.ts +47 -0
- package/dist/algorithms/merge/detection/hash-filters.d.ts.map +1 -0
- package/dist/algorithms/merge/detection/hash-filters.js +190 -0
- package/dist/algorithms/merge/detection/hash-filters.js.map +1 -0
- package/dist/algorithms/merge/detection/semantic-ranker.d.ts +32 -0
- package/dist/algorithms/merge/detection/semantic-ranker.d.ts.map +1 -0
- package/dist/algorithms/merge/detection/semantic-ranker.js +118 -0
- package/dist/algorithms/merge/detection/semantic-ranker.js.map +1 -0
- package/dist/algorithms/merge/detection/two-stage-detector.d.ts +49 -0
- package/dist/algorithms/merge/detection/two-stage-detector.d.ts.map +1 -0
- package/dist/algorithms/merge/detection/two-stage-detector.js +185 -0
- package/dist/algorithms/merge/detection/two-stage-detector.js.map +1 -0
- package/dist/algorithms/merge/handlers/approve-merge.d.ts +22 -0
- package/dist/algorithms/merge/handlers/approve-merge.d.ts.map +1 -0
- package/dist/algorithms/merge/handlers/approve-merge.js +179 -0
- package/dist/algorithms/merge/handlers/approve-merge.js.map +1 -0
- package/dist/algorithms/merge/handlers/detect-duplicates.d.ts +47 -0
- package/dist/algorithms/merge/handlers/detect-duplicates.d.ts.map +1 -0
- package/dist/algorithms/merge/handlers/detect-duplicates.js +165 -0
- package/dist/algorithms/merge/handlers/detect-duplicates.js.map +1 -0
- package/dist/algorithms/merge/handlers/get-stats.d.ts +39 -0
- package/dist/algorithms/merge/handlers/get-stats.d.ts.map +1 -0
- package/dist/algorithms/merge/handlers/get-stats.js +88 -0
- package/dist/algorithms/merge/handlers/get-stats.js.map +1 -0
- package/dist/algorithms/merge/handlers/list-proposals.d.ts +45 -0
- package/dist/algorithms/merge/handlers/list-proposals.d.ts.map +1 -0
- package/dist/algorithms/merge/handlers/list-proposals.js +83 -0
- package/dist/algorithms/merge/handlers/list-proposals.js.map +1 -0
- package/dist/algorithms/merge/handlers/preview-merge.d.ts +39 -0
- package/dist/algorithms/merge/handlers/preview-merge.d.ts.map +1 -0
- package/dist/algorithms/merge/handlers/preview-merge.js +93 -0
- package/dist/algorithms/merge/handlers/preview-merge.js.map +1 -0
- package/dist/algorithms/merge/handlers/reject-merge.d.ts +28 -0
- package/dist/algorithms/merge/handlers/reject-merge.d.ts.map +1 -0
- package/dist/algorithms/merge/handlers/reject-merge.js +69 -0
- package/dist/algorithms/merge/handlers/reject-merge.js.map +1 -0
- package/dist/algorithms/merge/handlers/reverse-merge.d.ts +21 -0
- package/dist/algorithms/merge/handlers/reverse-merge.d.ts.map +1 -0
- package/dist/algorithms/merge/handlers/reverse-merge.js +121 -0
- package/dist/algorithms/merge/handlers/reverse-merge.js.map +1 -0
- package/dist/algorithms/merge/safety/safety-checks.d.ts +22 -0
- package/dist/algorithms/merge/safety/safety-checks.d.ts.map +1 -0
- package/dist/algorithms/merge/safety/safety-checks.js +215 -0
- package/dist/algorithms/merge/safety/safety-checks.js.map +1 -0
- package/dist/algorithms/merge/strategies/merge-strategies.d.ts +32 -0
- package/dist/algorithms/merge/strategies/merge-strategies.d.ts.map +1 -0
- package/dist/algorithms/merge/strategies/merge-strategies.js +337 -0
- package/dist/algorithms/merge/strategies/merge-strategies.js.map +1 -0
- package/dist/api/web/web.d.ts +4 -0
- package/dist/api/web/web.d.ts.map +1 -0
- package/dist/api/web/web.js +484 -0
- package/dist/api/web/web.js.map +1 -0
- package/dist/config.d.ts +28 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +83 -0
- package/dist/config.js.map +1 -0
- package/dist/core/agent-memory.d.ts +22 -0
- package/dist/core/agent-memory.d.ts.map +1 -0
- package/dist/core/agent-memory.js +111 -0
- package/dist/core/agent-memory.js.map +1 -0
- package/dist/core/associations.d.ts +32 -0
- package/dist/core/associations.d.ts.map +1 -0
- package/dist/core/associations.js +249 -0
- package/dist/core/associations.js.map +1 -0
- package/dist/core/cache.d.ts +13 -0
- package/dist/core/cache.d.ts.map +1 -0
- package/dist/core/cache.js +202 -0
- package/dist/core/cache.js.map +1 -0
- package/dist/core/consolidation.d.ts +6 -0
- package/dist/core/consolidation.d.ts.map +1 -0
- package/dist/core/consolidation.js +40 -0
- package/dist/core/consolidation.js.map +1 -0
- package/dist/core/context-paging.d.ts +90 -0
- package/dist/core/context-paging.d.ts.map +1 -0
- package/dist/core/context-paging.js +348 -0
- package/dist/core/context-paging.js.map +1 -0
- package/dist/core/context.d.ts +7 -0
- package/dist/core/context.d.ts.map +1 -0
- package/dist/core/context.js +24 -0
- package/dist/core/context.js.map +1 -0
- package/dist/core/core-memory.d.ts +73 -0
- package/dist/core/core-memory.d.ts.map +1 -0
- package/dist/core/core-memory.js +214 -0
- package/dist/core/core-memory.js.map +1 -0
- package/dist/core/database.d.ts +12 -0
- package/dist/core/database.d.ts.map +1 -0
- package/dist/core/database.js +12 -0
- package/dist/core/database.js.map +1 -0
- package/dist/core/embeddings/qmd-client.d.ts +136 -0
- package/dist/core/embeddings/qmd-client.d.ts.map +1 -0
- package/dist/core/embeddings/qmd-client.js +403 -0
- package/dist/core/embeddings/qmd-client.js.map +1 -0
- package/dist/core/embeddings/qmd-provider.d.ts +65 -0
- package/dist/core/embeddings/qmd-provider.d.ts.map +1 -0
- package/dist/core/embeddings/qmd-provider.js +133 -0
- package/dist/core/embeddings/qmd-provider.js.map +1 -0
- package/dist/core/embeddings.d.ts +19 -0
- package/dist/core/embeddings.d.ts.map +1 -0
- package/dist/core/embeddings.js +297 -0
- package/dist/core/embeddings.js.map +1 -0
- package/dist/core/governance.d.ts +21 -0
- package/dist/core/governance.d.ts.map +1 -0
- package/dist/core/governance.js +64 -0
- package/dist/core/governance.js.map +1 -0
- package/dist/core/index.d.ts +10 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +14 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/lifecycle.d.ts +19 -0
- package/dist/core/lifecycle.d.ts.map +1 -0
- package/dist/core/lifecycle.js +182 -0
- package/dist/core/lifecycle.js.map +1 -0
- package/dist/core/local-embeddings.d.ts +14 -0
- package/dist/core/local-embeddings.d.ts.map +1 -0
- package/dist/core/local-embeddings.js +94 -0
- package/dist/core/local-embeddings.js.map +1 -0
- package/dist/core/logger.d.ts +16 -0
- package/dist/core/logger.d.ts.map +1 -0
- package/dist/core/logger.js +34 -0
- package/dist/core/logger.js.map +1 -0
- package/dist/core/memory/bridge-discovery.d.ts +50 -0
- package/dist/core/memory/bridge-discovery.d.ts.map +1 -0
- package/dist/core/memory/bridge-discovery.js +291 -0
- package/dist/core/memory/bridge-discovery.js.map +1 -0
- package/dist/core/memory/entity-extractor.d.ts +33 -0
- package/dist/core/memory/entity-extractor.d.ts.map +1 -0
- package/dist/core/memory/entity-extractor.js +336 -0
- package/dist/core/memory/entity-extractor.js.map +1 -0
- package/dist/core/memory/entity-resolver.d.ts +23 -0
- package/dist/core/memory/entity-resolver.d.ts.map +1 -0
- package/dist/core/memory/entity-resolver.js +64 -0
- package/dist/core/memory/entity-resolver.js.map +1 -0
- package/dist/core/memory/fact-extractor.d.ts +24 -0
- package/dist/core/memory/fact-extractor.d.ts.map +1 -0
- package/dist/core/memory/fact-extractor.js +89 -0
- package/dist/core/memory/fact-extractor.js.map +1 -0
- package/dist/core/memory/hybrid-retrieval.d.ts +30 -0
- package/dist/core/memory/hybrid-retrieval.d.ts.map +1 -0
- package/dist/core/memory/hybrid-retrieval.js +63 -0
- package/dist/core/memory/hybrid-retrieval.js.map +1 -0
- package/dist/core/memory/hybrid-scorer.d.ts +51 -0
- package/dist/core/memory/hybrid-scorer.d.ts.map +1 -0
- package/dist/core/memory/hybrid-scorer.js +248 -0
- package/dist/core/memory/hybrid-scorer.js.map +1 -0
- package/dist/core/memory/index.d.ts +8 -0
- package/dist/core/memory/index.d.ts.map +1 -0
- package/dist/core/memory/index.js +10 -0
- package/dist/core/memory/index.js.map +1 -0
- package/dist/core/memory/memories.d.ts +35 -0
- package/dist/core/memory/memories.d.ts.map +1 -0
- package/dist/core/memory/memories.js +338 -0
- package/dist/core/memory/memories.js.map +1 -0
- package/dist/core/memory/memory-manager.d.ts +15 -0
- package/dist/core/memory/memory-manager.d.ts.map +1 -0
- package/dist/core/memory/memory-manager.js +46 -0
- package/dist/core/memory/memory-manager.js.map +1 -0
- package/dist/core/memory/query-processor.d.ts +21 -0
- package/dist/core/memory/query-processor.d.ts.map +1 -0
- package/dist/core/memory/query-processor.js +72 -0
- package/dist/core/memory/query-processor.js.map +1 -0
- package/dist/core/memory/serialization.d.ts +6 -0
- package/dist/core/memory/serialization.d.ts.map +1 -0
- package/dist/core/memory/serialization.js +35 -0
- package/dist/core/memory/serialization.js.map +1 -0
- package/dist/core/memory/temporal-parser.d.ts +32 -0
- package/dist/core/memory/temporal-parser.d.ts.map +1 -0
- package/dist/core/memory/temporal-parser.js +385 -0
- package/dist/core/memory/temporal-parser.js.map +1 -0
- package/dist/core/observations.d.ts +26 -0
- package/dist/core/observations.d.ts.map +1 -0
- package/dist/core/observations.js +118 -0
- package/dist/core/observations.js.map +1 -0
- package/dist/core/privacy.d.ts +23 -0
- package/dist/core/privacy.d.ts.map +1 -0
- package/dist/core/privacy.js +82 -0
- package/dist/core/privacy.js.map +1 -0
- package/dist/core/projects.d.ts +10 -0
- package/dist/core/projects.d.ts.map +1 -0
- package/dist/core/projects.js +66 -0
- package/dist/core/projects.js.map +1 -0
- package/dist/core/redis.d.ts +11 -0
- package/dist/core/redis.d.ts.map +1 -0
- package/dist/core/redis.js +69 -0
- package/dist/core/redis.js.map +1 -0
- package/dist/core/requirements.d.ts +20 -0
- package/dist/core/requirements.d.ts.map +1 -0
- package/dist/core/requirements.js +35 -0
- package/dist/core/requirements.js.map +1 -0
- package/dist/core/search/conversations.d.ts +25 -0
- package/dist/core/search/conversations.d.ts.map +1 -0
- package/dist/core/search/conversations.js +112 -0
- package/dist/core/search/conversations.js.map +1 -0
- package/dist/core/search/entities.d.ts +12 -0
- package/dist/core/search/entities.d.ts.map +1 -0
- package/dist/core/search/entities.js +34 -0
- package/dist/core/search/entities.js.map +1 -0
- package/dist/core/search/folder-context.d.ts +25 -0
- package/dist/core/search/folder-context.d.ts.map +1 -0
- package/dist/core/search/folder-context.js +119 -0
- package/dist/core/search/folder-context.js.map +1 -0
- package/dist/core/search/index.d.ts +4 -0
- package/dist/core/search/index.d.ts.map +1 -0
- package/dist/core/search/index.js +5 -0
- package/dist/core/search/index.js.map +1 -0
- package/dist/core/search/qmd-search.d.ts +61 -0
- package/dist/core/search/qmd-search.d.ts.map +1 -0
- package/dist/core/search/qmd-search.js +178 -0
- package/dist/core/search/qmd-search.js.map +1 -0
- package/dist/core/secret-detector.d.ts +32 -0
- package/dist/core/secret-detector.d.ts.map +1 -0
- package/dist/core/secret-detector.js +88 -0
- package/dist/core/secret-detector.js.map +1 -0
- package/dist/core/snapshots/cleanup.d.ts +9 -0
- package/dist/core/snapshots/cleanup.d.ts.map +1 -0
- package/dist/core/snapshots/cleanup.js +12 -0
- package/dist/core/snapshots/cleanup.js.map +1 -0
- package/dist/core/snapshots/comparison.d.ts +19 -0
- package/dist/core/snapshots/comparison.d.ts.map +1 -0
- package/dist/core/snapshots/comparison.js +37 -0
- package/dist/core/snapshots/comparison.js.map +1 -0
- package/dist/core/snapshots/creation.d.ts +19 -0
- package/dist/core/snapshots/creation.d.ts.map +1 -0
- package/dist/core/snapshots/creation.js +126 -0
- package/dist/core/snapshots/creation.js.map +1 -0
- package/dist/core/snapshots/retrieval.d.ts +7 -0
- package/dist/core/snapshots/retrieval.d.ts.map +1 -0
- package/dist/core/snapshots/retrieval.js +41 -0
- package/dist/core/snapshots/retrieval.js.map +1 -0
- package/dist/core/snapshots/stats.d.ts +11 -0
- package/dist/core/snapshots/stats.d.ts.map +1 -0
- package/dist/core/snapshots/stats.js +52 -0
- package/dist/core/snapshots/stats.js.map +1 -0
- package/dist/core/snapshots.d.ts +29 -0
- package/dist/core/snapshots.d.ts.map +1 -0
- package/dist/core/snapshots.js +220 -0
- package/dist/core/snapshots.js.map +1 -0
- package/dist/core/summarization/cleanup.d.ts +9 -0
- package/dist/core/summarization/cleanup.d.ts.map +1 -0
- package/dist/core/summarization/cleanup.js +12 -0
- package/dist/core/summarization/cleanup.js.map +1 -0
- package/dist/core/summarization/queries.d.ts +9 -0
- package/dist/core/summarization/queries.d.ts.map +1 -0
- package/dist/core/summarization/queries.js +28 -0
- package/dist/core/summarization/queries.js.map +1 -0
- package/dist/core/summarization/stats.d.ts +14 -0
- package/dist/core/summarization/stats.d.ts.map +1 -0
- package/dist/core/summarization/stats.js +52 -0
- package/dist/core/summarization/stats.js.map +1 -0
- package/dist/core/summarization/strategies.d.ts +24 -0
- package/dist/core/summarization/strategies.d.ts.map +1 -0
- package/dist/core/summarization/strategies.js +28 -0
- package/dist/core/summarization/strategies.js.map +1 -0
- package/dist/core/summarization.d.ts +37 -0
- package/dist/core/summarization.d.ts.map +1 -0
- package/dist/core/summarization.js +188 -0
- package/dist/core/summarization.js.map +1 -0
- package/dist/core/sync/qmd-sync.d.ts +106 -0
- package/dist/core/sync/qmd-sync.d.ts.map +1 -0
- package/dist/core/sync/qmd-sync.js +213 -0
- package/dist/core/sync/qmd-sync.js.map +1 -0
- package/dist/core/temporal-facts.d.ts +54 -0
- package/dist/core/temporal-facts.d.ts.map +1 -0
- package/dist/core/temporal-facts.js +193 -0
- package/dist/core/temporal-facts.js.map +1 -0
- package/dist/core/utils/cleanup-operations.d.ts +13 -0
- package/dist/core/utils/cleanup-operations.d.ts.map +1 -0
- package/dist/core/utils/cleanup-operations.js +44 -0
- package/dist/core/utils/cleanup-operations.js.map +1 -0
- package/dist/core/utils/content-extraction.d.ts +19 -0
- package/dist/core/utils/content-extraction.d.ts.map +1 -0
- package/dist/core/utils/content-extraction.js +65 -0
- package/dist/core/utils/content-extraction.js.map +1 -0
- package/dist/core/utils/filter-builder.d.ts +13 -0
- package/dist/core/utils/filter-builder.d.ts.map +1 -0
- package/dist/core/utils/filter-builder.js +44 -0
- package/dist/core/utils/filter-builder.js.map +1 -0
- package/dist/core/utils/history-traversal.d.ts +13 -0
- package/dist/core/utils/history-traversal.d.ts.map +1 -0
- package/dist/core/utils/history-traversal.js +50 -0
- package/dist/core/utils/history-traversal.js.map +1 -0
- package/dist/core/utils/memory-operations.d.ts +17 -0
- package/dist/core/utils/memory-operations.d.ts.map +1 -0
- package/dist/core/utils/memory-operations.js +41 -0
- package/dist/core/utils/memory-operations.js.map +1 -0
- package/dist/core/utils/query-operations.d.ts +18 -0
- package/dist/core/utils/query-operations.d.ts.map +1 -0
- package/dist/core/utils/query-operations.js +65 -0
- package/dist/core/utils/query-operations.js.map +1 -0
- package/dist/core/utils/summarization-helpers.d.ts +21 -0
- package/dist/core/utils/summarization-helpers.d.ts.map +1 -0
- package/dist/core/utils/summarization-helpers.js +35 -0
- package/dist/core/utils/summarization-helpers.js.map +1 -0
- package/dist/core/utils/temporal-queries.d.ts +13 -0
- package/dist/core/utils/temporal-queries.d.ts.map +1 -0
- package/dist/core/utils/temporal-queries.js +27 -0
- package/dist/core/utils/temporal-queries.js.map +1 -0
- package/dist/core/utils/version-management.d.ts +9 -0
- package/dist/core/utils/version-management.d.ts.map +1 -0
- package/dist/core/utils/version-management.js +61 -0
- package/dist/core/utils/version-management.js.map +1 -0
- package/dist/core/utils.d.ts +13 -0
- package/dist/core/utils.d.ts.map +1 -0
- package/dist/core/utils.js +51 -0
- package/dist/core/utils.js.map +1 -0
- package/dist/core/worker.d.ts +62 -0
- package/dist/core/worker.d.ts.map +1 -0
- package/dist/core/worker.js +186 -0
- package/dist/core/worker.js.map +1 -0
- package/dist/db/adapter.d.ts +6 -0
- package/dist/db/adapter.d.ts.map +1 -0
- package/dist/db/adapter.js +43 -0
- package/dist/db/adapter.js.map +1 -0
- package/dist/db/bootstrap.d.ts +9 -0
- package/dist/db/bootstrap.d.ts.map +1 -0
- package/dist/db/bootstrap.js +444 -0
- package/dist/db/bootstrap.js.map +1 -0
- package/dist/db/index.d.ts +11 -0
- package/dist/db/index.d.ts.map +1 -0
- package/dist/db/index.js +43 -0
- package/dist/db/index.js.map +1 -0
- package/dist/db/schema.d.ts +3 -0
- package/dist/db/schema.d.ts.map +1 -0
- package/dist/db/schema.js +11 -0
- package/dist/db/schema.js.map +1 -0
- package/dist/drizzle/schema-sqlite.d.ts +3046 -0
- package/dist/drizzle/schema-sqlite.d.ts.map +1 -0
- package/dist/drizzle/schema-sqlite.js +405 -0
- package/dist/drizzle/schema-sqlite.js.map +1 -0
- package/dist/drizzle/schema.d.ts +2969 -0
- package/dist/drizzle/schema.d.ts.map +1 -0
- package/dist/drizzle/schema.js +555 -0
- package/dist/drizzle/schema.js.map +1 -0
- package/dist/index.d.ts +34 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +784 -0
- package/dist/index.js.map +1 -0
- package/hooks/hooks.json +52 -0
- package/hooks/post-tool-use.js +26 -0
- package/hooks/session-end.js +28 -0
- package/hooks/session-start.js +33 -0
- package/hooks/user-prompt-submit.js +26 -0
- package/hooks/utils.js +153 -0
- package/npx-installer.js +208 -0
- package/package.json +101 -0
- package/plugin.json +32 -0
- package/skills/memory-guide/SKILL.md +198 -0
- package/skills/squish-memory/SKILL.md +87 -0
- package/skills/squish-memory/install.sh +91 -0
package/plugin.json
ADDED
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "squish",
|
|
3
|
+
"version": "0.6.0",
|
|
4
|
+
"description": "11 consolidated MCP tools for persistent two-tier memory system: core_memory, context_paging, merge, plus semantic search, lifecycle management, and intelligent context paging",
|
|
5
|
+
"author": {
|
|
6
|
+
"name": "michielhdoteth",
|
|
7
|
+
"url": "https://github.com/michielhdoteth"
|
|
8
|
+
},
|
|
9
|
+
"license": "MIT",
|
|
10
|
+
"homepage": "https://github.com/michielhdoteth/squish#readme",
|
|
11
|
+
"repository": "https://github.com/michielhdoteth/squish.git",
|
|
12
|
+
"commands": "./commands/",
|
|
13
|
+
"mcpServers": "./.mcp.json",
|
|
14
|
+
"keywords": [
|
|
15
|
+
"claude",
|
|
16
|
+
"claude-code",
|
|
17
|
+
"claude-plugin",
|
|
18
|
+
"mcp-server",
|
|
19
|
+
"memory",
|
|
20
|
+
"persistent-memory",
|
|
21
|
+
"core-memory",
|
|
22
|
+
"context-management",
|
|
23
|
+
"semantic-search",
|
|
24
|
+
"full-text-search",
|
|
25
|
+
"local-first",
|
|
26
|
+
"privacy",
|
|
27
|
+
"agent-memory",
|
|
28
|
+
"slash-commands",
|
|
29
|
+
"two-tier-architecture",
|
|
30
|
+
"model-context-protocol"
|
|
31
|
+
]
|
|
32
|
+
}
|
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: memory-guide
|
|
3
|
+
description: Expert guide for using Squish memory system v0.6.0. Use when managing persistent memory, storing context, recalling information, or optimizing memory usage in Claude Code sessions.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Squish Memory System Guide v0.6.0
|
|
7
|
+
|
|
8
|
+
You are an expert at using the Squish persistent memory system for Claude Code.
|
|
9
|
+
|
|
10
|
+
## When to Use Squish Memory
|
|
11
|
+
|
|
12
|
+
Use Squish memory tools proactively for:
|
|
13
|
+
|
|
14
|
+
1. **Storing Important Information**
|
|
15
|
+
- User preferences, project context, decisions made
|
|
16
|
+
- Technical specifications, API patterns, architecture notes
|
|
17
|
+
- Ongoing work, TODOs, blockers encountered
|
|
18
|
+
|
|
19
|
+
2. **Recalling Past Context**
|
|
20
|
+
- Previous conversations and decisions
|
|
21
|
+
- Code patterns used in this project
|
|
22
|
+
- User's coding style preferences
|
|
23
|
+
|
|
24
|
+
3. **Managing Session Context**
|
|
25
|
+
- Load relevant memories before starting complex tasks
|
|
26
|
+
- Inject project-specific context
|
|
27
|
+
- Maintain working memory across sessions
|
|
28
|
+
|
|
29
|
+
## Core Memory (Always In Context)
|
|
30
|
+
|
|
31
|
+
**Tool:** `core_memory` with `action` parameter
|
|
32
|
+
|
|
33
|
+
**Sections:**
|
|
34
|
+
- **persona**: Your identity, role, communication style
|
|
35
|
+
- **user_info**: User's name, preferences, coding style, expertise level
|
|
36
|
+
- **project_context**: Current project context, architecture, stack, patterns
|
|
37
|
+
- **working_notes**: Active TODOs, current focus, blockers, next steps
|
|
38
|
+
|
|
39
|
+
**Actions:**
|
|
40
|
+
- `view` - See all core memory sections
|
|
41
|
+
- `edit` - Replace content in a specific section
|
|
42
|
+
- `append` - Add to existing section content
|
|
43
|
+
|
|
44
|
+
**When to update:**
|
|
45
|
+
- Beginning of new projects (project_context section)
|
|
46
|
+
- When user shares preferences (user_info section)
|
|
47
|
+
- At end of sessions (working_notes section with TODOs)
|
|
48
|
+
- When identity/role changes (persona section)
|
|
49
|
+
|
|
50
|
+
**Example usage:**
|
|
51
|
+
```
|
|
52
|
+
/squish:core_memory action=append section=project_context text="Stack: TypeScript, React, PostgreSQL, Drizzle ORM"
|
|
53
|
+
/squish:core_memory action=edit section=working_notes content="Authentication complete. Next: implement API rate limiting"
|
|
54
|
+
/squish:core_memory action=view
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Context Paging (Working Set)
|
|
58
|
+
|
|
59
|
+
**Tool:** `context_paging` with `action` parameter
|
|
60
|
+
|
|
61
|
+
**Purpose:** Agent-controlled working memory for relevant information during tasks
|
|
62
|
+
|
|
63
|
+
**Actions:**
|
|
64
|
+
- `load` - Load memories into working context
|
|
65
|
+
- `evict` - Remove memories from working context
|
|
66
|
+
- `view` - See what's currently loaded
|
|
67
|
+
|
|
68
|
+
**When to load memories:**
|
|
69
|
+
- Before starting work: Load relevant past decisions, patterns
|
|
70
|
+
- During debugging: Load related error memories
|
|
71
|
+
- For refactoring: Load architectural notes
|
|
72
|
+
|
|
73
|
+
**When to evict:**
|
|
74
|
+
- Task completed
|
|
75
|
+
- Context getting full (check context_status)
|
|
76
|
+
- Information no longer relevant
|
|
77
|
+
|
|
78
|
+
**Example workflow:**
|
|
79
|
+
```
|
|
80
|
+
# Before starting authentication work
|
|
81
|
+
/squish:search query="authentication patterns we discussed"
|
|
82
|
+
/squish:context_paging action=load memoryIds=["id1","id2","id3"]
|
|
83
|
+
|
|
84
|
+
# Check what's loaded
|
|
85
|
+
/squish:context_paging action=view
|
|
86
|
+
|
|
87
|
+
# After completing task
|
|
88
|
+
/squish:context_paging action=evict memoryIds=["id1","id2"]
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
## Storing Memories
|
|
92
|
+
|
|
93
|
+
**Tool:** `remember`
|
|
94
|
+
|
|
95
|
+
**What to store:**
|
|
96
|
+
- Decisions made and rationale
|
|
97
|
+
- User preferences discovered
|
|
98
|
+
- Code patterns agreed upon
|
|
99
|
+
- Project-specific conventions
|
|
100
|
+
- Blockers encountered and solutions
|
|
101
|
+
- Technical specifications
|
|
102
|
+
|
|
103
|
+
**Memory types:**
|
|
104
|
+
- observation: Facts observed, patterns noticed
|
|
105
|
+
- fact: Technical facts, specifications
|
|
106
|
+
- decision: Decisions made with rationale
|
|
107
|
+
- context: Project/domain context
|
|
108
|
+
- preference: User preferences
|
|
109
|
+
|
|
110
|
+
**Example:**
|
|
111
|
+
```
|
|
112
|
+
/squish:remember content="User prefers functional components with hooks over class components" type=preference sector=autobiographical
|
|
113
|
+
/squish:remember content="API uses JWT tokens with 1-hour expiration, refresh tokens stored in httpOnly cookies" type=fact sector=semantic
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
## Search and Recall
|
|
117
|
+
|
|
118
|
+
**Tools:** `search`, `recall`, `get_related`
|
|
119
|
+
|
|
120
|
+
**Search strategies:**
|
|
121
|
+
- Semantic search: Natural language queries
|
|
122
|
+
- Full-text search: Specific keywords, file names
|
|
123
|
+
- Related memories: Find connected information via association graph
|
|
124
|
+
|
|
125
|
+
**Example:**
|
|
126
|
+
```
|
|
127
|
+
/squish:search query="database schema design decisions" limit=5
|
|
128
|
+
/squish:recall memoryId=abc123
|
|
129
|
+
/squish:get_related memoryId=abc123 limit=10
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Best Practices
|
|
133
|
+
|
|
134
|
+
1. **Store proactively**: Don't wait until end of session
|
|
135
|
+
2. **Be specific**: Include context, timestamps, rationale
|
|
136
|
+
3. **Use appropriate types**: Choose correct memory type and sector
|
|
137
|
+
4. **Load selectively**: Don't load everything, focus on relevant memories
|
|
138
|
+
5. **Maintain core memory**: Keep project/working sections current
|
|
139
|
+
6. **Use associations**: Related memories are powerful for context
|
|
140
|
+
|
|
141
|
+
## Memory Lifecycle
|
|
142
|
+
|
|
143
|
+
- **Hot memories**: Recent, frequently accessed (auto-retained)
|
|
144
|
+
- **Warm memories**: Older but still relevant
|
|
145
|
+
- **Cold memories**: Old, rarely accessed (may be evicted)
|
|
146
|
+
- **Protected**: Marked important, won't be evicted
|
|
147
|
+
- **Pinned**: Auto-injected into context
|
|
148
|
+
|
|
149
|
+
**Governance:**
|
|
150
|
+
```
|
|
151
|
+
/squish:protect_memory memoryId=abc123
|
|
152
|
+
/squish:pin_memory memoryId=abc123
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
## Advanced Features
|
|
156
|
+
|
|
157
|
+
**Merge duplicates:**
|
|
158
|
+
```
|
|
159
|
+
/squish:merge action=detect
|
|
160
|
+
/squish:merge action=approve mergeId=xyz789
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
**Session summarization:**
|
|
164
|
+
```
|
|
165
|
+
/squish:summarize_session
|
|
166
|
+
```
|
|
167
|
+
|
|
168
|
+
**Health check:**
|
|
169
|
+
```
|
|
170
|
+
/squish:health
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
**Context status:**
|
|
174
|
+
```
|
|
175
|
+
/squish:context_status
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
## Integration Pattern
|
|
179
|
+
|
|
180
|
+
```
|
|
181
|
+
1. Session start: /squish:core_memory action=view
|
|
182
|
+
2. Load relevant context: /squish:search + /squish:context_paging action=load
|
|
183
|
+
3. Work on task: Use loaded memories as reference
|
|
184
|
+
4. Store new learnings: /squish:remember key information
|
|
185
|
+
5. Update working memory: /squish:core_memory action=edit section=working_notes
|
|
186
|
+
6. Session end: /squish:context_paging action=evict, summarize if needed
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
## v0.6.0 Changes
|
|
190
|
+
|
|
191
|
+
**Consolidated Tools (11 tools, down from 18):**
|
|
192
|
+
- `core_memory` - Replaces core_memory_view/edit/append
|
|
193
|
+
- `context_paging` - Replaces load_to_context/evict_from_context/view_loaded
|
|
194
|
+
- `merge` - Replaces detect_duplicates + merge operations
|
|
195
|
+
|
|
196
|
+
**All tools now use `action` parameter for sub-operations.**
|
|
197
|
+
|
|
198
|
+
Remember: Squish is your persistent memory. Use it actively to maintain continuity across sessions and provide better assistance.
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: squish-memory
|
|
3
|
+
description: Persistent memory system with semantic search. Store and retrieve information across sessions.
|
|
4
|
+
version: 0.7.0
|
|
5
|
+
author: michielhdoteth
|
|
6
|
+
tags: [memory, persistence, search, semantic-search, ai-assistant, openclaw]
|
|
7
|
+
emoji: brain
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Squish Memory
|
|
11
|
+
|
|
12
|
+
Persistent memory for AI assistants. Store facts, decisions, and context. Search semantically across all stored information.
|
|
13
|
+
|
|
14
|
+
## When to Use
|
|
15
|
+
|
|
16
|
+
Use this skill when you need to:
|
|
17
|
+
- Remember user preferences, decisions, or important facts
|
|
18
|
+
- Search across previously stored information
|
|
19
|
+
- Maintain context across conversations
|
|
20
|
+
- Store technical decisions or observations
|
|
21
|
+
|
|
22
|
+
## What It Does
|
|
23
|
+
|
|
24
|
+
- **Remember**: Store facts, decisions, observations, preferences
|
|
25
|
+
- **Recall**: Retrieve specific memories by ID
|
|
26
|
+
- **Search**: Find relevant information semantically
|
|
27
|
+
- **Core Memory**: Keep important context always visible
|
|
28
|
+
|
|
29
|
+
## Installation
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
npm install -g squish-memory
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Usage
|
|
36
|
+
|
|
37
|
+
### Store Information
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
remember: "User prefers dark mode" type:preference
|
|
41
|
+
remember: "API returns paginated results" type:fact
|
|
42
|
+
remember: "Using JWT for auth" type:decision
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Find Information
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
search: "authentication" limit:5
|
|
49
|
+
search: "database schema" type:fact
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Core Memory (Always Visible)
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
core_memory section:persona content: "I am a helpful coding assistant"
|
|
56
|
+
core_memory section:user_info content: "Prefers TypeScript over JavaScript"
|
|
57
|
+
core_memory section:working_notes content: "Currently working on auth feature"
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### Retrieve by ID
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
recall: "memory-id"
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Gateway
|
|
67
|
+
|
|
68
|
+
Enable WebSocket gateway for OpenClaw integration:
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
export OPENCLAW_GATEWAY_ENABLED=true
|
|
72
|
+
squish start
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
Gateway runs on port 18789. Messages: search, remember, recall, status.
|
|
76
|
+
|
|
77
|
+
## Memory Types
|
|
78
|
+
|
|
79
|
+
- **fact**: Technical information, specifications
|
|
80
|
+
- **decision**: Choices made with reasoning
|
|
81
|
+
- **preference**: User likes/dislikes
|
|
82
|
+
- **observation**: Patterns noticed
|
|
83
|
+
- **context**: Project/domain information
|
|
84
|
+
|
|
85
|
+
## Links
|
|
86
|
+
|
|
87
|
+
GitHub: https://github.com/michielhdoteth/squish
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Squish Memory Skill Installer for OpenClaw
|
|
3
|
+
# Usage: curl -sSL https://raw.githubusercontent.com/michielhdoteth/squish/master/skills/squish-memory/install.sh | bash
|
|
4
|
+
|
|
5
|
+
set -e
|
|
6
|
+
|
|
7
|
+
INSTALL_DIR="$HOME/.openclaw/skills/squish-memory"
|
|
8
|
+
GITHUB_REPO="https://github.com/michielhdoteth/squish"
|
|
9
|
+
RAW_BASE="https://raw.githubusercontent.com/michielhdoteth/squish/master"
|
|
10
|
+
|
|
11
|
+
echo "Squish Memory Skill Installer for OpenClaw"
|
|
12
|
+
echo "=========================================="
|
|
13
|
+
|
|
14
|
+
# Create install directory
|
|
15
|
+
echo "Installing to: $INSTALL_DIR"
|
|
16
|
+
mkdir -p "$INSTALL_DIR"
|
|
17
|
+
|
|
18
|
+
# Download skill definition
|
|
19
|
+
echo "Downloading skill definition..."
|
|
20
|
+
curl -sSL "$RAW_BASE/skills/squish-memory/SKILL.md" -o "$INSTALL_DIR/SKILL.md"
|
|
21
|
+
|
|
22
|
+
# Create gateway launcher script
|
|
23
|
+
cat > "$INSTALL_DIR/start-gateway.sh" << 'EOF'
|
|
24
|
+
#!/bin/bash
|
|
25
|
+
# Squish OpenClaw Gateway Launcher
|
|
26
|
+
|
|
27
|
+
# Check if Squish is installed
|
|
28
|
+
if [ ! -d "$HOME/.squish" ] && [ ! -d "./node_modules/squish" ]; then
|
|
29
|
+
echo "Squish not found. Installing..."
|
|
30
|
+
npm install -g squish || {
|
|
31
|
+
echo "Installing from source..."
|
|
32
|
+
git clone https://github.com/michielhdoteth/squish.git /tmp/squish-install
|
|
33
|
+
cd /tmp/squish-install
|
|
34
|
+
npm install
|
|
35
|
+
npm run build
|
|
36
|
+
npm pack
|
|
37
|
+
npm install -g squish-*.tgz
|
|
38
|
+
}
|
|
39
|
+
fi
|
|
40
|
+
|
|
41
|
+
# Start Squish with OpenClaw gateway enabled
|
|
42
|
+
export OPENCLAW_GATEWAY_ENABLED=true
|
|
43
|
+
export SQUISH_MODE=local
|
|
44
|
+
|
|
45
|
+
# Find and start Squish
|
|
46
|
+
if [ -f "$HOME/.local/bin/squish" ]; then
|
|
47
|
+
node "$HOME/.local/bin/squish" &
|
|
48
|
+
elif [ -f "./node_modules/.bin/squish" ]; then
|
|
49
|
+
node ./node_modules/.bin/squish &
|
|
50
|
+
else
|
|
51
|
+
# Try to find squish in path
|
|
52
|
+
squish &
|
|
53
|
+
fi
|
|
54
|
+
|
|
55
|
+
SQUISH_PID=$!
|
|
56
|
+
echo "Squish OpenClaw Gateway started (PID: $SQUISH_PID)"
|
|
57
|
+
echo "Gateway listening on ws://localhost:18789"
|
|
58
|
+
echo ""
|
|
59
|
+
echo "To stop: kill $SQUISH_PID"
|
|
60
|
+
EOF
|
|
61
|
+
|
|
62
|
+
chmod +x "$INSTALL_DIR/start-gateway.sh"
|
|
63
|
+
|
|
64
|
+
# Create simple config
|
|
65
|
+
cat > "$INSTALL_DIR/config.json" << EOF
|
|
66
|
+
{
|
|
67
|
+
"name": "squish-memory",
|
|
68
|
+
"version": "0.7.0",
|
|
69
|
+
"description": "Persistent memory system for OpenClaw",
|
|
70
|
+
"gateway": {
|
|
71
|
+
"host": "localhost",
|
|
72
|
+
"port": 18789,
|
|
73
|
+
"protocol": "ws"
|
|
74
|
+
},
|
|
75
|
+
"commands": {
|
|
76
|
+
"search": "Search your Squish memories",
|
|
77
|
+
"remember": "Store a new memory",
|
|
78
|
+
"recall": "Retrieve a memory by ID",
|
|
79
|
+
"status": "Check Squish status"
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
EOF
|
|
83
|
+
|
|
84
|
+
echo ""
|
|
85
|
+
echo "Installation complete!"
|
|
86
|
+
echo ""
|
|
87
|
+
echo "To use Squish with OpenClaw:"
|
|
88
|
+
echo "1. Start the gateway: bash $INSTALL_DIR/start-gateway.sh"
|
|
89
|
+
echo "2. Configure OpenClaw to connect to ws://localhost:18789"
|
|
90
|
+
echo ""
|
|
91
|
+
echo "For more info, visit: $GITHUB_REPO"
|