You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Compact mode also removes `null` values, `id` hash fields, `visibility`, `limit`, and `offset` from responses, and minifies JSON (no indentation). `repositoryId` and `language` are hoisted to the envelope when all results share the same value.
54
-
55
-
## Response style
56
-
57
-
Be direct and concise in all responses. Drop articles (a/an/the), filler (just/really/basically/simply), pleasantries (sure/certainly/of course), and hedging. Fragments OK. Use short synonyms: "fix" not "implement a solution for", "use" not "utilize". Technical terms, code blocks, and error messages stay exact.
42
+
- Pass `repositoryId: "f00acc4e11a3eac5"` to all tools (avoids full-index scan)
43
+
- Default `limit: 10` is sufficient; increase only if results are incomplete
44
+
- Set `includeSnippets: true` only when code context is required for the answer
45
+
- Use `incremental: true` when re-indexing after changes
- Null values, hash IDs, and metadata fields stripped
17
+
-**Migration:** To preserve v0.1.0 behavior, set `CONTEXT_SIMPLO_RESPONSE_MODE=full` in your environment or `.env` file
18
+
-**Impact:**~60% token savings for AI assistants; existing parsers expecting full key names must be updated or use `full` mode
19
+
20
+
#### Search Tool Defaults
21
+
- Default result `limit` reduced from `20` to `10` across all search/query tools
22
+
-**Migration:** Explicitly pass `limit: 20` if you need more results, or paginate with `offset`
23
+
-**Impact:** Reduced token cost per query; most workflows work well with 10 results
24
+
25
+
#### Code Snippets Opt-In
26
+
-`exact_search`, `semantic_search`, and `hybrid_search` no longer include code snippets by default
27
+
-**Migration:** Pass `includeSnippets: true` when you need source code context (up to 10 lines / 500 chars per result)
28
+
-**Impact:** Significant token savings for symbol-only queries; snippets cost ~100-500 tokens per result
29
+
30
+
### Added
31
+
32
+
-**Startup Logging:** Active `responseMode` is now logged at server startup for operator visibility
33
+
-**`includeSnippets` Parameter:** New boolean flag for search tools to opt-in to code snippet extraction
34
+
-**Benchmark Harness:** Production benchmark suite (`scripts/benchmark.ts`, `scripts/benchmark-compare.ts`) with 10 day-to-day engineer workflow scenarios
35
+
-**AGENTS.md:** Project-level AI agent guidance with pre-cached `repositoryId` and imperative routing rules
36
+
37
+
### Changed
38
+
39
+
-**Default Response Mode:** Changed from `full` to `compact` in `src/core/config.ts`
40
+
-**Docker Compose:** Added `CONTEXT_SIMPLO_RESPONSE_MODE=compact` to default environment
41
+
-**`.env.example`:** Updated to recommend `compact` mode with migration notes
42
+
-**Tool Descriptions:** Removed 400+ token preamble from `TOOL_DEFINITIONS_COMPACT[0]`; updated default limit descriptions; removed false token cost estimates from `explain_architecture`
43
+
-**Cursor Rule:** Rewritten `.cursor/rules/context-simplo-usage.mdc` with `alwaysApply: false`, tighter descriptions, imperative routing language, and pre-cached `repositoryId` (was adding ~800 tokens per turn)
44
+
45
+
### Fixed
46
+
47
+
-**Snippet Extraction Gating:** Search handlers now respect `includeSnippets` flag; snippets no longer extracted unconditionally (saving ~3-10KB per search call)
48
+
49
+
### Performance
50
+
51
+
-**Token Savings:** Typical engineer workflow shows 50-70% reduction in MCP response tokens compared to v0.1.0
52
+
-**Rule Overhead:** Cursor rule token cost reduced from ~800/turn to 0 (opt-in via `@context-simplo`)
53
+
-**Search Efficiency:** Default `limit=10` + snippet opt-in reduces average query cost by 40-60%
54
+
55
+
### Migration Guide
56
+
57
+
#### For Existing Deployments
58
+
59
+
1.**Test Compatibility:** If you have custom MCP clients or parsers, verify they handle abbreviated keys
60
+
2.**Opt-Out (if needed):** Add `CONTEXT_SIMPLO_RESPONSE_MODE=full` to your environment to preserve v0.1.0 format
61
+
3.**Update Queries:** Review queries that relied on default `limit=20` or automatic snippets; add explicit `limit` or `includeSnippets: true` where needed
62
+
4.**Restart Server:** v0.2.0 requires a server restart to pick up new defaults
63
+
64
+
#### For AI Assistants (Cursor, VS Code, Claude Desktop)
65
+
66
+
- No changes required if using the MCP SDK (it handles both `full` and `compact` formats)
67
+
- If parsing responses manually, update your parser to handle abbreviated keys or set `CONTEXT_SIMPLO_RESPONSE_MODE=full`
68
+
8
69
## [0.1.0] - 2026-04-13
9
70
10
71
### Added
@@ -126,4 +187,5 @@ Visit http://localhost:3001 for the dashboard.
Compact mode also removes `null` values, `id` hash fields, `visibility`, `limit`, and `offset` from responses, and minifies JSON (no indentation). `repositoryId` and `language` are hoisted to the envelope when all results share the same value.
298
+
## Token optimization
312
299
313
-
## Response style
314
-
315
-
Be direct and concise in all responses. Drop articles (a/an/the), filler (just/really/basically/simply), pleasantries (sure/certainly/of course), and hedging. Fragments OK. Use short synonyms: "fix" not "implement a solution for", "use" not "utilize". Technical terms, code blocks, and error messages stay exact.
300
+
- Pass `repositoryId: "<YOUR_REPO_ID>"` to all tools (avoids full-index scan)
301
+
- Default `limit: 10` is sufficient; increase only if results are incomplete
302
+
- Set `includeSnippets: true` only when code context is required for the answer
303
+
- Use `incremental: true` when re-indexing after changes
**To get your repository ID:** Call `list_repositories` or check the dashboard. Replace `<YOUR_REPO_ID>` in the rule template.
315
+
327
316
**Why this reduces cost:** Without the rule, AI agents explore codebases by chaining multiple Grep → Read → Grep → Read calls, each consuming tokens. A single Context-Simplo MCP call (e.g., `find_callers` or `get_impact_radius`) replaces entire chains of exploration, returning structured results in one round-trip.
328
317
329
318
This also works with other MCP-compatible clients (VS Code, Claude Desktop, Claude Code) — adapt the rule format to your IDE's conventions.
0 commit comments