@andespindola/brainlink 1.0.5 → 1.0.7

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/CHANGELOG.md +17 -0
  2. package/README.md +46 -0
  3. package/dist/application/add-note.js +2 -2
  4. package/dist/application/build-context.js +16 -10
  5. package/dist/application/canonical-context-links.js +44 -5
  6. package/dist/application/check-package-update.js +105 -0
  7. package/dist/application/find-similar-notes.js +75 -0
  8. package/dist/application/frontend/client/chunk-fetch.js +236 -0
  9. package/dist/application/frontend/client/controls.js +178 -0
  10. package/dist/application/frontend/client/elements.js +122 -0
  11. package/dist/application/frontend/client/input.js +202 -0
  12. package/dist/application/frontend/client/node-details.js +191 -0
  13. package/dist/application/frontend/client/rendering.js +296 -0
  14. package/dist/application/frontend/client/scope-theme.js +114 -0
  15. package/dist/application/frontend/client/spatial.js +98 -0
  16. package/dist/application/frontend/client/storage.js +215 -0
  17. package/dist/application/frontend/client/upload.js +90 -0
  18. package/dist/application/frontend/client/worker-bootstrap.js +147 -0
  19. package/dist/application/frontend/client-js.js +24 -1837
  20. package/dist/application/frontend/client-render-worker-js.js +1 -1
  21. package/dist/application/index-vault-phases.js +190 -0
  22. package/dist/application/index-vault.js +46 -167
  23. package/dist/application/memory-suggestions.js +4 -1
  24. package/dist/application/search-knowledge.js +19 -3
  25. package/dist/cli/commands/write/dedupe-commands.js +59 -0
  26. package/dist/cli/commands/write/index-commands.js +205 -0
  27. package/dist/cli/commands/write/link-commands.js +68 -0
  28. package/dist/cli/commands/write/note-commands.js +146 -0
  29. package/dist/cli/commands/write/server-commands.js +553 -0
  30. package/dist/cli/commands/write/shared.js +35 -0
  31. package/dist/cli/commands/write/vault-lifecycle-commands.js +270 -0
  32. package/dist/cli/commands/write-commands.js +12 -1303
  33. package/dist/cli/main.js +39 -3
  34. package/dist/domain/context.js +60 -11
  35. package/dist/domain/diversity.js +64 -0
  36. package/dist/domain/embeddings.js +148 -6
  37. package/dist/domain/graph-contexts.js +62 -57
  38. package/dist/domain/graph-layout/cauliflower-layout.js +116 -0
  39. package/dist/domain/graph-layout/collisions.js +100 -0
  40. package/dist/domain/graph-layout/hierarchy.js +135 -0
  41. package/dist/domain/graph-layout/metrics.js +111 -0
  42. package/dist/domain/graph-layout/segments.js +76 -0
  43. package/dist/domain/graph-layout/star-layout.js +110 -0
  44. package/dist/domain/graph-layout.js +4 -625
  45. package/dist/domain/markdown.js +10 -1
  46. package/dist/domain/scoring.js +42 -0
  47. package/dist/domain/tokens.js +17 -1
  48. package/dist/infrastructure/config.js +33 -1
  49. package/dist/infrastructure/file-index.js +227 -60
  50. package/dist/infrastructure/semantic-prefilter.js +24 -0
  51. package/dist/mcp/server.js +23 -1
  52. package/dist/mcp/tool-guard.js +29 -0
  53. package/dist/mcp/tools/maintenance-tools.js +409 -0
  54. package/dist/mcp/tools/read-tools.js +537 -0
  55. package/dist/mcp/tools/shared.js +216 -0
  56. package/dist/mcp/tools/write-tools.js +353 -0
  57. package/dist/mcp/tools.js +3 -1357
  58. package/docs/AGENT_USAGE.md +4 -1
  59. package/docs/ARCHITECTURE.md +4 -3
  60. package/docs/QUICKSTART.md +4 -0
  61. package/package.json +2 -2
@@ -725,14 +725,17 @@ Available MCP tools:
725
725
  - `brainlink_context_packs`
726
726
  - `brainlink_search`
