All work

Personal project · Since 2022

Raven

Raven is my own AI agent platform. I built it around the way I work, and it is my main tool every day. It runs models from several providers. It works on my computers through a device agent, and in my browser through a Chrome extension. A main agent can split a task among several agents that run at the same time.

Role
Design, development and operations
Team
Solo
Time
Since 2022
Stack
  • SvelteKit
  • TypeScript
  • Rust
  • PostgreSQL
  • Raspberry Pi

01 / Why

Why I built it

I started Raven in 2022. The AI tools that I used each tied me to one model provider, and they stopped at advice. I still had to copy each command and run it myself.

I wanted one place to use models from any provider, with agents that do the work on my own machines. Building it is also how I learn new technology.

02 / Architecture

How it is built

The web app is SvelteKit. The services are Rust on PostgreSQL: agents and tools, accounts, files and data. One model layer reaches several providers. The device agent minion and the Chrome extension Wisp connect over WebSocket.

Everything runs on a Raspberry Pi behind a Cloudflare Tunnel. warden, a supervisor that I wrote, watches the services and runs their builds and deploys.

The current repository has more than 6,700 commits since August 2025. I build Raven with Raven.

UserRaven / Raspberry PiDevicesWeb appSvelteKitAgentsconversations · tools · crewModel layerseveral providersAccountsFilesDataPostgreSQLwardensupervises services · builds · deploysminionLinux · macOS · WindowsWispChrome extensionHTTPSTunnelWebSocket
Raven, its services and the devices it works on.

03 / Features

What it does

  • Models Models from several providers behind one layer. The model can change at any message.
  • minion The device agent: one binary for Linux, macOS and Windows. The agent reads and edits files and runs commands on that computer. Signed builds, 61 releases on GitHub since August 2026.
  • Wisp The Chrome extension, on the Chrome Web Store. The agent opens its own tabs in a separate window of my signed-in browser. It can also act in my tabs, and it never brings one to the front. The cookies stay in the browser.
  • Crew A main agent splits a task among other agents and collects their reports. Ten agents run at the same time by default.
  • Conversations Raven remembers facts and preferences, keeps every branch and shares a conversation with one link.
  • Automation Four automation levels, from fully automatic to an approval for every step.
  • Pipes Workflows that run on a schedule or from a webhook.

04 / Screens

In use

A conversation on a demo account. The agent finds the cause of a failing test, fixes it, runs the tests, then commits and pushes. The repository and its bug are invented for the demo.

The report at the end

05 / Film

The one-minute film

The film recreates Raven's screens with invented data.

Next project Clew