All projects

Palm Agent

by badf00d

0 comments

What it does

An in-editor coding agent for VS Code, built on the Mozaik participant-on-bus runtime. It reads your code, answers questions about it, and proposes changes, but it never writes to disk on its own. Every edit lands in a native vscode.diff review that you Keep or Undo.

How the agents run concurrently

A broad question goes to research, which splits it into up to four independent sub-questions and answers them with concurrent workers. Everything runs on one shared Mozaik bus — the main EditorAgent, a one-shot decomposer, every ResearchWorkerAgent, and the UIBridge are all joined to the same AgenticEnvironment. Coordination is ownership, not locking. Mozaik broadcasts every event to every joined participant. BaseParticipant invokes its loop callbacks only for events whose producerId is its own; everything else lands on onExternal* no-ops. That single filter is what stops several workers and the main agent from driving each other's loops. There is no mutex and no queue. Because UIBridge is joined to the same bus, it sees every worker's progress as it happens and streams live status to the sidebar while they are still running. Isolation. Each worker owns a separate ModelContext, so nothing leaks between them. Workers get a read-only tool subset and cannot propose edits, so concurrency never races on the filesystem — writes stay serialized through the one review you approve. Why fan out at all: context budget, not speed. Workers read many files; the parent receives only a capped digest. The main context never pays for the raw material.

Comments

No comments yet.

Sign in to like and comment

Newsletter

For developers who want to learn how to build self-organizing agents.

Join our online hackathon