727
727
  - `brainlink_explain`
728
+ - `brainlink_similar_notes`
728
729
  - `brainlink_dedupe`
729
730
  - `brainlink_resolve_duplicate`
730
731
  - `brainlink_add_note`
732
+ - `brainlink_add_notes`
731
733
  - `brainlink_remember`
732
734
  - `brainlink_inbox_add`
733
735
  - `brainlink_inbox_list`
734
736
  - `brainlink_inbox_process`
735
737
  - `brainlink_delete_note`
738
+ - `brainlink_delete_notes`
736
739
  - `brainlink_add_file`
737
740
  - `brainlink_canonicalize_context_links`
738
741
  - `brainlink_volatile_add`
@@ -859,7 +862,7 @@ Weak retrieval usually means:
859
862
  ## Current Limits
860
863
 
861
864
  - Search supports FTS, local semantic embeddings and hybrid ranking.
862
- - Local embeddings are deterministic and provider-free; remote embedding providers are not implemented yet.
865
+ - Local embeddings are deterministic and provider-free. Remote embedding providers (`ollama`, `openai`) are also supported via the `embedding` config block; they fall back to lexical-only search if unreachable at query time.
863
866
  - MCP integration is available through the `brainlink-mcp` stdio server.
864
867
  - HTTP API is local and unauthenticated.
865
868
  - Bucket vaults support S3-compatible `s3://bucket/prefix` URIs and use local cache/index artifacts.
@@ -141,11 +141,13 @@ question
141
141
  -> selected mode: fts | semantic | hybrid
142
142
  -> optional query embedding
143
143
  -> optional compressed pack prefilter (token bloom)
144
- -> lexical scoring and/or semantic cosine scoring
144
+ -> field-weighted BM25 lexical scoring and/or semantic cosine scoring
145
145
  -> cosine similarity over candidate chunks
146
+ -> hybrid combines both components on a shared min-max-normalized [0,1] scale
147
+ -> maximal-marginal-relevance document ordering to reduce near-duplicate context
146
148
  -> middle-out context expansion around strongest chunk
147
149
  -> ranked chunks with textScore and semanticScore
148
- -> token-budget selection
150
+ -> token-budget selection using the cached per-chunk token count
149
151
  -> Markdown context package
150
152
  -> if cag/auto, persist derived context pack with current data signature
151
153
  -> return cache, strategy and timing metrics
@@ -323,6 +325,5 @@ Parsing, transformation, selection, and formatting are implemented as pure funct
323
325
 
324
326
  Useful next boundaries:
325
327
 
326
- - remote embedding providers
327
328
  - dedicated vector adapter
328
329
  - `graph-exporter`
@@ -46,6 +46,8 @@ Optional per-agent retrieval defaults in `brainlink.config.json`:
46
46
 
47
47
  ```json
48
48
  {
49
+ "autoUpdateCheck": true,
50
+ "updateCheckIntervalMs": 86400000,
49
51
  "agentProfiles": {
50
52
  "coding-agent": {
51
53
  "defaultSearchMode": "semantic",
@@ -58,6 +60,8 @@ Optional per-agent retrieval defaults in `brainlink.config.json`:
58
60
  }
59
61
  ```
60
62
 
63
+ `autoUpdateCheck` only prints a newer-version notice to `stderr`; it does not install updates automatically. Set `BRAINLINK_NO_UPDATE_CHECK=1` or `"autoUpdateCheck": false` to disable the check.
64
+
61
65
  ## 4) Run Bootstrap Before Work
62
66
 
63
67
  MCP clients should call `brainlink_bootstrap` first for each vault/agent session, then `brainlink_context`.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@andespindola/brainlink",
3
- "version": "1.0.5",
3
+ "version": "1.0.7",
4
4
  "description": "Local-first knowledge memory for agents with Markdown, backlinks, indexing and context retrieval.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -64,7 +64,7 @@
64
64
  "zod": "^4.3.6"
65
65
  },
66
66
  "overrides": {
67
- "hono": "4.12.21",
67
+ "hono": "4.12.26",
68
68
  "qs": "6.15.2"
69
69
  },
70
70
  "devDependencies": {