Documentation Index
Fetch the complete documentation index at: https://mintlify.com/pbakaus/impeccable/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Adding content to Impeccable involves creating source files, building, testing, and committing. The build system automatically transforms your content into formats for all 4 providers (Cursor, Claude Code, Gemini CLI, Codex CLI).Adding a Skill
Skills are reusable instruction sets that teach the AI how to perform specific tasks.1. Create the Source File
2. Add Frontmatter and Content
Skills follow the Agent Skills specification:3. Field Requirements
Required Fields:name: Skill identifier (1-64 chars, lowercase, numbers, hyphens only)description: What the skill provides (1-1024 chars)
license: License or attribution informationcompatibility: Environment requirements (1-500 chars)metadata: Arbitrary key-value pairsallowed-tools(experimental): Pre-approved tools list
4. Writing Skill Instructions
Good skill instructions:- Focus on one domain: Don’t try to do too much
- Be explicit: State what to do AND what NOT to do
- Include context: Explain why certain approaches are preferred
- Provide examples: Show concrete use cases
- Define success: Make clear what “done” looks like
5. Build and Test
- Copy the relevant
dist/output to a test project - Invoke the skill
- Verify it works as expected
- Test edge cases
6. Commit
Commit both source and generated files:Adding a Command
Commands are quick prompts users can invoke directly.1. Create the Source File
2. Add Frontmatter and Content
3. Field Requirements
Required Fields:name: Command identifierdescription: What the command does
args: Array of argument objectsname: Argument identifierdescription: What it’s forrequired: Boolean (defaults to false)
4. Writing Command Prompts
Good command prompts:- Work without substitution: Cursor doesn’t support arguments, so write prompts that work by appending user input
- Use clear placeholders:
{{argname}}gets transformed to provider-specific syntax - Provide context: Explain the task clearly
- Be concise: Commands should be quick to invoke
5. Argument Transformation
Placeholders are transformed for each provider:- Cursor: No transformation (arguments appended to prompt)
- Claude Code:
{{argname}}kept as-is - Gemini:
{{argname}}→{{args}}(single args string) - Codex:
{{argname}}→$ARGNAME(uppercase)
6. Build and Test
- Copy outputs to test projects
- Try with and without arguments
- Verify output quality
- Test edge cases (missing args, unusual inputs)
7. Commit
Commit both source and generated files:Testing Checklist
- Source file has valid YAML frontmatter
- Description is clear and concise
- Build completes without errors
- Works in at least one provider
- Prompt works without argument substitution (for Cursor)
- Examples are accurate and helpful
- Edge cases handled gracefully
Common Mistakes
YAML Formatting Errors
Frontmatter Delimiters
Description Length
Build Troubleshooting
YAML Parsing Errors
- Check frontmatter indentation (YAML is indent-sensitive)
- Ensure
---delimiters are on their own lines - Verify colons have spaces after them (
key: value)
Output Doesn’t Match Expectations
- Check the transformer function for your provider in
scripts/lib/transformers/ - Verify source file has correct frontmatter structure
- Run
bun run rebuildto ensure clean build
Provider Doesn’t Recognize Files
- Check installation path for your provider
- Verify file naming matches provider requirements
- Consult provider’s documentation
Best Practices
Skill Best Practices
- One domain, one skill: Don’t combine unrelated concerns
- Clear instructions: Write for clarity, not cleverness
- Examples over explanation: Show, don’t just tell
- State constraints: What NOT to do is as important as what to do
- Test thoroughly: Try edge cases and unusual inputs
Command Best Practices
- Clear purpose: User should know exactly what it does
- Flexible design: Work with or without arguments
- Concise prompts: Commands should be quick to invoke
- Good defaults: Provide sensible behavior when args are missing
- Cross-provider testing: Verify works in multiple tools
Getting Help
Need help adding content?- Check Architecture for system design
- See Build System for build details
- Review existing skills/commands in
source/for examples - Open an issue on GitHub for specific questions
Related
- Contributing Overview - Getting started guide
- Architecture - System architecture
- Build System - Build system internals
