ai/skills/aidd-upskill/SKILL.md
Guide for crafting high-quality AIDD skills. Use when creating, reviewing, or refactoring skills in ai/skills/ or aidd-custom/skills/.
npx skillsauth add paralleldrive/aidd aidd-upskillInstall 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.
Expert skill author. Craft skills that are clear, minimal, and recomposable, giving agents exactly the context they need — nothing more.
Skill components: ai/skills/aidd-sudolang-syntax, ai/skills/aidd-please (provides RTC think())
SudoLang spec: Generated skills must use SudoLang syntax for constraints, commands, functions, composition pipelines, and any required typed interfaces, as needed.
Constraints { Prefer natural language in markdown format Use SudoLang interfaces, pattern matching, and /commands for formal specification (logic is deterministic) => CLI tool or compiled Bun bundle (logic requires judgment) => AI prompt (a candidate abstraction cannot be named) => it is not an abstraction yet (two or more skills share the same f) => extract a shared abstraction }
Commands { /aidd-upskill create [name] — scaffold a new skill at aidd-custom/skills/aidd-[name]/SKILL.md /aidd-upskill review [target] — evaluate a skill against the criteria in this guide }
This skill is itself an example of the structure it prescribes.
import references/types.md import references/process.md
The createSkill and reviewSkill pipelines — including all step definitions — are defined in
references/process.md (imported above). Read that file for the full authoring and review
workflows.
ai/skills/aidd-<verbOrRoleBasedNoun>/
├── SKILL.md # Required: frontmatter + instructions
├── README.md # Optional: what the skill is, why it's useful, command reference
├── scripts/ # Optional: CLI tools
├── references/ # Optional: detailed reference docs
└── assets/ # Optional: templates, data files
name + description — loaded at startup for all skillsSKILL.md body — loaded on activationscripts/, references/, assets/ — loaded on demandKeep SKILL.md concise — run validate-skill to check thresholds. Move reference material to references/. Use import $referenceFile to link it.
f: Input → Output
Every skill maps input context to output or action. Use this as the primary design lens.
Two skills sharing the same f should share the same abstraction:
f, name it, hide itf: A → B
g: B → C
h: A → C ← h hides B. This is a good abstraction.
"Simplicity is removing the obvious and adding the meaningful." — John Maeda
f? Name it. If you can't name it, it's not an abstraction yet.f deterministic? See CLI vs. AI prompt in Constraints above.Use defaults wherever the default is obvious. Callers supply only what is meaningfully different. If every caller passes the same value, it's a default waiting to be named.
Use Riteway AI to write eval tests for skill commands. The Riteway AI skill may be available as aidd-riteway-ai in your project's ai/skills/ directory.
Core principle: never mix thinking and effects in a single /command. Break commands into sub-commands or separate skills so every thinking stage is independently testable.
(command involves thinking + side effects) => split into sub-commands
(command is a pure thinking stage) => write an eval test
(command is a side effect only) => skip the test
Tests are .sudo files using SudoLang syntax:
# my-skill-test.sudo
import 'path/to/skill.md'
userPrompt = """
<the prompt or command input being tested>
"""
- Given <context>, should <expected thinking output>
- Given <context>, should <expected thinking output>
Run with:
riteway ai path/to/my-skill-test.sudo
documentation
Top tier author skill for delivering essential truths with the persuasive power to inspire positive change. Use when writing, reviewing, editing, or scoring any content.
testing
Reflective Thought Composition. Structured thinking pipeline for complex decisions, design evaluation, and deep analysis. Use when quality of reasoning matters more than speed of response.
tools
Teaches agents how to write correct riteway ai prompt evals (.sudo files) for multi-step flows that involve tool calls. Use when writing prompt evals, creating .sudo test files, or testing agent skills that use tools such as gh, GraphQL, or external APIs.
testing
Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs.