fleet-worker
One cheap headless Claude Code worker on a cheaper brain (GLM via z.ai, or Sonnet/Haiku) - full tool harness, isolated git worktree + CLAUDE_CONFIG_DIR -…
Skill by claude-mods
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/0xdarkmatter-fleet-worker
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Node.js package
Network hosts it talks to 2
api.z.ai· found in codecodeload.github.com· found in install command
Files it touches
~/.claude/skills/fleet-worker
Tools it pre-approves 5
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
ReadBashGlobGrepAskUserQuestion
What's inside
- Skill name
fleet-worker- Description
- One cheap headless Claude Code worker on a cheaper brain (GLM via z.ai, or Sonnet/Haiku) - full tool harness, isolated git worktree + CLAUDE_CONFIG_DIR - fanned out and gated by an Opus orchestrator. Triggers: fleet-worker, GLM worker, grunt worker, cheap parallel agent, offload to GLM, sonnet worker, haiku worker.
- License
- MIT
- Allowed tools
- Read, Bash, Glob, Grep, AskUserQuestion
- Metadata
- author: claude-mods · status: beta · related-skills: fleet-ops, git-ops, push-preflight, claude-code-ops
- Instructions
- 304 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
- Pre-approves any shell command
Agent Skills spec issues
- files: referenced but missing: scripts/install.sh
Files (12)
- SKILL.md
- route.js · assets/
- worker-settings.json · assets/
- fleet-ops-handoff.md · references/
- fleet-worker-spec.md · references/
- model-routing.md · references/
- fleet-collect.sh · scripts/
- fleet-doctor.sh · scripts/
- fleet-lib.sh · scripts/
- fleet-worker · scripts/
- fleet-worker.ps1 · scripts/
- run.sh · tests/
SKILL.md (first lines)
# fleet-worker Run a **cheap headless Claude Code worker on a cheaper model** and let an Opus orchestrator (this session) fan workers out in parallel, then verify and land their work. The worker keeps Claude Code's *entire tool harness* (Read/Write/Edit/Bash/Glob/Grep/Task/MCP/hooks) — only the **brain** is swapped to a cheaper model via env — a cheaper Anthropic model (Sonnet/Haiku) or a non-Anthropic endpoint. GLM-5.3 (`glm-5.3`) on z.ai is the default worked example; the mechanism is provider- and model-agnostic (any Anthropic-compatible endpoint). > **Want to offload to Grok (xAI's `grok` CLI)? That's not this skill.** Every > fleet-worker brain is a `claude -p` process pointed at an **Anthropic-compatible** > endpoint. Grok Build CLI is its **own binary and protocol** (`grok -p`, auth via > `GROK_DEPLOYMENT_KEY`), not a `claude -p` wrapper — so it can't ride fleet-worker's > launcher. Grok is a first-class worker in **fleetflow** instead (alongside > Codex), which spawns heterogeneous OS-process workers of different binaries — > now its own repo at [0xDarkMatter/fleetflow](https://github.com/0xDarkMatter/fleetflow), > mounted as the `/fleetflow` skill. > Use fleetflow for a Grok lane or any mixed-provider fan-out. **This is the spawning layer. [`fleet-ops`](../fleet-ops/) is the landing layer.** fleet-worker produces branches cheaply; fleet-ops lands them through a test gate with your review. See [references/fleet-ops-handoff.md](references/fleet-ops-handoff.md). ## The architecture crux: per-agent model = process isolation `ANTHROPIC_BASE_URL` and the `ANTHROPIC_DEFAULT_*_MODEL` mapping vars are **process-global** — read once per `claude` process, applied to *every* model call it makes (including in-process Task subagents). There is no per-agent override. So you **cannot** keep one Opus session and have its subagents secretly run on GLM. The only way to pair a GLM-brained agent with an Opus orchestrator is a **separate OS process** with its own env block. That process is `fleet-worker`. ## The load-bearing rule: auth isolation (do not skip) On any machine also logged into a Claude.ai/Anthropic subscription, the naïve "just set `ANTHROPIC_AUTH_TOKEN`" launcher **fails with `401 token expired or incorrect`** — the host's stored subscription OAuth token (`~/.claude.json` `oauthAccount` + `forceLoginMethod`) takes precedence and gets sent to the non-Anthropic endpoint, which rejects it. `--settings` overrides do **not** fix it. The fix is a dedicated, empty config dir: ```bash export CLAUDE_CONFIG_DIR="$HOME/.fleet-worker/cfg" # no inherited OAuth/hooks ``` The launcher sets this automatically. It also gives each worker a clean hook/permission/MCP profile so it can't trip the host's hooks. Full analysis in [references/fleet-worker-spec.md](references/fleet-worker-spec.md) §4. ## Giving a worker skills The isolated config dir starts **clean** — the worker inherits none of the host's skills, MCP servers, or hooks (that isolation is what keeps it off your credentials). So *provision* what a worker should have: drop skill dirs into the worker's own config (`$FLEET_WORKER_CONFIG_DIR/skills/<name>/`) or commit them to the project's `.claude/skills/` in the worktree. The cheap brain then loads the same on-demand, progressively-disclosed procedural knowledge your orchestrator has — often the cheapest way to lift a weak model's output on a specialized task. ## Setup 1. **Install** — these scripts ship with the skill. After `scripts/install.sh` they live at `~/.claude/skills/fleet-worker/scripts/`. Either call them by that path, or symlink onto PATH for convenience: ```bash ln -s ~/.claude/skills/fleet-worker/scripts/fleet-worker ~/.local/bin/fleet-worker ln -s ~/.claude/skills/fleet-worker/scripts/fleet-collect.sh ~/.local/bin/fleet-collect.sh ``` 2. **Provide the key** (the launcher never prints it; resolution order): - `export ANTHROPIC_AUTH_TOKEN=<key>`, or - `export FLEET_WORKER_KEYRING_SERVICE=<svc> FLEET_WORKER_KEYRING_KEY=<name>` (uses `keyring get`), or - `export ZHIPU_API_KEY=<key>` (or `GLM_API_KEY`). 3. **Preflight** — `bash scripts/fleet-doctor.sh --offline` (structural) or `--live` (pings the endpoint, then runs one real `claude` turn through the launcher — the endpoint can accept a model id the CLI refuses; warns about the §4 oauth trap). The doctor and the launcher share one key resolver (`scripts/fleet-lib.sh`), so `--live` resolves exactly the key a lane would. ### Config knobs (env, all optional) | Var | Default | Purpose | |---|---|---| | `FLEET_WORKER_BASE_URL` | `https://api.z.ai/api/anthropic` | Anthropic-compatible endpoint | | `FLEET_WORKER_MODEL` | `glm-5.3` | main model (opus+sonnet mapping); 5.3 reasoning levels are low/high/max via `FLEET_WORKER_EFFORT` (thinking cannot be disabled on 5.3) | | `FLEET_WORKER_SMALL_MODEL` | `glm-4.5-air` | background/cheap model (haiku mapping) | | `FLEET_WORKER_CONFIG_DIR` | `~/.fleet-worker/cfg` | isolated config dir — **one per parallel worker** | | `FLEET_WORKER_EFFORT` | `high` | seeded `effortLevel` in the worker's settings | | `FLEET_WORKER_PERMISSION_MODE` | `bypassPermissions` | worker `--permission-mode`; use `dontAsk` + an allowlist to spawn from an auto-mode orchestrator (see *Permission posture*) | | `FLEET_WORKER_CLAUDE_BIN` | `claude` | claude binary to exec; callers that preflight-validated an override (fleetflow's `FLEETFLOW_CLAUDE_BIN`) forward it here so the validated binary is the one that runs | Point `FLEET_WORKER_BASE_URL`/`FLEET_WORKER_MODEL` at any other Anthropic-compatible gateway (this is the documented Claude Code custom-endpoint mechanism) to drive a different cheap model. **Staying all-Anthropic?** The same separate-process trick runs a cheaper *Claude* model as the worker — an Opus orchestrator with Sonnet/Haiku workers, no third-party account. Point `FLEET_WORKER_BASE_URL` at Anthropic's API and set `FLEET_WORKER_MODEL`/ `FLEET_WORKER_SMALL_MODEL` to a Claude model, authenticating with an Anthropic API key. The defaults target z.ai/GLM only because that's the cheapest brain; the mechanism doesn't care which model answers. ## When to delegate (and when not) | Delegate to a worker | Keep on the orchestrator | |---|---| | Independent, well-scoped, tool-using subtasks | Tasks needing this conversation's context | | Refactors, test-writing, doc edits, mechanical multi-file changes | Judgment calls, architecture, ambiguous specs | | Work where Opus-quality isn't required and a wrong edit is cheap to discard | Anything expensive-if-wrong and unreviewed | The safety comes from the **cage, not the model**: isolated worktree (blast radius), isolated config dir (no host creds/hooks), and the orchestrator's merge gate (nothing lands without review). ## Model routing convention (hybrid: in-process tiers + provider workers) "Delegate or not" has a third axis: **which model**, and **where**. One taxonomy answers both — for the in-process Workflow-tool agents *and* the fleet-worker provider workers — so a fan-out routes models intentionally instead of defaulting
From 0xDarkMatter/claude-mods, MIT.
More from 0xDarkMatter/claude-mods
- 0.654score
bash-ops
claude-mods
Defensive Bash scripting for production automation, CI scripts, and agent-facing tools.
SkillAFreshness: A★ 75Claude Code +9 - 0.654score
claude-api-ops
claude-mods
Building applications ON Claude - the Anthropic API and Claude Agent SDK.
SkillAFreshness: A★ 75Claude Code - 0.654score
git-ops
claude-mods
Git + worktree orchestrator: status survey, per-worktree triage, commits, PRs, branches, releases, rebases — reads inline, writes to a background agent.
SkillAFreshness: A★ 75Claude Code +9 - 0.654score
a11y-ops
claude-mods
Web accessibility end to end: WCAG 2.2 AA, EAA and ADA Title II obligations, audits (axe, pa11y, keyboard, screen reader), the common failures, accessibility…
SkillAFreshness: A★ 75Claude Code +9 - 0.654score
adr-ops
claude-mods
Author, index, and lint Architecture Decision Records — append-only memory that recovers the WHY behind a system's shape.
SkillAFreshness: A★ 75Claude Code +9 - 0.654score
fleet-ops
claude-mods
Landing discipline for parallel work: sequential test-gated landing queue, pre-land scrub, auto-rebase of in-flight lanes, fleet status, one-shot revert…
SkillAFreshness: A★ 75Claude Code +9 - 0.654score
loop-ops
claude-mods
Design and safely run OUTER loops - scheduled discover-triage-implement-verify-escalate agent loops.
SkillAFreshness: A★ 75Claude Code +9 - 0.654score
asus-router-ops
claude-mods
ASUS router config and hardening: Asuswrt-Merlin, security hardening, encrypted DNS (DoT/DoH), VPN (WireGuard/OpenVPN), guest networks, VLAN/IoT isolation…
SkillAFreshness: A★ 75Claude Code +9 - 0.654score
atomise
claude-mods
Atom of Thoughts (AoT) reasoning - decompose complex problems into atomic units with confidence tracking and backtracking.
SkillAFreshness: A★ 75Claude Code +9 - 0.654score
auth-ops
claude-mods
Authentication and authorization patterns - JWT, OAuth2, sessions, RBAC, ABAC, passkeys, MFA, identity-aware proxies, and Better Auth.
SkillAFreshness: A★ 75Claude Code +9 - 0.654score
auto-skill
claude-mods
Evaluate current session for skill-worthy workflows and create reusable skills.
SkillAFreshness: A★ 75Claude Code +9 - 0.654score
claude-code-ops
claude-mods
Claude Code internals - hooks, skill frontmatter, headless mode, and extension debugging, current as of June 2026.
SkillAFreshness: A★ 75Claude Code +9
Signals
- Stars
- 75
- Forks
- 8
- Open issues
- 0
- Last commit (this folder)
- Oct 9, 2026 (21 days ago)
- Last release
- Oct 14, 2026 (15 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/0xDarkMatter/claude-mods
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from claude-mods
- 0.685score
file-search
claude-mods
Modern file and content search using fd, ripgrep (rg), and fzf.
SkillCFreshness: C★ 443Claude Code +9 - 0.685score
code-stats
claude-mods
Analyze codebase with tokei (fast line counts by language) and difft (semantic AST-aware diffs).
SkillCFreshness: C★ 443Claude Code +9 - 0.685score
sqlite-ops
claude-mods
Patterns for SQLite databases in Python projects - state management, caching, and async operations.
SkillCFreshness: C★ 443Claude Code +9 - 0.685score
project-planner
claude-mods
Detects stale project plans and suggests session commands.
SkillCFreshness: C★ 443Claude Code +9 - 0.685score
python-env
claude-mods
Fast Python environment management with uv (10-100x faster than pip).
SkillCFreshness: C★ 443Claude Code +9 - 0.685score
container-orchestration
claude-mods
Docker, Kubernetes, and AWS ECS/Fargate patterns.
SkillCFreshness: C★ 443Claude Code +9
Cite this page
fleet-worker skill. Agent Mart. https://agentmart.dev/skills/0xdarkmatter-fleet-worker (last updated 2026-10-24)