mcpbeat

Agent Init

majiayu000/agent-init

Initialize and configure OpenClaw agent workspace MD files (AGENTS.md, SOUL.md, IDENTITY.md, USER.md, TOOLS.md, BOOTSTRAP.md, HEARTBEAT.md). Use when: setting up a new agent, customizing agent personality/behavior, configuring agent workspace, or checking/fixing agent environment (Python/uv). Provides interactive interview workflow before generating files. Supports both container and external (host) OpenClaw instances.

1k tokens
context cost
the whole folder, loaded on every use
2
files
instructions only
0
copies elsewhere
how many repositories repackaged it
532
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/majiayu000/claude-skill-registry --skill agent-init

What comes with it

893 bytes besides the instruction
metadata.json

The instruction itself

11 sections, as written by the author

Agent Init

Initialize OpenClaw agent workspace with tailored MD files through an interactive interview.

Workflow

Phase 1: Interview (MANDATORY — do not skip)

Before generating ANY files, gather context through conversation. Ask in batches of 2-3 questions:

Batch 1 — Identity & Purpose:

  • What is this agent's primary purpose? (e.g., coding assistant, research, DevOps, personal assistant)
  • What name and emoji? Any personality traits?

Batch 2 — User Profile:

  • Who will use this agent? (name, timezone, preferences)
  • Communication style preference? (formal/casual, verbose/terse, language)

Batch 3 — Environment:

  • Is this a container instance or external (host) instance?
  • What tools/languages does the agent need? (Python, Node, etc.)
  • Any specific workflows or periodic tasks?

Batch 4 — Boundaries:

  • Any topics or actions the agent should avoid?
  • Privacy requirements beyond defaults?

Only proceed to Phase 2 after user confirms the interview is complete.

Phase 2: Environment Check

Run scripts/check-env.sh to detect Python/uv status:

bash <skill-path>/scripts/check-env.sh

If uv is missing and user wants Python support:

bash <skill-path>/scripts/check-env.sh --install

For container instances, run inside the container:

docker exec <containerId> bash -c "which uv && uv --version || echo 'uv: NOT FOUND'"

Phase 3: Generate Files

Generate files in this order, showing each to user for confirmation before writing:

  • IDENTITY.md — Fill in fields from interview
  • USER.md — Fill in user profile
  • SOUL.md — Rewrite content, keep 4-section structure (Core Truths / Boundaries / Vibe / Continuity)
  • TOOLS.md — Add environment info, Python/uv config
  • AGENTS.md — Extend default template with domain-specific sections (see strategy below)
  • HEARTBEAT.md — Add periodic tasks if any
  • BOOTSTRAP.md — Skip unless user wants first-run ritual
AGENTS.md Strategy: Extend, Don't Replace

Read the current AGENTS.md first. The default template contains critical infrastructure:

  • Session startup sequence (file loading order)
  • Memory system (daily + MEMORY.md)
  • Safety rules
  • Heartbeat logic

Add new sections; never remove existing ones. Safe insertion points:

  • After "Every Session" → domain-specific startup tasks
  • After "Safety" → additional security rules
  • After "Tools" → Python/uv preferences
  • Before "Make It Yours" → project-specific workflows
Mandatory TOOLS.md Additions
## Python
- Package manager: `uv` (NEVER use pip directly)
- Create venv: `uv venv .venv`
- Install: `uv pip install <package>`
- Run: `uv run python script.py`
- If uv missing: `curl -LsSf https://astral.sh/uv/install.sh | sh`

Phase 4: Write Files

Determine write method based on instance type:

External instance (workspace on host filesystem):

# Workspace files live at {workspacePath}/workspace/ (or workspace-{profile}/)
cat > {workspacePath}/workspace/SOUL.md << 'ENDOFFILE'
[content]
ENDOFFILE

Container instance (OpenClaw running in Docker):

docker exec -i <containerId> sh -c 'cat > /home/node/.openclaw/workspace/SOUL.md' << 'ENDOFFILE'
[content]
ENDOFFILE

For non-main agents (agentId ≠ "main"):

  • Check if agent has a dedicated workspace via config.get
  • Agent workspace might be at workspace-{agentId}/ or configured separately

Phase 5: Verify

After writing, confirm files are in place:

# External
ls -la {workspacePath}/workspace/*.md

# Container
docker exec <containerId> ls -la /home/node/.openclaw/workspace/*.md

Reference Files

  • references/templates.md — Official templates, loading order, per-file strategy, section structure
  • references/openclaw-workspace.md — Instance types, workspace paths, Python env, agent creation rules

Read these when you need detailed guidance on template structure or workspace configuration.

Rules

  • Interview first — never generate files without understanding the user's intent
  • Extend, don't replace — AGENTS.md default template is infrastructure, not boilerplate
  • Show before write — display each generated file for user confirmation
  • uv over pip — always configure uv as the Python package manager
  • No secrets in files — workspace files are injected into every prompt turn
  • Keep files concise — all workspace files consume tokens every turn (20KB/file limit, 150KB total)
  • Respect existing content — read before write, merge non-destructively

How to use it

Copy the folder

Take majiayu000/agent-init from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.

Install what it needs

The instructions reference pip, uv. Without those the skill loads but fails at the first command.