kiri-mcp-server 0.9.9 → 0.11.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 (130) hide show
  1. package/README.md +60 -7
  2. package/config/scoring-profiles.yml +82 -35
  3. package/dist/config/scoring-profiles.yml +82 -35
  4. package/dist/package.json +12 -1
  5. package/dist/src/client/proxy.js +81 -12
  6. package/dist/src/client/proxy.js.map +1 -1
  7. package/dist/src/daemon/daemon.js +91 -14
  8. package/dist/src/daemon/daemon.js.map +1 -1
  9. package/dist/src/indexer/cli.d.ts.map +1 -1
  10. package/dist/src/indexer/cli.js +712 -98
  11. package/dist/src/indexer/cli.js.map +1 -1
  12. package/dist/src/indexer/git.d.ts.map +1 -1
  13. package/dist/src/indexer/git.js +41 -3
  14. package/dist/src/indexer/git.js.map +1 -1
  15. package/dist/src/indexer/migrations/repo-merger.d.ts +33 -0
  16. package/dist/src/indexer/migrations/repo-merger.d.ts.map +1 -0
  17. package/dist/src/indexer/migrations/repo-merger.js +67 -0
  18. package/dist/src/indexer/migrations/repo-merger.js.map +1 -0
  19. package/dist/src/indexer/schema.d.ts +66 -0
  20. package/dist/src/indexer/schema.d.ts.map +1 -1
  21. package/dist/src/indexer/schema.js +337 -0
  22. package/dist/src/indexer/schema.js.map +1 -1
  23. package/dist/src/server/abbreviations.d.ts +47 -0
  24. package/dist/src/server/abbreviations.d.ts.map +1 -0
  25. package/dist/src/server/abbreviations.js +71 -0
  26. package/dist/src/server/abbreviations.js.map +1 -0
  27. package/dist/src/server/boost-profiles.d.ts +63 -0
  28. package/dist/src/server/boost-profiles.d.ts.map +1 -0
  29. package/dist/src/server/boost-profiles.js +202 -0
  30. package/dist/src/server/boost-profiles.js.map +1 -0
  31. package/dist/src/server/config.d.ts +45 -0
  32. package/dist/src/server/config.d.ts.map +1 -0
  33. package/dist/src/server/config.js +146 -0
  34. package/dist/src/server/config.js.map +1 -0
  35. package/dist/src/server/context.d.ts +29 -0
  36. package/dist/src/server/context.d.ts.map +1 -1
  37. package/dist/src/server/context.js +26 -1
  38. package/dist/src/server/context.js.map +1 -1
  39. package/dist/src/server/handlers/snippets-get.d.ts +36 -0
  40. package/dist/src/server/handlers/snippets-get.d.ts.map +1 -0
  41. package/dist/src/server/handlers/snippets-get.js +120 -0
  42. package/dist/src/server/handlers/snippets-get.js.map +1 -0
  43. package/dist/src/server/handlers.d.ts +35 -22
  44. package/dist/src/server/handlers.d.ts.map +1 -1
  45. package/dist/src/server/handlers.js +1993 -414
  46. package/dist/src/server/handlers.js.map +1 -1
  47. package/dist/src/server/indexBootstrap.d.ts.map +1 -1
  48. package/dist/src/server/indexBootstrap.js +49 -2
  49. package/dist/src/server/indexBootstrap.js.map +1 -1
  50. package/dist/src/server/main.d.ts.map +1 -1
  51. package/dist/src/server/main.js +119 -30
  52. package/dist/src/server/main.js.map +1 -1
  53. package/dist/src/server/profile-selector.d.ts +33 -0
  54. package/dist/src/server/profile-selector.d.ts.map +1 -0
  55. package/dist/src/server/profile-selector.js +291 -0
  56. package/dist/src/server/profile-selector.js.map +1 -0
  57. package/dist/src/server/rpc.d.ts.map +1 -1
  58. package/dist/src/server/rpc.js +61 -12
  59. package/dist/src/server/rpc.js.map +1 -1
  60. package/dist/src/server/rrf.d.ts +86 -0
  61. package/dist/src/server/rrf.d.ts.map +1 -0
  62. package/dist/src/server/rrf.js +108 -0
  63. package/dist/src/server/rrf.js.map +1 -0
  64. package/dist/src/server/runtime.d.ts.map +1 -1
  65. package/dist/src/server/runtime.js +14 -4
  66. package/dist/src/server/runtime.js.map +1 -1
  67. package/dist/src/server/scoring.d.ts +7 -1
  68. package/dist/src/server/scoring.d.ts.map +1 -1
  69. package/dist/src/server/scoring.js +121 -2
  70. package/dist/src/server/scoring.js.map +1 -1
  71. package/dist/src/server/services/index.d.ts +24 -0
  72. package/dist/src/server/services/index.d.ts.map +1 -0
  73. package/dist/src/server/services/index.js +20 -0
  74. package/dist/src/server/services/index.js.map +1 -0
  75. package/dist/src/server/services/repo-repository.d.ts +61 -0
  76. package/dist/src/server/services/repo-repository.d.ts.map +1 -0
  77. package/dist/src/server/services/repo-repository.js +93 -0
  78. package/dist/src/server/services/repo-repository.js.map +1 -0
  79. package/dist/src/server/services/repo-resolver.d.ts +28 -0
  80. package/dist/src/server/services/repo-resolver.d.ts.map +1 -0
  81. package/dist/src/server/services/repo-resolver.js +62 -0
  82. package/dist/src/server/services/repo-resolver.js.map +1 -0
  83. package/dist/src/shared/cli/args.d.ts +70 -0
  84. package/dist/src/shared/cli/args.d.ts.map +1 -0
  85. package/dist/src/shared/cli/args.js +84 -0
  86. package/dist/src/shared/cli/args.js.map +1 -0
  87. package/dist/src/shared/duckdb.d.ts.map +1 -1
  88. package/dist/src/shared/duckdb.js +21 -1
  89. package/dist/src/shared/duckdb.js.map +1 -1
  90. package/dist/src/shared/embedding/engine.d.ts +38 -0
  91. package/dist/src/shared/embedding/engine.d.ts.map +1 -0
  92. package/dist/src/shared/embedding/engine.js +6 -0
  93. package/dist/src/shared/embedding/engine.js.map +1 -0
  94. package/dist/src/shared/embedding/lsh-engine.d.ts +11 -0
  95. package/dist/src/shared/embedding/lsh-engine.d.ts.map +1 -0
  96. package/dist/src/shared/embedding/lsh-engine.js +14 -0
  97. package/dist/src/shared/embedding/lsh-engine.js.map +1 -0
  98. package/dist/src/shared/embedding/registry.d.ts +25 -0
  99. package/dist/src/shared/embedding/registry.d.ts.map +1 -0
  100. package/dist/src/shared/embedding/registry.js +50 -0
  101. package/dist/src/shared/embedding/registry.js.map +1 -0
  102. package/dist/src/shared/embedding/semantic-engine.d.ts +14 -0
  103. package/dist/src/shared/embedding/semantic-engine.d.ts.map +1 -0
  104. package/dist/src/shared/embedding/semantic-engine.js +50 -0
  105. package/dist/src/shared/embedding/semantic-engine.js.map +1 -0
  106. package/dist/src/shared/fs/safePath.d.ts +7 -0
  107. package/dist/src/shared/fs/safePath.d.ts.map +1 -0
  108. package/dist/src/shared/fs/safePath.js +23 -0
  109. package/dist/src/shared/fs/safePath.js.map +1 -0
  110. package/dist/src/shared/models/model-manager.d.ts +38 -0
  111. package/dist/src/shared/models/model-manager.d.ts.map +1 -0
  112. package/dist/src/shared/models/model-manager.js +116 -0
  113. package/dist/src/shared/models/model-manager.js.map +1 -0
  114. package/dist/src/shared/models/model-manifest.d.ts +22 -0
  115. package/dist/src/shared/models/model-manifest.d.ts.map +1 -0
  116. package/dist/src/shared/models/model-manifest.js +24 -0
  117. package/dist/src/shared/models/model-manifest.js.map +1 -0
  118. package/dist/src/shared/utils/glob.d.ts +5 -0
  119. package/dist/src/shared/utils/glob.d.ts.map +1 -0
  120. package/dist/src/shared/utils/glob.js +22 -0
  121. package/dist/src/shared/utils/glob.js.map +1 -0
  122. package/dist/src/shared/utils/retry.d.ts +8 -0
  123. package/dist/src/shared/utils/retry.d.ts.map +1 -0
  124. package/dist/src/shared/utils/retry.js +20 -0
  125. package/dist/src/shared/utils/retry.js.map +1 -0
  126. package/dist/src/shared/utils/validation.d.ts +14 -0
  127. package/dist/src/shared/utils/validation.d.ts.map +1 -0
  128. package/dist/src/shared/utils/validation.js +22 -0
  129. package/dist/src/shared/utils/validation.js.map +1 -0
  130. package/package.json +29 -20
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  > Intelligent code context extraction for LLMs via Model Context Protocol
4
4
 
