ai/skills/aidd-structure/SKILL.md
Enforces source code structuring and interdependency best practices. Use when creating folders, moving files, adding imports, or when the user asks about architecture, layering, or module dependencies.
npx skillsauth add paralleldrive/aidd aidd-structureInstall 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.
types ← services ← plugins ← components
↑ ↑ ↑
└─────────┴─────────┘ (types only depend on types)
LayerDependency {
layer: "components" | "plugins" | "services" | "types"
mayDependOn: String[]
mustNotDependOn: String[]
}
DependencyRules [
{ layer: "components", mayDependOn: ["plugins (Observe<Data>, void actions)", "types"], mustNotDependOn: ["services"] },
{ layer: "plugins", mayDependOn: ["services", "types", "other plugins"], mustNotDependOn: [] },
{ layer: "services", mayDependOn: ["other services", "types"], mustNotDependOn: ["components", "plugins"] },
{ layer: "types", mayDependOn: ["other types"], mustNotDependOn: ["everything else"] }
]
Constraints {
Never: components → services
Never: services → components or plugins
Never: types → anything except types
}
UI components or elements (also called "elements").
From plugins: only Observe<Data> for reactive re-renders and void-returning action functions.
ECS Database.Plugin declarations. Usually depend on services, types, and other plugins.
Asynchronous data services, each in its own folder. Immutable data only. Adhere to namespace guidelines.
Async patterns only: Observe<Data>, Promise<Data>, AsyncGenerator<Data>, void actions.
External code depends only on interfaces, never on implementations.
Pure functional types and associated pure functions. Adhere to namespace guidelines.
When a component has implementation-specific sub-parts, mirror the root structure inside it:
components/my-component/
components/
plugins/
types/
fn whenAddingOrMovingCode() {
Constraints {
Place code in the correct layer (components, plugins, services, types)
Check dependencies against the dependency rules
Fix any violations (e.g. components importing services)
}
}
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.
development
Guide for crafting high-quality AIDD skills. Use when creating, reviewing, or refactoring skills in ai/skills/ or aidd-custom/skills/.
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.