Configure providers and safely operate leader-worker dispatch, text tool calls, repository tools, and literature search.
Scanned 9/8/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill agent-tools-and-providers --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Agent Tools And Providers?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-agent-tools-and-providers)More formats (shields.io, HTML) on the badges page.
---
name: agent-tools-and-providers
description: "Configure providers and safely operate leader-worker dispatch, text tool calls, repository tools, and literature search."
disable-model-invocation: true
metadata:
disco-role: operating
license: Apache 2.0
---
# Agent tools and providers
Use this skill when a research project needs to configure the LLM endpoint or
when a worker must inspect files, search code, query literature, or hand an
experiment launch to monitoring. This skill describes the observable
dispatcher and tool-registry contracts; it does not run an experiment, install
source skills, or choose an execution backend.
## Quick routing
1. Confirm the provider, model, endpoint override, and credential *environment
variable names*. Never put a secret value in a config file, prompt, report,
or tool result.
2. Use `AgentDispatcher` for leader/worker calls and `ToolRegistry` for the
worker's allow-listed tools. A worker has no direct filesystem, shell, or
network access; it must emit the text protocol described in
`references/text-tool-protocol.md`.
3. Select a worker by responsibility: `idea` for literature, `code` for
implementation and launch, and `writing` for reports. Keep the tool set
minimal and do not grant tools by copying another worker's list.
4. Treat the registry's returned JSON, especially `launch_experiment`'s `pid`
and `log_file`, as authoritative. Do not replace them with numbers or paths
guessed from model prose.
5. Before any write or command, use workspace-relative paths and the exact
tool schemas in `references/tool-catalog.md`. Route long-running lifecycle
and backend transport questions to the corresponding lifecycle/backend
skills.
## Provider choices
`AgentDispatcher` supports `anthropic`, `openai`, `claude_cli`, and `codex_cli`.
The domestic aliases `deepseek`, `dashscope`, `qwen`, `moonshot`, `kimi`,
`zhipu`, and `glm` select an OpenAI-compatible endpoint while retaining the
original alias as `provider_label`. Presets, exact constructor behavior,
credential precedence, and model mapping are in
`references/provider-config.md`.
Prefer `anthropic` or `openai` for API calls and `claude_cli` when a pure text
CLI oracle is desired. `codex_cli` is suitable for leader/free-text work, but
is unsafe for authoritative worker handoff: its CLI runs its own built-in
agentic tools and cannot be forced into the registry protocol. The dispatcher
logs a warning whenever a codex worker receives tools; use another provider
for workers that write files or launch experiments.
## Dispatch contract
- `dispatch_leader(task, context)` keeps leader history within a cycle and
parses a JSON decision. Leader history must be reset between cycles by the
caller; the leader is not a worker tool loop.
- `dispatch_worker(agent_type, task, tool_registry)` starts a fresh worker
conversation, appends the rendered schemas, executes parsed calls in order,
and repeats until a response has no calls or the worker's hard `max_turns`
limit is reached.
- Tool results are returned to the model in a new user message. A non-dict
`args` value is converted into a structured error and is never expanded as
keyword arguments. Unknown tools also return a structured error.
- For a code worker, a successful `launch_experiment` result is surfaced as
`experiment_launched`, `pid`, and (when supplied) `log_file`. This result is
the handoff consumed by monitoring.
## Safe operating rules
- A tool call is real only when it is a top-level `<tool_call>` block. Calls
inside a triple-backtick fenced block are illustrative and are suppressed.
- Normalize paths before touching the backend. Absolute paths, empty paths,
`..` components, and symlink escapes are rejected. Writes additionally
protect the basenames `state.json`, `MEMORY_LOG.md`, `PROJECT_BRIEF.md`, and
`.lock`; protected files may still be read when otherwise valid.
- `run_shell` and `launch_experiment` parse with `shlex.split` and invoke the
backend without a shell. Empty commands, malformed quoting, and a blocked
executable (`rm`, `sudo`, `su`, `mkfs`, `dd`, `shutdown`, `reboot`,
`poweroff`, or `halt`) fail before execution. Do not treat this as a complete
privilege sandbox: explicitly invoking a shell interpreter remains a
separate capability and should be avoided.
- Repository searches are read-only, skip VCS/cache directories, skip
symlinks and oversized/binary files, and return bounded results. Literature
calls have network side effects and must be made only when the user permits
them; failure is reported as JSON rather than retried blindly.
## Verification
Run the bundled `scripts/validate_provider_config.py` with representative
provider/model/override combinations. It performs no network request, does
not read credential values, and prints only normalized non-secret metadata.
For parser/security review, use synthetic fenced-call, traversal, and
semicolon-payload cases and verify that no file is created and no backend call
is made before accepting a worker handoff.
## Further reference
- `references/provider-config.md`: constructor fields, aliases, SDK/CLI paths,
precedence, and failure behavior.
- `references/tool-catalog.md`: worker allow-lists, exact schemas, result
shapes, bounds, protection, and literature behavior.
- `references/text-tool-protocol.md`: parsing, multi-turn result handoff,
fenced-call suppression, and authoritative PID handling.
- `references/troubleshooting.md`: predictable configuration, parser, path,
shell, network, and CLI failure responses.
Do not use this skill to launch training or to poll a PID. For those tasks route
to experiment lifecycle and execution/monitoring skills, respectively. For
source-skill installation or export route to skills-and-installation.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!