kiri-mcp-server 0.13.0 → 0.16.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.
Files changed (61) hide show
  1. package/README.md +13 -17
  2. package/config/scoring-profiles.yml +78 -0
  3. package/config/stop-words.yml +307 -0
  4. package/dist/config/scoring-profiles.yml +78 -0
  5. package/dist/config/stop-words.yml +307 -0
  6. package/dist/package.json +2 -2
  7. package/dist/src/indexer/cli.d.ts +1 -0
  8. package/dist/src/indexer/cli.d.ts.map +1 -1
  9. package/dist/src/indexer/cli.js +22 -2
  10. package/dist/src/indexer/cli.js.map +1 -1
  11. package/dist/src/indexer/cochange.d.ts +97 -0
  12. package/dist/src/indexer/cochange.d.ts.map +1 -0
  13. package/dist/src/indexer/cochange.js +315 -0
  14. package/dist/src/indexer/cochange.js.map +1 -0
  15. package/dist/src/indexer/graph-metrics.d.ts +68 -0
  16. package/dist/src/indexer/graph-metrics.d.ts.map +1 -0
  17. package/dist/src/indexer/graph-metrics.js +239 -0
  18. package/dist/src/indexer/graph-metrics.js.map +1 -0
  19. package/dist/src/indexer/schema.d.ts +15 -0
  20. package/dist/src/indexer/schema.d.ts.map +1 -1
  21. package/dist/src/indexer/schema.js +86 -0
  22. package/dist/src/indexer/schema.js.map +1 -1
  23. package/dist/src/server/config.d.ts.map +1 -1
  24. package/dist/src/server/config.js +22 -16
  25. package/dist/src/server/config.js.map +1 -1
  26. package/dist/src/server/handlers/snippets-get.d.ts +10 -0
  27. package/dist/src/server/handlers/snippets-get.d.ts.map +1 -1
  28. package/dist/src/server/handlers/snippets-get.js +40 -3
  29. package/dist/src/server/handlers/snippets-get.js.map +1 -1
  30. package/dist/src/server/handlers.d.ts +1 -1
  31. package/dist/src/server/handlers.d.ts.map +1 -1
  32. package/dist/src/server/handlers.js +195 -51
  33. package/dist/src/server/handlers.js.map +1 -1
  34. package/dist/src/server/idf-provider.d.ts +110 -0
  35. package/dist/src/server/idf-provider.d.ts.map +1 -0
  36. package/dist/src/server/idf-provider.js +233 -0
  37. package/dist/src/server/idf-provider.js.map +1 -0
  38. package/dist/src/server/rpc.d.ts.map +1 -1
  39. package/dist/src/server/rpc.js +43 -4
  40. package/dist/src/server/rpc.js.map +1 -1
  41. package/dist/src/server/scoring.d.ts +10 -0
  42. package/dist/src/server/scoring.d.ts.map +1 -1
  43. package/dist/src/server/scoring.js +73 -0
  44. package/dist/src/server/scoring.js.map +1 -1
  45. package/dist/src/server/services/index.d.ts +2 -0
  46. package/dist/src/server/services/index.d.ts.map +1 -1
  47. package/dist/src/server/services/index.js +3 -0
  48. package/dist/src/server/services/index.js.map +1 -1
  49. package/dist/src/server/stop-words.d.ts +106 -0
  50. package/dist/src/server/stop-words.d.ts.map +1 -0
  51. package/dist/src/server/stop-words.js +312 -0
  52. package/dist/src/server/stop-words.js.map +1 -0
  53. package/dist/src/shared/adaptive-k-categories.d.ts +5 -0
  54. package/dist/src/shared/adaptive-k-categories.d.ts.map +1 -0
  55. package/dist/src/shared/adaptive-k-categories.js +17 -0
  56. package/dist/src/shared/adaptive-k-categories.js.map +1 -0
  57. package/dist/src/shared/duckdb.d.ts +8 -2
  58. package/dist/src/shared/duckdb.d.ts.map +1 -1
  59. package/dist/src/shared/duckdb.js +37 -62
  60. package/dist/src/shared/duckdb.js.map +1 -1
  61. package/package.json +2 -2
