kiri-mcp-server 0.9.0 → 0.9.2

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/README.md CHANGED
@@ -359,7 +359,7 @@ Refine search results by semantic relevance to your specific query. Useful when
359
359
  You: "How does user authentication work in this project?"
360
360
 
361
361
  Claude (using KIRI):
362
- 1. Uses context_bundle with goal "user authentication implementation"
362
+ 1. Uses context_bundle with goal "user authentication flow JWT validation session management"
363
363
  2. Analyzes returned snippets
364
364
  3. Explains the authentication flow with code references
365
365
  ```
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kiri-mcp-server",
3
- "version": "0.9.0",
3
+ "version": "0.9.2",
4
4
  "description": "KIRI context extraction platform",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@9.0.0",
@@ -55,7 +55,7 @@
55
55
  "build:copy-assets": "tsx scripts/build/copy-assets.ts",
56
56
  "dev": "tsx src/server/main.ts --port 8765",
57
57
  "lint": "eslint \"{src,tests,scripts}/**/*.{ts,tsx}\" && prettier --check \"**/*.{ts,tsx,json,md,yml}\"",
58
- "test": "vitest run --coverage",
58
+ "test": "vitest run --coverage --pool=forks --poolOptions.forks.singleFork --poolOptions.forks.maxForks=1 --poolOptions.forks.minForks=1",
59
59
  "check": "pnpm run lint && pnpm run test",
60
60
  "prepublishOnly": "pnpm run build"
61
61
  },
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../../src/server/rpc.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAarE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D;;;;;;;;GAQG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IACnD,SAAgB,gBAAgB,EAAE,MAAM,EAAE,CAAM;IAChD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,wBAAwB,CAAS;IAEzC;;;;OAIG;gBACS,iBAAiB,GAAE,MAAa;IAI5C;;;;;;;OAOG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,GAAE,OAAe,GAAG,OAAO;IA0B7E;;OAEG;IACH,KAAK,IAAI,IAAI;CAKd;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,YAAY,CAAC;AAE5D,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,OAAO,EAAE,eAAe,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,eAAe,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AA6cD,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,cAAc,CAEpF;AAED,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAC1B,OAAO,EAAE,MAAM,EACf,IAAI,SAAS,GACZ,YAAY,CAEd;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAK7E;AAqED,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,sBAAsB,GACnC,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAwN9D"}
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../../../src/server/rpc.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAarE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D;;;;;;;;GAQG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IACnD,SAAgB,gBAAgB,EAAE,MAAM,EAAE,CAAM;IAChD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,wBAAwB,CAAS;IAEzC;;;;OAIG;gBACS,iBAAiB,GAAE,MAAa;IAI5C;;;;;;;OAOG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,GAAE,OAAe,GAAG,OAAO;IA0B7E;;OAEG;IACH,KAAK,IAAI,IAAI;CAKd;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE;QACL,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,MAAM,MAAM,eAAe,GAAG,cAAc,GAAG,YAAY,CAAC;AAE5D,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,OAAO,EAAE,eAAe,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,YAAY,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,eAAe,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;CACpB;AAkdD,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,cAAc,CAEpF;AAED,wBAAgB,aAAa,CAC3B,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAC1B,OAAO,EAAE,MAAM,EACf,IAAI,SAAS,GACZ,YAAY,CAEd;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,GAAG,IAAI,CAK7E;AAqED,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,sBAAsB,GACnC,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAwN9D"}
@@ -75,19 +75,24 @@ const TOOL_DESCRIPTORS = [
75
75
  "- **Dependency analysis**: Considers import relationships between files\n" +
76
76
  "- **Semantic similarity**: Ranks by structural similarity to your query\n\n" +
77
77
  "IMPORTANT: The 'goal' parameter MUST be a clear and specific description of your objective. Use concrete keywords, not abstract verbs.\n\n" +
78
+ "PRO TIP: When you already know the file you're touching, pass it through artifacts.editing_path to anchor the search and surface that file together with its dependency neighborhood.\n\n" +
78
79
  "✅ GOOD EXAMPLES (use specific keywords):\n" +
79
80
  "- goal='User authentication flow, JWT token validation'\n" +
80
81
  "- goal='Canvas page routing, API endpoints, navigation patterns'\n" +
81
82
  "- goal='Fix pagination off-by-one error in product listing'\n" +
82
83
  "- goal='Database connection pooling, retry logic'\n" +
83
- "- goal='page-agent Lambda handler implementation' (hyphenated terms recognized as phrases)\n" +
84
+ "- goal='page-agent Lambda handler request processing error handling' (hyphenated terms recognized as phrases)\n" +
84
85
  "- goal='context_bundle scoring logic' (underscore terms recognized as phrases)\n\n" +
85
86
  "❌ BAD EXAMPLES (too vague, avoid these):\n" +
86
87
  "- goal='Understand how canvas pages are accessed' (starts with abstract verb)\n" +
87
88
  "- goal='understand' (single word, no context)\n" +
88
89
  "- goal='explore the authentication system' (vague verb + long sentence)\n" +
89
90
  "- goal='fix bug' (which bug? be specific)\n" +
90
- "- goal='authentication' (noun only, what about it?)\n\n" +
91
+ "- goal='authentication' (noun only, what about it?)\n" +
92
+ "- goal='authentication implementation' (too generic - specify: handler? validator? storage?)\n" +
93
+ "- goal='search implementation' (add concrete aspects: parser, ranking, indexer)\n\n" +
94
+ "GUIDELINE: Avoid generic terms like 'implementation', 'code', or 'logic' alone. " +
95
+ "Instead, specify concrete aspects: 'handler', 'validator', 'parser', 'storage', 'error handling', 'data flow'.\n\n" +
91
96
  "TOKEN OPTIMIZATION: Use 'compact: true' to reduce token consumption by ~95%. Returns only metadata (path, range, why, score) without preview field. " +
92
97
  "Combine with snippets.get for two-tier approach: first get candidate list (compact), then fetch selected content.\n\n" +
93
98
  "Example workflow:\n" +
@@ -134,7 +139,7 @@ const TOOL_DESCRIPTORS = [
134
139
  properties: {
135
140
  editing_path: {
136
141
  type: "string",
137
- description: "Path to the file currently being edited. Strongly recommended to provide for better context.",
142
+ description: "Path to the file currently being edited. Strongly recommended to provide for better context; boosts that file and related dependencies in the bundle output.",
138
143
  },
139
144
  failing_tests: {
140
145
  type: "array",
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../src/server/rpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../../../src/server/rpc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Socket Path Utility for Cross-Platform IPC
3
+ *
4
+ * Generates platform-appropriate IPC paths:
5
+ * - Unix/Linux/macOS: Unix domain socket files (e.g., /path/to/database.duckdb.sock)
6
+ * - Windows: Named pipes (e.g., \\.\pipe\kiri-<hash>)
7
+ */
8
+ /**
9
+ * プラットフォームに応じた適切なソケットパスを生成
10
+ *
11
+ * Windows環境では名前付きパイプ形式(\\.\pipe\kiri-<hash>)を使用し、
12
+ * Unix系環境ではファイルシステムパス(<databasePath>.sock)を使用する。
13
+ *
14
+ * **セキュリティ注意事項**:
15
+ * - Unix: ソケットファイルは0600パーミッション(所有者のみアクセス可能)で保護
16
+ * - Windows: 名前付きパイプはデフォルトACLを使用(同一システムの他ユーザーが
17
+ * アクセス可能な場合がある)。ハッシュベースのパイプ名で曖昧性を提供するが、
18
+ * マルチユーザー環境では信頼できる環境でのみ使用することを推奨。
19
+ * - Windows環境では KIRI_PIPE_PREFIX 環境変数でパイプ名プレフィックスを
20
+ * カスタマイズ可能(追加のセキュリティ層として利用可能)
21
+ *
22
+ * @param databasePath - データベースファイルの絶対パス
23
+ * @returns プラットフォーム固有のソケットパス
24
+ *
25
+ * @example
26
+ * // Unix/macOS/Linux
27
+ * getSocketPath("/path/to/database.duckdb")
28
+ * // => "/path/to/database.duckdb.sock"
29
+ *
30
+ * // Windows (デフォルト)
31
+ * getSocketPath("C:\\Users\\user\\database.duckdb")
32
+ * // => "\\\\.\\pipe\\kiri-a1b2c3d4..."
33
+ *
34
+ * // Windows (カスタムプレフィックス)
35
+ * process.env.KIRI_PIPE_PREFIX = "myapp"
36
+ * getSocketPath("C:\\Users\\user\\database.duckdb")
37
+ * // => "\\\\.\\pipe\\myapp-a1b2c3d4..."
38
+ */
39
+ export declare function getSocketPath(databasePath: string): string;
40
+ /**
41
+ * ソケットパスからデータベースパスを推測(Unix系のみ)
42
+ *
43
+ * Windows環境ではハッシュベースのパイプ名を使用するため、
44
+ * この関数は情報損失があり、デバッグ用途にのみ使用すべき。
45
+ *
46
+ * @param socketPath - ソケットパス
47
+ * @returns データベースパス(Unix系の場合)またはnull(Windows/不明な形式)
48
+ */
49
+ export declare function getDatabasePathFromSocket(socketPath: string): string | null;
50
+ /**
51
+ * デバッグ用のソケットパス情報を生成
52
+ *
53
+ * @param databasePath - データベースファイルの絶対パス
54
+ * @returns デバッグ情報文字列
55
+ */
56
+ export declare function getSocketPathDebugInfo(databasePath: string): string;
57
+ //# sourceMappingURL=socket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../../../src/shared/utils/socket.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAgB,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAc1D;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAY3E;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAmBnE"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * Socket Path Utility for Cross-Platform IPC
3
+ *
4
+ * Generates platform-appropriate IPC paths:
5
+ * - Unix/Linux/macOS: Unix domain socket files (e.g., /path/to/database.duckdb.sock)
6
+ * - Windows: Named pipes (e.g., \\.\pipe\kiri-<hash>)
7
+ */
8
+ import * as crypto from "crypto";
9
+ import * as os from "os";
10
+ import * as path from "path";
11
+ /**
12
+ * プラットフォームに応じた適切なソケットパスを生成
13
+ *
14
+ * Windows環境では名前付きパイプ形式(\\.\pipe\kiri-<hash>)を使用し、
15
+ * Unix系環境ではファイルシステムパス(<databasePath>.sock)を使用する。
16
+ *
17
+ * **セキュリティ注意事項**:
18
+ * - Unix: ソケットファイルは0600パーミッション(所有者のみアクセス可能)で保護
19
+ * - Windows: 名前付きパイプはデフォルトACLを使用(同一システムの他ユーザーが
20
+ * アクセス可能な場合がある)。ハッシュベースのパイプ名で曖昧性を提供するが、
21
+ * マルチユーザー環境では信頼できる環境でのみ使用することを推奨。
22
+ * - Windows環境では KIRI_PIPE_PREFIX 環境変数でパイプ名プレフィックスを
23
+ * カスタマイズ可能(追加のセキュリティ層として利用可能)
24
+ *
25
+ * @param databasePath - データベースファイルの絶対パス
26
+ * @returns プラットフォーム固有のソケットパス
27
+ *
28
+ * @example
29
+ * // Unix/macOS/Linux
30
+ * getSocketPath("/path/to/database.duckdb")
31
+ * // => "/path/to/database.duckdb.sock"
32
+ *
33
+ * // Windows (デフォルト)
34
+ * getSocketPath("C:\\Users\\user\\database.duckdb")
35
+ * // => "\\\\.\\pipe\\kiri-a1b2c3d4..."
36
+ *
37
+ * // Windows (カスタムプレフィックス)
38
+ * process.env.KIRI_PIPE_PREFIX = "myapp"
39
+ * getSocketPath("C:\\Users\\user\\database.duckdb")
40
+ * // => "\\\\.\\pipe\\myapp-a1b2c3d4..."
41
+ */
42
+ export function getSocketPath(databasePath) {
43
+ if (os.platform() === "win32") {
44
+ // Windows: 名前付きパイプを使用
45
+ // データベースパスのハッシュを使ってユニークなパイプ名を生成
46
+ const hash = crypto.createHash("sha256").update(databasePath).digest("hex");
47
+ // 環境変数でプレフィックスをカスタマイズ可能(追加のセキュリティ層)
48
+ const prefix = process.env.KIRI_PIPE_PREFIX || "kiri";
49
+ // 最初の16文字を使用(衝突リスクは極めて低い)
50
+ const pipeName = `${prefix}-${hash.substring(0, 16)}`;
51
+ return `\\\\.\\pipe\\${pipeName}`;
52
+ }
53
+ else {
54
+ // Unix系: ファイルシステムパスを使用
55
+ return `${databasePath}.sock`;
56
+ }
57
+ }
58
+ /**
59
+ * ソケットパスからデータベースパスを推測(Unix系のみ)
60
+ *
61
+ * Windows環境ではハッシュベースのパイプ名を使用するため、
62
+ * この関数は情報損失があり、デバッグ用途にのみ使用すべき。
63
+ *
64
+ * @param socketPath - ソケットパス
65
+ * @returns データベースパス(Unix系の場合)またはnull(Windows/不明な形式)
66
+ */
67
+ export function getDatabasePathFromSocket(socketPath) {
68
+ if (os.platform() === "win32") {
69
+ // Windowsではパイプ名からデータベースパスを復元できない
70
+ return null;
71
+ }
72
+ // Unix系: .sock拡張子を削除
73
+ if (socketPath.endsWith(".sock")) {
74
+ return socketPath.slice(0, -5); // ".sock" の長さは5
75
+ }
76
+ return null;
77
+ }
78
+ /**
79
+ * デバッグ用のソケットパス情報を生成
80
+ *
81
+ * @param databasePath - データベースファイルの絶対パス
82
+ * @returns デバッグ情報文字列
83
+ */
84
+ export function getSocketPathDebugInfo(databasePath) {
85
+ const socketPath = getSocketPath(databasePath);
86
+ const platform = os.platform();
87
+ const dbDir = path.dirname(databasePath);
88
+ const dbBase = path.basename(databasePath);
89
+ if (platform === "win32") {
90
+ return [
91
+ `Database: ${dbBase} (${dbDir})`,
92
+ `Socket: ${socketPath} (Windows named pipe)`,
93
+ `Note: Pipe name is derived from database path hash for uniqueness`,
94
+ ].join("\n");
95
+ }
96
+ else {
97
+ return [
98
+ `Database: ${dbBase} (${dbDir})`,
99
+ `Socket: ${socketPath} (Unix domain socket)`,
100
+ `Permissions: Owner-only (0600)`,
101
+ ].join("\n");
102
+ }
103
+ }
104
+ //# sourceMappingURL=socket.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socket.js","sourceRoot":"","sources":["../../../../src/shared/utils/socket.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAE7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,aAAa,CAAC,YAAoB;IAChD,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,OAAO,EAAE,CAAC;QAC9B,sBAAsB;QACtB,gCAAgC;QAChC,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,oCAAoC;QACpC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,MAAM,CAAC;QACtD,0BAA0B;QAC1B,MAAM,QAAQ,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QACtD,OAAO,gBAAgB,QAAQ,EAAE,CAAC;IACpC,CAAC;SAAM,CAAC;QACN,uBAAuB;QACvB,OAAO,GAAG,YAAY,OAAO,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB,CAAC,UAAkB;IAC1D,IAAI,EAAE,CAAC,QAAQ,EAAE,KAAK,OAAO,EAAE,CAAC;QAC9B,iCAAiC;QACjC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qBAAqB;IACrB,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QACjC,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB;IAClD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,YAAoB;IACzD,MAAM,UAAU,GAAG,aAAa,CAAC,YAAY,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAE3C,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,OAAO;YACL,aAAa,MAAM,KAAK,KAAK,GAAG;YAChC,WAAW,UAAU,uBAAuB;YAC5C,mEAAmE;SACpE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;SAAM,CAAC;QACN,OAAO;YACL,aAAa,MAAM,KAAK,KAAK,GAAG;YAChC,WAAW,UAAU,uBAAuB;YAC5C,gCAAgC;SACjC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kiri-mcp-server",
3
- "version": "0.9.0",
3
+ "version": "0.9.2",
4
4
  "description": "KIRI context extraction platform",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@9.0.0",
@@ -55,7 +55,7 @@
55
55
  "build:copy-assets": "tsx scripts/build/copy-assets.ts",
56
56
  "dev": "tsx src/server/main.ts --port 8765",
57
57
  "lint": "eslint \"{src,tests,scripts}/**/*.{ts,tsx}\" && prettier --check \"**/*.{ts,tsx,json,md,yml}\"",
58
- "test": "vitest run --coverage",
58
+ "test": "vitest run --coverage --pool=forks --poolOptions.forks.singleFork --poolOptions.forks.maxForks=1 --poolOptions.forks.minForks=1",
59
59
  "check": "pnpm run lint && pnpm run test",
60
60
  "prepublishOnly": "pnpm run build"
61
61
  },