s2-streamstore/claude-batch-toolkit/batchy
Claude Code and agent skill by s2-streamstore/claude-batch-toolkit
- community
Checking that the SKILL.md file is still in the repository.
Send non-urgent tasks to Claude's Batch API at 50% off. Use for code reviews, documentation, analysis, refactoring plans, or any work that can wait ~1hr. Trigger with "/batchy", "batch this", or "send to batch".
Install
npx vskill@latest install s2-streamstore/claude-batch-toolkit/batchySKILL.md
You have access to the claude-batch MCP server with these tools:
send_to_batch— submit a prompt (usepacket_pathfor large prompts,packet_textfor short ones)batch_status— check a job by IDbatch_fetch— download results of a completed jobbatch_list— list all tracked jobsbatch_poll_once— poll all pending jobs and auto-fetch completed ones
Backends
The toolkit supports two batch backends:
- Anthropic — direct Anthropic Message Batches API (requires
ANTHROPIC_API_KEY) - Vertex — Google Cloud Vertex AI BatchPredictionJobs (requires
VERTEX_PROJECT,VERTEX_LOCATION,VERTEX_GCS_BUCKET)
send_to_batch accepts a backend parameter: "auto" (default), "anthropic", or "vertex". With "auto", Anthropic is preferred when ANTHROPIC_API_KEY is set; otherwise Vertex is used. Both backends use the same model string (e.g., claude-opus-4-6).
Vertex job IDs are long resource paths like projects/my-project/locations/us-central1/batchPredictionJobs/123456789, while Anthropic job IDs look like msgbatch_abc123.
Pre-flight check
Always call `batch_list` first before building any prompt. This:
- Verifies the MCP server is connected and working
- Shows you the current state of all jobs (avoids duplicate submissions)
- Reveals any completed jobs the user might want to see first
If batch_list fails, stop and tell the user: "The batch MCP server isn't responding. Run uv run ~/.claude/mcp/claude_batch_mcp.py list to debug."
Submitting work — the packet_path pattern
For any non-trivial prompt (which is almost all batch work), assemble the prompt as a file on disk and pass it via packet_path. Never inline large content as packet_text — it wastes context window tokens and can hit argument size limits.
Step-by-step process
- Gather context — The batch model has NO access to the codebase or conversation history. The prompt must be completely self-contained.
IMPORTANT: Don't waste tokens reading files!
- If the user says "upload this file" or "include these files", use
catdirectly in bash to append them to the batch prompt - Only use Read tool if you need to understand the code to craft the prompt (e.g., to write targeted questions)
- When including entire files/modules for batch review, use bash
catwithout reading them first
- Write the prompt to a temp file using bash:
- For multi-file tasks, use a loop:
- Submit with `packet_path`:
Call send_to_batch with:
packet_path:/tmp/batch_prompt.mdbackend:"auto"(uses Vertex when configured, otherwise Anthropic — or force"anthropic"/"vertex")label: A descriptive label like"security-review-auth"or"test-gen-services"
- Report to user — Tell the user:
- The job ID
- Results typically arrive within 1 hour
- Their status bar will show when it completes
- They can check with
/batchy check
Prompt template structure
[full file contents]
[full file contents]
Keep prompts focused. If a task covers many files or multiple distinct concerns, split into separate batch jobs with clear labels.
Checking results
When the user says "check", "status", "list", or asks about batch results:
- Call
batch_poll_onceto check for any newly completed jobs — this handles both Anthropic and Vertex backends. For Vertex jobs, this is the only way to poll (the statusline background poller only handles Anthropic jobs). - Call
batch_listto show all jobs with their states - Read results from disk instead of calling
batch_fetch— this saves tokens sincebatch_fetchreturns the full text through MCP:
- Job results live at
~/.claude/batches/results/<job_id>.md - For Vertex jobs, the job ID contains slashes so the filename uses underscores: e.g.,
projects_my-project_locations_us-central1_batchPredictionJobs_123.md - Read the file directly:
cat ~/.claude/batches/results/<job_id>.md - This is especially important for large results
- Present the results to the user in a readable format
Status bar awareness: The user's status bar shows batch job counts (pending/done/failed), but only for Anthropic jobs. Vertex jobs won't appear in the status bar — always use batch_poll_once to check them.
Cost awareness
Batch API = 50% off standard pricing:
- Claude Opus 4: $7.50 / $37.50 per million tokens (input/output)
- Claude Sonnet 4: $1.50 / $7.50 per million tokens (input/output)
Typical turnaround: under 1 hour. Max: 24 hours.
Good batch candidates: code reviews, documentation generation, architecture analysis, test generation, refactoring plans, security audits, bulk file analysis, API documentation, changelog generation.
Bad batch candidates: anything the user needs answered right now, interactive debugging, quick questions, tasks requiring back-and-forth.
Error handling
- If
send_to_batchfails with a connection error, the MCP server may not be running. Suggest: "Try restarting Claude Code, or runuv run ~/.claude/mcp/claude_batch_mcp.py listto check." - If a job is stuck in "submitted" for >2 hours, suggest running
batch_poll_onceand checkingbatch_statuswith the job ID. - If results are empty or show errors, check the raw JSONL at
~/.claude/batches/results/<job_id>.raw.jsonl.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/batchy/SKILL.md
Popularity
- Repository stars
- 139
- Repository forks
- 4
- 7-day trend score
- 25
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 19 Mar 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/s2-streamstore/claude-batch-toolkit/batchy)