Flue vs Sandcastle vs Custom TS Agent Harness

AI Summaries (evaluation playlist)go watch the original →

Elie Steinbock reviews Flue and Sandcastle TS libraries for AI agents, then details his 7-step custom pipeline from Linear issues to PRs using Claude for Inbox Zero, citing missing Claude Max support and need for control.

Flue: Cloudflare-Native Agent Framework

Flue provides a TypeScript agent harness deployed as Hono endpoints on Cloudflare. Developers initialize agents and define skills via skill.md files with arguments like GitHub issue numbers. The framework uses PI (same as OpenClaw) for model calls expecting JSON responses. It integrates just-bash, a pure TypeScript bash interpreter with in-memory filesystem, enabling commands like cat package.json. Agents mount Cloudflare R2 buckets as filesystems for globbing and reading without containers; session history persists automatically. Custom commands limit access, e.g., GH CLI with tokens hidden from AI: agents interact with GitHub without leaking secrets. Examples include triage agents commenting on issues, git commits, and remote sandboxes via Daytona or MCP tools.

Sandcastle: Sandboxed AI Orchestrator

Sandcastle runs AI coding tasks in Docker-isolated sandboxes using TypeScript. The run command executes ReAct loops via Claude Code's /loop (e.g., bloop every 5 minutes until complete) or explicit step loops: complete the next step with fresh context per iteration (e.g., frontend, backend, tests). Outputs show iteration counts. Configurations support sandbox types, branching, arguments, and git worktrees (copies repo to worktree). Templates include simple loop, sequential reviewer (implements issues one-by-one with reviews), and parallel planner with review. Supports pnpm for dependencies.

Custom Harness: 7 Steps from Linear to PR

For Inbox Zero, the author built a TypeScript script controlling Claude Max or Codex Max (unsupported by libraries). Steps execute sequentially with updates:

  • Resolve Linear task and download images.
  • Update Linear status to "working on".
  • Create git worktree: git worktree add with branch name.
  • Symlink .env file and run pnpm install.
  • Intake: Classify task (bug fix or new feature) via prompt: "analyzing the task and classifying what type of work it is is it a bug fix or is it a new feature".
  • Implement: Prompt "implement the task using TDD".
  • Simplify: Claude Code /simplify command.
  • Review: Handle Cubic bot comments.
  • Create PR, address review comments in loop.
  • Notify Slack with PR overview, performance notes, merge readiness.
  • Cleanup worktree.

This grants full prompt control and step orchestration versus library abstractions.

  • #review
  • #catalog
  • #demo

summary by x-ai/grok-4.1-fast. probably wrong about something. check the source.