From 824c0149779afb9dd94c2ccfa6943bfbe9f5d8f5 Mon Sep 17 00:00:00 2001 From: Yiorgis Gozadinos Date: Fri, 19 Jun 2026 11:16:11 +0300 Subject: [PATCH] Move textual-image to base dependencies --- CHANGELOG.md | 1 + haiku_rag_slim/pyproject.toml | 2 +- uv.lock | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 48f73071..13bfa229 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ### Changed +- `textual-image` moved to base dependencies; `ask`/`analyze`/`visualize` render image citations without the `tui` extra. - Drop `list_documents` and `get_document` from the default RAG skill's tool set; the skill now exposes only `search` and `cite`. Both tools dumped unbounded content into the agent's context (full document lists, full document bodies) and `get_document` returned no chunk_ids so its output was structurally uncitable. The analysis skill already covers these uses programmatically — `await list_documents()` and `Path('/documents/{id}/content.txt').read_text()` inside `execute_code`. The tool branches remain in `create_skill_tools` and the `skill_generator` `AVAILABLE_TOOLS` set so users can still opt in when building custom skills. ## [0.48.1] - 2026-05-21 diff --git a/haiku_rag_slim/pyproject.toml b/haiku_rag_slim/pyproject.toml index efb058c9..02297659 100644 --- a/haiku_rag_slim/pyproject.toml +++ b/haiku_rag_slim/pyproject.toml @@ -35,6 +35,7 @@ dependencies = [ "python-dotenv>=1.2.2", "pyyaml>=6.0.3", "rich>=14.3.3", + "textual-image>=0.8.5", "typer>=0.21.0,<0.22.0", "watchfiles>=1.1.1", "zstandard>=0.23.0; python_version<'3.14'", @@ -56,7 +57,6 @@ cross-encoder = ["sentence-transformers>=3.0.0"] # TUI (chat and inspect commands) tui = [ "textual>=8.2.4", - "textual-image>=0.8.5", "tree-sitter>=0.25.2", "tree-sitter-json>=0.24.8", ] diff --git a/uv.lock b/uv.lock index 83ef0576..b6322b7e 100644 --- a/uv.lock +++ b/uv.lock @@ -1536,6 +1536,7 @@ dependencies = [ { name = "python-dotenv" }, { name = "pyyaml" }, { name = "rich" }, + { name = "textual-image" }, { name = "typer" }, { name = "watchfiles" }, { name = "zstandard", marker = "python_full_version < '3.14'" }, @@ -1580,7 +1581,6 @@ s3 = [ ] tui = [ { name = "textual" }, - { name = "textual-image" }, { name = "tree-sitter" }, { name = "tree-sitter-json" }, ] @@ -1623,7 +1623,7 @@ requires-dist = [ { name = "rich", specifier = ">=14.3.3" }, { name = "sentence-transformers", marker = "extra == 'cross-encoder'", specifier = ">=3.0.0" }, { name = "textual", marker = "extra == 'tui'", specifier = ">=8.2.4" }, - { name = "textual-image", marker = "extra == 'tui'", specifier = ">=0.8.5" }, + { name = "textual-image", specifier = ">=0.8.5" }, { name = "torch", marker = "extra == 'jina'", specifier = ">=2.0.0" }, { name = "transformers", marker = "extra == 'jina'", specifier = ">=4.40.0" }, { name = "transformers", marker = "extra == 'mxbai'", specifier = ">=4.49.0,<5.0.0" },