examples/reference-agent/skills/soleri-build-skill/SKILL.md
Use when creating a new skill, updating an existing skill, or scaffolding a skill template for a Soleri agent. Triggers on "create a skill", "new skill", "build skill", "add a skill", "write a skill", "skill template", "scaffold skill".
npx skillsauth add adrozdenko/soleri soleri-build-skillInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create well-structured skills that follow Soleri conventions. Skills are SKILL.md files in the forge that get synced to agents as slash commands.
Skills live in two places:
| Location | Purpose |
|----------|---------|
| packages/forge/src/skills/soleri-{name}/SKILL.md | Source — ships with Soleri |
| ~/.claude/commands/{agent}-soleri-{name}.md | Runtime — synced per agent |
---
name: soleri-{skill-name}
description: >
Use when the user says "trigger1", "trigger2", "trigger3",
or wants to [brief purpose]. [One sentence about what the skill does].
---
# Skill Title — Short Purpose
[Core workflow instructions with numbered steps]
## Agent Tools Reference
| Op | When to Use |
|----|-------------|
| `search_intelligent` | Check vault before starting |
| `capture_knowledge` | Persist patterns worth remembering |
Before creating anything, check if a similar skill or pattern exists:
YOUR_AGENT_core op:search_intelligent
params: { query: "<skill topic>" }
List existing skills to avoid duplication:
ls packages/forge/src/skills/
Every skill needs 4-8 unique trigger phrases in the description: field. Before choosing triggers, check ALL existing skills to avoid overlap:
grep -h "description:" packages/forge/src/skills/soleri-*/SKILL.md
Rules:
"exact trigger words"Identify 3-5 concrete scenarios. Ask the user if unclear:
Every Soleri skill should use the engine where applicable. Use the YOUR_AGENT_core placeholder — it gets replaced with the agent's actual facade name at sync time.
Common integration points:
| When | Op | Why |
|------|-----|-----|
| Before starting work | search_intelligent | Check vault for prior art |
| Before starting work | memory_search | Check session history |
| During execution | brain_recommend | Get brain recommendations |
| After completion | capture_knowledge | Persist patterns learned |
| After completion | capture_quick | Fast capture for simple learnings |
| Quality checks | admin_health | Verify system health |
| Iteration tracking | loop_start / loop_iterate | Track multi-step work |
All ops use the YOUR_AGENT_core placeholder:
| Domain | Key Ops |
|--------|---------|
| Vault search & capture | search_intelligent, search, capture_knowledge, capture_quick, vault_tags, vault_domains |
| Admin & health | admin_health, admin_diagnostic, admin_tool_list, admin_vault_analytics |
| Curator & quality | curator_health_audit, curator_detect_duplicates, curator_contradictions, curator_groom_all |
| Brain & learning | brain_stats, brain_strengths, brain_recommend, brain_build_intelligence |
| Memory & sessions | memory_search, memory_stats, session_capture, memory_cross_project_search |
| Planning | create_plan, approve_plan, plan_split, plan_reconcile, plan_complete_lifecycle |
| Loops & validation | loop_start, loop_iterate, loop_complete, loop_status |
Follow these rules:
Naming:
packages/forge/src/skills/soleri-{name}/SKILL.mdname: field must be soleri-{name} — matching the foldersoleri- prefixFrontmatter:
description: must include specific trigger phrases in quotes> for multi-line YAML folded scalar descriptionsBody (target 1,500-2,000 words):
Op References:
YOUR_AGENT_core op:xxx — never hardcode agent namesadmin_tool_list)Checklist before committing:
soleri-{name}/SKILL.md in packages/forge/src/skills/name: matches folder namedescription: has 4-8 specific trigger phrases in quotesYOUR_AGENT_core placeholderernesto_core, salvador_core, etc.)npx tsc --noEmit in packages/forgeIf the skill should appear in the reference agent:
cp -r packages/forge/src/skills/soleri-{name} examples/reference-agent/skills/
Add the skill to SKILLS_REGISTRY in packages/forge/src/scaffold-filetree.ts and SKILL_CATEGORIES in packages/forge/src/compose-claude-md.ts so it gets included in new scaffolds.
YOUR_AGENT_core op:capture_knowledge
params: {
title: "New skill: soleri-{name} — {purpose}",
description: "Created skill for {what it does}. Triggers: {triggers}.",
type: "workflow",
domain: "tooling",
tags: ["skill", "workflow", "{domain}"]
}
YOUR_AGENT_core placeholderdescription: if triggers changedsoleri-deep-review already owns iternesto_core instead of YOUR_AGENT_coresoleri- prefix on the folder and name| Op | When to Use |
|----|-------------|
| search_intelligent | Check for existing skills and patterns |
| capture_knowledge | Capture skill creation decision |
| admin_tool_list | Verify available ops |
| vault_domains | Check domain categories |
| memory_search | Find related past work |
testing
Triggers: "terse mode", "be brief", "less tokens", "fewer tokens", "compress output", "caveman", or invokes /terse. Token-efficient responses with full technical accuracy.
tools
Triggers: "compress this file", "compress CLAUDE.md", "compress memory", "shrink this", "reduce tokens in file", or invokes /compress. Compresses natural language files to save input tokens.
testing
Triggers: "release", "bump version", "publish packages", "cut a release", "version bump", "npm publish". Bumps monorepo versions, commits, tags, pushes to trigger CI release. Use deliver-and-ship for quality gates.
development
Triggers: "implement X", "build Y", "fix Z", "add feature", or any work task needing planning + execution. Full orchestration loop: plan, execute, complete with vault context and brain recs.