lemma-mcp 0.17.2 → 0.18.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/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/index.js +14 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/install-skill.d.ts +21 -0
- package/dist/server/install-skill.d.ts.map +1 -0
- package/dist/server/install-skill.js +70 -0
- package/dist/server/install-skill.js.map +1 -0
- package/dist/server/skill-content.d.ts +6 -0
- package/dist/server/skill-content.d.ts.map +1 -0
- package/dist/server/skill-content.js +84 -0
- package/dist/server/skill-content.js.map +1 -0
- package/package.json +2 -1
package/dist/index.js
CHANGED
|
@@ -2,12 +2,14 @@
|
|
|
2
2
|
import { spawn } from "child_process";
|
|
3
3
|
import { startServer, runLibMode } from "./server/index.js";
|
|
4
4
|
import { startVisualizeServer } from "./server/visualize.js";
|
|
5
|
+
import { installSkill } from "./server/install-skill.js";
|
|
5
6
|
import { VERSION } from "./version.js";
|
|
6
7
|
const args = process.argv.slice(2);
|
|
7
8
|
const hasHelp = args.includes("--help") || args.includes("-h") || args.includes("help");
|
|
8
9
|
const hasVersion = args.includes("--version") || args.includes("-V");
|
|
9
10
|
const hasLib = args.includes("-lib") || args.includes("--library");
|
|
10
11
|
const hasVisualizer = args.includes("-vis") || args.includes("--visualize");
|
|
12
|
+
const hasInstallSkill = args.includes("--install-skill");
|
|
11
13
|
function printHelp() {
|
|
12
14
|
console.log(`Lemma ${VERSION}
|
|
13
15
|
|
|
@@ -18,6 +20,7 @@ Usage:
|
|
|
18
20
|
lemma -vis --fg Start the visualizer in the foreground
|
|
19
21
|
lemma -vis -p 8080 Start the visualizer on a custom port
|
|
20
22
|
lemma --version Print the version
|
|
23
|
+
lemma --install-skill Install/update the Lemma skill at ~/.agents/skills/lemma/
|
|
21
24
|
lemma --help Show this help
|
|
22
25
|
`);
|
|
23
26
|
}
|
|
@@ -44,6 +47,11 @@ async function main() {
|
|
|
44
47
|
else if (hasLib) {
|
|
45
48
|
await runLibMode();
|
|
46
49
|
}
|
|
50
|
+
else if (hasInstallSkill) {
|
|
51
|
+
const result = installSkill();
|
|
52
|
+
console.log(`[lemma] skill: ${result.reason ?? "done"} -> ${result.path}`);
|
|
53
|
+
process.exit(0);
|
|
54
|
+
}
|
|
47
55
|
else if (hasVisualizer) {
|
|
48
56
|
const port = parsePortArg();
|
|
49
57
|
if (!args.includes("--fg")) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACnC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACxF,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACrE,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AACnE,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAyBnE,eAAO,IAAI,eAAe,EAAE,MAAM,GAAG,IAAW,CAAC;AAKjD,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAEzD;AAkMD,wBAAgB,SAAS,IAAI,MAAM,CAKlC;AAqFD,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAUhD;AAED,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAkEjD"}
|
package/dist/server/index.js
CHANGED
|
@@ -7,6 +7,7 @@ import * as guides from "../guides/index.js";
|
|
|
7
7
|
import * as virtualSession from "../sessions/virtual.js";
|
|
8
8
|
import { BASE_SYSTEM_PROMPT, buildInstructions, buildInjectedTools } from "./system-prompt.js";
|
|
9
9
|
import { handleCallTool, autoStartSession, autoEndSession } from "./handlers.js";
|
|
10
|
+
import { installSkill } from "./install-skill.js";
|
|
10
11
|
import { triggerHook, HookTypes } from "./hooks.js";
|
|
11
12
|
import * as core_config from "../memory/config.js";
|
|
12
13
|
import { initDatabase, getDb } from "../db/index.js";
|
|
@@ -293,6 +294,19 @@ export async function startServer() {
|
|
|
293
294
|
return origStdoutWrite.apply(process.stdout, [data, ...args]);
|
|
294
295
|
};
|
|
295
296
|
await initializeContext();
|
|
297
|
+
// Runtime safety net: ensure the Lemma SKILL.md exists and is current for
|
|
298
|
+
// skill-format clients (e.g. Codex, which does not inject MCP `instructions`
|
|
299
|
+
// into the system prompt). Idempotent — a no-op when already up to date.
|
|
300
|
+
try {
|
|
301
|
+
const skillResult = installSkill();
|
|
302
|
+
logger.flow("server", "skill_install", skillResult);
|
|
303
|
+
if (skillResult.installed) {
|
|
304
|
+
logger.info(`Skill installed: ${skillResult.path} (${skillResult.reason})`);
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
catch (e) {
|
|
308
|
+
logger.warn("Skill install failed", e.message);
|
|
309
|
+
}
|
|
296
310
|
const activeServer = createServer(buildInstructions(detectedProject));
|
|
297
311
|
server = activeServer;
|
|
298
312
|
logger.flow("server", "creating_transport");
|
package/dist/server/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export declare const SKILL_DIR: string;
|
|
2
|
+
export declare const SKILL_FILE: string;
|
|
3
|
+
export interface InstallSkillResult {
|
|
4
|
+
/** True if the file was written/updated during this call. */
|
|
5
|
+
installed: boolean;
|
|
6
|
+
/** True if no write was needed (already current, or skipped on error). */
|
|
7
|
+
skipped: boolean;
|
|
8
|
+
path: string;
|
|
9
|
+
reason?: string;
|
|
10
|
+
}
|
|
11
|
+
export declare function getSkillPath(): string;
|
|
12
|
+
/**
|
|
13
|
+
* Write the SKILL.md unless it is already current.
|
|
14
|
+
*
|
|
15
|
+
* @param opts.skillDir Override the target directory (used by tests to sandbox
|
|
16
|
+
* writes away from the real `~/.agents/skills/lemma/`). Defaults to SKILL_DIR.
|
|
17
|
+
*/
|
|
18
|
+
export declare function installSkill(opts?: {
|
|
19
|
+
skillDir?: string;
|
|
20
|
+
}): InstallSkillResult;
|
|
21
|
+
//# sourceMappingURL=install-skill.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-skill.d.ts","sourceRoot":"","sources":["../../src/server/install-skill.ts"],"names":[],"mappings":"AAoBA,eAAO,MAAM,SAAS,QAAwD,CAAC;AAC/E,eAAO,MAAM,UAAU,QAAmC,CAAC;AAE3D,MAAM,WAAW,kBAAkB;IACjC,6DAA6D;IAC7D,SAAS,EAAE,OAAO,CAAC;IACnB,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,YAAY,IAAI,MAAM,CAErC;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,kBAAkB,CA6B7E"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Installs Lemma's SKILL.md to `~/.agents/skills/lemma/SKILL.md`.
|
|
3
|
+
*
|
|
4
|
+
* Used in two places:
|
|
5
|
+
* - npm `postinstall` (and `lemma --install-skill`): writes on install/upgrade.
|
|
6
|
+
* - Server startup (runtime safety net): re-checks every launch so the file
|
|
7
|
+
* stays current even for users who run via `npx` or never reinstall.
|
|
8
|
+
*
|
|
9
|
+
* Idempotent + version-aware: if the installed file's version stamp already
|
|
10
|
+
* matches the running VERSION, it is left untouched. On upgrade the stamp
|
|
11
|
+
* diverges and the file is overwritten. Errors are swallowed (warned) — this
|
|
12
|
+
* is a side effect and must never break the MCP server or CLI flow.
|
|
13
|
+
*/
|
|
14
|
+
import fs from "fs";
|
|
15
|
+
import os from "os";
|
|
16
|
+
import path from "path";
|
|
17
|
+
import { pathToFileURL } from "url";
|
|
18
|
+
import { buildSkillContent, parseSkillVersion } from "./skill-content.js";
|
|
19
|
+
import { VERSION } from "../version.js";
|
|
20
|
+
export const SKILL_DIR = path.join(os.homedir(), ".agents", "skills", "lemma");
|
|
21
|
+
export const SKILL_FILE = path.join(SKILL_DIR, "SKILL.md");
|
|
22
|
+
export function getSkillPath() {
|
|
23
|
+
return SKILL_FILE;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Write the SKILL.md unless it is already current.
|
|
27
|
+
*
|
|
28
|
+
* @param opts.skillDir Override the target directory (used by tests to sandbox
|
|
29
|
+
* writes away from the real `~/.agents/skills/lemma/`). Defaults to SKILL_DIR.
|
|
30
|
+
*/
|
|
31
|
+
export function installSkill(opts) {
|
|
32
|
+
const skillDir = opts?.skillDir ?? SKILL_DIR;
|
|
33
|
+
const skillFile = path.join(skillDir, "SKILL.md");
|
|
34
|
+
try {
|
|
35
|
+
const content = buildSkillContent();
|
|
36
|
+
// Idempotent + version-aware: skip if the current version is already installed.
|
|
37
|
+
if (fs.existsSync(skillFile)) {
|
|
38
|
+
try {
|
|
39
|
+
const existing = fs.readFileSync(skillFile, "utf-8");
|
|
40
|
+
const installedVersion = parseSkillVersion(existing);
|
|
41
|
+
if (installedVersion === VERSION) {
|
|
42
|
+
return { installed: false, skipped: true, path: skillFile, reason: `up to date (v${VERSION})` };
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
// unreadable/unparseable → fall through and overwrite below
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
if (!fs.existsSync(skillDir)) {
|
|
50
|
+
fs.mkdirSync(skillDir, { recursive: true });
|
|
51
|
+
}
|
|
52
|
+
fs.writeFileSync(skillFile, content, "utf-8");
|
|
53
|
+
return { installed: true, skipped: false, path: skillFile, reason: `installed v${VERSION}` };
|
|
54
|
+
}
|
|
55
|
+
catch (err) {
|
|
56
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
57
|
+
console.warn(`[lemma] skill install skipped: ${msg}`);
|
|
58
|
+
return { installed: false, skipped: true, path: skillFile, reason: `error: ${msg}` };
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
// CLI entry point: `node dist/server/install-skill.js` (postinstall) or `lemma --install-skill`.
|
|
62
|
+
const invokedAs = process.argv[1];
|
|
63
|
+
const isMain = !!invokedAs && import.meta.url === pathToFileURL(invokedAs).href;
|
|
64
|
+
if (isMain) {
|
|
65
|
+
const result = installSkill();
|
|
66
|
+
const tag = result.installed ? "skill installed" : "skill";
|
|
67
|
+
console.log(`[lemma] ${tag}: ${result.reason ?? "skipped"} -> ${result.path}`);
|
|
68
|
+
process.exit(0);
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=install-skill.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-skill.js","sourceRoot":"","sources":["../../src/server/install-skill.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** Marker embedded in the installed file so installSkill() can detect the version. */
|
|
2
|
+
export declare const SKILL_VERSION_STAMP: string;
|
|
3
|
+
export declare function buildSkillContent(): string;
|
|
4
|
+
/** Extract the version stamp from an installed skill file, or null if absent/unparseable. */
|
|
5
|
+
export declare function parseSkillVersion(content: string): string | null;
|
|
6
|
+
//# sourceMappingURL=skill-content.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-content.d.ts","sourceRoot":"","sources":["../../src/server/skill-content.ts"],"names":[],"mappings":"AAgBA,sFAAsF;AACtF,eAAO,MAAM,mBAAmB,QAA6B,CAAC;AAE9D,wBAAgB,iBAAiB,IAAI,MAAM,CA4D1C;AAED,6FAA6F;AAC7F,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGhE"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SKILL.md content installed to `~/.agents/skills/lemma/SKILL.md` so that
|
|
3
|
+
* clients using the open skill format (Codex, and Claude Code) load Lemma's
|
|
4
|
+
* usage rules into the system prompt.
|
|
5
|
+
*
|
|
6
|
+
* Why this exists: Codex does NOT inject the MCP server `instructions` field
|
|
7
|
+
* into the system prompt (unlike Claude Code); it only uses it as a namespace
|
|
8
|
+
* tool description. The skill file is the reliable channel for Lemma's
|
|
9
|
+
* "recall → act → persist" rules on Codex.
|
|
10
|
+
*
|
|
11
|
+
* The frontmatter `description` is the progressive-disclosure TRIGGER and is
|
|
12
|
+
* itself injected into the model context. Keep it an accurate, balanced "what
|
|
13
|
+
* this is" — not an overlong directive, not too terse.
|
|
14
|
+
*/
|
|
15
|
+
import { VERSION } from "../version.js";
|
|
16
|
+
/** Marker embedded in the installed file so installSkill() can detect the version. */
|
|
17
|
+
export const SKILL_VERSION_STAMP = `lemma:skill:v=${VERSION}`;
|
|
18
|
+
export function buildSkillContent() {
|
|
19
|
+
return `---
|
|
20
|
+
name: lemma
|
|
21
|
+
description: Persistent memory and learning layer for AI agents via MCP. Remembers knowledge across sessions — recall what you already know with memory_read, save new knowledge with memory_add. Applies to any task (coding, debugging, refactoring, research, documentation, optimization) across all languages. Distills reusable skills (guides) from experience.
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
<!-- ${SKILL_VERSION_STAMP} -->
|
|
25
|
+
|
|
26
|
+
# Lemma — Persistent Memory & Learning
|
|
27
|
+
|
|
28
|
+
Lemma is a persistent memory server for AI agents over the Model Context Protocol.
|
|
29
|
+
Every session starts blank — knowledge survives ONLY through tool calls. If you
|
|
30
|
+
learn something and don't save it (\`memory_add\`), it is gone permanently.
|
|
31
|
+
|
|
32
|
+
## Workflow
|
|
33
|
+
1. **RECALL** — \`memory_read\` / \`semantic_search\`: load what's already known for this
|
|
34
|
+
project/task. Never re-explore code or re-derive facts that are already saved.
|
|
35
|
+
2. **ACT** — do the task.
|
|
36
|
+
3. **PERSIST** — \`memory_add\` for new insights; \`guide_practice\` for guides applied;
|
|
37
|
+
\`session_attempt\` for abandoned/dead-end approaches (the most valuable records).
|
|
38
|
+
|
|
39
|
+
## Two knowledge layers
|
|
40
|
+
- **Memory fragments** (\`memory_read\` / \`memory_add\`): atomic facts. Types: \`fact\`,
|
|
41
|
+
\`pattern\`, \`lesson\`, \`warning\`, \`context\`. Confidence evolves with use and feedback.
|
|
42
|
+
- **Guides** (\`guide_get\` / \`guide_distill\` / \`guide_practice\`): procedural skills
|
|
43
|
+
distilled from fragments. Track usage count + success/failure rate.
|
|
44
|
+
Pipeline: \`experience -> memory_add -> pattern/lesson -> guide_distill -> guide_practice\`.
|
|
45
|
+
|
|
46
|
+
## Tools at a glance
|
|
47
|
+
- **Recall & search**: \`memory_read\`, \`semantic_search\`, \`memory_library\` (full
|
|
48
|
+
snapshot + maintenance signals), \`memory_stats\`, \`memory_audit\`.
|
|
49
|
+
- **Write & maintain**: \`memory_add\`, \`memory_update\`, \`memory_forget\`,
|
|
50
|
+
\`memory_merge\`, \`memory_relate\` (supports / contradicts / supersedes / related_to),
|
|
51
|
+
\`memory_feedback\`.
|
|
52
|
+
- **Guides**: \`guide_get\`, \`guide_create\`, \`guide_distill\`, \`guide_practice\`,
|
|
53
|
+
\`guide_update\`, \`guide_forget\`, \`guide_merge\`.
|
|
54
|
+
- **Sessions & reasoning**: \`session_start\`, \`session_end\`, \`session_attempt\`,
|
|
55
|
+
\`session_stats\`, \`suggestion_respond\`.
|
|
56
|
+
- **Background intelligence**: \`conflict_scan\`, \`proactive_analysis\`,
|
|
57
|
+
\`project_analytics\` (run automatically; act on signals when sensible).
|
|
58
|
+
|
|
59
|
+
## Writing a fragment
|
|
60
|
+
\`\`\`
|
|
61
|
+
## [Topic Title]
|
|
62
|
+
### Context
|
|
63
|
+
[1-2 sentences: what and why it matters]
|
|
64
|
+
### [Content Section]
|
|
65
|
+
- [Key fact 1]
|
|
66
|
+
- [Key fact 2]
|
|
67
|
+
### Rules (optional)
|
|
68
|
+
- [Absolute constraint]
|
|
69
|
+
\`\`\`
|
|
70
|
+
One idea per fragment, 30-2000 chars, structured markdown (not prose). **Store
|
|
71
|
+
fragments in ENGLISH** (required for search/retrieval). Never ask permission to save.
|
|
72
|
+
|
|
73
|
+
## Background intelligence
|
|
74
|
+
Conflict detection, distill/merge/refine suggestions, and auto-linking run
|
|
75
|
+
automatically. From the CLI, \`lemma -lib\` prints a full knowledge-base snapshot
|
|
76
|
+
and \`lemma -vis\` launches a visualizer.
|
|
77
|
+
`;
|
|
78
|
+
}
|
|
79
|
+
/** Extract the version stamp from an installed skill file, or null if absent/unparseable. */
|
|
80
|
+
export function parseSkillVersion(content) {
|
|
81
|
+
const m = content.match(/lemma:skill:v=(\S+)/);
|
|
82
|
+
return m ? m[1] : null;
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=skill-content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skill-content.js","sourceRoot":"","sources":["../../src/server/skill-content.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,sFAAsF;AACtF,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,OAAO,EAAE,CAAC;AAE9D,MAAM,UAAU,iBAAiB;IAC/B,OAAO;;;;;OAKF,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqDzB,CAAC;AACF,CAAC;AAED,6FAA6F;AAC7F,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC/C,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACzB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lemma-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.18.0",
|
|
4
4
|
"description": "Persistent memory layer for LLMs via MCP",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
"scripts": {
|
|
25
25
|
"build": "tsc && node -e \"const fs=require('fs');const p=require('path');const s=p.join('assets','visualizer.html');const d=p.join('dist','server','visualizer.html');if(fs.existsSync(s)){fs.mkdirSync(p.dirname(d),{recursive:true});fs.copyFileSync(s,d);console.log('Copied visualizer.html to dist/server/')}else{console.warn('Warning: assets/visualizer.html not found')}\"",
|
|
26
26
|
"prepare": "npm run build",
|
|
27
|
+
"postinstall": "node dist/server/install-skill.js",
|
|
27
28
|
"typecheck": "tsc --noEmit --project tsconfig.test.json",
|
|
28
29
|
"start": "node dist/index.js",
|
|
29
30
|
"prepublishOnly": "npm run build",
|