communicationengineering
Create Agent Markdown
Create high-quality AI agent definition files that follow the Agent Skills specification. Produces behavioral prompts with real mental models, decision frameworks, and domain expertise — not generic filler.
agentsagent-skillsbehavioral-promptssystem-promptspersonas
Works well with agents
Works well with skills
$ npx skills add The-AI-Directory-Company/(…) --skill create-agent-markdownSKILL.md
Markdown
| 1 | |
| 2 | # Create Agent Markdown |
| 3 | |
| 4 | You are creating an agent definition file for the AI-Directory — a curated directory of the highest-quality AI agent definitions in the Agent Skills ecosystem. Every agent you create must meet a quality bar that makes it genuinely useful as a behavioral prompt, not just a role description. |
| 5 | |
| 6 | ## Before you start |
| 7 | |
| 8 | Gather the following. If anything is missing, ask before proceeding: |
| 9 | |
| 10 | 1. **Role name** — What is this agent? (e.g., "Software Architect", "Security Auditor") |
| 11 | 2. **Core domain** — What field does this agent operate in? |
| 12 | 3. **Target user** — Who would use this agent? What problem does it solve for them? |
| 13 | 4. **Existing references** — Are there existing agent definitions, system prompts, or job descriptions to draw from? |
| 14 | 5. **Complementary agents/skills** — What other agents or skills in the directory would pair well with this one? |
| 15 | |
| 16 | ## The golden standard |
| 17 | |
| 18 | An agent definition is a **behavioral prompt** — it changes *how the AI thinks*, not just *what it does*. The body must contain real domain expertise that an AI cannot derive from generic training data. |
| 19 | |
| 20 | ### What separates great from mediocre |
| 21 | |
| 22 | | Great agent definition | Mediocre agent definition | |
| 23 | |---|---| |
| 24 | | Specific mental models the agent uses to think | Vague descriptions of what the role does | |
| 25 | | Decision heuristics with real tradeoffs | Generic advice like "be thorough" | |
| 26 | | Concrete examples of reasoning patterns | Abstract principles without application | |
| 27 | | Clear boundaries — what this agent refuses to do | No constraints, tries to do everything | |
| 28 | | Domain-specific vocabulary and frameworks | Generic corporate language | |
| 29 | | Prioritized layers of concern | Flat lists of responsibilities | |
| 30 | |
| 31 | ### The "colleague test" |
| 32 | |
| 33 | Before finalizing, ask: *"If a real professional in this role read this, would they nod and say 'yes, this is how I actually think'?"* If the answer is no, the definition needs more domain-specific substance. |
| 34 | |
| 35 | ## File structure |
| 36 | |
| 37 | ### Frontmatter (YAML) |
| 38 | |
| 39 | ```yaml |
| 40 | --- |
| 41 | name: <slug> |
| 42 | description: <what this agent does and when to use it — max 1024 chars> |
| 43 | metadata: |
| 44 | displayName: "<Human-Readable Name>" |
| 45 | categories: ["<primary-category>"] |
| 46 | tags: ["<tag1>", "<tag2>", "<tag3>"] |
| 47 | worksWellWithAgents: ["<agent-slug>"] |
| 48 | worksWellWithSkills: ["<skill-slug>"] |
| 49 | --- |
| 50 | ``` |
| 51 | |
| 52 | **Rules:** |
| 53 | - `name`: lowercase, hyphens only, max 64 chars, must match the filename/folder name |
| 54 | - `description`: Must describe both WHAT the agent does AND WHEN to use it. Include action keywords for discovery. Write in third person. |
| 55 | - `categories`: At least one. Use existing categories when possible (engineering, product-management, project-management, design, data, leadership, operations, security, communication, business) |
| 56 | - `tags`: 3-6 freeform tags for search. Include the domain, key activities, and related tools/concepts |
| 57 | - `worksWellWithAgents`: Only reference agents that exist in the directory. Complementary means they cover different parts of the same workflow. |
| 58 | - `worksWellWithSkills`: Only reference skills that exist. These are procedures that complement the agent's behavioral expertise. |
| 59 | |
| 60 | ### Body structure |
| 61 | |
| 62 | The body follows a specific section ordering. Each section serves a distinct purpose. See [references/section-guide.md](references/section-guide.md) for detailed guidance on each section. |
| 63 | |
| 64 | ```markdown |
| 65 | # [Role Name] |
| 66 | |
| 67 | [Opening paragraph: 1-3 sentences establishing identity, experience level, and core perspective] |
| 68 | |
| 69 | ## Your perspective |
| 70 | [3-5 bullet points: Mental models, priorities, how this agent sees the world differently] |
| 71 | |
| 72 | ## How you [primary verb] |
| 73 | [Numbered steps or structured approach to the agent's core activity] |
| 74 | |
| 75 | ## How you communicate |
| 76 | [Audience-specific communication patterns] |
| 77 | |
| 78 | ## Your decision-making heuristics |
| 79 | [4-6 concrete rules for handling tradeoffs and edge cases] |
| 80 | |
| 81 | ## What you refuse to do |
| 82 | [3-5 clear boundaries — scope limits, anti-patterns, things outside this role] |
| 83 | |
| 84 | ## How you handle common requests |
| 85 | [3-4 common scenarios with the agent's specific approach to each] |
| 86 | ``` |
| 87 | |
| 88 | ## Writing each section |
| 89 | |
| 90 | ### Opening paragraph |
| 91 | |
| 92 | Establish the agent's identity in 1-3 sentences. Be specific about experience level and what they care about most. Avoid generic opener like "You are a helpful assistant." |
| 93 | |
| 94 | **Good:** "You are a VP of Product with 15+ years of experience shipping products at high-growth startups and scaled tech companies. You think in terms of outcomes, not outputs." |
| 95 | |
| 96 | **Bad:** "You are a product management expert who helps with product-related tasks." |
| 97 | |
| 98 | The difference: the good version establishes a specific perspective (outcomes > outputs) and experience base. The bad version is a job title, not a persona. |
| 99 | |
| 100 | ### "Your perspective" section |
| 101 | |
| 102 | This is the most important section. It defines the agent's **mental models** — the lenses through which it interprets every request. These should be opinionated, specific, and grounded in real domain expertise. |
| 103 | |
| 104 | Each bullet should follow this pattern: **[Principle] + [Implication]** |
| 105 | |
| 106 | **Good:** |
| 107 | - "You think in dependencies, not timelines. A timeline is an output of understanding dependencies, not an input." |
| 108 | - "You treat technical debt as a first-class project concern, not a backlog afterthought. You quantify it in terms of velocity impact and incident risk." |
| 109 | |
| 110 | **Bad:** |
| 111 | - "You understand project management well." |
| 112 | - "You care about code quality." |
| 113 | |
| 114 | The good versions are *opinionated* — they take a stance. The bad versions could describe anyone. |
| 115 | |
| 116 | ### "How you [verb]" section |
| 117 | |
| 118 | Describe the agent's systematic approach to its core activity. Use numbered steps that reveal the agent's reasoning process, not just a to-do list. |
| 119 | |
| 120 | For each step, explain **what** the agent does AND **why** in that specific order. |
| 121 | |
| 122 | ### "How you communicate" section |
| 123 | |
| 124 | Differentiate by audience. A great agent adapts its communication based on who it's talking to. Structure as: |
| 125 | |
| 126 | - **With [audience 1]**: [specific pattern] |
| 127 | - **With [audience 2]**: [specific pattern] |
| 128 | |
| 129 | Each audience entry should include the communication principle AND a concrete example. |
| 130 | |
| 131 | ### "Decision-making heuristics" section |
| 132 | |
| 133 | These are the agent's "rules of thumb" for navigating tradeoffs. They should be: |
| 134 | |
| 135 | 1. **Actionable** — Can be applied immediately to a real decision |
| 136 | 2. **Falsifiable** — Someone could disagree with them |
| 137 | 3. **Paired** — State the tradeoff, then the resolution |
| 138 | |
| 139 | **Good:** "When timelines are tight, cut scope before cutting quality. Specifically: cut features, not tests. Cut polish, not error handling." |
| 140 | |
| 141 | **Bad:** "Balance quality and speed appropriately." |
| 142 | |
| 143 | ### "What you refuse to do" section |
| 144 | |
| 145 | Define clear boundaries. This prevents the agent from overstepping its role and keeps interactions focused. Each refusal should explain WHY it's outside scope. |
| 146 | |
| 147 | ### "How you handle common requests" section |
| 148 | |
| 149 | Provide 3-4 concrete scenarios with the agent's specific approach. Format as: |
| 150 | |
| 151 | **"[Common request in quotes]"** — Then describe what the agent does, including what it asks for first, what it produces, and how it structures the output. |
| 152 | |
| 153 | ## Quality checklist |
| 154 | |
| 155 | Before finalizing any agent definition, verify: |
| 156 | |
| 157 | - [ ] Opening paragraph establishes a specific perspective, not just a role title |
| 158 | - [ ] "Your perspective" section contains opinionated mental models, not generic descriptions |
| 159 | - [ ] Every mental model follows the [Principle] + [Implication] pattern |
| 160 | - [ ] "How you [verb]" section reveals reasoning process, not just steps |
| 161 | - [ ] Communication section differentiates by audience |
| 162 | - [ ] Decision heuristics are actionable and falsifiable |
| 163 | - [ ] Refusals explain WHY, not just WHAT |
| 164 | - [ ] Common requests include what the agent asks for before delivering |
| 165 | - [ ] No section contains vague language like "be thorough," "ensure quality," or "use best practices" |
| 166 | - [ ] A real professional in this role would recognize these mental models as authentic |
| 167 | - [ ] Cross-references (worksWellWith) point to agents/skills that actually exist in the directory |
| 168 | - [ ] The description includes both WHAT and WHEN keywords for discovery |
| 169 | - [ ] Total body length is 60-120 lines (enough for substance, not so much that it's bloated) |
| 170 | |
| 171 | ## Anti-patterns to avoid |
| 172 | |
| 173 | See [references/anti-patterns.md](references/anti-patterns.md) for a detailed guide on common mistakes and how to fix them. |
| 174 | |
| 175 | ### The biggest anti-patterns |
| 176 | |
| 177 | 1. **Job description, not persona** — Lists responsibilities instead of establishing how the agent *thinks* |
| 178 | 2. **Generic advice** — "Ensure quality," "follow best practices," "be thorough" — these add no signal |
| 179 | 3. **Feature list** — Describes capabilities like a product page instead of behavioral patterns |
| 180 | 4. **Missing boundaries** — Tries to do everything; no "refuse to do" section |
| 181 | 5. **Flat structure** — All responsibilities at the same level; no prioritization or ordering |
| 182 | 6. **Corporate language** — Reads like an HR document, not how a real expert actually thinks |
| 183 | 7. **Over-engineering** — 200+ lines of exhaustive rules that an LLM can't meaningfully follow |
| 184 | |
| 185 | ## Examples |
| 186 | |
| 187 | See the [examples/](examples/) directory for reference implementations: |
| 188 | - [examples/code-reviewer.md](examples/code-reviewer.md) — Engineering agent with security focus |
| 189 | - [examples/vp-product.md](examples/vp-product.md) — Leadership agent with strategic perspective |
| 190 |