Shaping your own tools with agents
I had already been experimenting with web interfaces for Pi when I read a post by DODOREACH. People had asked for the Pi interface from an earlier post. Rather than release the finished app, DODOREACH shared a one-shot prompt for building your own. It gave me a good starting point for a new setup, which I then shaped around the way I work.
Pi Web gives me an interface where I can choose a project, start or resume a session, watch messages and tool calls as they happen, and keep several chats running. It works on my desktop and phone through Tailscale. Pi still handles models, login, tools, settings, and session files. I did not want the web app to become a second version of Pi that would always be catching up.
From the initial implementation, I kept adjusting the interface to match my preferences. I can attach images and text files, see how much model context is left, and read Markdown files under docs and plans without leaving the chat. The project picker lets me move between workspaces. On my phone, project and worker lists move into drawers so the conversation still fits the screen.
The supervisor and subagents were part of the goal from the start. Their main benefit is context management. The supervisor keeps the main conversation focused on the overall task, while each subagent handles a bounded job in its own session. Each subagent returns a structured handoff instead of adding its full transcript to the supervisor's context. I can still inspect the transcript when I need it. Pi Web can also run up to three subagents, with only one editing at a time. Parallel work is useful, but it is secondary.
Next, I want to make Pi Web more specific to each project. Each project could define its own deploy button, worker setup, and predefined scripts. I also want a file browser for inspecting files directly. I do not want to rebuild a full development environment in the browser. I want each project's common actions next to its Pi sessions.