Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Add a new OpenClaw Agent, automatically configure openclaw.json, create workspace, copy auth and skills.
Add a new OpenClaw Agent, automatically configure openclaw.json, create workspace, copy auth and skills.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Quickly add a new isolated Agent with a dedicated Telegram Bot.
User says something like: "Add a new agent, ID is marketing, name is Marketing Assistant, telegram Bot Token is xxx, allowFrom is 123456789, responsible for content marketing and social media"
Once a new agent request is received, execute in the following order:
Extract the following fields from user input: AGENT_ID: English ID (e.g. marketing) AGENT_NAME: Agent name (e.g. Marketing Assistant, Alice, WorkBot, etc.) BOT_TOKEN: Telegram Bot Token ALLOW_FROM: allowFrom numeric ID (e.g. 123456789) DESCRIPTION: Role description (e.g. responsible for content marketing and social media) If any field is missing, ask the user to provide it before continuing.
Read the current openclaw.json path, extract the actual paths from the existing main agent in agents.list to derive: STATE_DIR: e.g. /home/openclaw/.openclaw MAIN_WORKSPACE: main agent workspace path MAIN_AGENT_DIR: main agent agentDir path NEW_WORKSPACE: ${STATE_DIR}/workspace-${AGENT_ID} NEW_AGENT_DIR: ${STATE_DIR}/agents/${AGENT_ID}/agent
cp ${CONFIG_PATH} ${CONFIG_PATH}.bak.$(date +%Y%m%d%H%M%S)
openclaw agents add ${AGENT_ID} This automatically initializes the workspace directory structure, agentDir, and default files like SOUL.md and AGENTS.md.
# Copy auth profiles cp ${MAIN_AGENT_DIR}/auth-profiles.json \ ${NEW_AGENT_DIR}/auth-profiles.json # Copy skills cp -r ${MAIN_WORKSPACE}/skills/ \ ${NEW_WORKSPACE}/skills/ # Copy USER.md cp ${MAIN_WORKSPACE}/USER.md \ ${NEW_WORKSPACE}/USER.md
Read the current config and append the following: Add to agents.list: { "id": "${AGENT_ID}", "name": "${AGENT_NAME}", "workspace": "${NEW_WORKSPACE}", "agentDir": "${NEW_AGENT_DIR}" } Add to bindings: { "agentId": "${AGENT_ID}", "match": { "channel": "telegram", "accountId": "${AGENT_ID}" } } Add to channels.telegram.accounts: "${AGENT_ID}": { "enabled": true, "botToken": "${BOT_TOKEN}", "dmPolicy": "pairing", "allowFrom": ["${ALLOW_FROM}"], "groupPolicy": "allowlist", "streaming": "off" } Handle tools config (check before writing): Check whether the tools field exists: If tools does not exist, add the full block: "tools": { "agentToAgent": { "enabled": true, "allow": ["main", "${AGENT_ID}"] }, "sessions": { "visibility": "all" } } If tools exists but has no agentToAgent, add it: "agentToAgent": { "enabled": true, "allow": ["main", "${AGENT_ID}"] } If agentToAgent already exists, only append "${AGENT_ID}" to the allow array (no duplicates) If sessions.visibility does not exist, add it: "sessions": { "visibility": "all" }
cat ${CONFIG_PATH} | python3 -m json.tool If validation fails, stop immediately and restore from backup: cp ${CONFIG_PATH}.bak.* ${CONFIG_PATH} Report the exact error to the user.
chown -R $(stat -c '%U:%G' ${MAIN_WORKSPACE}) ${NEW_WORKSPACE}/ chown -R $(stat -c '%U:%G' ${MAIN_AGENT_DIR}) ${NEW_AGENT_DIR}/
Workflow acceleration for inboxes, docs, calendars, planning, and execution loops.
Largest current source with strong distribution and engagement signals.