n2-qln 3.3.0 β†’ 3.3.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.ko.md CHANGED
@@ -43,6 +43,8 @@
43
43
 
44
44
  πŸ”Œ **이쀑 μ‹€ν–‰** β€” 도ꡬλ₯Ό 둜컬 ν•¨μˆ˜ λ˜λŠ” HTTP μ—”λ“œν¬μΈνŠΈλ‘œ μ‹€ν–‰. ν•Έλ“€λŸ¬λ₯Ό 직접 λ“±λ‘ν•˜κ±°λ‚˜ 원격 μ„œλΉ„μŠ€λ₯Ό μ—°κ²°. ν˜Όν•©λ„ κ°€λŠ₯.
45
45
 
46
+ πŸ“‹ **Provider μžλ™ 인덱싱** *(v3.3)* β€” `providers/`에 JSON λ§€λ‹ˆνŽ˜μŠ€νŠΈλ₯Ό λ„£μœΌλ©΄ λΆ€νŒ… μ‹œ μžλ™ 등둝. μ½”λ“œ μˆ˜μ • λΆˆν•„μš”, μˆ˜λ™ `create` 호좜 λΆˆν•„μš”. λ©±λ“±μ„± 보μž₯ 및 μ—λŸ¬ 격리.
47
+
46
48
  πŸ—οΈ **10,000개 이상 ν™•μž₯** β€” μΉ΄ν…Œκ³ λ¦¬λ³„ centroid hierarchy νŒŒν‹°μ…”λ‹. 100개 ~1ms, 1,000개 ~3ms, 10,000개 ~5ms.
47
49
 
48
50
  🌍 **λ²”μš© MCP** β€” Claude Desktop, Cursor, n2-soul λ˜λŠ” λͺ¨λ“  MCP ν˜Έν™˜ ν΄λΌμ΄μ–ΈνŠΈμ—μ„œ λ™μž‘. ν‘œμ€€ stdio 전솑.
@@ -380,7 +382,7 @@ module.exports = {
380
382
  };
381
383
  ```
382
384
 
383
- [n2-soul ν΄λΌμš°λ“œ μŠ€ν† λ¦¬μ§€](https://github.com/choihyunsus/n2-soul#%EF%B8%8F-cloud-storage--store-your-ai-memory-anywhere)와 λ™μΌν•œ λ°©μ‹μž…λ‹ˆλ‹€. SQLite 파일이 ν•΄λ‹Ή 폴더에 μ €μž₯되고, 동기화 μ„œλΉ„μŠ€κ°€ λ‚˜λ¨Έμ§€λ₯Ό μ²˜λ¦¬ν•©λ‹ˆλ‹€.
385
+ [n2-soul ν΄λΌμš°λ“œ μŠ€ν† λ¦¬μ§€](https://github.com/choihyunsus/soul#%EF%B8%8F-cloud-storage--store-your-ai-memory-anywhere)와 λ™μΌν•œ λ°©μ‹μž…λ‹ˆλ‹€. SQLite 파일이 ν•΄λ‹Ή 폴더에 μ €μž₯되고, 동기화 μ„œλΉ„μŠ€κ°€ λ‚˜λ¨Έμ§€λ₯Ό μ²˜λ¦¬ν•©λ‹ˆλ‹€.
384
386
 
385
387
  ---
386
388
 
@@ -398,7 +400,8 @@ n2-qln/
398
400
  β”‚ β”œβ”€β”€ router.js # 3단계 검색 μ—”μ§„
399
401
  β”‚ β”œβ”€β”€ vector-index.js # Float32 벑터 인덱슀 (centroid hierarchy)
400
402
  β”‚ β”œβ”€β”€ embedding.js # Ollama μž„λ² λ”© ν΄λΌμ΄μ–ΈνŠΈ (nomic-embed-text)
401
- β”‚ └── executor.js # HTTP/ν•¨μˆ˜ 도ꡬ μ‹€ν–‰κΈ°
403
+ β”‚ β”œβ”€β”€ executor.js # HTTP/ν•¨μˆ˜ 도ꡬ μ‹€ν–‰κΈ°
404
+ β”‚ └── provider-loader.js # λΆ€νŒ… μ‹œ providers/*.json μžλ™ 인덱싱
402
405
  β”œβ”€β”€ tools/
403
406
  β”‚ └── qln-call.js # 톡합 MCP 도ꡬ (search/exec/create/update/delete)
404
407
  β”œβ”€β”€ providers/ # 도ꡬ provider λ§€λ‹ˆνŽ˜μŠ€νŠΈ (일괄 λ“±λ‘μš©)
@@ -420,11 +423,11 @@ n2-qln/
420
423
 
421
424
  | ν”„λ‘œμ νŠΈ | 관계 |
422
425
  |---------|------|
423
- | [n2-soul](https://github.com/choihyunsus/n2-soul) | AI μ—μ΄μ „νŠΈ μ˜€μΌ€μŠ€νŠΈλ ˆμ΄ν„° β€” QLN은 Soul의 "도ꡬ 브레인" μ—­ν•  |
426
+ | [n2-soul](https://github.com/choihyunsus/soul) | AI μ—μ΄μ „νŠΈ μ˜€μΌ€μŠ€νŠΈλ ˆμ΄ν„° β€” QLN은 Soul의 "도ꡬ 브레인" μ—­ν•  |
424
427
 
425
428
  ## μ‹€μ „ 검증 μ™„λ£Œ
426
429
 
427
- 주말 ν”„λ‘œν† νƒ€μž…μ΄ μ•„λ‹™λ‹ˆλ‹€. QLN은 **2κ°œμ›” 이상 운영 ν™˜κ²½μ—μ„œ 검증**λ˜μ—ˆμœΌλ©°, [n2-soul](https://github.com/choihyunsus/n2-soul)의 핡심 도ꡬ λΌμš°ν„°λ‘œ 맀일 μ‹€μ‚¬μš©λ˜κ³  μžˆμŠ΅λ‹ˆλ‹€.
430
+ 주말 ν”„λ‘œν† νƒ€μž…μ΄ μ•„λ‹™λ‹ˆλ‹€. QLN은 **2κ°œμ›” 이상 운영 ν™˜κ²½μ—μ„œ 검증**λ˜μ—ˆμœΌλ©°, [n2-soul](https://github.com/choihyunsus/soul)의 핡심 도ꡬ λΌμš°ν„°λ‘œ 맀일 μ‹€μ‚¬μš©λ˜κ³  μžˆμŠ΅λ‹ˆλ‹€.
428
431
 
429
432
  **Rose** 🌹 μ œμž‘ β€” N2의 첫 번째 AI μ—μ΄μ „νŠΈ. ν•˜λ£¨μ— 수백 번 QLN을 톡해 λΌμš°νŒ…ν•©λ‹ˆλ‹€.
430
433
 
package/README.md CHANGED
@@ -43,6 +43,8 @@
43
43
 
44
44
  πŸ”Œ **Dual execution** β€” Tools can run as local functions or HTTP endpoints. Register a handler directly, or point to a remote service. Mix and match.
45
45
 
46
+ πŸ“‹ **Provider auto-indexing** *(v3.3)* β€” Drop a JSON manifest in `providers/` and tools are auto-registered at boot. No code changes, no manual `create` calls. Idempotent and error-isolated.
47
+
46
48
  πŸ—οΈ **Scales to 10,000+** β€” Centroid hierarchy partitions tools by category, then searches within partitions. 100 tools ~1ms, 1,000 ~3ms, 10,000 ~5ms.
47
49
 
48
50
  🌍 **Universal MCP** β€” Works with Claude Desktop, Cursor, n2-soul, or any MCP-compatible client. Standard stdio transport.
@@ -400,7 +402,7 @@ module.exports = {
400
402
  };
401
403
  ```
