Agents & engines
Agents that work for days, not just for a turn.
A chat answers. Vancetope works: it breaks an assignment down, spawns workers, waits, checks, asks when it has to and carries on when you’re gone. The trick is that the model doesn’t drive the flow — an engine does, and the engine is code.
Engines
A handful of engines, many recipes.
An engine is a Java algorithm with a lifecycle: it decides when the model is called, which tools it gets and when the work is done. A recipe picks an engine and configures it — prompt, tools, model, skills. You spawn work by recipe name; a new kind of assignment is a new recipe, not new code.
Bulk & decisions · new in 0.5
Thousands of records, one steady run.
Wowbagger is for the work no chat can hold: classify every ticket, extract fields from every contract, rate every lead. A Ford agent steers; a mechanical worker pool does the records. Each published chunk is a commit, so a run survives a pod switch and resumes where it stopped.
- Preflight with
wowbagger_checkbefore a single token is spent. - Wakeups for progress, failure cooldown and heartbeat — the agent looks in, not over every record.
- Pluggable workers: a light LLM call, a script, or a Zem decision — each behind a model gate.
- A cost report at the end of every run.
Zem brings decision models — System One for agents. A typed question goes in (yes/no, one of N, a score), a calibrated probability comes out: fast, cheap, no prose. The bundled command-safety recipe asks “is this shell command dangerous?” before it runs.
wowbagger · support-triage · run #w19c check 4,812 records · schema ok ✓ pool 8 workers zem · light-llm chunk ██████████████░░░░░ 31 / 49 wake progress · 3 retried · 0 lost publish chunk 31 → triage/out/ … done 4,812 tagged cost 412k in · 38k out · 1 report
Persistent agents
An agent with a home, a journal and a schedule.
Trillian isn’t a session you open — it’s an agent that lives in Vancetope. It has its own identity and hub, wakes on its own schedule, keeps a journal and reflects on it. When it needs you, it parks the question in your inbox and waits instead of guessing.
Its own account
A headless service account, a home project, a model gate — the agent works with exactly the rights you gave it.
naturesNatures
A nature decides what a wakeup is worth. Several conversation heads let one agent hold many conversations at once.
exposureA door for other agents
Claude Code, Cursor or another Vancetope can talk to a Trillian over the agents MCP — gated, long-polled, closed when idle.
Steering
You give the direction. The flow stays visible.
Everything an agent is told lives in documents you can read and change — and you can reach into a running process at any time.
Recipes
Engine + prompt + tools + model in one YAML. Picked from a searchable, categorised picker — or routed semantically from what you asked.
skillsSkills
Capabilities that come and go: activation levels, a turn lifecycle that clears itself, and skills that travel with delegated workers.
manualsManuals
Detail the model pulls on demand instead of carrying in every prompt — short prompts, deep knowledge.
//verbEngine commands
A control plane next to the conversation: switch the model, toggle thinking, set a guard, read the scratchpad — mid-run.
planPlan mode
Explore and plan first, then switch explicitly to doing — with a todo list you can watch update live.
shootyGuards
Scripts at fixed points: judge a result before the agent stops, rewrite a turn before it starts, stop a dangerous tool call.
Runs by itself
Not only when you’re there to chat.
Three triggers fire the same things — a recipe, a script or a workflow — and each trigger is just a document.
On a timer
Cron-style schedules, now with their own document kind, form view and template.
hooksOn an event inside
A document changed, a process ended, a session started — react to it.
eventsOn a call from outside
Webhooks from CI, IoT or anything that can send HTTP.
workflowsWorkflows
Flows of agent tasks, scripts and gates as a document, with a start button and a flow renderer.
runsOne run view
Every running thing — workflows, plans, compose runs — in one place, with pause, resume and stop.
delegateDelegation
Agents spawn workers, wait for them, and get woken when they finish — or when they fail.
Memory
Work doesn’t vanish when a session ends.
Summaries that stay retrievable
Long conversations compact into a sliding window of summaries; nothing is thrown away, important bits can be pinned.
recallScope-aware recall
Retrieval walks the cascade, so a process draws on what its project and tenant already know.
graphKnowledge graph
Relations and insights between documents, linked in the background.
cachingPrompt caching new
Measured across providers, with a history breakpoint that keeps long conversations cheap.
Your models
Bring your own model. Any of them.
Vancetope ships no model and sells no tokens. Point it at a hosted API or a model on your own machine — any OpenAI-compatible endpoint works — and give each job the model it deserves.
- Aliases like
default:chator a fast tier, resolved per tenant, project or recipe. - Model discovery with endpoint pricing, and quotas from global down to user.
- Small models welcome: Benjy and Wowbagger are built so that a local model can carry real work.
# example — one alias set, a model per job default:chat → glm-5.3 hosted default:fast → gemini-3-flash hosted benjy:worker → gemma-4 local · ollama command-safety → jev decision model wowbagger:worker → qwen3.8 cortecs