A VS Code extension that turns your AI coding agents into animated pixel art characters in a virtual office. Each Claude Code terminal you open spawns a character that walks around, sits at desks, and visually reflects what the agent is doing — typing when writing code, reading when searching files, waiting when it needs your attention. This is the source code for the free Pixel Agents extension f
Add this skill
npx mdskills install pablodelucca/pixel-agentsWell-documented VS Code extension visualizing Claude Code agents as animated pixel art characters
1# Pixel Agents23A VS Code extension that turns your AI coding agents into animated pixel art characters in a virtual office.45Each Claude Code terminal you open spawns a character that walks around, sits at desks, and visually reflects what the agent is doing — typing when writing code, reading when searching files, waiting when it needs your attention.67This is the source code for the free [Pixel Agents extension for VS Code](https://marketplace.visualstudio.com/items?itemName=pablodelucca.pixel-agents) — you can install it directly from the marketplace with the full furniture catalog included.89101112## Features1314- **One agent, one character** — every Claude Code terminal gets its own animated character15- **Live activity tracking** — characters animate based on what the agent is actually doing (writing, reading, running commands)16- **Office layout editor** — design your office with floors, walls, and furniture using a built-in editor17- **Speech bubbles** — visual indicators when an agent is waiting for input or needs permission18- **Sound notifications** — optional chime when an agent finishes its turn19- **Sub-agent visualization** — Task tool sub-agents spawn as separate characters linked to their parent20- **Persistent layouts** — your office design is saved and shared across VS Code windows21- **Diverse characters** — 6 diverse characters.2223<p align="center">24 <img src="webview-ui/public/characters.png" alt="Pixel Agents characters" width="320" height="72" style="image-rendering: pixelated;">25</p>2627## Requirements2829- VS Code 1.109.0 or later30- [Claude Code CLI](https://docs.anthropic.com/en/docs/claude-code) installed and configured3132## Getting Started3334If you just want to use Pixel Agents, the easiest way is to download the [VS Code extension](https://marketplace.visualstudio.com/items?itemName=pablodelucca.pixel-agents). If you want to play with the code, develop, or contribute, then:3536### Install from source3738```bash39git clone https://github.com/pablodelucca/pixel-agents.git40cd pixel-agents41npm install42cd webview-ui && npm install && cd ..43npm run build44```4546Then press **F5** in VS Code to launch the Extension Development Host.4748### Usage49501. Open the **Pixel Agents** panel (it appears in the bottom panel area alongside your terminal)512. Click **+ Agent** to spawn a new Claude Code terminal and its character523. Start coding with Claude — watch the character react in real time534. Click a character to select it, then click a seat to reassign it545. Click **Layout** to open the office editor and customize your space5556## Layout Editor5758The built-in editor lets you design your office:5960- **Floor** — Full HSB color control61- **Walls** — Auto-tiling walls with color customization62- **Tools** — Select, paint, erase, place, eyedropper, pick63- **Undo/Redo** — 50 levels with Ctrl+Z / Ctrl+Y64- **Export/Import** — Share layouts as JSON files via the Settings modal6566The grid is expandable up to 64×64 tiles. Click the ghost border outside the current grid to grow it.6768### Office Assets6970The office tileset used in this project and available via the extension is **[Office Interior Tileset (16x16)](https://donarg.itch.io/officetileset)** by **Donarg**, available on itch.io for **$2 USD**.7172This is the only part of the project that is not freely available. The tileset is not included in this repository due to its license. To use Pixel Agents locally with the full set of office furniture and decorations, purchase the tileset and run the asset import pipeline:7374```bash75npm run import-tileset76```7778Fair warning: the import pipeline is not exactly straightforward — the out-of-the-box tileset assets aren't the easiest to work with, and while I've done my best to make the process as smooth as possible, it may require some manual tweaking. If you have experience creating pixel art office assets and would like to contribute freely usable tilesets for the community, that would be hugely appreciated.7980The extension will still work without the tileset — you'll get the default characters and basic layout, but the full furniture catalog requires the imported assets.8182## How It Works8384Pixel Agents watches Claude Code's JSONL transcript files to track what each agent is doing. When an agent uses a tool (like writing a file or running a command), the extension detects it and updates the character's animation accordingly. No modifications to Claude Code are needed — it's purely observational.8586The webview runs a lightweight game loop with canvas rendering, BFS pathfinding, and a character state machine (idle → walk → type/read). Everything is pixel-perfect at integer zoom levels.8788## Tech Stack8990- **Extension**: TypeScript, VS Code Webview API, esbuild91- **Webview**: React 19, TypeScript, Vite, Canvas 2D9293## Known Limitations9495- **Agent-terminal sync** — the way agents are connected to Claude Code terminal instances is not super robust and sometimes desyncs, especially when terminals are rapidly opened/closed or restored across sessions.96- **Heuristic-based status detection** — Claude Code's JSONL transcript format does not provide clear signals for when an agent is waiting for user input or when it has finished its turn. The current detection is based on heuristics (idle timers, turn-duration events) and often misfires — agents may briefly show the wrong status or miss transitions.97- **Windows-only testing** — the extension has only been tested on Windows 11. It may work on macOS or Linux, but there could be unexpected issues with file watching, paths, or terminal behavior on those platforms.9899## Roadmap100101There are several areas where contributions would be very welcome:102103- **Improve agent-terminal reliability** — more robust connection and sync between characters and Claude Code instances104- **Better status detection** — find or propose clearer signals for agent state transitions (waiting, done, permission needed)105- **Community assets** — freely usable pixel art tilesets or characters that anyone can use without purchasing third-party assets106- **Agent creation and definition** — define agents with custom skills, system prompts, names, and skins before launching them107- **Desks as directories** — click on a desk to select a working directory, drag and drop agents or click-to-assign to move them to specific desks/projects108- **Claude Code agent teams** — native support for [agent teams](https://code.claude.com/docs/en/agent-teams), visualizing multi-agent coordination and communication109- **Git worktree support** — agents working in different worktrees to avoid conflict from parallel work on the same files110- **Support for other agentic frameworks** — [OpenCode](https://github.com/nichochar/opencode), or really any kind of agentic experiment you'd want to run inside a pixel art interface (see [simile.ai](https://simile.ai/) for inspiration)111112If any of these interest you, feel free to open an issue or submit a PR.113114## Contributions115116See [CONTRIBUTORS.md](CONTRIBUTORS.md) for instructions on how to contribute to this project.117118Please read our [Code of Conduct](CODE_OF_CONDUCT.md) before participating.119120## Supporting the Project121122If you find Pixel Agents useful, consider supporting its development:123124<a href="https://github.com/sponsors/pablodelucca">125 <img src="https://img.shields.io/badge/Sponsor-GitHub-ea4aaa?logo=github" alt="GitHub Sponsors">126</a>127<a href="https://ko-fi.com/pablodelucca">128 <img src="https://img.shields.io/badge/Support-Ko--fi-ff5e5b?logo=ko-fi" alt="Ko-fi">129</a>130131## License132133This project is licensed under the [MIT License](LICENSE).134
Full transparency — inspect the skill content before installing.