402
404
 
403
- Same approach as [n2-soul Cloud Storage](https://github.com/choihyunsus/n2-soul#%EF%B8%8F-cloud-storage--store-your-ai-memory-anywhere). SQLite file lives in that folder β€” your sync service handles the rest.
405
+ Same approach as [n2-soul Cloud Storage](https://github.com/choihyunsus/soul#%EF%B8%8F-cloud-storage--store-your-ai-memory-anywhere). SQLite file lives in that folder β€” your sync service handles the rest.
404
406
 
405
407
  ---
406
408
 
@@ -414,11 +416,12 @@ n2-qln/
414
416
  β”‚ β”œβ”€β”€ store.js # SQLite storage engine (sql.js WASM)
415
417
  β”‚ β”œβ”€β”€ schema.js # Tool schema normalization + search text builder
416
418
  β”‚ β”œβ”€β”€ validator.js # Enforced validation (name, description, category)
417
- β”‚ β”œβ”€β”€ registry.js # Tool CRUD + usage tracking + embedding cache
418
- β”‚ β”œβ”€β”€ router.js # 3-stage parallel search engine
419
- β”‚ β”œβ”€β”€ vector-index.js # Float32 vector index with centroid hierarchy
420
- β”‚ β”œβ”€β”€ embedding.js # Ollama embedding client (nomic-embed-text)
421
- β”‚ └── executor.js # HTTP/function tool executor
419
+ β”‚ β”œβ”€β”€ registry.js # Tool CRUD + usage tracking + embedding cache
420
+ β”‚ β”œβ”€β”€ router.js # 3-stage parallel search engine
421
+ β”‚ β”œβ”€β”€ vector-index.js # Float32 vector index with centroid hierarchy
422
+ β”‚ β”œβ”€β”€ embedding.js # Ollama embedding client (nomic-embed-text)
423
+ β”‚ β”œβ”€β”€ executor.js # HTTP/function tool executor
424
+ β”‚ └── provider-loader.js # Auto-index providers/*.json at boot
422
425
  β”œβ”€β”€ tools/
423
426
  β”‚ └── qln-call.js # Unified MCP tool (search/exec/create/update/delete)
424
427
  β”œβ”€β”€ providers/ # Tool provider manifests (for bulk registration)
@@ -440,11 +443,11 @@ n2-qln/
440
443
 
441
444
  | Project | Relationship |
442
445
  |---------|-------------|
443
- | [n2-soul](https://github.com/choihyunsus/n2-soul) | AI agent orchestrator β€” QLN serves as Soul's "tool brain" |
446
+ | [n2-soul](https://github.com/choihyunsus/soul) | AI agent orchestrator β€” QLN serves as Soul's "tool brain" |
444
447
 
445
448
  ## Built & Battle-Tested
446
449
 
447
- This isn't a weekend prototype. QLN has been **tested in production for 2+ months** and is actively used every day as the core tool router for [n2-soul](https://github.com/choihyunsus/n2-soul).
450
+ This isn't a weekend prototype. QLN has been **tested in production for 2+ months** and is actively used every day as the core tool router for [n2-soul](https://github.com/choihyunsus/soul).
448
451
 
449
452
  Written by **Rose** 🌹 β€” N2's first AI agent, and the one who routes through QLN hundreds of times a day.
450
453
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "n2-qln",
3
- "version": "3.3.0",
3
+ "version": "3.3.2",
4
4
  "description": "Query Layer Network β€” Semantic tool dispatcher for MCP. Route 1000 tools through 1 router.",
5
5
  "main": "index.js",
6
6
  "bin": {