Commit Graph
7 Commits
Author SHA1 Message Date
Ole André Vadla Ravnås 8d6f91fe1e Plumb image attachments through to the LLM
Console widgets get an appendImage / respond.image API on the
agent. read_widget_state surfaces image entries as attachments
scaled to at most max_dimension pixels (default 1568) on the
longest edge. Anthropic nests image blocks inside tool_result;
OpenAI gets a synthetic follow-up user message. The host scales
via CoreImage on macOS and GdkPixbuf on GTK.
2026-05-22 12:15:53 +02:00
Ole André Vadla Ravnås a8f4988df2 core: Track editors on Mission
Mirrors NotebookEntry attribution. Server stamps editors[] on
each upsert; clients render the chain in the mission list.
2026-05-18 00:25:58 +02:00
Ole André Vadla Ravnås 494de6495e Rework provider capabilities
Fetch models at runtime where supported (OpenAI, local
OpenAI-compatible). Static lists for Anthropic and Claude
Code; the OpenAI list was already drifting.

Add reasoningEffortOptions capability. Claude Code exposes
[auto, low, medium, high, xhigh, max] and routes the choice
to its --effort flag. LLMTurnRequest, Mission, the executor
and the mission schema all carry reasoningEffort end to end.

suggestedModels is now async/throws and takes apiKey and
baseURL so dynamic providers can authenticate and target a
caller-supplied endpoint.
2026-05-11 14:39:07 +02:00
Ole André Vadla Ravnås f005c84a08 agent: Label missions with an LLM-generated title
A new title column carries a short label generated in
parallel with mission start. Each LLMProviderDescriptor
declares a summarizationModelID so the pass runs on the
mission's own backend (Haiku for Anthropic and Claude
Code, gpt-5-mini for OpenAI, llama3.2:3b locally). The
instruction sits in the user message to dodge Claude
Code's prompt layering and asks for two to four punchy
words. Sidebar shows title or goal; header keeps the
full goal under the title.
2026-05-10 08:39:14 +02:00
Ole André Vadla Ravnås adfc5e9ad8 agent: Let user steer running missions
A pending_user_text column on mission stores any text the
user types into the new MissionInputBar. The executor drains
it at the start of each iteration, folding it into the next
synthesized user turn. Send queues; Send Now interrupts the
current turn (when running) before resuming.
2026-05-09 21:35:17 +02:00
Ole André Vadla Ravnås ef0017255b mission: Drop targets, add discovery tools
The agent finds or creates its own sessions via list_devices,
list_processes, attach_to_process, and spawn_process.
2026-05-09 13:16:45 +02:00
Ole André Vadla Ravnås 5d0748515b mission: Add goal-driven agent loop
LLM agent for user-stated RE goals: propose-and-approve over the
existing RPC, evidence-grounded findings, collab via the op-outbox
pattern. Anthropic / OpenAI / local-OAI providers. r2ai used for
explain_function when the plugin is loaded; falls back to the
mission's own provider otherwise.
2026-05-09 12:54:14 +02:00