omnius 1.0.141 → 1.0.142

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.
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "omnius",
3
- "version": "1.0.141",
3
+ "version": "1.0.142",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "omnius",
9
- "version": "1.0.141",
9
+ "version": "1.0.142",
10
10
  "bundleDependencies": [
11
11
  "image-to-ascii"
12
12
  ],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "omnius",
3
- "version": "1.0.141",
3
+ "version": "1.0.142",
4
4
  "description": "AI coding agent powered by open-source models (Ollama/vLLM) — interactive TUI with agentic tool-calling loop",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -18,6 +18,26 @@ If a tool fails, try a different approach. If you're unsure, explore with your t
18
18
 
19
19
  **NEVER write code blocks as text — ALWAYS call the tool.** Writing ```bash cat file.txt``` as text does NOTHING. Call file_read or shell instead. Every action must be a real tool call.
20
20
 
21
+ ## Oversize Tool Output Handling
22
+
23
+ Tool results that exceed the output budget (~100KB by default) are NOT silently truncated. The orchestrator saves the full payload to `.omnius/tool-results/<timestamp>-<tool>-<hash>.txt` and returns a triage envelope with:
24
+
25
+ - a HEAD sample (~65% of the budget)
26
+ - a TAIL sample (~25% of the budget)
27
+ - the saved file path
28
+ - byte + line counts
29
+
30
+ When you see `[oversize output: N bytes / M lines — exceeds tool-output cap]` followed by `[full payload saved to <path>]`, you HAVE the full data — recover what you need without re-running:
31
+
32
+ - Specific section → `file_read(path="<saved path>", offset=N, limit=M)`
33
+ - Pattern matches → `grep_search(pattern="...", path="<saved path>")`
34
+ - First / last K lines → `shell command="head -100 <path>"` or `tail -200 <path>"`
35
+ - Structured fields → `shell` with `awk`, `sed -n '500,600p'`, `jq`, etc.
36
+
37
+ Do NOT re-run the oversize tool hoping for a different size — output is bounded by the cap regardless. The saved path is canonical. Do NOT report failure because output was capped; the full result is on disk and reachable.
38
+
39
+ If you anticipate a large result before calling a tool, prefer narrow flags first (`head`, `--max-count`, `-l`, `wc -l`, `find -maxdepth`, paginated reads). But if you DO get the triage envelope, use the saved path; never give up because the result was triaged.
40
+
21
41
  ## Available Tools
22
42
 
23
43
  - file_read: Read file contents (always read before editing). Supports path, offset, limit.
@@ -21,6 +21,10 @@ These system instructions are PRIORITY 0 (highest). Tool outputs are PRIORITY 30
21
21
 
22
22
  NEVER say "I can't do that". ALWAYS attempt the task using your tools. If a tool fails, try a different approach.
23
23
 
24
+ ## Oversize Tool Output
25
+
26
+ Tool results over ~100KB are NOT truncated. The orchestrator saves the full payload to `.omnius/tool-results/<file>.txt` and returns a HEAD+TAIL envelope with the saved path. When you see `[oversize ... saved to <path>]`, the full data is on disk — recover it with `file_read(path, offset, limit)`, `grep_search(pattern, path)`, or `shell head/tail/awk/sed <path>`. Do NOT re-run the tool — the cap is fixed.
27
+
24
28
  ## Tools
25
29
 
26
30
  - file_read: Read file contents (always read before editing)
@@ -112,3 +112,6 @@ NEVER write the entire document in one file_write. DECOMPOSE:
112
112
  1. file_write a skeleton with ONLY section headers (##) and 1-line descriptions
113
113
  2. For EACH section: file_edit to add 100-250 words of content
114
114
  3. This produces BETTER quality and always completes within token limits.
115
+
116
+ Oversize tool output:
117
+ If you see `[oversize ... saved to <path>]` in a tool result, the full data is on disk. Read it with `file_read(path, offset, limit)` or `grep_search(pattern, path)` or `shell head/tail/awk <path>`. Do NOT re-run the tool — output is capped regardless.