The Agent - VVG-web/aurora-studio GitHub Wiki
Wiki home ยท related: Trust ยท Asking the base ยท setup: INSTALL โ the built-in agent ยท design: architecture ยง4
The built-in agent does the work that needs meaning โ parsing sources into cards, writing theses, extracting definitions, answering questions, producing artifacts. Script first, model second: mass operations (lint, repair, dedupe, sync, trust, links) are deterministic scripts with a dry-run; the model only judges, and it writes only through whitelisted engine commands.
Without configured models everything that does not need them still works.
A provider is any OpenAI-compatible API (a corporate gateway, cloud, local llama.cpp or vLLM). A backend is
"provider + model" in a role. Each role has its own chain of backends: a call goes to the first; an unavailable or
busy one is skipped, a recovered one is picked up on the next request.
flowchart LR
CALL["role task"] --> R{"role chain<br>primary โ fallback โ โฆ"}
R -->|"answers"| OK["result"]
R -->|"down or busy"| NEXT["next backend"] --> R
R -->|"three failures in a row"| STOP["stop: it is the provider,<br>not the cards"]
| Role | Does |
|---|---|
worker |
routine steps: parsing, theses |
planner |
boundaries and plans |
critic |
checks a decision before it is written |
qa |
Momus โ checks every claim of an answer against the source |
Reasoning ("thinking") can be switched off per role, but never for qa and the critic.
A second model that reads the agent's output and the source and marks every claim either supported (with a quote) or
"no support". Claims without support are listed for a human (ops:todo) and are not carried into documents.
agent:distill --recheck checks them again.
Models are set up once per kit โ the panel's "Models" section, the file <kit>/local/models.json; every
project uses it, none has its own. First the providers (URL, key, width), then in the LLM, OCR and embeddings
tabs the roles, each with a chain of "provider + model" backends: the first is the primary, "+" adds a fallback,
the order changes by dragging, a fallback can be switched off. A provider can be added right from a role. Details โ
INSTALL.
Semantic search (kb:embed) and scan recognition (kb:ingest-office) have the same roles and chains. An
embeddings fallback uses only the same model: vectors of different models do not compare. All texts go to the
providers of the setup: if your perimeter forbids sending materials out, do not switch on semantics and scans.
| Command | Shows |
|---|---|
agent:ping |
every backend of the LLM chains by a live request: roles, speed; an empty answer counts as a refusal |
agent:probe |
"no connection", "wrong key" or "no such model"; the model list; --why โ which layer of the request is rejected |
agent:width |
how many simultaneous requests each provider holds |
agent:pydantic |
what goes to the gateway through Pydantic AI and whether the installed version is compatible |
- One writer per project. A writing agent run takes a lock in the project; a second one is refused with the holder's pid and start time. A run killed with Ctrl+C does not lock the base.
- A checkpoint first. Before a writing run the agent commits the current state; no git โ it refuses to write.
- A failure on one card does not stop the run; three in a row do.
This wiki is generated from the wiki/ folder of the repository โ edit the pages there, changes made here are overwritten. ยท RU-Home