filesystem-agents

Teaches and evaluates building filesystem agents with AI SDK ToolLoopAgent and Vercel Sandbox.

Updated Aug 6, 2026
One-click install
npx skills add https://github.com/EricL2001/spoke-and-mirror --skill filesystem-agents-ericl2001
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: filesystem-agents
Source: https://github.com/EricL2001/spoke-and-mirror/tree/main/agent/skills/filesystem-agents
Command: npx skills add https://github.com/EricL2001/spoke-and-mirror --skill filesystem-agents-ericl2001

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Students working through the Building Filesystem Agents course on Vercel Academy often get stuck on agent setup, sandbox wiring, tool design, or debugging without personalized guidance. This Skill acts as a teaching assistant that detects course progress from the student's codebase, answers questions in context, teaches lessons step by step, and evaluates completed work against per-lesson checklists. ## Core Features & Use Cases - Progress Detection: Reads the student's project files (lib/agent.ts, lib/tools.ts) to determine which of the 6 course lessons they are on and tailors responses accordingly. - Three Operating Modes: TA mode for reactive Q&A, Teaching mode that fetches lessons from the Vercel Academy content API and walks students through one step at a time, and Evaluation mode that runs per-lesson checklists and reports pass/fail. - Extension Guidance: Eight reference documents cover bash tool design, Zod schemas, Vercel Sandbox patterns, system prompt craft, additional tools (file write, search, SQL), data pipelines, and domain mapping for applying the pattern beyond the course. - Use Case: A student says "check my work" after lesson 2.2; the Skill verifies that loadSandboxFiles is awaited before the agent export, that instructions mention bashTool, and reports exactly what passes and what needs fixing. ## Quick Start Ask the assistant to teach you the filesystem agents course or check your progress on the current lesson.

Frequently Asked Questions about filesystem-agents

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build a filesystem agent with the Vercel AI SDK?

Create a ToolLoopAgent with a model, instructions, and a bash tool built via a factory function that takes a Vercel Sandbox. The tool uses a Zod schema with .describe() on every field and executes commands through sandbox.runCommand, returning stdout, stderr, and exitCode.

How does the skill detect which course lesson I am on?

It reads your project files and checks specific markers: whether lib/agent.ts exists, whether it imports ToolLoopAgent, whether lib/tools.ts contains createBashTool, whether Sandbox.create() is called, and whether loadSandboxFiles is present. Each marker maps to a specific lesson.

Why is my agent not using the bash tool?

The most common causes are instructions that never mention the tool by name, a vague tool description, missing .describe() calls on Zod schema fields, or an empty tools object in the ToolLoopAgent config. Check each of these in order.

Why does the sandbox show no files when the agent runs ls?

The loadSandboxFiles function must be awaited before the agent export, since the sandbox starts empty. Also verify that writeFiles paths are relative to the sandbox root, not your local project root.

Can I apply the filesystem agent pattern to my own data?

Yes. The domain mapping reference covers decision criteria, directory structure designs (flat, by date, by category, hierarchical), and transformation patterns for converting API responses, CSVs, or database rows into markdown files the agent can navigate.

What commands are available inside Vercel Sandbox?

The sandbox provides a minimal Linux environment with standard coreutils such as ls, cat, grep, find, awk, sed, and sort. Specialized tools like jq or python are not installed by default but can be added via apt-get or replaced with TypeScript tools.