agent-knowledge 1.0.10 → 1.0.12

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/CHANGELOG.md CHANGED
@@ -1,77 +1,77 @@
1
- # Changelog
2
-
3
- ## 1.0.0 (2026-03-26)
4
-
5
- Initial release.
6
-
7
- ### MCP Tools (12)
8
-
9
- **Knowledge (5):** `knowledge_list`, `knowledge_read`, `knowledge_write`, `knowledge_delete`, `knowledge_sync`
10
-
11
- **Sessions (5):** `knowledge_sessions`, `knowledge_search`, `knowledge_get`, `knowledge_summary`, `knowledge_recall`
12
-
13
- **Admin (2):** `knowledge_index_status`, `knowledge_config`
14
-
15
- ### Search Engine
16
-
17
- - Hybrid semantic + TF-IDF search with configurable alpha blending
18
- - Recency decay weighting (newer sessions rank higher)
19
- - Fuzzy matching via Levenshtein distance
20
- - 6 recall scopes: errors, plans, configs, tools, files, decisions
21
- - Role-based filtering (all, user, assistant)
22
- - Regex mode for pattern-based searches
23
-
24
- ### Embeddings & Vector Store
25
-
26
- - SQLite vector store with sqlite-vec for cosine similarity
27
- - 4 embedding providers: local (Hugging Face), OpenAI, Claude/Voyage, Gemini
28
- - Background indexer runs on server startup
29
- - Automatic provider switching with dimension migration
30
-
31
- ### Knowledge Base
32
-
33
- - Git-synced markdown vault at `~/claude-memory/`
34
- - 5 categories: projects, people, decisions, workflows, notes
35
- - YAML frontmatter for metadata (title, tags, updated)
36
- - Auto git commit + push on writes, pull on reads
37
- - Configurable git URL via `knowledge_config` tool or `KNOWLEDGE_GIT_URL` env var
38
- - New repos auto-scaffolded with README, .gitignore, and category dirs
39
-
40
- ### Auto-Distillation
41
-
42
- - Automatic extraction of session insights into knowledge base
43
- - Project name normalization (worktrees, swarms merged into parent)
44
- - Secrets scrubbing: API keys, tokens, passwords, JWTs, private keys redacted
45
- - System noise stripped (XML tags, task notifications)
46
- - Absolute paths normalized to `~/`
47
- - Defense-in-depth audit blocks writes with surviving sensitive content
48
-
49
- ### Persistent Configuration
50
-
51
- - `knowledge_config` tool for runtime setup (no restart needed)
52
- - Config stored at XDG/AppData location (tool-agnostic)
53
- - Priority: env vars > persisted config > defaults
54
-
55
- ### Web Dashboard
56
-
57
- - http://localhost:3423, auto-starts with MCP server
58
- - 5 tabs: Knowledge, Search, Sessions, Recall, Embeddings
59
- - MD3 design language matching agent-comm and agent-tasks
60
- - Light/dark theme with localStorage persistence
61
- - Side panel (560px, resizable) with markdown rendering
62
- - Live reload via file watcher + WebSocket
63
- - Semantic search toggle with score breakdown
64
-
65
- ### Performance
66
-
67
- - Session file mtime cache (re-parses only changed files)
68
- - Global TF-IDF index cache with 60s TTL
69
- - Background embedding indexer (non-blocking)
70
-
71
- ### Infrastructure
72
-
73
- - REST API: 10 endpoints (knowledge, sessions, search, recall, index-status, health)
74
- - WebSocket server for real-time dashboard updates
75
- - 280 tests passing (vitest)
76
- - TypeScript strict mode, ES modules
77
- - GitHub Actions CI (Node 20/22 matrix, npm publish on tags)
1
+ # Changelog
2
+
3
+ ## 1.0.0 (2026-03-26)
4
+
5
+ Initial release.
6
+
7
+ ### MCP Tools (12)
8
+
9
+ **Knowledge (5):** `knowledge_list`, `knowledge_read`, `knowledge_write`, `knowledge_delete`, `knowledge_sync`
10
+
11
+ **Sessions (5):** `knowledge_sessions`, `knowledge_search`, `knowledge_get`, `knowledge_summary`, `knowledge_recall`
12
+
13
+ **Admin (2):** `knowledge_index_status`, `knowledge_config`
14
+
15
+ ### Search Engine
16
+
17
+ - Hybrid semantic + TF-IDF search with configurable alpha blending
18
+ - Recency decay weighting (newer sessions rank higher)
19
+ - Fuzzy matching via Levenshtein distance
20
+ - 6 recall scopes: errors, plans, configs, tools, files, decisions
21
+ - Role-based filtering (all, user, assistant)
22
+ - Regex mode for pattern-based searches
23
+
24
+ ### Embeddings & Vector Store
25
+
26
+ - SQLite vector store with sqlite-vec for cosine similarity
27
+ - 4 embedding providers: local (Hugging Face), OpenAI, Claude/Voyage, Gemini
28
+ - Background indexer runs on server startup
29
+ - Automatic provider switching with dimension migration
30
+
31
+ ### Knowledge Base
32
+
33
+ - Git-synced markdown vault at `~/claude-memory/`
34
+ - 5 categories: projects, people, decisions, workflows, notes
35
+ - YAML frontmatter for metadata (title, tags, updated)
36
+ - Auto git commit + push on writes, pull on reads
37
+ - Configurable git URL via `knowledge_config` tool or `KNOWLEDGE_GIT_URL` env var
38
+ - New repos auto-scaffolded with README, .gitignore, and category dirs
39
+
40
+ ### Auto-Distillation
41
+
42
+ - Automatic extraction of session insights into knowledge base
43
+ - Project name normalization (worktrees, swarms merged into parent)
44
+ - Secrets scrubbing: API keys, tokens, passwords, JWTs, private keys redacted
45
+ - System noise stripped (XML tags, task notifications)
46
+ - Absolute paths normalized to `~/`
47
+ - Defense-in-depth audit blocks writes with surviving sensitive content
48
+
49
+ ### Persistent Configuration
50
+
51
+ - `knowledge_config` tool for runtime setup (no restart needed)
52
+ - Config stored at XDG/AppData location (tool-agnostic)
53
+ - Priority: env vars > persisted config > defaults
54
+
55
+ ### Web Dashboard
56
+
57
+ - http://localhost:3423, auto-starts with MCP server
58
+ - 5 tabs: Knowledge, Search, Sessions, Recall, Embeddings
59
+ - MD3 design language matching agent-comm and agent-tasks
60
+ - Light/dark theme with localStorage persistence
61
+ - Side panel (560px, resizable) with markdown rendering
62
+ - Live reload via file watcher + WebSocket
63
+ - Semantic search toggle with score breakdown
64
+
65
+ ### Performance
66
+
67
+ - Session file mtime cache (re-parses only changed files)
68
+ - Global TF-IDF index cache with 60s TTL
69
+ - Background embedding indexer (non-blocking)
70
+
71
+ ### Infrastructure
72
+
73
+ - REST API: 10 endpoints (knowledge, sessions, search, recall, index-status, health)
74
+ - WebSocket server for real-time dashboard updates
75
+ - 280 tests passing (vitest)
76
+ - TypeScript strict mode, ES modules
77
+ - GitHub Actions CI (Node 20/22 matrix, npm publish on tags)
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 keshrath
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2026 keshrath
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -182,9 +182,9 @@ npm run lint # Type-check (tsc --noEmit)
182
182
 
