squish-memory 0.8.1 → 0.9.1
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 +2 -2
- package/.claude-plugin/plugin.json +2 -2
- package/.env.mcp +30 -0
- package/.mcp.json +2 -5
- package/CHANGELOG.md +111 -0
- package/QUICK-START.md +65 -0
- package/README.md +188 -530
- package/commands/managed-sync.ts +69 -0
- package/commands/mcp-server.ts +519 -0
- package/config/mcp-cli-fallback-policy.json +22 -0
- package/config/mcp-migration-map.json +22 -0
- package/config/mcp-mode-semantics.json +21 -0
- package/config/mcp-remote-auth.json +36 -0
- package/config/mcp-universal.schema.json +48 -0
- package/config/mcp.json +38 -0
- package/config/remote-memory-policy.json +32 -0
- package/dist/algorithms/merge/detection/hash-filters.js +2 -2
- package/dist/algorithms/merge/detection/hash-filters.js.map +1 -1
- package/dist/algorithms/merge/detection/two-stage-detector.d.ts +5 -2
- package/dist/algorithms/merge/detection/two-stage-detector.d.ts.map +1 -1
- package/dist/algorithms/merge/detection/two-stage-detector.js +139 -22
- package/dist/algorithms/merge/detection/two-stage-detector.js.map +1 -1
- package/dist/commands/managed-sync.d.ts +10 -0
- package/dist/commands/managed-sync.d.ts.map +1 -0
- package/dist/commands/managed-sync.js +64 -0
- package/dist/commands/managed-sync.js.map +1 -0
- package/dist/commands/mcp-server.d.ts +3 -0
- package/dist/commands/mcp-server.d.ts.map +1 -0
- package/dist/commands/mcp-server.js +389 -0
- package/dist/commands/mcp-server.js.map +1 -0
- package/dist/config.d.ts +24 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +32 -1
- package/dist/config.js.map +1 -1
- package/dist/core/associations.d.ts +1 -1
- package/dist/core/associations.d.ts.map +1 -1
- package/dist/core/consolidation.d.ts +31 -0
- package/dist/core/consolidation.d.ts.map +1 -1
- package/dist/core/consolidation.js +237 -29
- package/dist/core/consolidation.js.map +1 -1
- package/dist/core/embeddings/google-multimodal.d.ts +14 -0
- package/dist/core/embeddings/google-multimodal.d.ts.map +1 -0
- package/dist/core/embeddings/google-multimodal.js +142 -0
- package/dist/core/embeddings/google-multimodal.js.map +1 -0
- package/dist/core/embeddings.d.ts +3 -2
- package/dist/core/embeddings.d.ts.map +1 -1
- package/dist/core/embeddings.js +61 -39
- package/dist/core/embeddings.js.map +1 -1
- package/dist/core/mcp/client.d.ts +17 -0
- package/dist/core/mcp/client.d.ts.map +1 -0
- package/dist/core/mcp/client.js +101 -0
- package/dist/core/mcp/client.js.map +1 -0
- package/dist/core/mcp/index.d.ts +6 -0
- package/dist/core/mcp/index.d.ts.map +1 -0
- package/dist/core/mcp/index.js +6 -0
- package/dist/core/mcp/index.js.map +1 -0
- package/dist/core/mcp/server.d.ts +18 -0
- package/dist/core/mcp/server.d.ts.map +1 -0
- package/dist/core/mcp/server.js +131 -0
- package/dist/core/mcp/server.js.map +1 -0
- package/dist/core/mcp/standalone-server.d.ts +13 -0
- package/dist/core/mcp/standalone-server.d.ts.map +1 -0
- package/dist/core/mcp/standalone-server.js +46 -0
- package/dist/core/mcp/standalone-server.js.map +1 -0
- package/dist/core/mcp/tools.d.ts +9 -0
- package/dist/core/mcp/tools.d.ts.map +1 -0
- package/dist/core/mcp/tools.js +262 -0
- package/dist/core/mcp/tools.js.map +1 -0
- package/dist/core/mcp/types.d.ts +315 -0
- package/dist/core/mcp/types.d.ts.map +1 -0
- package/dist/core/mcp/types.js +48 -0
- package/dist/core/mcp/types.js.map +1 -0
- package/dist/core/memory/categorizer.d.ts +27 -0
- package/dist/core/memory/categorizer.d.ts.map +1 -0
- package/dist/core/memory/categorizer.js +304 -0
- package/dist/core/memory/categorizer.js.map +1 -0
- package/dist/core/memory/conflict-detector.d.ts +7 -0
- package/dist/core/memory/conflict-detector.d.ts.map +1 -0
- package/dist/core/memory/conflict-detector.js +43 -0
- package/dist/core/memory/conflict-detector.js.map +1 -0
- package/dist/core/memory/context-collector.d.ts +10 -0
- package/dist/core/memory/context-collector.d.ts.map +1 -0
- package/dist/core/memory/context-collector.js +55 -0
- package/dist/core/memory/context-collector.js.map +1 -0
- package/dist/core/memory/contradiction-resolver.d.ts +40 -0
- package/dist/core/memory/contradiction-resolver.d.ts.map +1 -0
- package/dist/core/memory/contradiction-resolver.js +368 -0
- package/dist/core/memory/contradiction-resolver.js.map +1 -0
- package/dist/core/memory/edit-workflow.d.ts +19 -0
- package/dist/core/memory/edit-workflow.d.ts.map +1 -0
- package/dist/core/memory/edit-workflow.js +120 -0
- package/dist/core/memory/edit-workflow.js.map +1 -0
- package/dist/core/memory/feedback-tracker.d.ts +12 -0
- package/dist/core/memory/feedback-tracker.d.ts.map +1 -0
- package/dist/core/memory/feedback-tracker.js +151 -0
- package/dist/core/memory/feedback-tracker.js.map +1 -0
- package/dist/core/memory/hybrid-retrieval.d.ts +11 -12
- package/dist/core/memory/hybrid-retrieval.d.ts.map +1 -1
- package/dist/core/memory/hybrid-retrieval.js +56 -28
- package/dist/core/memory/hybrid-retrieval.js.map +1 -1
- package/dist/core/memory/hybrid-scorer.d.ts +5 -16
- package/dist/core/memory/hybrid-scorer.d.ts.map +1 -1
- package/dist/core/memory/hybrid-scorer.js +161 -125
- package/dist/core/memory/hybrid-scorer.js.map +1 -1
- package/dist/core/memory/hybrid-search.js +56 -20
- package/dist/core/memory/hybrid-search.js.map +1 -1
- package/dist/core/memory/memories.d.ts +4 -0
- package/dist/core/memory/memories.d.ts.map +1 -1
- package/dist/core/memory/memories.js +133 -60
- package/dist/core/memory/memories.js.map +1 -1
- package/dist/core/memory/progressive-disclosure.d.ts +43 -0
- package/dist/core/memory/progressive-disclosure.d.ts.map +1 -0
- package/dist/core/memory/progressive-disclosure.js +280 -0
- package/dist/core/memory/progressive-disclosure.js.map +1 -0
- package/dist/core/memory/query-rewriter.d.ts +13 -0
- package/dist/core/memory/query-rewriter.d.ts.map +1 -0
- package/dist/core/memory/query-rewriter.js +118 -0
- package/dist/core/memory/query-rewriter.js.map +1 -0
- package/dist/core/memory/response-analyzer.d.ts +9 -0
- package/dist/core/memory/response-analyzer.d.ts.map +1 -0
- package/dist/core/memory/response-analyzer.js +61 -0
- package/dist/core/memory/response-analyzer.js.map +1 -0
- package/dist/core/memory/stats.d.ts +17 -0
- package/dist/core/memory/stats.d.ts.map +1 -0
- package/dist/core/memory/stats.js +87 -0
- package/dist/core/memory/stats.js.map +1 -0
- package/dist/core/memory/telemetry.d.ts +69 -0
- package/dist/core/memory/telemetry.d.ts.map +1 -0
- package/dist/core/memory/telemetry.js +313 -0
- package/dist/core/memory/telemetry.js.map +1 -0
- package/dist/core/memory/temporal-facts.d.ts +41 -0
- package/dist/core/memory/temporal-facts.d.ts.map +1 -0
- package/dist/core/memory/temporal-facts.js +262 -0
- package/dist/core/memory/temporal-facts.js.map +1 -0
- package/dist/core/memory/trigger-detector.d.ts +14 -0
- package/dist/core/memory/trigger-detector.d.ts.map +1 -0
- package/dist/core/memory/trigger-detector.js +42 -0
- package/dist/core/memory/trigger-detector.js.map +1 -0
- package/dist/core/memory/write-gate.d.ts +54 -0
- package/dist/core/memory/write-gate.d.ts.map +1 -0
- package/dist/core/memory/write-gate.js +210 -0
- package/dist/core/memory/write-gate.js.map +1 -0
- package/dist/core/projects.d.ts +2 -0
- package/dist/core/projects.d.ts.map +1 -1
- package/dist/core/projects.js +33 -0
- package/dist/core/projects.js.map +1 -1
- package/dist/core/scheduler/cron-scheduler.d.ts +32 -0
- package/dist/core/scheduler/cron-scheduler.d.ts.map +1 -0
- package/dist/core/scheduler/cron-scheduler.js +238 -0
- package/dist/core/scheduler/cron-scheduler.js.map +1 -0
- package/dist/core/scheduler/heartbeat.d.ts +11 -0
- package/dist/core/scheduler/heartbeat.d.ts.map +1 -0
- package/dist/core/scheduler/heartbeat.js +73 -0
- package/dist/core/scheduler/heartbeat.js.map +1 -0
- package/dist/core/scheduler/index.d.ts +8 -0
- package/dist/core/scheduler/index.d.ts.map +1 -0
- package/dist/core/scheduler/index.js +8 -0
- package/dist/core/scheduler/index.js.map +1 -0
- package/dist/core/scheduler/job-runner.d.ts +11 -0
- package/dist/core/scheduler/job-runner.d.ts.map +1 -0
- package/dist/core/scheduler/job-runner.js +161 -0
- package/dist/core/scheduler/job-runner.js.map +1 -0
- package/dist/core/session/auto-load.d.ts +6 -0
- package/dist/core/session/auto-load.d.ts.map +1 -0
- package/dist/core/session/auto-load.js +119 -0
- package/dist/core/session/auto-load.js.map +1 -0
- package/dist/core/session/index.d.ts +7 -0
- package/dist/core/session/index.d.ts.map +1 -0
- package/dist/core/session/index.js +7 -0
- package/dist/core/session/index.js.map +1 -0
- package/dist/core/session/types.d.ts +26 -0
- package/dist/core/session/types.d.ts.map +1 -0
- package/dist/core/session/types.js +10 -0
- package/dist/core/session/types.js.map +1 -0
- package/dist/core/snapshots/comparison.d.ts.map +1 -1
- package/dist/core/snapshots/comparison.js +8 -2
- package/dist/core/snapshots/comparison.js.map +1 -1
- package/dist/core/utils/content-extraction.d.ts.map +1 -1
- package/dist/core/utils/content-extraction.js +11 -1
- package/dist/core/utils/content-extraction.js.map +1 -1
- package/dist/core/utils/summarization-helpers.d.ts.map +1 -1
- package/dist/core/utils/summarization-helpers.js +4 -1
- package/dist/core/utils/summarization-helpers.js.map +1 -1
- package/dist/core/utils.d.ts.map +1 -1
- package/dist/core/utils.js +26 -3
- package/dist/core/utils.js.map +1 -1
- package/dist/core/worker.d.ts +20 -0
- package/dist/core/worker.d.ts.map +1 -1
- package/dist/core/worker.js +86 -0
- package/dist/core/worker.js.map +1 -1
- package/dist/db/adapter.d.ts +1 -5
- package/dist/db/adapter.d.ts.map +1 -1
- package/dist/db/adapter.js +125 -12
- package/dist/db/adapter.js.map +1 -1
- package/dist/db/bootstrap.d.ts.map +1 -1
- package/dist/db/bootstrap.js +178 -3
- package/dist/db/bootstrap.js.map +1 -1
- package/dist/db/index.d.ts +1 -5
- package/dist/db/index.d.ts.map +1 -1
- package/dist/db/index.js +7 -4
- package/dist/db/index.js.map +1 -1
- package/dist/drizzle/schema-sqlite.d.ts +1953 -612
- package/dist/drizzle/schema-sqlite.d.ts.map +1 -1
- package/dist/drizzle/schema-sqlite.js +134 -0
- package/dist/drizzle/schema-sqlite.js.map +1 -1
- package/dist/drizzle/schema.d.ts +684 -3
- package/dist/drizzle/schema.d.ts.map +1 -1
- package/dist/drizzle/schema.js +81 -1
- package/dist/drizzle/schema.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +152 -13
- package/dist/index.js.map +1 -1
- package/package.json +125 -103
- package/scripts/build-release.sh +33 -0
- package/scripts/db/check-db.mjs +88 -0
- package/scripts/db/fix-all-columns.mjs +52 -0
- package/scripts/db/fix-schema-all.mjs +55 -0
- package/scripts/db/fix-schema-full.mjs +46 -0
- package/scripts/db/fix-schema.mjs +38 -0
- package/scripts/db/init-db.mjs +13 -0
- package/scripts/db/recreate-db.mjs +14 -0
- package/scripts/generate-mcp.mjs +264 -0
- package/scripts/github-release.sh +61 -0
- package/scripts/init-dirs.mjs +13 -0
- package/scripts/init-dirs.ts +15 -0
- package/scripts/install-mcp.mjs +116 -0
- package/scripts/install-web.sh +120 -0
- package/scripts/install.mjs +340 -0
- package/scripts/openclaw-bootstrap.mjs +127 -0
- package/scripts/package-release.sh +71 -0
- package/scripts/remote-preflight.mjs +62 -0
- package/scripts/squish-fallback.mjs +132 -0
- package/scripts/test/test-all-systems.mjs +139 -0
- package/scripts/test/test-memory-system.mjs +139 -0
- package/scripts/test/test-v0.5.0.mjs +210 -0
- package/scripts/verify-mcp.mjs +214 -0
- package/skills/memory-guide/SKILL.md +181 -123
- package/skills/squish-cli/SKILL.md +200 -0
- package/skills/squish-mcp/SKILL.md +311 -0
- package/skills/squish-memory/SKILL.md +100 -62
- package/skills/squish-memory/claude-desktop.json +12 -0
- package/skills/squish-memory/install.mjs +335 -0
- package/skills/squish-memory/install.sh +94 -62
- package/skills/squish-memory/openclaw.json +13 -0
- package/skills/squish-memory/opencode.json +14 -0
- package/skills/squish-memory/skill.json +32 -0
- package/dist/adapters/claude-code/capture.d.ts +0 -11
- package/dist/adapters/claude-code/capture.d.ts.map +0 -1
- package/dist/adapters/claude-code/capture.js +0 -100
- package/dist/adapters/claude-code/capture.js.map +0 -1
- package/dist/adapters/claude-code/index.d.ts +0 -5
- package/dist/adapters/claude-code/index.d.ts.map +0 -1
- package/dist/adapters/claude-code/index.js +0 -6
- package/dist/adapters/claude-code/index.js.map +0 -1
- package/dist/adapters/claude-code/injection.d.ts +0 -34
- package/dist/adapters/claude-code/injection.d.ts.map +0 -1
- package/dist/adapters/claude-code/injection.js +0 -127
- package/dist/adapters/claude-code/injection.js.map +0 -1
- package/dist/adapters/claude-code/plugin-wrapper.d.ts +0 -21
- package/dist/adapters/claude-code/plugin-wrapper.d.ts.map +0 -1
- package/dist/adapters/claude-code/plugin-wrapper.js +0 -239
- package/dist/adapters/claude-code/plugin-wrapper.js.map +0 -1
- package/dist/adapters/claude-code/types.d.ts +0 -46
- package/dist/adapters/claude-code/types.d.ts.map +0 -1
- package/dist/adapters/claude-code/types.js +0 -6
- package/dist/adapters/claude-code/types.js.map +0 -1
|
@@ -6,8 +6,8 @@
|
|
|
6
6
|
"plugins": [
|
|
7
7
|
{
|
|
8
8
|
"name": "squish",
|
|
9
|
-
"version": "0.
|
|
10
|
-
"description": "
|
|
9
|
+
"version": "0.9.0",
|
|
10
|
+
"description": "The memory layer for AI agents. Give Claude Code persistent, intelligent memory with trigger detection, contradiction resolution, and hybrid search. Works with any MCP client.",
|
|
11
11
|
"author": {
|
|
12
12
|
"name": "michielhdoteth"
|
|
13
13
|
},
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "squish",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.9.0",
|
|
4
|
+
"description": "The memory layer for AI agents - persistent, intelligent memory with trigger detection, contradiction resolution, and hybrid search",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "michielhdoteth",
|
|
7
7
|
"url": "https://github.com/michielhdoteth"
|
package/.env.mcp
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# MCP Server Configuration
|
|
2
|
+
SQUISH_MCP_PORT=8767
|
|
3
|
+
SQUISH_MCP_SERVER_ENABLED=true
|
|
4
|
+
|
|
5
|
+
# Embeddings - Hybrid mode for best quality
|
|
6
|
+
SQUISH_EMBEDDINGS_PROVIDER=hybrid
|
|
7
|
+
SQUISH_MULTIMODAL_EMBEDDINGS_ENABLED=true
|
|
8
|
+
|
|
9
|
+
# Google Cloud Multimodal (1408-dim vectors)
|
|
10
|
+
# Get API key from: https://console.cloud.google.com/apis/credentials
|
|
11
|
+
GOOGLE_CLOUD_PROJECT=your-project-id
|
|
12
|
+
GOOGLE_CLOUD_LOCATION=us-central1
|
|
13
|
+
# GOOGLE_CLOUD_API_KEY=your-api-key
|
|
14
|
+
# Or use service account:
|
|
15
|
+
# GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
|
|
16
|
+
|
|
17
|
+
# QMD for local markdown search
|
|
18
|
+
SQUISH_QMD_ENABLED=true
|
|
19
|
+
SQUISH_QMD_COLLECTIONS=./qmd-collections
|
|
20
|
+
SQUISH_QMD_FALLBACK=hybrid
|
|
21
|
+
|
|
22
|
+
# Managed Mode (Squish Cloud - optional)
|
|
23
|
+
# SQUISH_MANAGED_MODE=true
|
|
24
|
+
# SQUISH_MANAGED_API_URL=https://api.squish.dev
|
|
25
|
+
# SQUISH_MANAGED_API_KEY=your-api-key
|
|
26
|
+
|
|
27
|
+
# Lifecycle & Summarization
|
|
28
|
+
SQUISH_LIFECYCLE_ENABLED=true
|
|
29
|
+
SQUISH_SUMMARIZATION_ENABLED=true
|
|
30
|
+
SQUISH_GOVERNANCE_ENABLED=true
|
package/.mcp.json
CHANGED
|
@@ -2,12 +2,9 @@
|
|
|
2
2
|
"mcpServers": {
|
|
3
3
|
"squish": {
|
|
4
4
|
"command": "node",
|
|
5
|
-
"args": ["
|
|
6
|
-
"cwd": "${CLAUDE_PLUGIN_ROOT}",
|
|
5
|
+
"args": ["dist/commands/mcp-server.js"],
|
|
7
6
|
"env": {
|
|
8
|
-
"
|
|
9
|
-
"NODE_ENV": "production",
|
|
10
|
-
"SQUISH_DATA_DIR": "${CLAUDE_WORKING_DIRECTORY}/.squish"
|
|
7
|
+
"NODE_ENV": "production"
|
|
11
8
|
}
|
|
12
9
|
}
|
|
13
10
|
}
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to Squish will be documented in this file.
|
|
4
|
+
|
|
5
|
+
## [0.9.1] - 2026-03-14
|
|
6
|
+
|
|
7
|
+
### Fixed - CLI & Database
|
|
8
|
+
- Fixed `core_memory` CLI command to properly create/resolve projects
|
|
9
|
+
- Fixed SQLite schema initialization (was missing core_memory, observations, users tables)
|
|
10
|
+
- Fixed database health check SQL syntax error
|
|
11
|
+
- Fixed missing database migrations (recorded_at, retrieval_priority, etc.)
|
|
12
|
+
|
|
13
|
+
### Fixed - MCP Integration
|
|
14
|
+
- MCP verification now passes all checks
|
|
15
|
+
- All 14 MCP tools properly registered and tested
|
|
16
|
+
|
|
17
|
+
### Added - New Components
|
|
18
|
+
- MCP client, server, standalone-server implementations
|
|
19
|
+
- Memory modules: categorizer, conflict-detector, edit-workflow, progressive-disclosure
|
|
20
|
+
- MCP config files for Claude Desktop, OpenClaw, OpenCode
|
|
21
|
+
|
|
22
|
+
### Known Issues
|
|
23
|
+
- `memory_associations` table not yet created (optional feature for graph traversal)
|
|
24
|
+
- QMD optional (works without it)
|
|
25
|
+
|
|
26
|
+
## [0.9.0] - 2026-02-28
|
|
27
|
+
|
|
28
|
+
### Added - OpenClaw Self-Install
|
|
29
|
+
|
|
30
|
+
#### Self-Install Command
|
|
31
|
+
- `npx squish-memory install` - One-command OpenClaw setup
|
|
32
|
+
- `squish install` - CLI command for self-installation
|
|
33
|
+
- `squish health` - Service health check with JSON output option
|
|
34
|
+
- `squish stats` - Memory statistics by project
|
|
35
|
+
- Automatic mcporter.json configuration for MCP
|
|
36
|
+
- Creates ~/.squish data directory automatically
|
|
37
|
+
- Smart binary detection across platforms
|
|
38
|
+
|
|
39
|
+
#### Updated Skill Files
|
|
40
|
+
- `skills/squish-memory/SKILL.md` - v0.9.0 with self-install docs
|
|
41
|
+
- `skills/squish-memory/install.mjs` - Node.js installer script
|
|
42
|
+
- `skills/squish-memory/install.sh` - Bash fallback installer
|
|
43
|
+
- `skills/squish-memory/mcp-config.json` - MCP config template
|
|
44
|
+
|
|
45
|
+
### Added - Competitive Core Features
|
|
46
|
+
|
|
47
|
+
#### Trigger Detection (`core/memory/trigger-detector.ts`)
|
|
48
|
+
- Automatic detection of explicit memory triggers ("remember", "important", "don't forget")
|
|
49
|
+
- Implicit signal detection (decisions, corrections, preferences, workflow rules, lessons)
|
|
50
|
+
- Priority classification (high/normal) based on signal strength
|
|
51
|
+
- Type inference for automatic memory classification
|
|
52
|
+
|
|
53
|
+
#### Contradiction Resolution (`core/memory/contradiction-resolver.ts`)
|
|
54
|
+
- Auto-detection of contradictions when writing new memories
|
|
55
|
+
- Supersession logic for outdated information
|
|
56
|
+
- Temporal contradiction detection (facts that are no longer valid)
|
|
57
|
+
- Automatic archiving of superseded memories with traceability
|
|
58
|
+
|
|
59
|
+
#### Write Gate Enforcement (`core/memory/write-gate.ts`)
|
|
60
|
+
- Content validation before memory storage
|
|
61
|
+
- Secret detection and sanitization integration
|
|
62
|
+
- Quality scoring (0-100) for memory content
|
|
63
|
+
- Contradiction pre-check integration
|
|
64
|
+
|
|
65
|
+
#### Hybrid Scorer (`core/memory/hybrid-scorer.ts`)
|
|
66
|
+
- Multi-factor relevance scoring (semantic, recency, coactivation, importance, confidence)
|
|
67
|
+
- Trigger-aware confidence scoring
|
|
68
|
+
- Customizable weight configuration
|
|
69
|
+
- Score distribution analytics
|
|
70
|
+
|
|
71
|
+
#### Retrieval Quality Telemetry (`core/memory/telemetry.ts`)
|
|
72
|
+
- Echo/fizzle tracking for memory usage patterns
|
|
73
|
+
- Telemetry-based retrieval boosting (0.5-2.0 factor)
|
|
74
|
+
- Memory quality analytics
|
|
75
|
+
- Automatic flush to database
|
|
76
|
+
|
|
77
|
+
#### Temporal Facts Lifecycle (`core/memory/temporal-facts.ts`)
|
|
78
|
+
- Temporal validity checking
|
|
79
|
+
- Auto-supersession of outdated temporal facts
|
|
80
|
+
- Expired fact cleanup job
|
|
81
|
+
- Temporal fact statistics
|
|
82
|
+
|
|
83
|
+
### Improved
|
|
84
|
+
|
|
85
|
+
- **Memory Pipeline**: Integrated trigger detection and contradiction resolution in write path
|
|
86
|
+
- **Hybrid Retrieval**: Entity-aware reranking with boost factors
|
|
87
|
+
- **Worker Jobs**: Strengthened decay/dedup automation
|
|
88
|
+
- **Test Coverage**: Added 24 new tests (145 total, up from 121)
|
|
89
|
+
|
|
90
|
+
### Fixed
|
|
91
|
+
|
|
92
|
+
- Worker.ts syntax errors (duplicate method declarations, missing braces)
|
|
93
|
+
- AssociationType now includes 'duplicate' and 'merged' types
|
|
94
|
+
- Logger calls properly typed in telemetry module
|
|
95
|
+
- Memory metadata type definition for contradiction resolution
|
|
96
|
+
|
|
97
|
+
## [0.8.2] - 2026-01-30
|
|
98
|
+
|
|
99
|
+
### Added
|
|
100
|
+
- Hybrid Search: BM25 + vector search with Reciprocal Rank Fusion
|
|
101
|
+
- Importance Scoring: Auto-score memories with temporal decay
|
|
102
|
+
- Consolidation: Summarize old, low-importance memory clusters
|
|
103
|
+
- Core Memory: 2KB always-visible 4-section memory
|
|
104
|
+
- Context Paging: Token budgeting (8KB budget)
|
|
105
|
+
- CLI fallback mode when MCP fails
|
|
106
|
+
- 16 MCP tools for Claude Code integration
|
|
107
|
+
|
|
108
|
+
### Technical
|
|
109
|
+
- SQLite with FTS5 for local mode
|
|
110
|
+
- PostgreSQL + pgvector for team mode
|
|
111
|
+
- Drizzle ORM for database abstraction
|
package/QUICK-START.md
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Squish - Quick Start
|
|
2
|
+
|
|
3
|
+
Universal two-tier memory for any AI agent.
|
|
4
|
+
|
|
5
|
+
## Start in 30 seconds
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# 1. Install
|
|
9
|
+
bun install
|
|
10
|
+
|
|
11
|
+
# 2. Build
|
|
12
|
+
bun run build
|
|
13
|
+
|
|
14
|
+
# 3. Start MCP server (works with Claude Code, OpenClaw, or any MCP client)
|
|
15
|
+
bun run mcp
|
|
16
|
+
|
|
17
|
+
# ✓ Running on http://localhost:8767
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Test it
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# Health check
|
|
24
|
+
curl http://localhost:8767/health
|
|
25
|
+
|
|
26
|
+
# Expected output:
|
|
27
|
+
{
|
|
28
|
+
"status": "ok",
|
|
29
|
+
"server": "squish-mcp",
|
|
30
|
+
"version": "0.9.0",
|
|
31
|
+
"tools": 6
|
|
32
|
+
}
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
## Use it
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
# Search memories
|
|
39
|
+
curl -X POST http://localhost:8767/tools/call \
|
|
40
|
+
-H "Content-Type: application/json" \
|
|
41
|
+
-d '{
|
|
42
|
+
"name": "squish_search",
|
|
43
|
+
"arguments": {
|
|
44
|
+
"query": "authentication"
|
|
45
|
+
}
|
|
46
|
+
}'
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Configure
|
|
50
|
+
|
|
51
|
+
Copy `.env.mcp` to `.env` and customize:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
cp .env.mcp .env
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Key settings:
|
|
58
|
+
|
|
59
|
+
- **SQUISH_MCP_PORT**: Server port (default: 8767)
|
|
60
|
+
- **SQUISH_EMBEDDINGS_PROVIDER**: local|google-multimodal|hybrid
|
|
61
|
+
- **SQUISH_QMD_ENABLED**: Enable markdown search (true/false)
|
|
62
|
+
|
|
63
|
+
## Full Docs
|
|
64
|
+
|
|
65
|
+
See [docs/MCP-SERVER.md](docs/MCP-SERVER.md)
|