Pi setup after 6 months

Pi Setup After 6 Months of Use

🎬 Eero Alvar 📅 Aug 25, 2026 ⏱ 19:08
Pi Agent subagents observational memory prompt snippets extensions

🧩 Extensions That Survived

"My last Pi config video was 4 months ago and nearly everything has changed." The survivors from his old setup: Bash Guard (now with a toggle — "usually the first thing I do every session is turn it off"), the ask-user-question tool (now coordinated with other UI-popup extensions so they don't override each other), the custom header, and web tools. 0:00

👥 Interactive Subagents

The biggest change: interactive, asynchronous subagents — a fork of Daniel Grosser's, simplified. Subagents spawn in tmux panes, and the tool call returns immediately while the agent runs in the background. 1:11

Full agent-to-agent communication: "Interactivity between me and the sub-agents, but also between the agents themselves — the orchestrator sends a follow-up, and when the sub-agent finishes it automatically wakes up the orchestrator." Every subagent has an ask-question tool to clarify with its parent. 2:25
The chain-of-command demo: master → worker → scout. The scout asks the worker a question; the worker escalates it upward to the master; the master answers; the scout finishes; the worker summarizes; the master wakes up. "Agents should never guess implementation details — they need a way to clarify. The ask-question tool is essential for full communication between agents." 3:20
His simplification vs the original: he made the spawn tool schema smaller, unified interrupt/resume/steer into one subagent-message tool (addressed by agent name), and removed the separate "done" tool — "when they stop generating tokens and aren't waiting, they just exit and return the last message. The original's done tool caused a lot of problems — agents called it too early or not at all." 5:50

🌐 Browser Extension

A Playwright-driven headless browser — "very essential for web development." It registers eight tools, which take a meaningful chunk of context, so he keeps it disabled by default and enables it with a browser on command. 7:11

The debug demo: he pointed it at a broken web app — it navigated, took screenshots, read the console, found the bug, clicked around, and fixed it. (One catch: "GLM forgot he doesn't have eyes" — the current model can't view images, so the vision-dependent parts need a multimodal model.) 8:10

🧠 Observational Memory

His own implementation of Maestra's observational memory. The core idea: message history is split into chunks, observer agents distill each chunk into small observations — the atomic units of memory. 9:20

Why deterministic compaction matters: "Traditional LLM compaction compounds into a summary-of-a-summary effect — not great. Observations don't decay over compaction cycles." His three-tier design: working memory (the message history/compaction tail) → short-term memory (the observation pool) → long-term memory (consolidated markdown files, indexed by topic at the top of the compaction block). 10:10

The UI: gauges show when the next observer spawns (every ~10k tokens), when consolidation is due, and when compaction hits. om status shows a full timeline — light = consolidated, gray = observed, dark = not yet observed, vertical lines = compaction cuts. "The compaction is entirely deterministic, so it happens instantly mid-session turn — the agent doesn't even stop." 11:40

📋 Prompt Snippets

His solution to the "middle ground" problem: system prompt / agents.md instructions are always-present but invisible and situation-dependent; skills are bulky and auto-activated. Prompt snippets are tiny, standalone behavior instructions you compose on the fly. 14:12

How it works: press Alt+S → preview snippets with tab → select ("ask questions", "verify, don't assume", "orchestrator mode", "delegate exploration") → they're appended/prepended to the prompt. "They're just markdown files with an ordering. I feel like these instructions have more weight when they're in the message, not the system prompt." 15:00

🛠️ Skills & Learning System

He keeps few skills: a PDF reader, a YouTube transcript skill, and a web-debug skill (made for the browser extension). But the key one is analyze-session — Python scripts to parse/search Pi sessions, which is how he discovered which instructions he'd been repeating for months and turned them into snippets. 17:10

The learning system: released alongside the config so you can match his exact setup — or try it standalone without the subagents. "Try it out, copy some ideas, fit it to your workflow." 18:18

✅ Key Takeaways

  1. Agents should never guess — give them an ask-question tool. His chain-of-command (master→worker→scout) proves full agent-to-agent clarification works.
  2. Deterministic memory beats summary-of-summary. Observer agents distill history into atomic observations that don't decay; consolidation to markdown files = long-term memory.
  3. Context is a budget — keep bloat out. The browser extension's 8 tools stay disabled until `browser on`.
  4. Prompt snippets are the middle ground. Tiny compose-able instructions, appended at send time, carry more weight than system prompt.
  5. Simplify the agent's interface. Removing the "done" tool fixed flaky subagents; unifying interrupt/resume/steer into one message tool.

🔗 Resources & Links

📍 Timestamp Index

0:00 Intro
0:22 Extensions that survived
1:11 Interactive subagents
7:11 Browser extension
9:00 Dictate (speech-to-text)
9:20 Observational memory
14:12 Prompt snippets
17:10 Skills
18:18 Learning system
☰ View all