5
- [![Version](https://img.shields.io/badge/version-0.9.9-blue.svg)](package.json)
5
+ [![Version](https://img.shields.io/badge/version-0.11.0-blue.svg)](package.json)
6
6
  [![License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
7
7
  [![TypeScript](https://img.shields.io/badge/TypeScript-5.6-blue.svg)](https://www.typescriptlang.org/)
8
8
  [![MCP](https://img.shields.io/badge/MCP-Compatible-green.svg)](https://modelcontextprotocol.io/)
@@ -55,6 +55,10 @@ Choose one of the following methods:
55
55
  npm install -g kiri-mcp-server
56
56
  ```
57
57
 
58
+ ## 📚 Documentation
59
+
60
+ - [Authoring Docs for KIRI Search](docs/documentation-best-practices.md) – best practices for writing metadata-rich, link-aware documentation so that `context_bundle` and the docs vs. docs-plain benchmark maintain high precision. Includes guidance on querying custom front-matter keys via `meta.<key>:<value>` (for example, `meta.id:runbook-001`).
61
+
58
62
  > **Note**: This installs the `kiri` command globally. You can verify with `kiri --version`.
59
63
 
60
64
  **Option B: Use npx (No Permanent Installation)**
@@ -188,6 +192,8 @@ The most powerful tool for getting started with unfamiliar code. Provide a task
188
192
 
189
193
  Tip: Avoid leading command words like `find` or `show`; instead list concrete modules, files, and observed symptoms to keep rankings sharp.
190
194
 
195
+ > **Docs search tip:** Set `boost_profile: "docs"` and include metadata filters when the target lives under `docs/`. Front matter keys are queryable via `meta.<key>:<value>` or `frontmatter.<key>:<value>` — e.g., `meta.id:runbook-001`, `tag:degrade`, `category:operations`. Use `docmeta.<key>:<value>` (or legacy `metadata.<key>`) when you want strict doc-only filtering. See the [Metadata alias reference](docs/documentation-best-practices.md#metadata-aliases--filters) for the full list. This keeps `context_bundle` aligned with the docs vs docs-plain benchmark expectations.
196
+
191
197
  **v0.8.0 improvements:**
192
198
 
193
199
  - **⚡ Compact mode default (BREAKING)**: `compact: true` is now default, reducing token usage by ~95% (55K → 2.5K tokens). Set `compact: false` to restore full preview mode.
@@ -223,12 +229,12 @@ Tip: Avoid leading command words like `find` or `show`; instead list concrete mo
223
229
 
224
230
  **Parameters:**
225
231
 
226
- | Parameter | Type | Required | Description |
227
- | --------------- | ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
228
- | `goal` | string | Yes | Task description or question about the code |
229
- | `limit` | number | No | Max snippets to return (default: 12, max: 20) |
230
- | `compact` | boolean | No | Return only metadata without preview (default: **true** in v0.8.0+, false in v0.7) |
231
- | `boost_profile` | string | No | File type boosting: `"default"` (prioritizes src/, blacklists docs/), `"docs"` **(prioritizes .md/.yaml, includes docs/ directory)**, `"none"` (no boosting) |
232
+ | Parameter | Type | Required | Description |
233
+ | --------------- | ------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
234
+ | `goal` | string | Yes | Task description or question about the code |
235
+ | `limit` | number | No | Max snippets to return (default: 12, max: 20) |
236
+ | `compact` | boolean | No | Return only metadata without preview (default: **true** in v0.8.0+, false in v0.7) |
237
+ | `boost_profile` | string | No | File type boosting: `"default"` (prioritizes src/, blacklists docs/), `"docs"` (prioritizes .md/.yaml, includes docs/ directory), `"balanced"` (equal weight for docs and impl, NEW in v0.9.10), `"none"` (no boosting) |
232
238
 
233
239
  ### 2. files_search
234
240
 
@@ -259,6 +265,9 @@ Fast search across all indexed files. Supports multi-word queries, hyphenated te
259
265
  - Multi-word: `"tools call implementation"` → Finds files containing ANY word
260
266
  - Hyphenated: `"MCP-server-handler"` → Splits on hyphens and searches each part
261
267
  - Single word: `"DuckDB"` → Exact match
268
+ - Metadata filter: `meta.<key>:<value>` / `frontmatter.<key>:<value>` matches front matter (e.g., `meta.id:runbook-001`); `tag:<value>` / `category:<value>` remain shorthand aliases for those standard keys. Use `docmeta.<key>:<value>` (or `metadata.<key>`) when you need strict doc-only filtering.
269
+
270
+ > **Docs search tip:** Combine `boost_profile: "docs"` (either by parameter or CLI flag) with metadata filters for Markdown corpora. Refer to the [Metadata alias reference](docs/documentation-best-practices.md#metadata-aliases--filters) when issuing `files_search` requests so the same filters you use in benchmarks carry over to ad-hoc queries, and switch to `docmeta.*` when you want docs only.
262
271
 
263
272
  **Parameters:**
264
273
 
@@ -507,7 +516,17 @@ const db = await DuckDBClient.connect({
507
516
  Control search ranking behavior with the `boost_profile` parameter:
508
517
 
509
518
  - **`"default"`** (default): Prioritizes implementation files (`src/*.ts`) over documentation
519
+ - Implementation files get 30% boost, documentation files get 50% penalty
520
+ - Config files heavily penalized (95% reduction)
521
+ - `docs/` directory is blacklisted
510
522
  - **`"docs"`**: Prioritizes documentation files (`*.md`) over implementation
523
+ - Documentation files get 50% boost, implementation files get 50% penalty
524
+ - `docs/` directory is included in search results
525
+ - **`"balanced"`** (NEW in v0.9.10): Equal weight for docs and implementation
526
+ - Both documentation and implementation files: no penalty/boost (1.0x)
527
+ - Config files: relaxed penalty (0.3x, compared to 0.05x in default)
528
+ - `docs/` directory is included in search results
529
+ - No path-specific multipliers (treats all `src/` equally)
511
530
  - **`"none"`**: Pure BM25 scoring without file type adjustments
512
531
 
513
532
  ```typescript
@@ -517,6 +536,9 @@ files_search({ query: "authentication", boost_profile: "default" });
517
536
  // Find documentation
518
537
  files_search({ query: "setup guide", boost_profile: "docs" });
519
538
 
539
+ // Balanced search (docs and code equally weighted)
540
+ files_search({ query: "authentication design", boost_profile: "balanced" });
541
+
520
542
  // Pure BM25 ranking without boosting
521
543
  files_search({ query: "API", boost_profile: "none" });
522
544
  ```
@@ -744,6 +766,37 @@ See [docs/architecture.md](docs/architecture.md) for detailed technical informat
744
766
  | **Precision @ 10** | ≥ 0.7 | ✅ 0.75 |
745
767
  | **Token Reduction (compact)** | ≥ 90% | ✅ 95% (v0.8) |
746
768
 
769
+ ### Evaluation & Quality Assurance
770
+
771
+ KIRI includes a **Golden Set Evaluation System** for tracking search accuracy over time using representative queries.
772
+
773
+ **Metrics:**
774
+
775
+ - **P@10** (Precision at K=10): Fraction of relevant results in top 10 (target: ≥0.70)
776
+ - **TFFU** (Time To First Useful): Time until first relevant result appears (target: ≤1000ms)
777
+
778
+ **For Developers:**
779
+
780
+ ```bash
781
+ # Run benchmark evaluation (local only)
782
+ pnpm run eval:golden
783
+
784
+ # Verbose output
785
+ pnpm run eval:golden:verbose
786
+ ```
787
+
788
+ The benchmark system evaluates 5+ representative queries across categories (bugfix, feature, refactor, infra, docs) and outputs:
789
+
790
+ - JSON: Detailed per-query results (`var/eval/latest.json`)
791
+ - Markdown: Summary table (`var/eval/latest.md`)
792
+
793
+ **Documentation:**
794
+
795
+ - [Golden Set Guide](tests/eval/goldens/README.md) - Query format, categories, adding queries
796
+ - [Results Recording](tests/eval/results/README.md) - Tracking improvements over time
797
+
798
+ See [docs/testing.md](docs/testing.md) for complete testing and evaluation guidelines.
799
+
747
800
  ### Community
748
801
 
749
802
  - [GitHub Issues](https://github.com/CAPHTECH/kiri/issues) - Bug reports and feature requests
@@ -1,57 +1,104 @@
1
- # Scoring weight profiles for context_bundle
2
- # Each profile defines weights for different ranking signals
3
-
4
1
  default:
5
- textMatch: 1.0 # Text/keyword match weight (increased to prioritize literal matches)
6
- pathMatch: 1.5 # Path-based match weight (new - prioritizes files with keywords in paths)
7
- editingPath: 2.0 # Currently editing file weight
8
- dependency: 0.6 # Dependency relationship weight (increased to prioritize connected implementation files)
9
- proximity: 0.25 # Same directory weight
10
- structural: 0.6 # Structural similarity weight (reduced to prevent false positives from similar structure)
11
- docPenaltyMultiplier: 0.5 # Multiplicative penalty for docs (0.5 = 50% reduction)
12
- configPenaltyMultiplier: 0.05 # Multiplicative penalty for config files (0.05 = 95% reduction)
13
- implBoostMultiplier: 1.3 # Multiplicative boost for implementation files (1.3 = 30% boost)
14
-
15
- bugfix:
16
2
  textMatch: 1.0
17
- pathMatch: 1.5
3
+ pathMatch: 1.2
4
+ editingPath: 1.8
5
+ dependency: 1.0
6
+ proximity: 0.3
7
+ structural: 0.9
8
+ docPenaltyMultiplier: 0.6
9
+ configPenaltyMultiplier: 0.05
10
+ implBoostMultiplier: 1.5
11
+ blacklistPenaltyMultiplier: 0.01
12
+ testPenaltyMultiplier: 0.02
13
+ lockPenaltyMultiplier: 0.01
14
+ feature:
15
+ textMatch: 1.0
16
+ pathMatch: 1.4
18
17
  editingPath: 1.8
19
- dependency: 0.7 # Higher: bugs often in dependencies
18
+ dependency: 1.1
20
19
  proximity: 0.35
21
- structural: 0.7 # Reduced: prevent canvas-agent matching when searching page-agent
20
+ structural: 0.95
22
21
  docPenaltyMultiplier: 0.5
23
22
  configPenaltyMultiplier: 0.05
24
- implBoostMultiplier: 1.3
25
-
23
+ implBoostMultiplier: 1.5
24
+ blacklistPenaltyMultiplier: 0.01
25
+ testPenaltyMultiplier: 0.02
26
+ lockPenaltyMultiplier: 0.01
27
+ bugfix:
28
+ textMatch: 1.0
29
+ pathMatch: 1.3
30
+ editingPath: 1.6
31
+ dependency: 1.2
32
+ proximity: 0.3
33
+ structural: 0.85
34
+ docPenaltyMultiplier: 0.5
35
+ configPenaltyMultiplier: 0.05
36
+ implBoostMultiplier: 1.4
37
+ blacklistPenaltyMultiplier: 0.01
38
+ testPenaltyMultiplier: 0.02
39
+ lockPenaltyMultiplier: 0.01
40
+ debug:
41
+ textMatch: 1.0
42
+ pathMatch: 1.3
43
+ editingPath: 1.7
44
+ dependency: 1.2
45
+ proximity: 0.35
46
+ structural: 0.9
47
+ docPenaltyMultiplier: 0.5
48
+ configPenaltyMultiplier: 0.05
49
+ implBoostMultiplier: 1.45
50
+ blacklistPenaltyMultiplier: 0.01
51
+ testPenaltyMultiplier: 0.02
52
+ lockPenaltyMultiplier: 0.01
53
+ api:
54
+ textMatch: 1.0
55
+ pathMatch: 1.5
56
+ editingPath: 1.8
57
+ dependency: 1.0
58
+ proximity: 0.3
59
+ structural: 0.95
60
+ docPenaltyMultiplier: 0.55
61
+ configPenaltyMultiplier: 0.05
62
+ implBoostMultiplier: 1.4
63
+ blacklistPenaltyMultiplier: 0.01
64
+ testPenaltyMultiplier: 0.02
65
+ lockPenaltyMultiplier: 0.01
66
+ editor:
67
+ textMatch: 1.0
68
+ pathMatch: 1.4
69
+ editingPath: 1.9
70
+ dependency: 1.0
71
+ proximity: 0.4
72
+ structural: 0.9
73
+ docPenaltyMultiplier: 0.6
74
+ configPenaltyMultiplier: 0.05
75
+ implBoostMultiplier: 1.4
76
+ blacklistPenaltyMultiplier: 0.01
77
+ testPenaltyMultiplier: 0.02
78
+ lockPenaltyMultiplier: 0.01
26
79
  testfail:
27
80
  textMatch: 1.0
28
81
  pathMatch: 1.5
29
82
  editingPath: 1.6
30
- dependency: 0.85 # Very high: failed tests reveal dependencies
83
+ dependency: 0.85
31
84
  proximity: 0.3
32
- structural: 0.7 # Reduced: focus on actual test dependencies
85
+ structural: 0.8
33
86
  docPenaltyMultiplier: 0.5
34
87
  configPenaltyMultiplier: 0.05
35
88
  implBoostMultiplier: 1.3
36
-
89
+ blacklistPenaltyMultiplier: 0.01
90
+ testPenaltyMultiplier: 0.2 # testfailではテストファイルへのペナルティを緩和(80%削減、他は98%削減)
91
+ lockPenaltyMultiplier: 0.01
37
92
  typeerror:
38
93
  textMatch: 1.0
39
94
  pathMatch: 1.5
40
95
  editingPath: 1.4
41
96
  dependency: 0.6
42
- proximity: 0.4 # Higher: type errors cluster in modules
43
- structural: 0.6 # Already balanced for type analysis
44
- docPenaltyMultiplier: 0.5
45
- configPenaltyMultiplier: 0.05
46
- implBoostMultiplier: 1.3
47
-
48
- feature:
49
- textMatch: 1.0
50
- pathMatch: 1.5
51
- editingPath: 1.5
52
- dependency: 0.45 # Lower: new features less dependent
53
- proximity: 0.5 # Higher: features cluster spatially
54
- structural: 0.6 # Reduced: focus on actual feature files
97
+ proximity: 0.4
98
+ structural: 0.6
55
99
  docPenaltyMultiplier: 0.5
56
100
  configPenaltyMultiplier: 0.05
57
101
  implBoostMultiplier: 1.3
102
+ blacklistPenaltyMultiplier: 0.01
103
+ testPenaltyMultiplier: 0.02
104
+ lockPenaltyMultiplier: 0.01
@@ -1,57 +1,104 @@
1
- # Scoring weight profiles for context_bundle
2
- # Each profile defines weights for different ranking signals
3
-
4
1
  default:
5
- textMatch: 1.0 # Text/keyword match weight (increased to prioritize literal matches)
6
- pathMatch: 1.5 # Path-based match weight (new - prioritizes files with keywords in paths)
7
- editingPath: 2.0 # Currently editing file weight
8
- dependency: 0.6 # Dependency relationship weight (increased to prioritize connected implementation files)
9
- proximity: 0.25 # Same directory weight
10
- structural: 0.6 # Structural similarity weight (reduced to prevent false positives from similar structure)
11
- docPenaltyMultiplier: 0.5 # Multiplicative penalty for docs (0.5 = 50% reduction)
12
- configPenaltyMultiplier: 0.05 # Multiplicative penalty for config files (0.05 = 95% reduction)
13
- implBoostMultiplier: 1.3 # Multiplicative boost for implementation files (1.3 = 30% boost)
14
-
15
- bugfix:
16
2
  textMatch: 1.0
17
- pathMatch: 1.5
3
+ pathMatch: 1.2
4
+ editingPath: 1.8
5
+ dependency: 1.0
6
+ proximity: 0.3
7
+ structural: 0.9
8
+ docPenaltyMultiplier: 0.6
9
+ configPenaltyMultiplier: 0.05
10
+ implBoostMultiplier: 1.5
11
+ blacklistPenaltyMultiplier: 0.01
12
+ testPenaltyMultiplier: 0.02
13
+ lockPenaltyMultiplier: 0.01
14
+ feature:
15
+ textMatch: 1.0
16
+ pathMatch: 1.4
18
17
  editingPath: 1.8
19
- dependency: 0.7 # Higher: bugs often in dependencies
18
+ dependency: 1.1
20
19
  proximity: 0.35
21
- structural: 0.7 # Reduced: prevent canvas-agent matching when searching page-agent
20
+ structural: 0.95
22
21
  docPenaltyMultiplier: 0.5
23
22
  configPenaltyMultiplier: 0.05
24
- implBoostMultiplier: 1.3
25
-
23
+ implBoostMultiplier: 1.5
24
+ blacklistPenaltyMultiplier: 0.01
25
+ testPenaltyMultiplier: 0.02
26
+ lockPenaltyMultiplier: 0.01
27
+ bugfix:
28
+ textMatch: 1.0
29
+ pathMatch: 1.3
30
+ editingPath: 1.6
31
+ dependency: 1.2
32
+ proximity: 0.3
33
+ structural: 0.85
34
+ docPenaltyMultiplier: 0.5
35
+ configPenaltyMultiplier: 0.05
36
+ implBoostMultiplier: 1.4
37
+ blacklistPenaltyMultiplier: 0.01
38
+ testPenaltyMultiplier: 0.02
39
+ lockPenaltyMultiplier: 0.01
40
+ debug:
41
+ textMatch: 1.0
42
+ pathMatch: 1.3
43
+ editingPath: 1.7
44
+ dependency: 1.2
45
+ proximity: 0.35
46
+ structural: 0.9
47
+ docPenaltyMultiplier: 0.5
48
+ configPenaltyMultiplier: 0.05
49
+ implBoostMultiplier: 1.45
50
+ blacklistPenaltyMultiplier: 0.01
51
+ testPenaltyMultiplier: 0.02
52
+ lockPenaltyMultiplier: 0.01
53
+ api:
54
+ textMatch: 1.0
55
+ pathMatch: 1.5
56
+ editingPath: 1.8
57
+ dependency: 1.0
58
+ proximity: 0.3
59
+ structural: 0.95
60
+ docPenaltyMultiplier: 0.55
61
+ configPenaltyMultiplier: 0.05
62
+ implBoostMultiplier: 1.4
63
+ blacklistPenaltyMultiplier: 0.01
64
+ testPenaltyMultiplier: 0.02
65
+ lockPenaltyMultiplier: 0.01
66
+ editor:
67
+ textMatch: 1.0
68
+ pathMatch: 1.4
69
+ editingPath: 1.9
70
+ dependency: 1.0
71
+ proximity: 0.4
72
+ structural: 0.9
73
+ docPenaltyMultiplier: 0.6
74
+ configPenaltyMultiplier: 0.05
75
+ implBoostMultiplier: 1.4
76
+ blacklistPenaltyMultiplier: 0.01
77
+ testPenaltyMultiplier: 0.02
78
+ lockPenaltyMultiplier: 0.01
26
79
  testfail:
27
80
  textMatch: 1.0
28
81
  pathMatch: 1.5
29
82
  editingPath: 1.6
30
- dependency: 0.85 # Very high: failed tests reveal dependencies
83
+ dependency: 0.85
31
84
  proximity: 0.3
32
- structural: 0.7 # Reduced: focus on actual test dependencies
85
+ structural: 0.8
33
86
  docPenaltyMultiplier: 0.5
34
87
  configPenaltyMultiplier: 0.05
35
88
  implBoostMultiplier: 1.3
36
-
89
+ blacklistPenaltyMultiplier: 0.01
90
+ testPenaltyMultiplier: 0.2 # testfailではテストファイルへのペナルティを緩和(80%削減、他は98%削減)
91
+ lockPenaltyMultiplier: 0.01
37
92
  typeerror:
38
93
  textMatch: 1.0
39
94
  pathMatch: 1.5
40
95
  editingPath: 1.4
41
96
  dependency: 0.6
42
- proximity: 0.4 # Higher: type errors cluster in modules
43
- structural: 0.6 # Already balanced for type analysis
44
- docPenaltyMultiplier: 0.5
45
- configPenaltyMultiplier: 0.05
46
- implBoostMultiplier: 1.3
47
-
48
- feature:
49
- textMatch: 1.0
50
- pathMatch: 1.5
51
- editingPath: 1.5
52
- dependency: 0.45 # Lower: new features less dependent
53
- proximity: 0.5 # Higher: features cluster spatially
54
- structural: 0.6 # Reduced: focus on actual feature files
97
+ proximity: 0.4
98
+ structural: 0.6
55
99
  docPenaltyMultiplier: 0.5
56
100
  configPenaltyMultiplier: 0.05
57
101
  implBoostMultiplier: 1.3
102
+ blacklistPenaltyMultiplier: 0.01
103
+ testPenaltyMultiplier: 0.02
104
+ lockPenaltyMultiplier: 0.01
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kiri-mcp-server",
3
- "version": "0.9.9",
3
+ "version": "0.11.0",
4
4
  "description": "KIRI context extraction platform",
5
5
  "type": "module",
6
6
  "packageManager": "pnpm@9.0.0",
@@ -63,12 +63,22 @@
63
63
  "verify:tools": "tsx scripts/test/verify-all.ts --category tools",
64
64
  "verify:watch": "tsx scripts/test/verify-all.ts --category watch",
65
65
  "verify:eval": "tsx scripts/test/verify-all.ts --category eval",
66
+ "eval:golden": "tsx scripts/eval/run-golden.ts",
67
+ "eval:golden:verbose": "tsx scripts/eval/run-golden.ts --verbose",
68
+ "assay:evaluate": "tsx scripts/assay/run-evaluation.ts",
69
+ "assay:compare": "tsx scripts/assay/run-comparison.ts",
70
+ "assay:compare:help": "tsx scripts/assay/run-comparison.ts --help",
71
+ "assay:baseline": "tsx scripts/assay/baseline.ts",
72
+ "assay:profile-matrix": "tsx scripts/assay/run-profile-matrix.ts",
73
+ "assay:report-matrix": "tsx scripts/assay/report-matrix.ts",
66
74
  "check": "pnpm run lint && pnpm run test",
67
75
  "prepublishOnly": "pnpm run build"
68
76
  },
69
77
  "dependencies": {
70
78
  "chokidar": "^4.0.3",
79
+ "csv-parse": "^5.5.6",
71
80
  "duckdb": "^1.1.0",
81
+ "fast-deep-equal": "^3.1.3",
72
82
  "gpt-tokenizer": "^3.2.0",
73
83
  "p-queue": "^9.0.0",
74
84
  "tree-sitter": "^0.22.0",
@@ -88,6 +98,7 @@
88
98
  "eslint-config-prettier": "^9.1.0",
89
99
  "eslint-plugin-import": "^2.29.1",
90
100
  "execa": "^9.6.0",
101
+ "fast-check": "^4.3.0",
91
102
  "lint-staged": "^15.2.10",
92
103
  "prettier": "^3.3.3",
93
104
  "simple-git-hooks": "^2.10.0",
@@ -8,25 +8,94 @@
8
8
  import * as net from "net";
9
9
  import * as path from "path";
10
10
  import * as readline from "readline";
11
- import { parseArgs } from "util";
12
11
  import packageJson from "../../package.json" with { type: "json" };
12
+ import { defineCli } from "../shared/cli/args.js";
13
13
  import { getSocketPath } from "../shared/utils/socket.js";
14
14
  import { startDaemon, isDaemonRunning, stopDaemon } from "./start-daemon.js";
15
+ /**
16
+ * CLI specification for kiri proxy
17
+ */
18
+ const PROXY_CLI_SPEC = {
19
+ commandName: "kiri",
20
+ description: "KIRI MCP Client Proxy - Bridges stdio (MCP client) ↔ Unix socket (daemon)",
21
+ version: packageJson.version,
22
+ usage: "kiri [options]",
23
+ sections: [
24
+ {
25
+ title: "Repository / Database",
26
+ options: [
27
+ {
28
+ flag: "repo",
29
+ type: "string",
30
+ description: "Repository root path",
31
+ placeholder: "<path>",
32
+ default: ".",
33
+ },
34
+ {
35
+ flag: "db",
36
+ type: "string",
37
+ description: "Database file path (default: var/index.duckdb relative to --repo)",
38
+ placeholder: "<path>",
39
+ },
40
+ ],
41
+ },
42
+ {
43
+ title: "Daemon Connection",
44
+ options: [
45
+ {
46
+ flag: "socket-path",
47
+ type: "string",
48
+ description: "Unix socket path for daemon connection",
49
+ placeholder: "<path>",
50
+ },
51
+ ],
52
+ },
53
+ {
54
+ title: "Watch Mode",
55
+ options: [
56
+ {
57
+ flag: "watch",
58
+ type: "boolean",
59
+ description: "Enable watch mode for automatic re-indexing",
60
+ default: false,
61
+ },
62
+ ],
63
+ },
64
+ {
65
+ title: "Security",
66
+ options: [
67
+ {
68
+ flag: "allow-degrade",
69
+ type: "boolean",
70
+ description: "Allow degraded mode without VSS/FTS extensions",
71
+ default: false,
72
+ },
73
+ {
74
+ flag: "security-config",
75
+ type: "string",
76
+ description: "Security configuration file path",
77
+ placeholder: "<path>",
78
+ },
79
+ {
80
+ flag: "security-lock",
81
+ type: "string",
82
+ description: "Security lock file path",
83
+ placeholder: "<path>",
84
+ },
85
+ ],
86
+ },
87
+ ],
88
+ examples: [
89
+ "kiri --repo /path/to/repo --db /path/to/index.duckdb",
90
+ "kiri --watch --allow-degrade",
91
+ "kiri --security-config config/security.yaml",
92
+ ],
93
+ };
15
94
  /**
16
95
  * CLI引数をパース
17
96
  */
18
97
  function parseProxyArgs() {
19
- const { values } = parseArgs({
20
- options: {
21
- repo: { type: "string" },
22
- db: { type: "string" },
23
- "socket-path": { type: "string" },
24
- watch: { type: "boolean", default: false },
25
- "allow-degrade": { type: "boolean", default: false },
26
- "security-config": { type: "string" },
27
- "security-lock": { type: "string" },
28
- },
29
- });
98
+ const { values } = defineCli(PROXY_CLI_SPEC);
30
99
  const repoRoot = path.resolve(values.repo || process.cwd());
31
100
  const databasePath = path.resolve(values.db || path.join(repoRoot, "var", "index.duckdb"));
32
101
  const socketPath = values["socket-path"]
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../src/client/proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../../src/client/proxy.ts"],"names":[],"mappings":"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"}