cognitives/skills/general/skill-creator/SKILL.md
Creates new AI agent skills following the SynapSync spec with enhanced templates and guidelines. Trigger: When user asks to create a new skill, add agent instructions, or document patterns for AI.
npx skillsauth add synapsync/synapse_registry skill-creatorInstall 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.
Before creating a skill, ALL of these must be YES:
If ANY answer is NO → Do NOT create the skill.
Avoid these mistakes when creating skills:
Problem: Creating a skill that just repeats what's already in project docs
Instead: Create a skill with a references/ folder pointing to existing docs, or add context that docs don't provide
Problem: Trigger: When using React (too broad)
Instead: Trigger: When writing React 18 components/hooks in .tsx (Vite, React Router) (specific)
Problem: Single skill trying to cover testing, deployment, AND monitoring
Instead: Create separate focused skills: myapp-test, myapp-deploy, myapp-monitor
auto_invokeProblem: Skills that should be auto-invoked but lack the metadata
Instead: Always add metadata.auto_invoke with clear action description
Problem: utils, helpers, common (meaningless)
Instead: typescript-types, api-client, error-handling (descriptive)
Problem: Code examples with foo, bar, example1
Instead: Real-world patterns with actual domain names and realistic use cases
Problem: Just showing code without explaining reasoning Instead: Add "Why:" after critical patterns to explain the rationale
allowed-toolsProblem: Skills that need specific tools but don't declare them
Instead: Always specify allowed-tools in frontmatter
Problem: Linking to external websites that may change
Instead: Use local paths (docs/developer-guide/*.mdx) or copy essential info
Problem: Creating skill but forgetting to synchronize the project
Instead: Always run synapsync sync after creating a new skill to update symlinks for all providers
{output_dir} is the directory where skill-creator stores generated skill scaffolds. Resolve it once at the start:
{output_dir} from those paths.agents/skill-creator/ in {cwd}.agents/skill-creator/{scope}/ (where {scope} is the topic, e.g., new-react-skill, api-validator)No AGENTS.md. No branded blocks. The output directory is resolved at runtime.
{output_dir}/skills/{category}/{skill-name}/
├── SKILL.md # Required - main skill file
├── assets/ # Optional - templates, schemas, examples
│ ├── template.py
│ └── schema.json
└── references/ # Optional - links to local docs
└── docs.md # Points to project docs
| Category | Purpose |
| -------------- | ------------------------------------------- |
| general | General-purpose skills, internal AI tooling |
| frontend | UI, React, CSS, components |
| backend | APIs, servers, backend services |
| database | Database queries, migrations, ORMs |
| devops | CI/CD, infrastructure, deployment |
| security | Security analysis, vulnerability scanning |
| testing | Testing strategies, QA automation |
| analytics | Data analysis, research, benchmarking |
| automation | Task automation, workflows |
| integrations | External services (Supabase, Stripe, etc.) |
Available Templates:
- Basic Template: assets/SKILL-TEMPLATE-BASIC.md - For simple, single-purpose skills
- Advanced Template: assets/SKILL-TEMPLATE-ADVANCED.md - For complex skills with workflows
When creating a new skill, use the appropriate template as your starting point.
Use for: Single-purpose skills without workflows, integrations, or complex configurations
File: assets/SKILL-TEMPLATE-BASIC.md
---
name: { skill-name }
description: >
{One-line description of what this skill does}.
Trigger: {When the AI should load this skill}.
license: Apache-2.0
metadata:
author: synapsync
version: "1.0"
scope: [root]
auto_invoke: "{Action that triggers this skill}"
allowed-tools: Read, Edit, Write, Glob, Grep, Bash
---
## Purpose
{One clear sentence explaining the skill's goal}
## When to Use This Skill
- {Concrete use case 1}
- {Concrete use case 2}
- {Concrete use case 3}
## Critical Patterns
{The most important rules - what AI MUST know}
## Code Examples
```{language}
{Minimal, focused examples with comments}
```
{Common commands with descriptions}
### Advanced Template (Complex Skills)
**Use for:** Skills with workflows, reports, integrations, or safety concerns
**File:** [assets/SKILL-TEMPLATE-ADVANCED.md](assets/SKILL-TEMPLATE-ADVANCED.md)
```markdown
---
name: {skill-name}
description: >
{One-line description of what this skill does}.
Trigger: {When the AI should load this skill}.
license: Apache-2.0
metadata:
author: synapsync
version: "1.0"
scope: [root]
auto_invoke: "{Action that triggers this skill}"
allowed-tools: Read, Edit, Write, Glob, Grep, Bash, Task
---
## Purpose
{One clear sentence explaining the skill's goal}
## When to Use This Skill
- {Concrete use case 1}
- {Concrete use case 2}
- {Concrete use case 3}
## Capabilities
{Detailed breakdown of what this skill can do}
### Category 1
- Capability A
- Capability B
### Category 2
- Capability C
- Capability D
## Supported Languages/Frameworks (if applicable)
### Primary Support
- **Technology 1**: Specific versions or variants
- **Technology 2**: Specific versions or variants
### Analysis/Implementation Techniques
- Technique 1
- Technique 2
## Workflow (for multi-step processes)
### Step 1: {Phase Name}
{Description of what happens in this phase}
### Step 2: {Phase Name}
{Description of what happens in this phase}
### Step 3: {Phase Name}
{Description of what happens in this phase}
## Command Examples
### Basic Usage
```bash
{Simple command example}
{More specific command example}
{Complex command with options}
{The most important rules - what AI MUST know}
{Minimal, focused examples with comments}
{skill-name}{skill-name}Solution: {How to fix it}
Solution: {How to fix it}
{Realistic example of what the skill produces}
| Type | Pattern | Examples |
|------|---------|----------|
| Generic skill | {technology} | pytest, playwright, typescript |
| Project-specific | {project}-{component} | myapp-api, myapp-ui, myapp-checks |
| Testing skill | {project}-test-{component} | myapp-test-api, myapp-test-ui |
| Workflow skill | {action}-{target} | skill-creator, jira-task |
Need code templates? → assets/
Need JSON schemas? → assets/
Need example configs? → assets/
Link to existing docs? → references/
Link to external guides? → references/ (with local path)
Key Rule: references/ should point to LOCAL files (docs/developer-guide/*.mdx), not web URLs.
Patterns apply to ANY project? → Generic skill (e.g., pytest, typescript)
Patterns are project-specific? → {project}-{name} skill
Generic skill needs project info? → Add references/ pointing to project docs
| Field | Required | Description |
|-------|----------|-------------|
| name | Yes | Skill identifier (lowercase, hyphens) |
| description | Yes | What + Trigger in one block |
| license | Yes | License identifier (e.g., Apache-2.0, MIT) |
| metadata.author | Yes | Author or organization name |
| metadata.version | Yes | Semantic version as string |
Simple, single-purpose skill? → Use Basic Template
Complex workflow with multiple steps? → Use Advanced Template
Skill produces reports/files? → Use Advanced Template
Skill has safety concerns? → Use Advanced Template
Skill integrates with other skills? → Use Advanced Template
When generating a new skill, include sections based on complexity:
.md files to {output_dir}, it MUST include a ## Obsidian Output Standard section with the appropriate Obsidian output rules inline (frontmatter schema, wiki-links, type taxonomy, bidirectional references)# Description of what this command does
command --flag argument
After creating a new skill, you should synchronize the project to make it available to AI assistants across all enabled providers.
Run the CLI sync command:
synapsync sync
The sync command performs a double synchronization:
1. Manifest Sync
{output_dir}/ filesystem for all cognitivesmanifest.json (the registry of installed cognitives)source: "local"manifest.json2. Provider Sync
.claude/skills/react-hooks → ../../{output_dir}/skills/frontend/react-hooksproject/
├── {output_dir}/ # Central storage (source of truth)
│ ├── manifest.json # Registry of all cognitives
│ └── skills/
│ └── frontend/
│ └── react-hooks/
│ └── SKILL.md # The actual skill file
│
├── .claude/ # Claude provider (symlinks)
│ └── skills/
│ └── react-hooks -> ../../{output_dir}/skills/frontend/react-hooks
│
└── .cursor/ # Cursor provider (symlinks)
└── skills/
└── react-hooks -> ../../{output_dir}/skills/frontend/react-hooks
You do NOT need to manually copy skills to each provider folder. The CLI creates symlinks from each provider's skills directory back to the central {output_dir}/skills/ folder.
IMPORTANT: Always run
synapsync syncafter creating, modifying, or deleting skills to keep your project synchronized with all providers.
Skill: typescript-types
Structure:
Why Basic Template: Single-purpose, no workflow, no integrations needed.
Skill: dead-code-hunter
Structure:
Why Advanced Template: Multi-step workflow, produces reports, has safety concerns, integrates with other skills.
Is pattern used repeatedly?
├─ No → Don't create skill
└─ Yes
└─ Is it project-specific or generic?
├─ Generic → Create generic skill (e.g., `pytest`)
└─ Project-specific
└─ Does existing documentation cover it?
├─ Yes → Create reference instead
└─ No → Create {project}-{component} skill
Does skill have multiple steps?
├─ Yes → Advanced Template
└─ No
└─ Does skill produce files/reports?
├─ Yes → Advanced Template
└─ No
└─ Does skill have safety concerns?
├─ Yes → Advanced Template
└─ No → Basic Template
Core sections (always):
- Purpose
- When to Use This Skill
- Critical Patterns
- Code Examples
- Commands
Optional sections (add if relevant):
- Capabilities → If skill has multiple features
- Workflow → If skill has multi-step process
- Command Examples (multiple levels) → If skill has varying complexity
- Configuration Options → If skill is configurable
- Supported Languages → If skill is language-specific
- Output Structure → If skill produces artifacts
- Best Practices → If skill has phases (Before/During/After)
- Integration with Other Skills → If skill composes with others
- Limitations → If skill has known constraints
- Safety Features → If skill can cause data loss/changes
- Troubleshooting → If skill has common issues
- Example Output → If output format matters
{output_dir}/skills/)name fielddescription with trigger keywordslicense fieldmetadata.author fieldmetadata.version fieldmetadata.scope field (usually [root])metadata.auto_invoke field (if applicable)allowed-tools fieldsynapsync sync after creation{output_dir}/skills/ for reference patternsdevelopment
Rigorous dead code audit for any module, folder, or file in any programming language. Detects orphan files never imported anywhere, classes/functions/ methods declared but never called, constructor parameters received but never consumed, unused imports/requires, private fields with no references, and commented-out code blocks. Use this skill whenever the user asks to: review unused code, clean up a feature after a refactor, find dead code, detect orphan files or classes, audit what can be deleted, find what's left over after a big change, or any variation of "what's not being used / what can I remove". Also triggers when the user says they made large changes and wants to know what became obsolete. IMPORTANT: This skill only reports — it never deletes anything. At the end it always offers to generate a removal plan with /plan.
tools
Registers new cognitives (skills, agents, prompts, workflows, tools) into the SynapSync Registry with proper structure, manifest, and registry index. Trigger: When the user says "GUARDA", "REGISTRA", "AGREGA" followed by a cognitive type and name, or asks to save/register/add a cognitive to the registry.
testing
Adaptive sprint workflow: deep analysis, evolving roadmap, one-at-a-time sprints, formal debt tracking, and re-entry prompts for context persistence. Trigger: When the user wants to analyze a project, create a roadmap, generate/execute sprints iteratively, or check project status and technical debt.
documentation
Session memory for AI agents — load context at the start, save sessions at the end, evolve knowledge across sessions. Like a professional's notebook: open before work, write a summary when done, persist between sessions. Trigger: When starting a session and need to recover context, or ending a session and want to save what happened.