Forvum
forvum.ai · in active design

Personal AI agents with the rigor of enterprise software.

A configuration-first JVM platform — local-first, observable, budgeted by contract. Designed in the open on Quarkus and LangChain4j, with every architectural decision specified before code lands.

Version
v0.1 · in design
Stack
Java 25 · Quarkus · LangChain4j
License
Apache 2.0

Built on four pillars.

Product

Local-first by default

Runs on your machine with Ollama. Cloud providers are configurable, never required.

Product

Configuration-first

Define agents in JSON, not Java. The platform composes the runtime around your config.

Architecture

Hermetic agent isolation

Custom CDI scope plus Java 25 ScopedValue ensure each agent has its own beans, memory, and budget.

Architecture

Budgeted by contract

USD and token caps as first-class types. Hard-stop enforcement via dedicated exception, not best-effort logging.

From config to response.

turn_id propagated through every step → CONFIG agents/ demo.json FORVUM RUNTIME Agent @AgentScoped + memory + budget PROVIDERS SPI · pluggable local · cloud · custom OUTPUT Response + events SQLite ledger · provider_calls CLI · Web · Telegram

Every turn gets a UUID generated at the runtime boundary. The same id flows through the ledger and the channels — one query reconstructs the full reasoning path.

What ships next.

M1 Done Multi-module Maven bootstrap and Tier 1 contract design rounds.
M2 Next Materialize core contracts as code: events, model refs, enums, budgets.
M3 Planned SPI surface for providers, channels, and tools.
M5 Planned SQLite persistence layer with Flyway migrations and the canonical ledger.
M8 Planned Fallback chains and budget enforcement at the dispatch boundary.