Use the structs-ai repository as your OpenClaw workspace so the agent has full access to skills, scripts, and game knowledge.
Clone structs-ai
git clone https://github.com/playstructs/structs-ai
cd structs-ai
Set the OpenClaw workspace to the structs-ai path.
In ~/.openclaw/openclaw.json:
{
"agent": {
"workspace": "/path/to/structs-ai",
"skipBootstrap": true
}
}
Or, if your config uses agents.defaults:
{
"agents": {
"defaults": {
"workspace": "/path/to/structs-ai"
}
},
"agent": {
"skipBootstrap": true
}
}
skipBootstrap: true prevents OpenClaw from overwriting our AGENTS.md, SOUL.md, and other files with its defaults. This is critical — without it, OpenClaw will destroy the agent identity files that ship with this repo (or that a previous agent has personalized).
Skills — The repo includes a skills/ directory with symlinks to .cursor/skills/. OpenClaw will discover structs-onboarding, structs-building, structs-mining, etc. automatically.
Seed missing files (optional):
openclaw setup --workspace /path/to/structs-ai
This creates any missing OpenClaw-expected files (e.g., USER.md) without overwriting existing ones.
Personal files — SOUL.md, IDENTITY.md, TOOLS.md, COMMANDER.md, and USER.md may already contain an agent’s identity, configuration, or personality. When pulling updates from the repo, merge new template content into your existing files — never overwrite them. An agent’s soul is not disposable.
Install structsd — Use the structsd-install skill or install manually. See .cursor/skills/structsd-install/SKILL.md.
Fill TOOLS.md — Add your server addresses, account, chain ID, and secrets.
Play — Tell your agent: “Read SOUL.md and AGENTS.md. Play Structs.”
| OpenClaw expects | Structs-ai provides |
|---|---|
| AGENTS.md | Yes |
| SOUL.md | Yes |
| IDENTITY.md | Yes |
| USER.md | Yes (references COMMANDER.md) |
| TOOLS.md | Yes |
| memory/ | Yes |
| skills/ | Yes (symlinks to .cursor/skills/) |
NanoClaw and PicoClaw extend the OpenClaw concept with different runtimes. Our skills use the AgentSkills format (SKILL.md with YAML frontmatter), which should work where that format is supported. Set the workspace to the structs-ai path and verify the skills directory is discovered. If your variant uses a different workspace layout, adjust the path accordingly.
skills/ exists in the repo root. It contains symlinks to .cursor/skills/*. If missing, run: mkdir -p skills && for d in .cursor/skills/*/; do ln -sf "../$d" "skills/$(basename $d)"; done from the repo root.agent.skipBootstrap: true and restore from git (git checkout -- SOUL.md IDENTITY.md TOOLS.md COMMANDER.md USER.md). If you had uncommitted personal changes, check git stash list or your memory/ directory for session logs..cursor/skills/structs-onboarding/scripts/create-player.mjs. Run npm install in that directory first.