mirror of
https://github.com/obra/episodic-memory.git
synced 2026-09-14 13:43:14 +08:00
cd8dc33b98
* fix(build): allow better-sqlite3 and onnxruntime-node install scripts npm 12 blocks dependency install/postinstall scripts by default unless the root package's allowScripts field permits them. Without an entry here, a fresh `npm install` under npm 12 (or npm 11.16+ with blocking opted in) exits 0 while skipping better-sqlite3's node-gyp build and onnxruntime-node's postinstall — so both native bindings never get built. Archiving keeps working, but indexing and search silently never run again; the only trace is 'Could not locate the bindings file' in the plugin log, which nothing surfaces to the user. allowScripts uses bare package names rather than pinned versions, since a pinned key (e.g. "better-sqlite3@12.11.1") stops matching the moment the dependency bumps, which would silently reintroduce this bug on the next release. Fixes #162. * fix(build): explicitly deny sharp's install script in allowScripts sharp's postinstall exits 1 on any host with libvips already installed globally and corrupts node_modules on the way out (#102). It has been blocked so far only because it's absent from allowScripts — incidental silence, not a decision. `npm install-scripts approve --all` would sweep it into the allowlist on its next run, since an omitted key reads as 'not yet reviewed' rather than 'reviewed and refused'. Set it to `false` explicitly instead: allowScripts is documented to treat an explicit `false` as surviving --all, so this converts 'happened not to allow it' into an enforced decision.
85 lines
2.6 KiB
JSON
85 lines
2.6 KiB
JSON
{
|
|
"name": "episodic-memory",
|
|
"version": "1.6.0",
|
|
"description": "Semantic search for Claude Code, Codex, and opencode conversations",
|
|
"main": "dist/index.js",
|
|
"types": "dist/index.d.ts",
|
|
"exports": {
|
|
".": {
|
|
"types": "./dist/index.d.ts",
|
|
"import": "./dist/index.js",
|
|
"default": "./dist/index.js"
|
|
},
|
|
"./server": {
|
|
"types": "./dist/opencode-plugin.d.ts",
|
|
"import": "./dist/opencode-plugin.js",
|
|
"default": "./dist/opencode-plugin.js"
|
|
},
|
|
"./dist/*": "./dist/*",
|
|
"./package.json": "./package.json"
|
|
},
|
|
"allowScripts": {
|
|
"better-sqlite3": true,
|
|
"onnxruntime-node": true,
|
|
"sharp": false
|
|
},
|
|
"bin": {
|
|
"episodic-memory": "./cli/episodic-memory.js",
|
|
"episodic-memory-index": "./cli/index-conversations.js",
|
|
"episodic-memory-search": "./cli/search-conversations",
|
|
"episodic-memory-mcp-server": "./cli/mcp-server"
|
|
},
|
|
"scripts": {
|
|
"generate-version": "node scripts/generate-version.js",
|
|
"prebuild": "npm run generate-version",
|
|
"build": "tsc && npm run bundle",
|
|
"bundle": "esbuild src/mcp-server.ts --bundle --platform=node --format=esm --outfile=dist/mcp-server.js --external:fsevents --external:@anthropic-ai/claude-agent-sdk --external:sharp --external:onnxruntime-node --external:better-sqlite3 --external:@huggingface/transformers --external:sqlite-vec --external:proper-lockfile",
|
|
"postinstall": "node scripts/postinstall.js",
|
|
"pretest": "npm run generate-version",
|
|
"test": "vitest run",
|
|
"test:claude-e2e": "node scripts/claude-e2e.js",
|
|
"test:codex-e2e": "node scripts/codex-e2e.js",
|
|
"test:watch": "vitest"
|
|
},
|
|
"keywords": [
|
|
"claude-code",
|
|
"codex",
|
|
"opencode",
|
|
"conversations",
|
|
"search",
|
|
"semantic-search",
|
|
"embeddings"
|
|
],
|
|
"author": {
|
|
"name": "Jesse Vincent",
|
|
"email": "jesse@fsck.com"
|
|
},
|
|
"license": "MIT",
|
|
"type": "module",
|
|
"dependencies": {
|
|
"@anthropic-ai/claude-agent-sdk": "^0.2.126",
|
|
"@huggingface/transformers": "^4.2.0",
|
|
"@modelcontextprotocol/sdk": "^1.20.0",
|
|
"better-sqlite3": "^12.4.1",
|
|
"marked": "^16.4.0",
|
|
"proper-lockfile": "^4.1.2",
|
|
"sqlite-vec": "^0.1.7-alpha.2",
|
|
"zod": "^4.4.2"
|
|
},
|
|
"devDependencies": {
|
|
"@types/better-sqlite3": "^7.6.13",
|
|
"@types/marked": "^5.0.2",
|
|
"@types/node": "^24.7.0",
|
|
"@types/proper-lockfile": "^4.1.4",
|
|
"esbuild": "^0.25.11",
|
|
"tsx": "^4.20.6",
|
|
"typescript": "^5.9.3",
|
|
"vitest": "^3.2.4"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/obra/episodic-memory"
|
|
},
|
|
"homepage": "https://github.com/obra/episodic-memory"
|
|
}
|