← All projects

Case study

Pulsar

An observable, budget-gated agent runtime for personal automation, built on the idea that every AI action should be inspectable, reversible where it can be, and explainable to the person running it.

Category Technical

Year 2025-2026

Status Concept

Purpose

An observable, budget-gated agent runtime for personal automation, built on the idea that every AI action should be inspectable, reversible where it can be, and explainable to the person running it.

What this is

Pulsar is a personal agent runtime, a small and inspectable operating layer for AI-assisted automation that takes safety and observability seriously from the start.

It is meant to be more than a prompt wrapper. The runtime takes a goal, checks whether an existing skill can do the job, works out what is missing when none can, and proposes a new tool instead of pretending it already has one. Every step is logged, every capability gap is named out loud, and nothing runs that you cannot trace later.

The design choices that matter

The event log is append-only. Every run writes structured events to disk and never overwrites what came before, so you can reconstruct exactly what happened from the event stream alone.

When the runtime hits something it cannot do, it writes a tool-gap proposal that describes the missing capability rather than inventing a tool on the spot. That proposal has to be approved before anything gets scaffolded or written to the workspace, so the runtime proposes and the human decides.

Tests run against a deterministic mock provider by default. Because the mock returns the same output every time, the tests are fast and reliable and do not depend on a live model being available, and the real providers are adapters that sit behind the same interface.

Budgets and approval gates are explicit. Generating an executable and writing to the workspace are separate permissions, and a run has to approve both before anything is created.

Current state

The architecture and core runtime are complete. The CLI takes tasks, creates run IDs, routes them through the planner, writes the event streams, and surfaces tool-gap proposals, and there is a web UI for submitting tasks and inspecting runs. The current work is growing the skill library and the provider integration layer.

It is a work in progress, built deliberately rather than quickly.

Related

Related projects

View full catalog