@@ -0,0 +1,5 @@
1
+ export declare const ADAPTIVE_K_CATEGORIES: readonly ["bugfix", "testfail", "debug", "api", "docs", "feature", "integration", "performance"];
2
+ export type AdaptiveKCategory = (typeof ADAPTIVE_K_CATEGORIES)[number];
3
+ export declare const ADAPTIVE_K_CATEGORY_SET: Set<string>;
4
+ export declare const ADAPTIVE_K_CATEGORY_ALIASES: Record<string, AdaptiveKCategory>;
5
+ //# sourceMappingURL=adaptive-k-categories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adaptive-k-categories.d.ts","sourceRoot":"","sources":["../../../src/shared/adaptive-k-categories.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,kGASxB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvE,eAAO,MAAM,uBAAuB,aAAyC,CAAC;AAE9E,eAAO,MAAM,2BAA2B,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAIzE,CAAC"}
@@ -0,0 +1,17 @@
1
+ export const ADAPTIVE_K_CATEGORIES = [
2
+ "bugfix",
3
+ "testfail",
4
+ "debug",
5
+ "api",
6
+ "docs",
7
+ "feature",
8
+ "integration",
9
+ "performance",
10
+ ];
11
+ export const ADAPTIVE_K_CATEGORY_SET = new Set(ADAPTIVE_K_CATEGORIES);
12
+ export const ADAPTIVE_K_CATEGORY_ALIASES = {
13
+ editor: "feature",
14
+ infra: "integration",
15
+ "docs-plain": "docs",
16
+ };
17
+ //# sourceMappingURL=adaptive-k-categories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adaptive-k-categories.js","sourceRoot":"","sources":["../../../src/shared/adaptive-k-categories.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,QAAQ;IACR,UAAU;IACV,OAAO;IACP,KAAK;IACL,MAAM;IACN,SAAS;IACT,aAAa;IACb,aAAa;CACL,CAAC;AAIX,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,GAAG,CAAS,qBAAqB,CAAC,CAAC;AAE9E,MAAM,CAAC,MAAM,2BAA2B,GAAsC;IAC5E,MAAM,EAAE,SAAS;IACjB,KAAK,EAAE,aAAa;IACpB,YAAY,EAAE,MAAM;CACrB,CAAC"}
@@ -3,10 +3,16 @@ export interface DuckDBClientOptions {
3
3
  ensureDirectory?: boolean;
4
4
  autoGitignore?: boolean;
5
5
  }
6
+ /**
7
+ * パラメータの型定義。
8
+ * - 配列: 位置パラメータ (? プレースホルダ用)
9
+ * - オブジェクト: 名前付きパラメータ ($param プレースホルダ用)
10
+ */
6
11
  type QueryParams = unknown[] | Record<string, unknown>;
