Agent skill

Add Worker

by FeiZhuLulu in FeiZhuLulu/Agent-Bridge

Connect a new worker agent CLI to Agent Bridge. An agent skill from FeiZhuLulu/Agent-Bridge.

MITAuto-check passed

Install Add Worker

skills CLI
$ npx skills add FeiZhuLulu/Agent-Bridge --skill add-worker -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install FeiZhuLulu/Agent-Bridge add-worker --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/FeiZhuLulu/Agent-Bridge.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/add-worker .claude/skills/add-worker && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
add-worker
GitHub stars
110
Token cost
~2.9k tokens
SKILL.md length
1,666 words
Files
1
Skills in repo
3
Repo updated
First seen
Licence
MIT

At a glance

Connect a new worker agent CLI to Agent Bridge. An agent skill from FeiZhuLulu/Agent-Bridge.

  • Works in 3 steps: help for an acp, agent, stdio, or serve… → The agent's source or package manifest… → A non-interactive "print" mode that…
  • The user wants to add a custom
  • SKILL.md covers Tier 0 — is there a…, Tier 1 — config only, no code, Tier 2 — five-axis survey and Tier 2 — build order, plus 2 more sections
  • Calls uv

What it does

Add Worker is an agent skill from FeiZhuLulu/Agent-Bridge. Connect a new worker agent CLI to Agent Bridge. Use when the user wants to add a custom, unsupported, or in-house agent as an Agent Bridge worker; register a worker in agents.toml; write or debug an Agent Bridge adapter; or asks why a newly added worker does not appear in listagents, ignores model/effort, or starts a fresh session on every turn.

Its SKILL.md is about 2.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Agent Bridge is a connector that links various local agents, enabling users to coordinate multiple other agents simply by interacting with a single powerful agent. It currently… The licence is MIT.

When your agent uses it

  • The user wants to add a custom
  • In-house agent as an Agent Bridge worker
  • Register a worker in agents.toml
  • Debug an Agent Bridge adapter

Example prompts

  • “/add-worker”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. help for an acp, agent, stdio, or serve subcommand.
  2. The agent's source or package manifest for an agent-client-protocol dependency.
  3. A non-interactive "print" mode that streams JSON and can resume a conversation by id.

What it can do on your machine

Read from SKILL.md and the folder at commit 5560e06. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • uv

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Add Worker loads about 2.9k tokens when it runs. Until then it costs about 90 tokens; SKILL.md has 1,666 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~90
When it runs · the whole SKILL.md, loaded when a task matches
~2.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from FeiZhuLulu/Agent-Bridge at commit 5560e06, republished under its MIT licence (© FeiZhuLulu). 1,666 words, ~2,913 tokens.

