Integrate AgentKit Host
Wire an always-on host so it can act as a named user through AgentKit. Then stop.
A host is a long-lived agent process (OpenClaw or Hermes). It is not this git repo.
Guardrails
- MUST wait for dashboard credential values. MUST NOT invent them.
- MUST pass the exact dashboard Connection Name. Never invent a slug.
- MUST put only Scalekit client credentials on the host. Provider tokens stay in Scalekit.
Gotchas
- Read
SCALEKIT_ENVIRONMENT_URL,SCALEKIT_CLIENT_ID,SCALEKIT_CLIENT_SECRET, andSCALEKIT_IDENTIFIER. OpenClaw also acceptsTOOL_*aliases. NeverSCALEKIT_ENV_URL. - A connection already exists from
setup-agentkit. This skill starts there. - The Slack gateway bot is a channel. It is not the named user.
- Do not run
hermes mcp loginagainst Scalekit. Do not mint a Virtual MCP session token. - Default host is OpenClaw. Hermes is references/hermes.md.
Step 1 — Pick the host
- OpenClaw → stay here.
- Hermes → open references/hermes.md. Stop reading this file.
- App code in this repo → name
integrate-agentkit. Stop. - Per-user MCP URL → name
expose-agentkit-mcp. Stop.
If env is missing, collect the three Scalekit client values from app.scalekit.com → Developers → Settings → API Credentials. Ask for the named-user identifier (email or user id). Do not invent values.
Done when: the host is OpenClaw, and the four names exist.
Step 2 — Confirm the connection
Use the Connection Name already recorded by setup-agentkit.
If none is recorded: Gmail is gmail when the dashboard has no Gmail row. Any other connector needs a dashboard row. Else name setup-agentkit and stop.
Done when: a Connection Name is written down.
Step 3 — Install the OpenClaw skill
clawhub install scalekit-agent-auth
That slug is the shipped ClawHub listing. Do not create a new GitHub repo for it.
Done when: clawhub lists scalekit-agent-auth.
Step 4 — Write host env
Put Scalekit client credentials in the OpenClaw env file (.env next to the skill, or the host env). These are not Gmail or Slack tokens.
SCALEKIT_ENVIRONMENT_URL=https://your-env.scalekit.cloud
SCALEKIT_CLIENT_ID=<from dashboard>
SCALEKIT_CLIENT_SECRET=<from dashboard>
SCALEKIT_IDENTIFIER=<named user>
TOOL_ENV_URL, TOOL_CLIENT_ID, TOOL_CLIENT_SECRET, and TOOL_IDENTIFIER also work.
From this skill directory:
cd scripts && uv sync
uv run tool_exec.py --list-connections --provider GMAIL
Done when: the env file has those names, and --list-connections returns a completed connection or a clear empty list.
Step 5 — Authorize if needed
uv run tool_exec.py --generate-link --connection-name <CONNECTION_NAME>
OAuth: if not ACTIVE, show the magic link and wait. API key: if missing or not ACTIVE, send the user to the Dashboard and stop.
Done when: the connected account is ACTIVE, or the next action is on screen.
Step 6 — Stop
Name one real host prompt for the user, for example “Show my latest unread emails.” Do not write app-code SDK calls.
The host follows references/runtime-skill.md at chat time.
Done when: OpenClaw is installed, env is set, and this skill has stopped.
Reach for
setup-agentkitif the connection or env is missingintegrate-agentkitfor AgentKit in app codeexpose-agentkit-mcpfor a per-user MCP URL- references/hermes.md for Hermes
- references/runtime-skill.md for the host chat loop
Live lookups
- Docs index: https://docs.scalekit.com/llms.txt
- Connector catalog: https://docs.scalekit.com/agentkit/connectors.md
- OpenClaw skill: https://github.com/scalekit-inc/openclaw-skill
- ClawHub: https://clawhub.dev/skills/scalekit-agent-auth
- MCP: https://mcp.scalekit.com