ブログに戻る

Building an AI Coding Agent: 5 Key Design Decisions

Why Build an AI Coding Agent?

The landscape of developer tools is shifting. GitHub Copilot proved that AI can autocomplete code. But we asked a different question: what if AI could own the entire development workflow?

Not just write code, but understand the project structure, run tests, fix bugs, deploy — all while maintaining context across a long-running session.

Decision 1: Tool-First Architecture

Instead of building a monolithic model that "knows everything," we designed PieBox around a tool-calling architecture. The AI agent has access to a well-defined set of tools:

  • File system operations (read, write, search)
  • Shell command execution
  • Browser automation
  • Knowledge retrieval
interface Tool {
  name: string
  description: string
  parameters: z.ZodSchema
  execute: (params: unknown) => Promise<ToolResult>
}

This means the model doesn't need to hallucinate file contents — it reads them. It doesn't guess command output — it runs them.

Decision 2: Streaming-First Execution

Every operation in PieBox streams results back to the user in real-time. This isn't just a UX choice — it's architectural:

  • Users can interrupt long-running operations
  • Context builds incrementally
  • Failures surface immediately rather than accumulating

Decision 3: Structured Context Management

The biggest challenge in AI coding isn't generating code — it's maintaining context. A real project has hundreds of files, complex dependency graphs, and implicit conventions.

We solve this with:

  1. AGENTS.md — project-level instructions that persist across sessions
  2. Explore tool — intelligent codebase search that finds relevant files
  3. Conversation compression — keeping the most relevant context in the window

Decision 4: Fail Fast, Fix Fast

Our agent follows a strict loop:

  1. Write code
  2. Run tests / typecheck immediately
  3. If failure → fix (max 2 rounds)
  4. If still failing → stop and report

This prevents the common failure mode of AI agents: silently generating broken code and moving on.

Decision 5: Delegate to Specialists

Not every problem should be solved by a general-purpose model. PieBox routes specific tasks to specialized sub-agents:

  • UI work → UI Engineer (design-aware, component library knowledge)
  • Architecture decisions → Advisor (sees full context, gives decisive answers)
  • Codebase exploration → Explorer (fast, cheap, read-only)

This mirrors how human teams work — specialists handle what they're best at.

What's Next

We're continuing to push the boundaries of what an AI coding agent can do autonomously. The goal isn't to replace developers — it's to give every developer the leverage of a 10-person team.

Stay tuned for more deep dives into our architecture.