7
12
  export declare class DuckDBClient {
8
- private readonly database;
9
- constructor(path: string);
13
+ private readonly instance;
14
+ private readonly connection;
15
+ private constructor();
10
16
  static connect(options: DuckDBClientOptions): Promise<DuckDBClient>;
11
17
  run(sql: string, params?: QueryParams): Promise<void>;
12
18
  all<T>(sql: string, params?: QueryParams): Promise<T[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"duckdb.d.ts","sourceRoot":"","sources":["../../../src/shared/duckdb.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,KAAK,WAAW,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AA0FvD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA4B;gBAEzC,IAAI,EAAE,MAAM;WAIX,OAAO,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAmBnE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BzD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,WAAgB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IA6B3D,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAchD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAoB7B"}
1
+ {"version":3,"file":"duckdb.d.ts","sourceRoot":"","sources":["../../../src/shared/duckdb.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;GAIG;AACH,KAAK,WAAW,GAAG,OAAO,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AA6FvD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmB;IAE9C,OAAO;WAKM,OAAO,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,YAAY,CAAC;IAqBnE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,WAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAezD,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,WAAgB,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAkB3D,WAAW,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAiBhD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAe7B"}
@@ -1,6 +1,6 @@
1
1
  import { access, mkdir, writeFile } from "node:fs/promises";
2
2
  import { dirname, join } from "node:path";
3
- import duckdb from "duckdb";
3
+ import { DuckDBInstance } from "@duckdb/node-api";
4
4
  function hasDefinedParams(params) {
5
5
  return Array.isArray(params) ? params.length > 0 : Object.keys(params).length > 0;
6
6
  }
@@ -82,9 +82,11 @@ async function createGitignoreIfNeeded(dirPath) {
82
82
  }
83
83
  }
84
84
  export class DuckDBClient {
85
- database;
86
- constructor(path) {
87
- this.database = new duckdb.Database(path);
85
+ instance;
86
+ connection;
87
+ constructor(instance, connection) {
88
+ this.instance = instance;
89
+ this.connection = connection;
88
90
  }
89
91
  static async connect(options) {
90
92
  const dbDir = dirname(options.databasePath);
@@ -99,69 +101,44 @@ export class DuckDBClient {
99
101
  await createGitignoreIfNeeded(dbDir);
100
102
  }
101
103
  }
102
- return new DuckDBClient(options.databasePath);
104
+ const instance = await DuckDBInstance.create(options.databasePath);
105
+ const connection = await instance.connect();
106
+ return new DuckDBClient(instance, connection);
103
107
  }
104
108
  async run(sql, params = []) {
105
109
  assertNoUndefined(sql, params);
106
- await new Promise((resolve, reject) => {
107
- const callback = (err) => {
108
- if (err) {
109
- reject(err);
110
- return;
111
- }
112
- resolve();
113
- };
114
- if (Array.isArray(params)) {
115
- if (params.length > 0) {
116
- // @ts-expect-error - duckdb.run expects rest parameters which cannot be strongly typed with unknown[]
117
- this.database.run(sql, ...params, callback);
118
- }
119
- else {
120
- this.database.run(sql, callback);
121
- }
122
- }
123
- else if (hasDefinedParams(params)) {
124
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
125
- this.database.run(sql, params, callback);
110
+ try {
111
+ if (hasDefinedParams(params)) {
112
+ // QueryParams は DuckDBParams と互換性がある(プリミティブ値のみを使用する前提)
113
+ await this.connection.run(sql, params);
126
114
  }
127
115
  else {
128
- this.database.run(sql, callback);
116
+ await this.connection.run(sql);
129
117
  }
130
- }).catch((error) => {
118
+ }
119
+ catch (error) {
131
120
  const message = error instanceof Error ? error.message : String(error);
132
121
  throw new Error(`${message} | SQL: ${sql} | Params: ${JSON.stringify(params)}`);
133
- });
122
+ }
134
123
  }
135
124
  async all(sql, params = []) {
136
125
  assertNoUndefined(sql, params);
137
- return await new Promise((resolve, reject) => {
138
- const callback = (err, rows) => {
139
- if (err) {
140
- reject(err);
141
- return;
142
- }
143
- resolve(rows.map((row) => coerceBigInts(row)));
144
- };
145
- if (Array.isArray(params)) {
146
- if (params.length > 0) {
147
- // @ts-expect-error - duckdb.all expects rest parameters which cannot be strongly typed with unknown[]
148
- this.database.all(sql, ...params, callback);
149
- }
150
- else {
151
- this.database.all(sql, callback);
152
- }
153
- }
154
- else if (hasDefinedParams(params)) {
155
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
156
- this.database.all(sql, params, callback);
126
+ try {
127
+ let reader;
128
+ if (hasDefinedParams(params)) {
129
+ // QueryParams は DuckDBParams と互換性がある(プリミティブ値のみを使用する前提)
130
+ reader = await this.connection.runAndReadAll(sql, params);
157
131
  }
158
132
  else {
159
- this.database.all(sql, callback);
133
+ reader = await this.connection.runAndReadAll(sql);
160
134
  }
161
- }).catch((error) => {
135
+ const rows = reader.getRowObjects();
136
+ return rows.map((row) => coerceBigInts(row));
137
+ }
138
+ catch (error) {
162
139
  const message = error instanceof Error ? error.message : String(error);
163
140
  throw new Error(`${message} | SQL: ${sql} | Params: ${JSON.stringify(params)}`);
164
- });
141
+ }
165
142
  }
166
143
  async transaction(fn) {
167
144
  await this.run("BEGIN TRANSACTION");
@@ -171,8 +148,11 @@ export class DuckDBClient {
171
148
  return result;
172
149
  }
173
150
  catch (error) {
174
- await this.run("ROLLBACK").catch(() => {
175
- // Ignore rollback errors so original error is surfaced.
151
+ await this.run("ROLLBACK").catch((rollbackError) => {
152
+ // ROLLBACKエラーは握りつぶすが、デバッグのためstderrに出力
153
+ // 元のエラーを優先して伝播させるため、ここでは再throwしない
154
+ const msg = rollbackError instanceof Error ? rollbackError.message : String(rollbackError);
155
+ process.stderr.write(`[DuckDBClient] ROLLBACK failed: ${msg}\n`);
176
156
  });
177
157
  throw error;
178
158
  }
@@ -187,15 +167,10 @@ export class DuckDBClient {
187
167
  catch {
188
168
  // Ignore checkpoint errors - database might be in read-only mode or already checkpointed
189
169
  }
190
- await new Promise((resolve, reject) => {
191
- this.database.close((err) => {
192
- if (err) {
193
- reject(err);
194
- return;
195
- }
196
- resolve();
197
- });
198
- });
170
+ // DuckDBConnection.closeSync() を呼び出すと、接続が閉じられる
171
+ // DuckDBInstance は接続経由で使用され、明示的なclose APIは提供されていない
172
+ // (@duckdb/node-api の設計上、Instance のリソースは GC で解放される)
173
+ this.connection.closeSync();
199
174
  }
200
175
  }
201
176
  //# sourceMappingURL=duckdb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"duckdb.js","sourceRoot":"","sources":["../../../src/shared/duckdb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAU5B,SAAS,gBAAgB,CAAC,MAAmB;IAC3C,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW,EAAE,MAAmB;IACzD,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;QAC/D,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,aAAa,KAAK,0BAA0B,GAAG,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,0BAA0B,GAAG,EAAE,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAI,KAAQ;IAChC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CACb,0BAA0B,KAAK,CAAC,QAAQ,EAAE,wFAAwF,CACnI,CAAC;QACJ,CAAC;QACD,OAAO,QAAwB,CAAC;IAClC,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAiB,CAAC;IAClE,CAAC;IACD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAgC,CAAC,EAAE,CAAC;YAC5E,MAAM,CAAC,GAAG,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,MAAsB,CAAC;IAChC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,iBAAiB,CAAC,OAAe;IAC9C,IAAI,WAAW,GAAG,OAAO,CAAC;IAE1B,qDAAqD;IACrD,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,4CAA4C;QAC9C,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;QACxC,8DAA8D;QAC9D,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,WAAW,GAAG,UAAU,CAAC;IAC3B,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,uBAAuB,CAAC,OAAe;IACpD,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAElD,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QAC5B,kEAAkE;IACpE,CAAC;IAAC,MAAM,CAAC;QACP,uCAAuC;QACvC,MAAM,OAAO,GACX,qEAAqE;YACrE,mFAAmF;YACnF,KAAK,CAAC;QACR,MAAM,SAAS,CAAC,aAAa,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED,MAAM,OAAO,YAAY;IACN,QAAQ,CAA4B;IAErD,YAAY,IAAY;QACtB,IAAI,CAAC,QAAQ,GAAG,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,OAA4B;QAC/C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAE5C,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC5B,MAAM,KAAK,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,CAAC;QAED,oDAAoD;QACpD,MAAM,mBAAmB,GAAG,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC;QAC1D,IAAI,mBAAmB,EAAE,CAAC;YACxB,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAC/C,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,uBAAuB,CAAC,KAAK,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAED,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAChD,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,GAAW,EAAE,SAAsB,EAAE;QAC7C,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC/B,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,QAAQ,GAAG,CAAC,GAAiB,EAAE,EAAE;gBACrC,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,OAAO;gBACT,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC;YACF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,sGAAsG;oBACtG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAC9C,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;iBAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpC,8DAA8D;gBAC9D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,MAAa,EAAE,QAAQ,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACnC,CAAC;QACH,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC1B,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,WAAW,GAAG,cAAc,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAG,CAAI,GAAW,EAAE,SAAsB,EAAE;QAChD,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC/B,OAAO,MAAM,IAAI,OAAO,CAAM,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAChD,MAAM,QAAQ,GAAG,CAAC,GAAiB,EAAE,IAAS,EAAE,EAAE;gBAChD,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,OAAO;gBACT,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACjD,CAAC,CAAC;YACF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,sGAAsG;oBACtG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAI,GAAG,EAAE,GAAG,MAAM,EAAE,QAAQ,CAAC,CAAC;gBACjD,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAI,GAAG,EAAE,QAAQ,CAAC,CAAC;gBACtC,CAAC;YACH,CAAC;iBAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;gBACpC,8DAA8D;gBAC9D,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAI,GAAG,EAAE,MAAa,EAAE,QAAQ,CAAC,CAAC;YACrD,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAI,GAAG,EAAE,QAAQ,CAAC,CAAC;YACtC,CAAC;QACH,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;YAC1B,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,WAAW,GAAG,cAAc,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAClF,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,WAAW,CAAI,EAAoB;QACvC,MAAM,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,EAAE,EAAE,CAAC;YAC1B,MAAM,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACzB,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACpC,wDAAwD;YAC1D,CAAC,CAAC,CAAC;YACH,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK;QACT,4EAA4E;QAC5E,+EAA+E;QAC/E,oDAAoD;QACpD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,yFAAyF;QAC3F,CAAC;QAED,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAiB,EAAE,EAAE;gBACxC,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,CAAC,GAAG,CAAC,CAAC;oBACZ,OAAO;gBACT,CAAC;gBACD,OAAO,EAAE,CAAC;YACZ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"duckdb.js","sourceRoot":"","sources":["../../../src/shared/duckdb.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kiri-mcp-server",
3
- "version": "0.13.0",
3
+ "version": "0.16.0",
4
4
  "description": "KIRI context extraction platform",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@9.0.0",
@@ -76,9 +76,9 @@
76
76
  "prepublishOnly": "pnpm run build"
77
77
  },
78
78
  "dependencies": {
79
+ "@duckdb/node-api": "1.4.2-r.1",
79
80
  "chokidar": "^4.0.3",
80
81
  "csv-parse": "^5.5.6",
81
- "duckdb": "^1.1.0",
82
82
  "fast-deep-equal": "^3.1.3",
83
83
  "gpt-tokenizer": "^3.2.0",
84
84
  "p-queue": "^9.0.0",