create-agent
Skill11 starsChanged 9 days agoMITView on GitHub
Guided authoring flow for creating new Vespyr agent personas — specify the role, goals, and guardrails, then scaffold the agent markdown file with valid frontmatter, identity block, persona voice, Socratic stance, delegation contracts, and memory wiring, and verify it resolves and passes validation. Use this skill whenever you want to create, add, scaffold, or author a new agent, persona, or role in Vespyr. Trigger on "create a new agent", "add an agent for X", "new persona", "scaffold an agent", "make an agent that does Y".
38 other projects use a version of this.
Adopted by
Most recently taken up by
- cognitedata/builder-skillstheir own version, first seen Nov 4, 2026
- harness/harness-skillstheir own version, first seen Nov 1, 2026
- fxmartin/claude-code-configtheir own version, first seen Oct 31, 2026
- agno-agi/agentos-dockertheir own version, first seen Oct 30, 2026
- agno-agi/agentos-flytheir own version, first seen Oct 30, 2026
- agno-agi/agentos-rendertheir own version, first seen Oct 30, 2026
Used with
Projects with it also use deploy-platform, setup-platform and 8 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
agno-agiSkilldeploy-platform
Deploy this AgentOS using its own provider instructions, configure JWT verification, and verify the public service. Use for first deployment, redeployment, or production configuration changes.
Also in 5 projects that use this
agno-agiSkillsetup-platform
Set up this AgentOS from a fresh clone — confirm Docker, configure .env, boot the containers, prove the MCP endpoint live, connect the AgentOS UI, then build the user's first agent. Use when the user asks to set up the platform, get started, or bring this repo up on a new machine.
Also in 5 projects that use this
ElasticSkillcreate-integration
Use when creating a new Elastic integration package, scaffolding data streams, answering package layout or structure questions, or running the end-to-end integration build workflow. Covers package topology, scaffold commands, post-scaffold edits, and full orchestration of CEL/pipeline/test subagents.
Also in 3 projects that use this
MicrosoftSkillcreate-hook
Create a hook (.json) to enforce policy or automate agent lifecycle events.
Also in 5 projects that use this
AnasX7Skillimprove
Survey any codebase as a senior advisor and produce prioritized, self-contained implementation plans for OTHER models/agents to execute. Strictly read-only on source code — never implements, fixes, or refactors anything itself. Use when asked to audit a codebase, find improvement opportunities (bugs, security, performance, test coverage, tech debt, migrations, DX), suggest features or where to take the project next (roadmap, product direction), or generate handoff plans for another agent to implement.
Also in 5 projects that use this
SentrySkillcreate-pr
Create pull requests following Sentry conventions. Use when opening PRs, writing PR descriptions, or preparing changes for review. Follows Sentry's code review guidelines.
Also in 3 projects that use this
- +3 more from agno-agi
Other versions38 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 38
- microsoft/vscode★ 195ksame name
- gnekt/My-Brain-Is-Full-Crew★ 3.9ksame name
- EvolutionAPI/evo-nexus★ 545same name
- evolution-foundation/evo-nexus★ 535same name
- openma-ai/open-managed-agents★ 348same name
- luanmorenommaciel/agentspec★ 256same name
- harness/harness-skills★ 127same name
- microsoft/copilot-studio-plugin★ 82same name
- Azure-Samples/art-voice-agent-accelerator★ 74same name
- TOKTOKHAN-DEV/agent-company★ 74same name
28 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository44 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- analyze-dataSkill
- brainstormingSkill
- craft-lessonSkill
- create-skillSkill
- customize-agentSkill
- customize-skillSkill
- designSkill
- deslopSkill
- developSkill
- discovery-reportSkill
- elicitationSkill
- empathy-mapSkill
- explore-ideaSkill
- grill-meSkill
- help-meSkill
- humanizeSkill
- incidentSkill
- iterateSkill
- journey-mapSkill
- jtbdSkill
- kanbanSkill
- launchSkill
- legal-safety-auditSkill
- maintenance-executeSkill
- maintenance-planSkill
- memorySkill
- motionSkill
- phaseSkill
- planSkill
- research-planSkill
- retroSkill
- reviewSkill
- root-causeSkill
- round-tableSkill
- shape-upSkill
- shut-upSkill
- statusSkill
- teach-meSkill
- testSkill
- unpack-problemSkill
- validate-ideaSkill
- validation-patternsSkill
The file
We split this skill into the rules it gives an agent
9 rules. 0 are common, 2 are distinctive, and 7 are very specific to this project.
0
Common
Most of the 35 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 58
Ask the user or extract from context:
- Very specific: line 68
Check .agents/references/agent-contracts.md — if an existing agent already owns the responsibility, extend that agent instead (or use …
- Very specific: line 69
Check .agents/references/socratic/ for an existing per-agent socratic file.
- Very specific: line 73
Write .agents/agents/<name>.md modeled on an existing agent (e.g., developer.md or qa-engineer.md):
- Very specific: line 140
Keep it minimal and role-specific.
- Very specific: line 144
Run the standard enrichment scripts to inject canonical sections.
- Very specific: line 156
Create .agents/references/socratic/<name>.md modeled on an existing per-agent socratic file (see socratic/developer.md): anti-sycophancy …
- Distinctive: line 160
Add the new agent to every catalog that lists personas:
- Very specific: line 210
Skipping verification: Always run resolve_agents.js and a smoke invocation before declaring the agent done.
“Common” is measured: kept by at least 6 in 10 of the 35 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Create Agent — Agent Persona Authoring
What this skill does
Guides you through creating a new Vespyr agent persona from intent to verified, registered agent file. You specify the role, responsibilities, and boundaries; the skill scaffolds .agents/agents/<name>.md following Vespyr conventions (frontmatter, identity block, persona voice, citation protocol, Socratic stance, workflow position, memory wiring), enriches it with the standard add-* scripts, registers it across the catalog files, and verifies it resolves.
When to use
- "Create a new agent that reviews localization strings"
- "Add an agent persona for accessibility auditing"
- "Scaffold a support agent for handling user tickets"
When NOT to use
- To customize an EXISTING agent's settings (model, temperature, capabilities — use
/customize-agent) - To create or modify a skill (use
/create-skillor/customize-skill) - For one-off role-play in a single prompt (just instruct the agent in your prompt)
Prerequisites
- A clear role for the new agent (what it owns, what it does NOT own)
- The repo uses the Vespyr structure:
.agents/agents/<name>.mdper persona
Anatomy of a Vespyr Agent
.agents/agents/<name>.md
├── Frontmatter (YAML): name, icon, capabilities, origin, model,
│ description, version, last_updated, human_name, mode, temperature,
│ permission, tools, upstream_dependencies, downstream_consumers
├── <!-- IDENTITY: do not edit --> block (persona voice, principles,
│ UTTERLY SATISFIED culture, See the Unseen, response prefix)
├── Citation Protocol — DNA 5 (cite real sources inline [N] + footnote [^N]:, no source no fact)
├── Socratic Stance (what it challenges, what changes its mind, escalation)
├── Response format (begin every response with <emoji> <Name>:
├── Workflow Position (upstream/downstream agent contracts)
└── Shared Memory (session-start / session-write orchestration calls)
.agents/references/socratic/<name>.md # per-agent anti-sycophancy rulesWorkflow
Step 1: Capture Intent (Socratic Probes)
Ask the user or extract from context:
- Role & name? (e.g.,
localization-reviewer,accessibility-auditor) - Primary responsibilities? (what it owns — see
agent-contracts.md) - What does it explicitly NOT own? (delegation boundaries)
- Core outputs & artifacts? (where deliverables land)
- Upstream/downstream agents? (who feeds it, who consumes its work)
Step 2: Deduplication & Collision Check
- List
.agents/agents/— ensure the role doesn't already exist under another name. - Check
.agents/references/agent-contracts.md— if an existing agent already owns the responsibility, extend that agent instead (or use/customize-agentfor settings). - Check
.agents/references/socratic/for an existing per-agent socratic file.
Step 3: Scaffold the Agent File
Write .agents/agents/<name>.md modeled on an existing agent (e.g., developer.md or qa-engineer.md):
---
name: <name>
icon: 🤖
capabilities:
- <capability-1>
origin: custom
channeled_mentor: <Channeled Mentor Name>
model: -
description: <one-line role summary>
version: "1.0"
last_updated: <YYYY-MM-DD>
human_name: <Human Name>
mode: subagent
temperature: 0.2
permission:
read: allow
glob: allow
grep: allow
tools: {}
upstream_dependencies:
- "@<feeder-agent>"
downstream_consumers:
- "@<consumer-agent>"
---
<!-- IDENTITY: do not edit — hardcoded persona -->
# @<name> (<Human Name>)
## Persona voice
...
## Persona principles (non-negotiable)
- ...
## UTTERLY SATISFIED Culture (non-negotiable)
- Follow `.agents/references/utter-satisfaction.md`; never hand off with unresolved blocking concerns.
## See the Unseen (non-negotiable)
- Begin every response with `<emoji> <Name>:` so agent transitions are never hidden
<!-- /IDENTITY -->
## Response format
Begin every response with `🤖 <Human Name>:` so the active persona is explicit.
## Citation Protocol — DNA 5: No Source, No Fact
Follow `.agents/references/citation-format.md` and `.agents/references/vespyr-dna.md#dna-5`; every factual claim from a real source gets an inline `[N]` + footnote `[^N]:`, never fabricate — mark `[Source: unverified]` instead.
## Socratic Stance
**What I challenge:** {X}
**What "change my mind" looks like:** {evidence that would overturn}
**When to escalate vs. accept:** {boundary}
## Workflow Position
| Upstream | Downstream |
|---|---|
| @x | @y |
## Shared Memory
**Session Start (Mandatory):**
```
node .agents/scripts/orchestrator_state.js session-start --agent <name> --domain <domain> --goal "{goal}"
```Keep it minimal and role-specific. Do not copy blocks the agent doesn't need. Replace every placeholder before continuing: icon must be a single emoji, description at least 10 characters, version semver, and origin must be core, custom, or module:<name> — these are enforced by validate_frontmatter.js.
Step 4: Enrich with Standard Blocks
Run the standard enrichment scripts to inject canonical sections. They take no arguments, process all agents in .agents/agents/, and are idempotent (they only add missing sections):
node .agents/scripts/add-identity-block.js
node .agents/scripts/add-citation-protocol.js
node .agents/scripts/add-pipeline-bookkeeping.jsRole-scoped script (add-socratic-stance.js) only applies to agents with a defined stance entry and will skip a new custom agent — write the ## Socratic Stance section manually if the role is reasoning-based. (add-delegation-contract.js deleted 2026-09-09: it injected the banned trio mapping. Write capability-based delegation manually.)
Step 5: Write the Per-Agent Socratic Reference
Create .agents/references/socratic/<name>.md modeled on an existing per-agent socratic file (see socratic/developer.md): anti-sycophancy rules ("never say…"), "always" behaviors, probing principles, and seed examples adapted to the role.
Step 6: Register the Agent
Add the new agent to every catalog that lists personas:
- AGENTS.md — the Core Agent Personas table (name, focus area, core outputs)
.agents/references/agent-contracts.md— owns / does NOT own responsibilities.agents/workflow.md— any workflow tables referencing the agent.agents/references/phase-table.md— if the agent owns a phase deliverable
Step 7: Verify
- Confirm the agent validates — after replacing all placeholders, run:
The agent file must appear in the pass list (required fields, identity block, response format).node .agents/scripts/validate_frontmatter.js - Confirm the persona is present in the roster (
resolve_agents.jslists all agents and ignores arguments):node .agents/scripts/resolve_agents.js - Load the persona in the harness (
@.agents/agents/<name>.md) and smoke-test one invocation. - Confirm the identity block, socratic stance, and citation protocol are present.
- Confirm the agent writes its deliverables to its designated path under
artifacts/output/<phase-or-topic>/.
Step 8: Log the Creation
Append to artifacts/memory/active-decisions.md:
### [DECISION] Created Agent: @<name> [date: YYYY-MM-DD]
**Purpose:** {summary of role}
**Path:** .agents/agents/<name>.md
**Socratic file:** .agents/references/socratic/<name>.mdTroubleshooting & Edge Cases
| Issue | Root Cause | Solution |
resolve_agents.js fails to parse | Malformed YAML frontmatter (bad indentation, unquoted special chars) | Fix frontmatter; validate against an existing agent file |
| Agent doesn't load in harness | File not at .agents/agents/<name>.md or name mismatch with folder | File name MUST match name field (kebab-case) |
| Missing standard sections | Enrichment scripts not run | Run the add-* scripts from Step 4 |
| Role overlaps existing agent | No collision check performed | Re-check agent-contracts.md; extend the existing agent or narrow the new role's contract |
Anti-patterns
- Skipping the collision check. Duplicate agents create ambiguous delegation and confused orchestrator routing.
- Over-bloated personas. Copying every block from a template agent adds noise the new role doesn't need — keep it to what the role actually owns.
- Forgetting registration. An unregistered agent runs fine in isolation but breaks squad routing, delegation audits, and the phase pipeline.
- Skipping verification. Always run
resolve_agents.jsand a smoke invocation before declaring the agent done.
Output Artifacts
.agents/agents/<name>.md(the agent persona).agents/references/socratic/<name>.md(per-agent Socratic rules)- Updated catalogs:
AGENTS.md,agent-contracts.md,workflow.md,phase-table.md(as applicable) artifacts/memory/active-decisions.md(audit log entry)
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