Download SKILL.mdSave it as .claude/skills/add-worker/SKILL.md (or your agent's skills folder).
name
add-worker
description
Connect a new worker agent CLI to Agent Bridge. Use when the user wants to add a custom, unsupported, or in-house agent as an Agent Bridge worker; register a worker in agents.toml; write or debug an Agent Bridge adapter; or asks why a newly added worker does not appear in list_agents, ignores model/effort, or starts a fresh session on every turn.

Adding a worker to Agent Bridge

Agent Bridge dispatches work to local agent CLIs. This skill covers connecting a new one.

Two tiers. Establish which one you are in before writing anything, because tier 1 needs no code at all and is where most agents land.

Tier 0 — is there a programmatic interface?

Check, in order:

  1. <cli> --help for an acp, agent, stdio, or serve subcommand.
  2. The agent's source or package manifest for an agent-client-protocol dependency.
  3. A non-interactive "print" mode that streams JSON and can resume a conversation by id.

If none of these exist, stop and tell the user. Agent Bridge integrates through real interfaces; GUI automation and computer use are not acceptable substitutes.

Tier 1 — config only, no code

A plain ACP server needs no source changes and no fork. Add a block to the user overlay at ~/.agent-bridge/agents.toml (%USERPROFILE%\.agent-bridge\agents.toml on Windows):

toml
[agents.mycustom]
protocol = "acp"
command = ["mycustom-cli", "acp", "--yolo"]
revivable = true
idle_unload_sec = 900

Fields (all optional except protocol and command): fallback_commands (list of alternative argv lists), cwd, env (per-worker overlay), session_meta (extra params for session/new), revivable, idle_unload_sec, stall_timeout_sec, print_timeout.

Verify end to end before doing anything else:

list_agents        # the worker appears with available: true
dispatch_task      # agent="mycustom", cwd = an absolute scratch folder
wait_task          # loop until terminal
get_result         # text came back

Tier 1 gets you: spawn and handshake, session/new, prompting, streaming text, tool-call and workspace-diff file tracking, cancel, idle unload, transcripts, and session/load revive when revivable = true. Auto-approval works if the agent uses ACP requestPermission (Bridge picks allow-always) or accepts a yolo flag you put in command.

Go to tier 2 only if one of these is true:

SymptomWhy
model / effort come back as an ignored-parameter warningSelection is per-agent; needs a sync path
Revive is slow or times outThe agent replays history on session/load and needs session/resume
Every turn asks for tool approvalThe agent needs an explicit mode switch after session/new
The binary is not on PATH under a stable nameNeeds a discovery routine
A failed turn is indistinguishable from a clean no-opNeeds an observer and a get_result hint

Tier 2 — five-axis survey

Tier 2 edits Bridge's source, so it needs a git checkout of Agent Bridge. A uv tool install has no source tree to edit — clone the repo first, and expect to open a pull request rather than patching an installed package.

This is the only part that is genuinely different for every agent, and the only part you cannot template. Answer all five before editing source. Read the target agent's own source for its ACP handler and config-option construction; do not rely on blog posts or memory.

Axis 1 — launch and discovery. What argv runs headless? Is the product CLI actually the ACP server, or is the server a separate package? (One existing worker ships ACP as a different npm package than the product CLI, which is why it has a dedicated multi-step discovery routine.) Does it need a runtime like node to launch a script?

Axis 2 — auth. Product-level login, per-provider API keys, an external config file, or nothing? The decisive question is where an unauthenticated agent fails. If it only fails on the first prompt, the probe cannot see it: report auth state in the probe detail string, but never set available: false from it. A probe answers "is the command present", not "will a turn succeed". Any new environment variable must be added to both the bundled agents.toml [env] inherit list and DEFAULT_INHERIT_KEYS in config.py.

Axis 3 — session revival. Does it advertise session/load, session/resume, or neither? Does session/load replay the whole history as session/update notifications before it answers? If so it can outlast the handshake timeout on a long session — use resume. If revival is unsupported, set revivable = false.

Axis 4 — model and effort. Four sub-questions, each one changes code:

  1. Where is it set? session/new _meta, process argv, session/set_config_option after the session exists, or only by respawning the process.
  2. Does it stick? Verify on the real CLI. At least one existing worker accepts a model hint at session creation and then silently lands on its campaign default anyway, so Bridge has to re-send it afterwards. Documentation will not tell you this; only a real turn will.
  3. Is the effort vocabulary global or per model? Per model is the common case. A static mapping table is then wrong on some models and wrong silently. Write an ordered preference list per Bridge effort level and pick the first value the live session actually advertises in its configOptions.
  4. Does switching model reset effort? Usually yes. Clear the cached applied-effort whenever the applied model changes, or the next sync sees "already high", skips the call, and the turn quietly runs on the new model's default.

Two rules on failure behavior: an effort level that cannot be mapped is a warning, not a turn failure — the mismatch is Bridge's mapping problem and the turn should still run on the model's default. A model the coordinator named explicitly that the session rejects must fail the turn, with the real available options in the error; running silently on a different model means the coordinator reviews the work on a false premise.

Axis 5 — permissions and observability. Auto-approval via ACP requestPermission, an explicit mode switch, or a CLI flag? Is there an on-disk log that reveals which model actually ran, or can you only report what Bridge last set? And critically: what does a failed turn look like on the wire? One existing worker maps failures to stopReason: end_turn with empty text — identical to a clean no-op. Provoke a real failure (revoke the key, kill the network) and look. Anything a coordinator could misread belongs in the get_result hint for that agent.

Show full SKILL.md (746 more words)Show less

Tier 2 — build order

The order matters; do not reorder steps 3 and 7.

  1. Declare the agent in every bundled agents.toml copy the repo ships, plus the example file. Keep them identical — otherwise you test one config and users get another.
  2. Probe. Add a branch in probe_agent that puts model syntax, effort vocabulary, auth method, and home path into detail. Do not gate available on auth.
  3. Prove the protocol against the fake agent first. The repo ships a minimal in-process ACP echo agent used by tests. Get spawn, initialize, session creation, prompt, and a second turn passing there before touching the real CLI. Reversed, handshake timeouts, auth failures, and mapping bugs all look the same.
  4. Selection module. For a per-model vocabulary, add <agent>_meta.py: a preference table plus a resolve_<agent>_effort(effort, offered). Read configOptions through the shared helper rather than parsing it again — ACP allows both a flat [{value, name}] list and grouped [{group, name, options}], and mis-parsing the grouped form reads as "this model offers nothing".
  5. Adapter wiring. In the ACP adapter: the resume-agents set, the config-option-agents set, the model/effort-agents set, any spawn-time command or env branch, session/new meta, and a _sync_<agent>_selection coroutine. Model the sync coroutine on an existing one: compare against the advertised currentValue first and skip the RPC when it already matches, remember the applied model in a way that invalidates stale effort, then sync effort.
  6. Registry wiring. Decide where observed_model / observed_effort come from — an on-disk observer, or the values the adapter last applied. Add a get_result hint for any failure mode a coordinator would misread.
    • Quota (optional). Custom API/auth endpoints must return unknown before credentials or cached quota are used. list_agents answers quota.status = "unknown" for any worker without a provider, which is a correct answer. Add quota_<agent>.py only when the CLI exposes remaining usage non-interactively (a subcommand, a JSON-RPC method, or the HTTP endpoint its own /usage calls). One async def fetch_<agent>_quota(cfg, env) -> QuotaStatus plus a pure parse_* function, registered in quota.default_providers by agent name (or protocol:<name>); private endpoints go behind experimental. Never refresh or rewrite the CLI's credential file, never log the token, raise on transport errors so fetch_quota can fall back to the last good reading, and answer unknown_quota(reason) for API-key logins that have no plan.
  7. Smoke script against the real CLI. Five fixed parts: probe and print version/detail; turn one writes a file, then check the file on disk rather than believing the worker; turn two continues the same session_id and asserts the native session id did not change; turn three passes a bogus model and must fail; then end the session.
  8. MCP end to end from a real coordinator, across two turns. This catches what unit tests and the smoke script cannot: host tool timeouts, a cwd accidentally pointing at the Bridge install directory, and concurrency. Some hosts kill MCP tool calls after about a minute — call wait_task with a smaller timeout_sec and loop.
  9. Docs. Update only what would otherwise mislead users: the worker section of the setup guide, the orchestration rules the coordinator reads, the coordinator skill's worker list, and the README worker list.

Definition of done

  • Unit tests pass, including the new agent's adapter and selection tests.
  • The smoke script exits 0 against the real CLI.
  • Two turns from a real coordinator, and the second does not create a new session.
  • get_result.observed_model matches what was requested.
  • A nonexistent model fails the turn and the error names the real options.
  • An unmappable effort still runs and says so in warnings.
  • With the CLI absent from PATH, list_agents reports available: false without raising.
  • Every failure mode a coordinator could misread is stated in the get_result hint.

Common failures

  • Probe used as a health check. It answers "is the command present". Gating available on login state hides a working agent.
  • One config copy updated. Your local run and the installed package then disagree.
  • A static effort table against a per-model vocabulary. Wrong on some models, silently.
  • Effort not re-sent after a model switch. The state machine thinks it already applied; the turn runs on the new default. Test it explicitly with a fake connection whose configOptions change after the model is set.
  • Trusting the worker's self-report. Banner text is often baked in at session creation and does not track later model switches. observed_model is the answer.
  • Debugging the protocol on the real CLI. Use the echo agent first.
  • A new environment variable added in only one of the two required places.

© FeiZhuLulu, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/add-worker of FeiZhuLulu/Agent-Bridge.

Open the folder on GitHubat commit 5560e06

Compare with similar skills

Add Worker next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Add Worker compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Add Worker this skillFeiZhuLulu/Agent-Bridge110—~2.9kAutomated safety check: PassMIT
ConnectComposioHQ/awesome-claude-skills77k3 repos~987Automated safety check: PassNone
Node Connectopenclaw/openclaw392k—~1.6kAutomated safety check: PassMIT
Worker Visualizernexu-io/open-design100k—~998Automated safety check: PassApache-2.0
Agent Worker Specialistruvnet/ruflo74k2 repos~1.4kAutomated safety check: PassMIT
Loop Workerruvnet/ruflo74k—~297Automated safety check: PassMIT

Similar skills

  • Connect

    ComposioHQ/awesome-claude-skills

    Connect Claude to any app. An agent skill from ComposioHQ/awesome-claude-skills.

    77k GitHub starsUsed in 3 repos~987 tokens
    Productivity & AutomationAuto-check passed
  • Node Connect

    openclaw/openclaw

    Diagnose OpenClaw Control UI browser and native Android, iOS, or macOS node connection failures across route, auth, pairing, QR/setup-code, and reconnect states.

    392k GitHub stars~1.6k tokensUpdated today
    MobileAuto-check passed
  • Worker Visualizer

    nexu-io/open-design

    A real-time data/particle/simulation visualizer whose heavy compute runs in a Web Worker (off the main thread), optionally sharing memory with the UI via SharedArrayBuffer, and renders to a canvas…

    100k GitHub stars~998 tokensUpdated yesterday
    Auto-check passed
  • Agent skill for worker-specialist - invoke with $agent-worker-specialist

    74k GitHub starsUsed in 2 repos~1.4k tokens
    Auto-check passed
  • Loop Worker

    ruvnet/ruflo

    Run Ruflo background workers using Claude Code native /loop scheduling

    74k GitHub stars~297 tokensUpdated yesterday
    Productivity & AutomationAuto-check passed
  • Memory Bridge

    ruvnet/ruflo

    Bridge Claude Code auto-memory into AgentDB with ONNX embeddings, deduplicate, and enable unified cross-project search

    74k GitHub stars~601 tokensUpdated yesterday
    AI & LLM EngineeringAuto-check: notes

More from FeiZhuLulu/Agent-Bridge

  • Add Coordinator

    FeiZhuLulu/Agent-Bridge

    Verify that a new host can act as an Agent Bridge coordinator over stdio MCP.

    110 GitHub stars~1.9k tokensUpdated 4 days ago
    Auto-check passed
  • Agent Bridge

    FeiZhuLulu/Agent-Bridge

    Coordinate local worker agents (Grok Build, Kimi Code, Antigravity, DeepSeek Harness, OpenCode, Claude Code, Codex CLI, Devin CLI, ZCode, MiniMax Code) through the Agent Bridge MCP tools.

    110 GitHub stars~2.4k tokensUpdated 4 days ago
    Auto-check passed

Questions about Add Worker

What does Add Worker do?

Connect a new worker agent CLI to Agent Bridge. An agent skill from FeiZhuLulu/Agent-Bridge. Add Worker is an agent skill from FeiZhuLulu/Agent-Bridge. Connect a new worker agent CLI to Agent Bridge.

When should I use Add Worker?

Add Worker fits situations like: the user wants to add a custom; in-house agent as an Agent Bridge worker; register a worker in agents.toml; debug an Agent Bridge adapter.

How do I install Add Worker in Claude Code?

Run `npx skills add FeiZhuLulu/Agent-Bridge --skill add-worker -a claude-code`. Or copy the skill folder (skills/add-worker in FeiZhuLulu/Agent-Bridge) into .claude/skills/add-worker in your project. Claude Code loads it when a task matches its description.

How do I install Add Worker in Codex?

Run `npx skills add FeiZhuLulu/Agent-Bridge --skill add-worker -a codex`. Or copy the skill folder (skills/add-worker in FeiZhuLulu/Agent-Bridge) into .agents/skills/add-worker in your project. Codex loads it when a task matches its description.

Can I use Add Worker in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add FeiZhuLulu/Agent-Bridge --skill add-worker -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/add-worker, .gemini/skills/add-worker, .github/skills/add-worker and .opencode/skills/add-worker in your project.

What does Add Worker need to run?

Going by SKILL.md and its folder, Add Worker needs the command-line tools its instructions call (uv).

Does Add Worker access the network?

SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Add Worker safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Add Worker use?

Add Worker is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Add Worker use?

About 2.9k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Add Worker?

Skills that share tags, products or a category with Add Worker: Connect (ComposioHQ/awesome-claude-skills, 77k stars), Node Connect (openclaw/openclaw, 392k stars), Worker Visualizer (nexu-io/open-design, 100k stars) and Agent Worker Specialist (ruvnet/ruflo, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Add Worker?

FeiZhuLulu (a GitHub user) maintains it in FeiZhuLulu/Agent-Bridge, which has 110 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 7, 2026.

Source: FeiZhuLulu/Agent-Bridge on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.