183
183
  ## Documentation
184
184
 
185
- - [Setup Guide](docs/SETUP.md)
186
- - [Architecture](docs/ARCHITECTURE.md)
187
- - [Dashboard](docs/DASHBOARD.md)
185
+ - [Setup Guide](docs/SETUP.md) — installation, client setup (Claude Code, OpenCode, Cursor, Windsurf), hooks
186
+ - [Architecture](docs/ARCHITECTURE.md) — source structure, design principles, database schema
187
+ - [Dashboard](docs/DASHBOARD.md) — web UI views and features
188
188
  - [Changelog](CHANGELOG.md)
189
189
 
190
190
  ## License
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../src/dashboard.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AA+UxB,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAIlD;AAED,wBAAgB,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAwIlE"}
1
+ {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../src/dashboard.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AAsWxB,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAIlD;AAED,wBAAgB,cAAc,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAwIlE"}
package/dist/dashboard.js CHANGED
@@ -149,6 +149,7 @@ async function handleApi(pathname, url, res) {
149
149
  totalEntries: 0,
150
150
  knowledgeEntries: 0,
151
151
  sessionEntries: 0,
152
+ uniqueSessions: 0,
152
153
  dbSizeMB: 0,
153
154
  provider: null,
154
155
  dimensions: 0,
@@ -277,11 +278,26 @@ async function buildStateSnapshot() {
277
278
  const config = getConfig();
278
279
  try {
279
280
  const knowledge = listEntries(config.memoryDir);
281
+ const projects = getProjectDirs();
282
+ let sessionCount = 0;
283
+ for (const proj of projects) {
284
+ sessionCount += getSessionFiles(proj.path).length;
285
+ }
286
+ let vectorCount = 0;
287
+ try {
288
+ const store = new VectorStore();
289
+ vectorCount = store.stats().totalEntries;
290
+ }
291
+ catch {
292
+ /* vector store may not be ready */
293
+ }
280
294
  return {
281
295
  type: 'state',
282
296
  knowledge: knowledge || [],
283
297
  stats: {
284
298
  knowledge_entries: knowledge.length,
299
+ session_count: sessionCount,
300
+ vector_count: vectorCount,
285
301
  uptime: process.uptime(),
286
302
  version: VERSION,
287
303
  },
@@ -291,7 +307,13 @@ async function buildStateSnapshot() {
291
307
  return {
292
308
  type: 'state',
293
309
  knowledge: [],
294
- stats: { knowledge_entries: 0, uptime: process.uptime(), version: VERSION },
310
+ stats: {
311
+ knowledge_entries: 0,
312
+ session_count: 0,
313
+ vector_count: 0,
314
+ uptime: process.uptime(),
315
+ version: VERSION,
316
+ },
295
317
  };
296
318
  }
297
319
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../src/dashboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../src/dashboard.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../src/embeddings/local.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AA6CpD,qBAAa,sBAAuB,YAAW,iBAAiB;IAC9D,QAAQ,CAAC,IAAI,WAAW;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,aAAa,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;IAOxE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IA0B3C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKzC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;YAKvB,WAAW;CAW1B"}
1
+ {"version":3,"file":"local.d.ts","sourceRoot":"","sources":["../../src/embeddings/local.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AA4DpD,qBAAa,sBAAuB,YAAW,iBAAiB;IAC9D,QAAQ,CAAC,IAAI,WAAW;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,aAAa,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM;IAOxE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IA0B3C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKzC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;YAKvB,WAAW;CAW1B"}
@@ -1,19 +1,27 @@
1
1
  const DEFAULT_MODEL = 'Xenova/all-MiniLM-L6-v2';
2
2
  const DEFAULT_DIMENSIONS = 384;
3
- const DEFAULT_BATCH_SIZE = 32;
3
+ const DEFAULT_BATCH_SIZE = 8;
4
4
  const DEFAULT_IDLE_TIMEOUT_MS = 60_000;
5
+ const DEFAULT_NUM_THREADS = 1;
5
6
  let _pipeline = null;
6
7
  let _pipelineLoading = null;
7
8
  let _idleTimer = null;
8
9
  let _idleTimeoutMs = DEFAULT_IDLE_TIMEOUT_MS;
10
+ const _numThreads = parseInt(process.env.KNOWLEDGE_EMBEDDING_THREADS ?? String(DEFAULT_NUM_THREADS), 10);
11
+ process.env.ONNX_NUM_THREADS = String(_numThreads);
12
+ process.env.OMP_NUM_THREADS = String(_numThreads);
9
13
  async function loadPipeline(model) {
10
14
  try {
11
- console.error(`[knowledge] Loading embedding model ${model}...`);
15
+ console.error(`[knowledge] Loading embedding model ${model} (quantized, ${_numThreads} thread(s))...`);
12
16
  const { pipeline } = await import('@huggingface/transformers');
13
17
  const pipe = await pipeline('feature-extraction', model, {
14
- dtype: 'fp32',
18
+ dtype: 'q8',
19
+ session_options: {
20
+ intraOpNumThreads: _numThreads,
21
+ interOpNumThreads: _numThreads,
22
+ },
15
23
  });
16
- console.error(`[knowledge] Embedding model loaded`);
24
+ console.error(`[knowledge] Embedding model loaded (threads: ${_numThreads})`);
17
25
  return pipe;
18
26
  }
19
27
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"local.js","sourceRoot":"","sources":["../../src/embeddings/local.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local.js","sourceRoot":"","sources":["../../src/embeddings/local.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
+ #!/usr/bin/env node
1
2
  export {};
2
3
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,16 +1,19 @@
1
+ #!/usr/bin/env node
1
2
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
2
3
  import { createServer } from './server.js';
3
4
  import { startDashboard } from './dashboard.js';
4
5
  async function main() {
5
6
  const port = parseInt(process.env.KNOWLEDGE_PORT || '3423', 10);
7
+ let isLeader = false;
6
8
  try {
7
9
  await startDashboard(port);
8
10
  process.stderr.write(`Dashboard: http://localhost:${port}\n`);
11
+ isLeader = true;
9
12
  }
10
- catch (err) {
11
- process.stderr.write(`Warning: Dashboard failed to start: ${err}\n`);
13
+ catch {
14
+ process.stderr.write(`[knowledge] Dashboard port ${port} in use — another instance is leader.\n`);
12
15
  }
13
- const server = createServer();
16
+ const server = createServer({ isLeader });
14
17
  const transport = new StdioServerTransport();
15
18
  await server.connect(transport);
16
19
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;IAEhE,IAAI,CAAC;QACH,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,IAAI,IAAI,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,GAAG,IAAI,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhD,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,MAAM,EAAE,EAAE,CAAC,CAAC;IAEhE,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,CAAC;QACH,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;QAC3B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,IAAI,IAAI,CAAC,CAAC;QAC9D,QAAQ,GAAG,IAAI,CAAC;IAClB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,8BAA8B,IAAI,yCAAyC,CAC5E,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
@@ -65,84 +65,84 @@ export async function gitSync(dir) {
65
65
  return { pull, push };
66
66
  }
67
67
  // ── Scaffold templates ──────────────────────────────────────────────────────
68
- const SCAFFOLD_GITIGNORE = `# OS
69
- .DS_Store
70
- Thumbs.db
71
- Desktop.ini
72
-
73
- # Editors
74
- *.swp
75
- *.swo
76
- *~
77
- .vscode/
78
- .idea/
79
-
80
- # Secrets — never commit these
81
- .env
82
- .env.*
83
- *.pem
84
- *.key
85
- credentials.*
86
- secrets.*
87
-
88
- # Obsidian — keep config, ignore workspace cache
89
- .obsidian/workspace.json
90
- .obsidian/workspace-mobile.json
91
- .obsidian/cache/
68
+ const SCAFFOLD_GITIGNORE = `# OS
69
+ .DS_Store
70
+ Thumbs.db
71
+ Desktop.ini
72
+
73
+ # Editors
74
+ *.swp
75
+ *.swo
76
+ *~
77
+ .vscode/
78
+ .idea/
79
+
80
+ # Secrets — never commit these
81
+ .env
82
+ .env.*
83
+ *.pem
84
+ *.key
85
+ credentials.*
86
+ secrets.*
87
+
88
+ # Obsidian — keep config, ignore workspace cache
89
+ .obsidian/workspace.json
90
+ .obsidian/workspace-mobile.json
91
+ .obsidian/cache/
92
92
  `;
93
- const SCAFFOLD_README = `# Knowledge Base
94
-
95
- Shared knowledge base managed by [agent-knowledge](https://github.com/keshrath/agent-knowledge).
96
-
97
- ## Structure
98
-
99
- \`\`\`
100
- ├── projects/ — Per-project context, architecture, tech stacks
101
- ├── people/ — Team members, roles, contacts
102
- ├── decisions/ — Architecture decisions, trade-offs
103
- ├── workflows/ — Processes, deployment steps, runbooks
104
- └── notes/ — General notes, research, ideas
105
- \`\`\`
106
-
107
- ## Auto-Distillation
108
-
109
- Agent-knowledge automatically distills session insights into \`projects/\` entries:
110
- - Topics discussed, tools used, files touched
111
- - All content is scrubbed for secrets before committing
112
- - Runs after each server startup
113
-
114
- ## Usage
115
-
116
- ### Via MCP tools
117
-
118
- - \`knowledge_list\` / \`knowledge_read\` / \`knowledge_write\` — browse and edit entries
119
- - \`knowledge_search\` — hybrid semantic + keyword search
120
- - \`knowledge_sync\` — manual git pull + push
121
- - \`knowledge_config\` — view or update settings
122
-
123
- ### File format
124
-
125
- Markdown with optional YAML frontmatter:
126
-
127
- \`\`\`markdown
128
- ---
129
- title: My Project
130
- tags: [backend, api]
131
- updated: 2026-01-01
132
- ---
133
-
134
- # My Project
135
-
136
- Content here.
137
- \`\`\`
138
-
139
- ## Security
140
-
141
- Content is scrubbed before every git push:
142
- - API keys, tokens, passwords, JWTs, private keys → redacted
143
- - System noise (XML tags, task notifications) → stripped
144
- - Absolute user paths → normalized to \`~/\`
145
- - Final audit blocks writes that still contain sensitive patterns
93
+ const SCAFFOLD_README = `# Knowledge Base
94
+
95
+ Shared knowledge base managed by [agent-knowledge](https://github.com/keshrath/agent-knowledge).
96
+
97
+ ## Structure
98
+
99
+ \`\`\`
100
+ ├── projects/ — Per-project context, architecture, tech stacks
101
+ ├── people/ — Team members, roles, contacts
102
+ ├── decisions/ — Architecture decisions, trade-offs
103
+ ├── workflows/ — Processes, deployment steps, runbooks
104
+ └── notes/ — General notes, research, ideas
105
+ \`\`\`
106
+
107
+ ## Auto-Distillation
108
+
109
+ Agent-knowledge automatically distills session insights into \`projects/\` entries:
110
+ - Topics discussed, tools used, files touched
111
+ - All content is scrubbed for secrets before committing
112
+ - Runs after each server startup
113
+
114
+ ## Usage
115
+
116
+ ### Via MCP tools
117
+
118
+ - \`knowledge_list\` / \`knowledge_read\` / \`knowledge_write\` — browse and edit entries
119
+ - \`knowledge_search\` — hybrid semantic + keyword search
120
+ - \`knowledge_sync\` — manual git pull + push
121
+ - \`knowledge_config\` — view or update settings
122
+
123
+ ### File format
124
+
125
+ Markdown with optional YAML frontmatter:
126
+
127
+ \`\`\`markdown
128
+ ---
129
+ title: My Project
130
+ tags: [backend, api]
131
+ updated: 2026-01-01
132
+ ---
133
+
134
+ # My Project
135
+
136
+ Content here.
137
+ \`\`\`
138
+
139
+ ## Security
140
+
141
+ Content is scrubbed before every git push:
142
+ - API keys, tokens, passwords, JWTs, private keys → redacted
143
+ - System noise (XML tags, task notifications) → stripped
144
+ - Absolute user paths → normalized to \`~/\`
145
+ - Final audit blocks writes that still contain sensitive patterns
146
146
  `;
147
147
  /**
148
148
  * Write scaffold files (README, .gitignore, category dirs) into a new
package/dist/server.d.ts CHANGED
@@ -1,3 +1,7 @@
1
1
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
2
- export declare function createServer(): Server;
2
+ export interface ServerOptions {
3
+ /** Only the leader instance (dashboard owner) runs background indexing. */
4
+ isLeader?: boolean;
5
+ }
6
+ export declare function createServer(options?: ServerOptions): Server;
3
7
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAsFnE,wBAAgB,YAAY,IAAI,MAAM,CA2erC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAsFnE,MAAM,WAAW,aAAa;IAC5B,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,MAAM,CAif5D"}
package/dist/server.js CHANGED
@@ -68,7 +68,7 @@ function validateEnum(val, allowed, key) {
68
68
  }
69
69
  return val;
70
70
  }
71
- export function createServer() {
71
+ export function createServer(options) {
72
72
  const server = new Server({ name: 'agent-knowledge', version: getVersion() }, { capabilities: { tools: {} } });
73
73
  server.setRequestHandler(ListToolsRequestSchema, async () => ({
74
74
  tools: [
@@ -501,7 +501,12 @@ export function createServer() {
501
501
  const startupConfig = getConfig();
502
502
  const repoResult = ensureRepo(startupConfig.memoryDir, startupConfig.gitUrl);
503
503
  console.error(`[knowledge] Repo init: ${repoResult.message}`);
504
- setTimeout(() => backgroundIndex().catch((err) => console.error('[knowledge] Background index failed:', err)), 5000);
504
+ if (options?.isLeader !== false) {
505
+ setTimeout(() => backgroundIndex().catch((err) => console.error('[knowledge] Background index failed:', err)), 5000);
506
+ }
507
+ else {
508
+ console.error('[knowledge] Follower instance — skipping background indexing');
509
+ }
505
510
  return server;
506
511
  }
507
512
  function ok(result) {