Skip to content

Blog

Engineering deep-dives, releases, and the architecture behind Frontal.

Coming soon

Why We Chose an Event-Sourced Memory Graph Over a Vector DB

Memory should be rebuildable, not approximate. The HMAC event log + ArangoDB graph gives us provenance, bi-temporal validity, and zero data loss on DB failure.

Read more
Coming soon

Docker Default-Deny Sandboxes: How Frontal Isolates Agent Work

Every task gets its own worktree AND its own container with no outbound network. Here's how the egress proxy + allowlist actually work.

Read more
Coming soon

Frontal v0.1: The Golden Path Is Green

Create → intake → plan → approve → real engine writes code → sandboxed pytest → acceptance → merge → preview → rollback. End-to-end, against the real Pi binary.

Read more
Coming soon

Gateway-Only Model Access: Why Pi Never Sees Your API Keys

Provider keys live in os.environ, never reach the engine subprocess. The local gateway is the single metering point and failover authority.

Read more
Coming soon

The Watchdog Ladder: Ping, Inspect, Repair, Takeover

How we detect stuck agents using process-level ground truth + activity-typed silence budgets, then recover without killing the session.

Read more
Coming soon

Dual-Engine: Running Our Native Engine Alongside Pi

D-037 — per-task engine selection with an A/B harness. Why we built our own engine without abandoning Pi.

Read more

Want to read the source instead?

Browse DECISIONS.md on GitHub