From woterclip
Initializes WoterClip in repo by scaffolding .woterclip/ config.yaml, persona directories (orchestrator, CEO, backend/frontend/etc.), and Linear labels/groups via MCP. Invoke via /woterclip-init.
npx claudepluginhub wotai-dev/woterclip --plugin woterclipThis skill uses the workspace's default tool permissions.
Initialize WoterClip in the current repository. This creates the `.woterclip/` directory with config, persona templates, and corresponding Linear labels.
Interactively creates WoterClip personas by gathering details, generating SOUL.md, TOOLS.md, config.yaml, updating repo config, and creating Linear labels. Triggers on /persona-create or persona requests.
Manages Linear issues, projects, and teams using Linear CLI via Bash, MCP tools (mcp__linear), helper scripts, and varlock for secure API key handling. Supports creation, updates, comments, listing, and setup checks.
Interviews user to create GitHub projects, labels, and CLAUDE.md config for AI-agent-driven project management. Triggers on 'init project' or setup requests.
Share bugs, ideas, or general feedback.
Initialize WoterClip in the current repository. This creates the .woterclip/ directory with config, persona templates, and corresponding Linear labels.
Before starting, verify the Linear MCP is available:
mcp__claude_ai_Linear__list_teams is callable.mcp.json or global MCP config/woterclip-initmcp__claude_ai_Linear__list_teams to fetch available teamsmcp__claude_ai_Linear__list_users to identify the current userAsk the user which persona set to scaffold:
| Preset | Personas Created |
|---|---|
| engineering (default) | Orchestrator, CEO, Backend, Frontend |
| full | Orchestrator, CEO, Backend, Frontend, Infra, QA |
| minimal | Orchestrator, CEO only |
| custom | Orchestrator, CEO + user-specified personas |
For "custom", ask the user to name each persona and its Linear label.
Create the WoterClip label group and child labels in Linear:
mcp__claude_ai_Linear__create_issue_label to create the parent group label named after labels.group (default: "WoterClip")agent-working — state label for active workagent-blocked — state label for blocked issuesbackend, frontend)Use mcp__claude_ai_Linear__list_issue_labels first to check if labels already exist. Skip creation for any label that already exists.
Important: The Linear MCP's create_issue_label accepts name, color, and optionally parentId (for grouping under a parent label). Fetch the parent group label's ID after creating it, then pass it as parentId for child labels.
Create the directory structure:
.woterclip/
├── config.yaml
└── personas/
├── orchestrator/
│ ├── SOUL.md
│ ├── TOOLS.md
│ └── config.yaml
├── ceo/
│ ├── SOUL.md
│ ├── TOOLS.md
│ └── config.yaml
├── backend/ (if selected)
│ ├── SOUL.md
│ ├── TOOLS.md
│ └── config.yaml
└── frontend/ (if selected)
├── SOUL.md
├── TOOLS.md
└── config.yaml
Copy templates from the plugin's templates/ directory:
${CLAUDE_PLUGIN_ROOT}/templates/{{USER_NAME}} with the user's Linear display name{{TEAM}} with the selected team name.woterclip/Update config.yaml personas section to match the selected preset — remove entries for personas that weren't scaffolded.
Ask the user if they want to set up a recurring heartbeat:
/schedule 30m /heartbeat and explain cadence options/heartbeat manually or set up /schedule laterDisplay what was created:
WoterClip initialized!
Linear labels created:
✓ WoterClip (group)
✓ agent-working
✓ agent-blocked
✓ backend
✓ frontend
Config: .woterclip/config.yaml
Personas:
✓ orchestrator → default (no label)
✓ ceo → "ceo" label
✓ backend → "backend" label
✓ frontend → "frontend" label
Next steps:
1. Review .woterclip/config.yaml
2. Customize persona SOUL.md files for your project
3. Run /heartbeat or /schedule 30m /heartbeat
| Error | Response |
|---|---|
| Linear MCP not available | Stop. Print setup instructions for connecting Linear MCP. |
| No teams found | Stop. Ask user to verify Linear workspace access. |
| Label creation fails | Log the error, continue with remaining labels, report at end. |
.woterclip/ already exists | Ask user: overwrite, merge, or cancel. Default to merge (skip existing files). |
| Template file missing from plugin | Log warning, create a minimal placeholder, continue. |
If .woterclip/config.yaml already exists:
config.yaml.bak before writing