basemind-opencode 0.2.2 → 0.2.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "basemind-opencode",
3
- "version": "0.2.2",
3
+ "version": "0.2.4",
4
4
  "description": "Full AI context layer over MCP — tree-sitter code-map, document RAG (PDF/Office/HTML/email + OCR + reranker), shared agent memory, on-demand web crawl, git history + blame + per-symbol diff. 300+ languages, 8 coding-agent harnesses, content-addressed Fjall + LanceDB.",
5
5
  "type": "module",
6
6
  "main": "basemind.js",
@@ -29,6 +29,28 @@ If you are about to open more than two or three files just to learn structure, s
29
29
  and use basemind first. The tools return paths + line numbers; you only `read_file`
30
30
  once you know exactly which span you need.
31
31
 
32
+ ## Context economy — the operating discipline
33
+
34
+ basemind tools return **paths, line numbers, and signatures — not file bodies**, so a
35
+ structural answer costs a fraction of the tokens of reading source. Treat that as the
36
+ default workflow, not an optimization:
37
+
38
+ - **`outline` a file before you open it.** Read the whole file only when you have already
39
+ identified the exact span you need from the outline; then `read_file` that range, not the file.
40
+ - **`search_symbols` instead of `grep`/`rg` for a definition.** It matches on indexed symbol
41
+ names and returns `path:line`, skipping the comment/string/test-name noise grep drowns you in.
42
+ - **`find_references` / `find_callers` instead of grepping call sites.** Indexed call edges,
43
+ not text matches.
44
+ - **`workspace_grep` instead of shelling out to ripgrep** when you genuinely need regex over
45
+ content — it runs over the in-RAM index and returns capped, structured hits.
46
+ - **`rescan` after you edit code**, not a server reconnect. Pass `paths: [...]` to limit it to
47
+ the files you touched.
48
+ - **Do not re-read a file basemind already mapped.** If the outline answered the question, stop.
49
+
50
+ Rule of thumb: if a question is about _where_, _what calls_, _what shape_, _who changed_, or
51
+ _what's indexed_, a basemind tool answers it cheaper than reading files. Reach for `read_file`
52
+ only to see the actual implementation of a span you have already located.
53
+
32
54
  ## Tool routing (copy this into your mental model)
33
55
 
34
56
  | Question | Tool |