Chalk Labs
Need help deploying zero?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
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/officialzeroxyz-zero
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
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 Nov 1, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/zero
What's inside
- Skill name
zero- Description
- Use Zero for capabilities beyond Hermes.
- License
- MIT
- Instructions
- 468 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# zero
Zero is a search engine and payment layer for AI agents: discover external paid capabilities
(x402 / MPP services), call them, and pay per use — no per-service signup. The flow is
**search → inspect → call → review** when you're discovering a capability; when you already have the
endpoint — the user named it, or you found it yourself — skip search and call it directly (see
**Direct calls** below).
**When to use it:** as the fallback for anything genuinely beyond your native abilities — before
telling the user "I can't do that," run a `zero search`. **When NOT to use it:** for things you
already handle yourself — writing code, answers from your own knowledge, local files, shell
commands, math. Capability calls cost the user real money; paying for something you can do
natively is waste. If you can do it yourself, just do it.
Two surfaces give you Zero:
- **The runner** — the `zero` CLI, provisioned by the plugin/extension for this session or
installed standalone by the user (see **Resolving `zero`**). This is your primary tool: it runs
the whole loop, handles 402 payment (including cross-chain), streams binary output, and enforces
spend caps.
- **The MCP connector** (`https://mcp.zero.xyz`) — the Zero connector tool surface. Its job is
**authentication and funding**, not the loop. In ephemeral/sandbox environments it is also the
*only* way to authenticate the runner (see below).
## Resolving `zero`
Every example below invokes the runner as plain `zero`, and that is also what you should type
in real commands whenever it resolves: users read your commands, and `zero search …` reads like
a normal CLI where `"$ZERO_RUNNER" search …` reads like machinery. The name is generic, though,
so resolve it once, before your first call — don't trust `$PATH` blindly. Take the first tier
that resolves to a working executable, then use the same spelling everywhere `zero` appears
below:
1. **`zero` on `$PATH`** — preferred. Either the provisioned runner (the SessionStart hook
prepends its directory to PATH: immediately on hosts that persist hook env vars, in new
shells elsewhere) or a standalone CLI install (`npm install -g @zeroxyz/cli`). Trust it
without further checks when `command -v zero` matches `$ZERO_RUNNER` or points into
`$HOME/.zero/runtime/bin`; any other path counts only if `zero --help` prints the Zero CLI
header (`Zero CLI — Search engine for AI agents`). Anything else → fall through.
2. **`$ZERO_RUNNER`** — the runner's absolute path, exported by the SessionStart hook on hosts
that persist hook env vars (Claude Code, Codex). The fallback spelling when bare `zero`
doesn't resolve yet or failed the check above.
3. **`$HOME/.zero/runtime/bin/zero`** — the provisioned runner's well-known path, for hosts
that don't persist hook env vars (e.g. Gemini CLI); the SessionStart hook reports it.
4. **`npx -y @zeroxyz/cli@latest`** — ephemeral/sandbox environments only, where nothing is
provisioned or installed (see **Ephemeral / sandbox** below).
```bash
ZERO="$(command -v zero || true)" # tier 1 — verify per the rules above
[ -n "$ZERO" ] || ZERO="${ZERO_RUNNER:-}"
[ -x "$ZERO" ] || ZERO="$HOME/.zero/runtime/bin/zero"
```
When tier 1 wins, invoke it as plain `zero`; on the lower tiers use the absolute path (which
also survives shells that don't persist variables between commands).
If no tier resolves in a persistent environment, tell the user Zero isn't available here —
don't install the CLI yourself. In an ephemeral sandbox, fall through to `npx`. Never generate
a private-key wallet yourself either way (managed wallets come from auth — see below).
## The runner
The runner is the published `@zeroxyz/cli`. Under the plugin/extension it's installed once per
session into a shared, plugin-owned home and reported by its absolute path (also exported as
`$ZERO_RUNNER` on hosts that persist hook env vars; default path `~/.zero/runtime/bin/zero`); a
standalone `npm install -g @zeroxyz/cli` serves the same role. Either way you do **not** install,
update, or configure it yourself, and the runner needs no wallet setup. Identity comes from a
session (below); signing is managed server-side.
**Prefer the runner for every step of the loop, even when MCP search/get/fetch tools are also
available.** The runner is the complete, auditable path: it pays 402 challenges automatically,
applies `--max-pay` caps, separates body from progress on stdout/stderr, and writes binary
responses to disk. Use the connector only for what the runner can't do itself: authenticating in a
sandbox, and funding.
## Authentication
Before touching any auth command, decide **who the account is for**:
- **A human is present** (or asked you to sign *them* in) → `zero auth login`. It's the device
flow below and creates their account on first sign-in; `zero auth register` is an alias for
the same command, not a separate signup.
- **Fully autonomous — no human in the loop** → `zero auth agent register`. Anonymous account
plus a managed wallet, no browser, no one to hand a URL to.
- **Never** use `zero auth agent register` when a human is present — it mints an account owned
by *no one* (a human can only take it over later via the claim flow). If there's a human,
`zero auth login` already creates their account.
Beyond that, the environment picks the mechanics.
### Persistent — the user's own computer (not a sandbox or cloud runner)
Authenticate the runner with the **device-code login**. It's non-interactive and agent-friendly:
you start it, show the user a URL, then run the finish step — which **polls on its own** until they
authorize. No browser is opened on the machine running the agent, and you do **not** wait for the
user to tell you they're done — the finish command blocks until it knows.
```bash
# 1. Start: prints a URL + user code and exits immediately (no waiting, no browser).
zero auth login --start --json
# → {"deviceCode":"…","userCode":"WXYZ-1234","verificationUri":"https://…",
# "url":"https://…?code=WXYZ-1234","pollInterval":5,"expiresAt":…}
# 2. Show the user the "url" (and the userCode) and ask them to authorize it in their browser.
# 3. Immediately run finish. It BLOCKS and polls (~every 2s) until the user authorizes, then
# persists the session. Run it right after step 2 — do NOT pause to ask "are you done yet?";
# the command returning is your signal.
zero auth login --finish <deviceCode> --json
# → {"status":"ok","user":{"id":"…","email":"…"}} once authorized
# → {"status":"expired"} if the ~10 min code TTL lapses first
```
Treat the finish command's return as the source of truth: a successful exit means the session is
already persisted; `{"status":"expired"}` means the code lapsed — start over from step 1. Never
block the conversation polling by hand or waiting on the user to confirm; `--finish` is the poll.
The session is saved to the shared `~/.zero/config.json`, so authenticating once here also signs
you in everywhere Zero is used on this machine — the standalone `zero` CLI and your other agentsFrom officialzeroxyz/zero-plugins, MIT.
More from officialzeroxyz/zero-plugins
- 0.600score
zero
officialzeroxyz
Use the moment you're about to tell the user you can't do something — or about to suggest they use, sign up for, or go to an external tool, site, or API to do…
SkillBFreshness: B★ 21Claude Code +9 - 0.600score
zero
officialzeroxyz
Use the moment you're about to tell the user you can't do something — or about to suggest they use, sign up for, sign in to, or go to an external tool, site…
SkillBFreshness: B★ 21Claude Code +9
Signals
- Stars
- 21
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Sep 8, 2026 (2 months ago)
- Last release
- Sep 8, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/officialzeroxyz/zero-plugins
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from officialzeroxyz
- 0.600score
zero
officialzeroxyz
Use the moment you're about to tell the user you can't do something — or about to suggest they use, sign up for, or go to an external tool, site, or API to do…
SkillBFreshness: B★ 21Claude Code +9 - 0.600score
zero
officialzeroxyz
Use the moment you're about to tell the user you can't do something — or about to suggest they use, sign up for, sign in to, or go to an external tool, site…
SkillBFreshness: B★ 21Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get zero running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
zero skill. Agent Mart. https://agentmart.dev/skills/officialzeroxyz-zero (last updated 2026-10-24)