Get started with the agent4.io agent skills
Connect your coding agent to agent4.io over MCP, install the skills, and run your first recipe.
tenant_infoagent4.io ships a remote MCP server (the tools) plus a set of skills (how to use the tools). Point your agent at the MCP endpoint, install the skills once, and every recipe below becomes an executable, step-by-step procedure.
What this skill does with your data — tell the user
This skill connects to agent4.io's remote API (api.agent4.io). Be explicit with the user before you
send their material:
- It transmits to agent4.io. The agent configuration, knowledge-base content and queries you send go to agent4.io's servers to build and run agents there — that is the platform's purpose, not a side effect.
- It uses exactly one credential — your agent4.io API key (
tk_…), which the user provides. It does not read other environment variables, and it does not read or enumerate your local files:add_knowledge_filedeliberately cannot access your machine's paths; you only ever send content you explicitly pass to a knowledge-base tool. - Nothing runs with elevated privileges. The installer only writes skill files into your agent's own
skills folder — no
sudo, and it fetches only from agent4.io. - On a chat channel, a bot token the user provides is used solely to call that channel's own API at
the user's instruction (e.g. Telegram
setMyCommands) — never sent to agent4.io.
If any of this isn't acceptable to the user, stop — don't send their data.
Connect — one command
curl -fsSL https://api.agent4.io/v1/integration/install.sh | sh -s -- --key tk_YOUR_KEYThis adds the agent4-io MCP server and installs the skill modules for your agent. Get a key from
console → Settings → Security (the plaintext is shown once, at creation).
Verify
tenant_info() # → confirms you are connected to the right tenantKeep it current
curl -fsSL https://api.agent4.io/v1/integration/install.sh | sh -s -- updateRe-pulls the skills and reports which modules changed. The MCP tools are remote, so they are always current; only these skill docs are versioned.
Slash commands (for your coding CLI — not for the deployed bot)
These are builder shortcuts for coding CLIs that read a commands/ folder — Claude Code
(~/.claude/commands/) and Cursor (.cursor/commands/). The installer drops them so you, building on
agent4.io, can type them in your CLI:
/agent4-agent <what>— create a grounded agent/agent4-kb <name + source>— build a knowledge base, import, verify, attach/agent4-skill <when + what>— author a load-on-demand skill/agent4-storyline <process>— compile a process into a Storyline and publish/agent4-docs <question>— look up an agent4.io concept or how-to
Each carries no logic of its own — it points at the matching agent4-io-* skill and passes what you type.
They are not the deployed bot's commands. They will not — and should not — show up in a Telegram or
WhatsApp bot's slash menu. Those menus are shown to your end users and are set separately by the bot's
operator (e.g. Telegram's setMyCommands); they list end-user actions, never builder operations like
"create an agent". Different audience, different mechanism — if you're deploying on a chat channel, ignore
these and configure that channel's own command menu.
On OpenClaw / Codex (no commands/ folder) there are no separate command files: the agent uses the
agent4-io skill directly — the model invokes it, or you call the single /agent4-io <task> command — and
the five shortcuts above fold into that.
Running on a Telegram / WhatsApp bot? Register the menu yourself
If you (the agent) are deployed on a chat channel, the channel's command menu is not synced from skills — you set it through the channel's own API. Do this only when this bot is your operator / builder assistant (the person using it builds on agent4.io); skip it for a customer-facing bot, whose menu is for end users, not builder operations.
Telegram command names may contain only a-z 0-9 _ — no hyphens — so rename agent4-agent →
agent4_agent. When you have the bot token, register them once with setMyCommands:
curl -s "https://api.telegram.org/bot$BOT_TOKEN/setMyCommands" -H "Content-Type: application/json" -d '{
"commands":[
{"command":"agent4_agent","description":"Create a grounded agent"},
{"command":"agent4_kb","description":"Build a knowledge base"},
{"command":"agent4_skill","description":"Author a load-on-demand skill"},
{"command":"agent4_storyline","description":"Compile a process into a Storyline"},
{"command":"agent4_docs","description":"Look up an agent4.io doc"}
]}'When a user taps one, the channel sends that text to you as an ordinary message — handle it with this
skill (agent4_agent = the /agent4-agent shortcut, and so on). No bot token / shell access? Set the
same list by hand in @BotFather → /setcommands. WhatsApp has no slash menu; expose the same actions
as an interactive list/quick-reply instead.
Silence your own link previews. You cite agent4.io links constantly, so Telegram will attach a
preview card to nearly every reply — noisy fast. Send your messages with previews off:
link_preview_options: {"is_disabled": true} on sendMessage (legacy API: disable_web_page_preview: true).
This affects only your messages; a link the user sends still previews as normal.
When there's no MCP tool for it — the REST API is the full surface
The MCP tools cover the common build-and-run operations, but they are not the whole platform. For
anything they don't expose — a field, an endpoint, a bulk job — the complete tenant REST API covers
everything a tenant can do. Call it directly with the same key: X-API-Key: tk_....
Two ways to reach it, cheapest first:
search_agent4_docs("… rest api …")— the docs search now indexes the REST API per endpoint. A REST/HTTP-worded query returns the exact endpoint with its parameters and response, without loading the whole reference. Use this first.- https://agent4.io/api.md — the full machine-readable reference (every endpoint, params, request/response, examples). Read the whole file only when you need the broad picture.
MCP is the fast path; the REST API is the fallback.
What to do next
- Create a grounded support agent
- Build and populate a knowledge base
- Author a load-on-demand skill
- Configure a page-aware chat opener
- Compile a flow into a Storyline
Every recipe names the exact MCP tool and arguments — never "open this page and click".