Skip to content

Feat/image support#21

Merged
PTFOPlayer merged 2 commits into
masterfrom
feat/image-support
Jun 2, 2026
Merged

Feat/image support#21
PTFOPlayer merged 2 commits into
masterfrom
feat/image-support

Conversation

@PTFOPlayer
Copy link
Copy Markdown
Owner

feat: image attachment support & leaner system prompts

  • Add /image command for attaching images to conversation
  • Support multimodal image input for Ollama & OpenAI-compatible providers
  • read tool auto-attaches images when encountering image files
  • screenshot tool requests user to take & attach screenshots
  • Restructure system prompts with shared header.md, reducing from ~240 to ~44 lines
  • Give casual mode access to web_search and web_fetch tools

- New ImageAttachment type with pure-std base64 encoding, file
  validation (size/mime), and data: URI generation
- /image command: attach, list, drop, clear pending images
- Images flow through Message -> providers automatically
- Ollama provider: passes images via ollama-rs ChatMessage
- OpenAI-compat (llama.cpp, vLLM): multipart content array
  with image_url parts
- screenshot tool: model can request user to capture screen
- Session persistence: base64 data stored in JSONL files
  for self-contained sessions
- pending_images held in CommandContext, cleared after send
Prompts were ~240 lines with massive duplication. Cut to 44 lines
(~120 tokens) while preserving essential behaviour.

  header.md      9 lines  — identity + 6 core rules
  agent.md       5 lines  — mode role + switch hint
  planning.md   24 lines  — process, format, handoff
  research.md    3 lines  — role + citation rule
  casual.md      3 lines  — mentions web_search/web_fetch

The model already knows how to code, plan, and research.
The prompt only encodes TinyHarness-specific behaviour:
use glob not find, edit before write, 3-strike rule,
no hardcoded secrets.

Also: Casual mode now has web_search + web_fetch tools
(previously had zero tools — completely isolated).
@PTFOPlayer PTFOPlayer merged commit 9e38aec into master Jun 2, 2026
4 checks passed
@PTFOPlayer PTFOPlayer deleted the feat/image-support branch June 4, 2026 10:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant