feat: a2ui interface to enablee the LLM to give structured information

This commit is contained in:
Georg Bauer
2026-07-27 11:19:57 +02:00
parent 27b10ee0e1
commit c9c2d8efd5
24 changed files with 5322 additions and 52 deletions

26
PLAN.md
View File

@@ -4,29 +4,7 @@ Only unfinished implementation work belongs here. DwarfStar remains the
behavioral oracle for model execution, token processing, context accounting,
KV-cache behavior, the HTTP API, and the built-in agent loop.
## 1. Add A2UI local-chat surfaces
- Use the public [A2UI protocol](https://a2ui.org/) as the normative reference.
Implement its versioned, streaming JSON messages and keep `../bDS2` only as
a reference for the research-oriented components and presentation we want.
- Define a DS4Server catalog and native Iced renderer for the A2UI Basic Catalog
plus useful research surfaces such as charts, tables, metrics, timelines,
maps, mind maps, tabs, cards, lists, and forms.
- Support `createSurface`, incremental `updateComponents` and `updateDataModel`
messages, and `deleteSurface`. The model must be able to add, replace, and
update components and data over multiple responses without recreating the
whole surface.
- Persist A2UI messages with the chat and restore the resulting surfaces after
relaunch. Validate messages against the selected catalog, report validation
failures back to the model, and retain a readable fallback in the transcript.
- Implement catalog-declared local functions and agent events. UI-local edits
update the surface immediately; agent events return the action and current
data to the conversation so the model can respond with further A2UI updates.
The existing approval flow applies only if the resulting agent turn invokes
an ordinary side-effecting tool such as shell or file mutation.
- A2UI can be enabled/disabled in preferences to reduce the system prompt
## 2. Finish native project and chat controls
## 1. Finish native project and chat controls
- Add functional File, View, and Help menus; update native menu enabled state
from the focused control; complete undo/redo behavior; and make transcript
@@ -42,7 +20,7 @@ KV-cache behavior, the HTTP API, and the built-in agent loop.
- the hellp menu must open a window with an actual documentation in it,
that still needs to be constructed from the information and implementation
## 3. Add Dev Brain support
## 2. Add Dev Brain support
- Let the user select one Obsidian vault and give the local agent bounded
Markdown memory_search, memory_read, memory_create, and memory_append