From f195907bd72ae93749a53fa505f8f45f4fc8a6cf Mon Sep 17 00:00:00 2001 From: Jan Date: Tue, 10 Feb 2026 03:43:55 +0100 Subject: [PATCH 1/2] feat(skills): migrate all rules to Agent Skills spec format Migrate all ai/rules/*.mdc files to ai/skills/*/SKILL.md following the Agent Skills specification (agentskills.io). Each skill is prefixed with aidd- to avoid conflicts with built-in slash commands. Cross-references between rules are converted to relative path links (../sibling-skill/SKILL.md) instead of duplicating content. Command files remain in ai/commands/ and are referenced via ../../commands/. Skills created: - aidd-agent-orchestrator, aidd-autodux, aidd-error-causes - aidd-functional-requirements, aidd-javascript, aidd-javascript-io-effects - aidd-jwt-security, aidd-log, aidd-please, aidd-product-manager - aidd-redux-example, aidd-review, aidd-stack, aidd-sudolang-syntax - aidd-task-creator, aidd-tdd, aidd-timing-safe-compare - aidd-timing-safe-vulnerabilities, aidd-ui, aidd-user-testing --- ai/index.md | 4 + ai/rules/frameworks/redux/index.md | 15 +--- ai/rules/index.md | 70 --------------- ai/rules/javascript/index.md | 21 +---- ai/rules/security/index.md | 21 +---- ai/rules/sudolang/index.md | 9 +- ai/rules/user-testing.test.js | 30 ++++--- .../aidd-agent-orchestrator/SKILL.md} | 25 ++---- ai/skills/aidd-agent-orchestrator/index.md | 12 +++ .../aidd-autodux/SKILL.md} | 11 +-- ai/skills/aidd-autodux/index.md | 12 +++ .../aidd-error-causes/SKILL.md} | 7 +- ai/skills/aidd-error-causes/index.md | 12 +++ .../aidd-functional-requirements/SKILL.md} | 7 +- .../aidd-functional-requirements/index.md | 12 +++ .../aidd-javascript-io-effects/SKILL.md} | 19 ++-- ai/skills/aidd-javascript-io-effects/index.md | 12 +++ .../aidd-javascript/SKILL.md} | 9 +- ai/skills/aidd-javascript/index.md | 12 +++ .../aidd-jwt-security/SKILL.md} | 9 +- ai/skills/aidd-jwt-security/index.md | 12 +++ .../log.mdc => skills/aidd-log/SKILL.md} | 9 +- ai/skills/aidd-log/index.md | 12 +++ .../aidd-please/SKILL.md} | 21 ++--- ai/skills/aidd-please/index.md | 12 +++ .../aidd-product-manager/SKILL.md} | 6 +- ai/skills/aidd-product-manager/index.md | 12 +++ .../aidd-redux-example/SKILL.md} | 7 +- ai/skills/aidd-redux-example/index.md | 12 +++ .../aidd-review/SKILL.md} | 26 +++--- ai/skills/aidd-review/index.md | 12 +++ .../stack.mdc => skills/aidd-stack/SKILL.md} | 9 +- ai/skills/aidd-stack/index.md | 12 +++ .../aidd-sudolang-syntax/SKILL.md} | 10 +-- ai/skills/aidd-sudolang-syntax/index.md | 12 +++ .../aidd-task-creator/SKILL.md} | 15 ++-- ai/skills/aidd-task-creator/index.md | 12 +++ .../tdd.mdc => skills/aidd-tdd/SKILL.md} | 10 +-- ai/skills/aidd-tdd/index.md | 12 +++ .../aidd-timing-safe-compare/SKILL.md} | 6 +- ai/skills/aidd-timing-safe-compare/index.md | 12 +++ .../SKILL.md} | 4 +- .../aidd-timing-safe-vulnerabilities/index.md | 12 +++ ai/{rules/ui.mdc => skills/aidd-ui/SKILL.md} | 6 +- ai/skills/aidd-ui/index.md | 12 +++ .../aidd-user-testing/SKILL.md} | 9 +- ai/skills/aidd-user-testing/index.md | 12 +++ ai/skills/index.md | 86 +++++++++++++++++++ biome.json | 6 ++ 49 files changed, 467 insertions(+), 260 deletions(-) rename ai/{rules/agent-orchestrator.mdc => skills/aidd-agent-orchestrator/SKILL.md} (76%) create mode 100644 ai/skills/aidd-agent-orchestrator/index.md rename ai/{rules/frameworks/redux/autodux.mdc => skills/aidd-autodux/SKILL.md} (92%) create mode 100644 ai/skills/aidd-autodux/index.md rename ai/{rules/javascript/error-causes.mdc => skills/aidd-error-causes/SKILL.md} (94%) create mode 100644 ai/skills/aidd-error-causes/index.md rename ai/{rules/requirements.mdc => skills/aidd-functional-requirements/SKILL.md} (68%) create mode 100644 ai/skills/aidd-functional-requirements/index.md rename ai/{rules/javascript/javascript-io-network-effects.mdc => skills/aidd-javascript-io-effects/SKILL.md} (81%) create mode 100644 ai/skills/aidd-javascript-io-effects/index.md rename ai/{rules/javascript/javascript.mdc => skills/aidd-javascript/SKILL.md} (94%) create mode 100644 ai/skills/aidd-javascript/index.md rename ai/{rules/security/jwt-security.mdc => skills/aidd-jwt-security/SKILL.md} (93%) create mode 100644 ai/skills/aidd-jwt-security/index.md rename ai/{rules/log.mdc => skills/aidd-log/SKILL.md} (86%) create mode 100644 ai/skills/aidd-log/index.md rename ai/{rules/please.mdc => skills/aidd-please/SKILL.md} (65%) create mode 100644 ai/skills/aidd-please/index.md rename ai/{rules/productmanager.mdc => skills/aidd-product-manager/SKILL.md} (93%) create mode 100644 ai/skills/aidd-product-manager/index.md rename ai/{rules/frameworks/redux/example.mdc => skills/aidd-redux-example/SKILL.md} (77%) create mode 100644 ai/skills/aidd-redux-example/index.md rename ai/{rules/review.mdc => skills/aidd-review/SKILL.md} (61%) create mode 100644 ai/skills/aidd-review/index.md rename ai/{rules/stack.mdc => skills/aidd-stack/SKILL.md} (80%) create mode 100644 ai/skills/aidd-stack/index.md rename ai/{rules/sudolang/sudolang-syntax.mdc => skills/aidd-sudolang-syntax/SKILL.md} (91%) create mode 100644 ai/skills/aidd-sudolang-syntax/index.md rename ai/{rules/task-creator.mdc => skills/aidd-task-creator/SKILL.md} (90%) create mode 100644 ai/skills/aidd-task-creator/index.md rename ai/{rules/tdd.mdc => skills/aidd-tdd/SKILL.md} (93%) create mode 100644 ai/skills/aidd-tdd/index.md rename ai/{rules/security/timing-safe-compare.mdc => skills/aidd-timing-safe-compare/SKILL.md} (82%) create mode 100644 ai/skills/aidd-timing-safe-compare/index.md rename ai/{rules/security/timing-safe-compare-vulnerabilities.mdc => skills/aidd-timing-safe-vulnerabilities/SKILL.md} (93%) create mode 100644 ai/skills/aidd-timing-safe-vulnerabilities/index.md rename ai/{rules/ui.mdc => skills/aidd-ui/SKILL.md} (78%) create mode 100644 ai/skills/aidd-ui/index.md rename ai/{rules/user-testing.mdc => skills/aidd-user-testing/SKILL.md} (93%) create mode 100644 ai/skills/aidd-user-testing/index.md create mode 100644 ai/skills/index.md diff --git a/ai/index.md b/ai/index.md index 0419529..6654e0d 100644 --- a/ai/index.md +++ b/ai/index.md @@ -12,3 +12,7 @@ See [`commands/index.md`](./commands/index.md) for contents. See [`rules/index.md`](./rules/index.md) for contents. +### ๐Ÿ“ skills/ + +See [`skills/index.md`](./skills/index.md) for contents. + diff --git a/ai/rules/frameworks/redux/index.md b/ai/rules/frameworks/redux/index.md index 133d240..364b82a 100644 --- a/ai/rules/frameworks/redux/index.md +++ b/ai/rules/frameworks/redux/index.md @@ -2,17 +2,4 @@ This index provides an overview of the contents in this directory. -## Files - -### Autodux - -**File:** `autodux.mdc` - -When building Redux state management, use this guide for creating and transpiling Autodux dux objects - -### example - -**File:** `example.mdc` - -Autodux usage example showing Todo App implementation in SudoLang - +*This directory is empty.* diff --git a/ai/rules/index.md b/ai/rules/index.md index 6001f82..dea2400 100644 --- a/ai/rules/index.md +++ b/ai/rules/index.md @@ -22,79 +22,9 @@ See [`sudolang/index.md`](./sudolang/index.md) for contents. ## Files -### Aiden Agent Orchestrator - -**File:** `agent-orchestrator.mdc` - -Senior software engineer, product manager, project manager, and technical writer assistant with reflective thinking - -**Always active** - -### log - -**File:** `log.mdc` - -When documenting changes, use this guide for creating structured change logs with emoji categorization - -### Aiden - -**File:** `please.mdc` - -When user says "please", use this guide for general assistance, logging, committing, and proofing tasks - -**Always active** - -### ProductManager - -**File:** `productmanager.mdc` - -When planning features, user stories, user journeys, or conducting product discovery, use this guide for building specifications and user journey maps - -### Functional requirements - -**File:** `requirements.mdc` - -When writing functional requirements for a user story, use this guide for functional requirement specification - ### ๐Ÿ”ฌ **COMPREHENSIVE CODE REVIEW: Release Latest Tag Epic** **File:** `review-example.md` *No description available* -### ๐Ÿ”ฌ Code Review - -**File:** `review.mdc` - -Use this guide to conduct a thorough code review focusing on code quality, best practices, and adherence to project standards. - -### Tech Stack - -**File:** `stack.mdc` - -When implementing NextJS + React/Redux + Shadcn UI features, use this guide for tech stack guidance and best practices - -### Task Creator - -**File:** `task-creator.mdc` - -when the user asks you to complete a task, use this guide for systematic task/epic planning and execution - -### TDD Engineer - -**File:** `tdd.mdc` - -*No description available* - -### UI/UX Engineer - -**File:** `ui.mdc` - -When building user interfaces and user experiences, use this guide for beautiful and friendly UI/UX design - -### User Testing Generator - -**File:** `user-testing.mdc` - -Generate human and AI agent test scripts from user journey specifications - diff --git a/ai/rules/javascript/index.md b/ai/rules/javascript/index.md index e4cc0a4..2275388 100644 --- a/ai/rules/javascript/index.md +++ b/ai/rules/javascript/index.md @@ -2,23 +2,4 @@ This index provides an overview of the contents in this directory. -## Files - -### Error Causes Rule - -**File:** `error-causes.mdc` - -*No description available* - -### JavaScript IO Guide - -**File:** `javascript-io-network-effects.mdc` - -When you need to make network requests or invoke side-effects, use this guide for saga pattern implementation - -### JavaScript/TypeScript guide - -**File:** `javascript.mdc` - -*No description available* - +*This directory is empty.* diff --git a/ai/rules/security/index.md b/ai/rules/security/index.md index a1e216c..1fa44dc 100644 --- a/ai/rules/security/index.md +++ b/ai/rules/security/index.md @@ -2,23 +2,4 @@ This index provides an overview of the contents in this directory. -## Files - -### JWT Security Review - -**File:** `jwt-security.mdc` - -JWT security review - flag insecure patterns - -### Timing Safe Compare Vulnerabilities - -**File:** `timing-safe-compare-vulnerabilities.mdc` - -Vulnerability reports for timing-safe compare functions. Referenced by timing-safe-compare.mdc. - -### Constraint: Timing Safe Compare - -**File:** `timing-safe-compare.mdc` - -Security rule for timing-safe secret comparison. Use SHA3-256 hashing instead of timing-safe compare functions. - +*This directory is empty.* diff --git a/ai/rules/sudolang/index.md b/ai/rules/sudolang/index.md index b2f47e7..be78a83 100644 --- a/ai/rules/sudolang/index.md +++ b/ai/rules/sudolang/index.md @@ -2,11 +2,4 @@ This index provides an overview of the contents in this directory. -## Files - -### SudoLang Syntax - -**File:** `sudolang-syntax.mdc` - -A quick cheat sheet for SudoLang syntax. - +*This directory is empty.* diff --git a/ai/rules/user-testing.test.js b/ai/rules/user-testing.test.js index 9e2b7f9..66e55c6 100644 --- a/ai/rules/user-testing.test.js +++ b/ai/rules/user-testing.test.js @@ -9,14 +9,17 @@ import { parseFrontmatter } from "../../lib/index-generator.js"; const __dirname = path.dirname(fileURLToPath(import.meta.url)); describe("user-testing", () => { - describe("user-testing.mdc", () => { + describe("aidd-user-testing skill", () => { test("file exists with valid frontmatter", async () => { - const filePath = path.join(__dirname, "user-testing.mdc"); + const filePath = path.join( + __dirname, + "../skills/aidd-user-testing/SKILL.md", + ); const exists = await fs.pathExists(filePath); assert({ - given: "user-testing.mdc file", - should: "exist in ai/rules directory", + given: "aidd-user-testing SKILL.md file", + should: "exist in ai/skills directory", actual: exists, expected: true, }); @@ -25,33 +28,36 @@ describe("user-testing", () => { const frontmatter = parseFrontmatter(content); assert({ - given: "user-testing.mdc frontmatter", + given: "aidd-user-testing frontmatter", should: "have description field", actual: typeof frontmatter?.description, expected: "string", }); assert({ - given: "user-testing.mdc frontmatter", - should: "have alwaysApply set to false", - actual: frontmatter?.alwaysApply, - expected: false, + given: "aidd-user-testing frontmatter", + should: "have name field matching directory", + actual: frontmatter?.name, + expected: "aidd-user-testing", }); }); test("includes HumanScript and AgentScript templates", async () => { - const filePath = path.join(__dirname, "user-testing.mdc"); + const filePath = path.join( + __dirname, + "../skills/aidd-user-testing/SKILL.md", + ); const content = await fs.readFile(filePath, "utf-8"); assert({ - given: "user-testing.mdc content", + given: "aidd-user-testing content", should: "include HumanScript template", actual: content.includes("HumanScript:template"), expected: true, }); assert({ - given: "user-testing.mdc content", + given: "aidd-user-testing content", should: "include AgentScript template", actual: content.includes("AgentScript:template"), expected: true, diff --git a/ai/rules/agent-orchestrator.mdc b/ai/skills/aidd-agent-orchestrator/SKILL.md similarity index 76% rename from ai/rules/agent-orchestrator.mdc rename to ai/skills/aidd-agent-orchestrator/SKILL.md index 16703ec..ecd62f2 100644 --- a/ai/rules/agent-orchestrator.mdc +++ b/ai/skills/aidd-agent-orchestrator/SKILL.md @@ -1,16 +1,16 @@ --- -description: Senior software engineer, product manager, project manager, and technical writer assistant with reflective thinking -globs: -alwaysApply: true +name: aidd-agent-orchestrator +description: Agent orchestrator that coordinates specialized agents for software development tasks. Use when routing requests to the right agent or coordinating multi-domain tasks. --- + # Aiden Agent Orchestrator Act as a top-tier software engineer, product manager, project manager, and technical writer assistant with reflective thinking. Your job is to assist with software development projects. userRequestIncludes => - please => please.mdc + please => [please](../aidd-please/SKILL.md) -You are an agent orchestrator. You are responsible for coordinating the actions of the other agents, which are all available in `$projectRoot/ai/**/*.mdc` files: +You are an agent orchestrator. You are responsible for coordinating the actions of the other agents, which are all available in `$projectRoot/ai/skills/*/SKILL.md` files: Agents { please: when user says "please", use this guide for general assistance, logging, committing, and proofing tasks @@ -21,25 +21,14 @@ Agents { log: when documenting changes, use this guide for creating structured change logs with emoji categorization commit: when committing code, use this guide for conventional commit format with proper message structure autodux: when building Redux state management, use this guide for creating and transpiling Autodux dux objects - javascript-io-network-effects: when you need to make network requests or invoke side-effects, use this guide for saga pattern implementation + javascript-io-effects: when you need to make network requests or invoke side-effects, use this guide for saga pattern implementation ui: when building user interfaces and user experiences, use this guide for beautiful and friendly UI/UX design requirements: when writing functional requirements for a user story, use this guide for functional requirement specification } const taskPrompt = "# Guides\n\nRead each of the following guides for important context, and follow their instructions carefully: ${list guide file refs in markdown format}\n\n# User Prompt\n\n${prompt}" -withCLI() { - `cursor-agent --agent ${agent} --prompt $taskPrompt` -} - -directExecution() { - prompt yourself with the $taskPrompt: -} - handleInitialRequest() { use taskCreator to create and execute a task plan - match (contextRequirements = infer) { - > 1 guide => use withCLI - default => use directExecution - } + prompt yourself with the $taskPrompt } diff --git a/ai/skills/aidd-agent-orchestrator/index.md b/ai/skills/aidd-agent-orchestrator/index.md new file mode 100644 index 0000000..da379e2 --- /dev/null +++ b/ai/skills/aidd-agent-orchestrator/index.md @@ -0,0 +1,12 @@ +# aidd-agent-orchestrator + +This index provides an overview of the contents in this directory. + +## Files + +### Aiden Agent Orchestrator + +**File:** `SKILL.md` + +Agent orchestrator that coordinates specialized agents for software development tasks. Use when routing requests to the right agent or coordinating multi-domain tasks. + diff --git a/ai/rules/frameworks/redux/autodux.mdc b/ai/skills/aidd-autodux/SKILL.md similarity index 92% rename from ai/rules/frameworks/redux/autodux.mdc rename to ai/skills/aidd-autodux/SKILL.md index ce56a1b..5484623 100644 --- a/ai/rules/frameworks/redux/autodux.mdc +++ b/ai/skills/aidd-autodux/SKILL.md @@ -1,7 +1,8 @@ --- -description: When building Redux state management, use this guide for creating and transpiling Autodux dux objects -alwaysApply: false +name: aidd-autodux +description: Create and transpile Autodux Redux state management dux objects. Use when building Redux state management, defining reducers, action creators, or selectors. --- + # Autodux Act as a senior JavaScript, React, Redux, Next.js engineer. Your job is to build redux state handling for the application. @@ -13,8 +14,6 @@ help() { List available commands. } -welcome():length=1 line - transpile() { Constraints { Concise @@ -134,11 +133,9 @@ Autodux { Ignore the example usage, and use it only if the user asks for /help } /help - Explain how to use Autodux and list commands - /example - Example SudoLang source code in ai/rules/frameworks/redux/example.mdc + /example - Example SudoLang source code in [Autodux example](../aidd-redux-example/SKILL.md) /save - Return the Dux in SudoLang format. /test cases - List the test cases in SudoLang format: TestCases [ ... ] /add [prop] [value] to the Dux object /transpile } - -welcome("Welcome to Autodux. Supply a Dux object to get started. Feel free to ask for `/help`") \ No newline at end of file diff --git a/ai/skills/aidd-autodux/index.md b/ai/skills/aidd-autodux/index.md new file mode 100644 index 0000000..c9592ee --- /dev/null +++ b/ai/skills/aidd-autodux/index.md @@ -0,0 +1,12 @@ +# aidd-autodux + +This index provides an overview of the contents in this directory. + +## Files + +### Autodux + +**File:** `SKILL.md` + +Create and transpile Autodux Redux state management dux objects. Use when building Redux state management, defining reducers, action creators, or selectors. + diff --git a/ai/rules/javascript/error-causes.mdc b/ai/skills/aidd-error-causes/SKILL.md similarity index 94% rename from ai/rules/javascript/error-causes.mdc rename to ai/skills/aidd-error-causes/SKILL.md index 71a6028..c87ebaa 100644 --- a/ai/rules/javascript/error-causes.mdc +++ b/ai/skills/aidd-error-causes/SKILL.md @@ -1,7 +1,6 @@ --- -description: Use error-causes library for all error handling in JavaScript code -globs: **/*.js,**/*.jsx,**/*.ts,**/*.tsx -alwaysApply: false +name: aidd-error-causes +description: Use the error-causes library for structured error handling in JavaScript/TypeScript. Use when throwing errors, catching errors, defining error types, or implementing error routing. --- # Error Causes Rule @@ -82,7 +81,7 @@ const createMiddleware = ({ requiredParam } = {}) => { code: 'MISSING_REQUIRED_PARAM' }); } - + return async ({ request, response }) => { // middleware implementation }; diff --git a/ai/skills/aidd-error-causes/index.md b/ai/skills/aidd-error-causes/index.md new file mode 100644 index 0000000..bf0ca2f --- /dev/null +++ b/ai/skills/aidd-error-causes/index.md @@ -0,0 +1,12 @@ +# aidd-error-causes + +This index provides an overview of the contents in this directory. + +## Files + +### Error Causes Rule + +**File:** `SKILL.md` + +Use the error-causes library for structured error handling in JavaScript/TypeScript. Use when throwing errors, catching errors, defining error types, or implementing error routing. + diff --git a/ai/rules/requirements.mdc b/ai/skills/aidd-functional-requirements/SKILL.md similarity index 68% rename from ai/rules/requirements.mdc rename to ai/skills/aidd-functional-requirements/SKILL.md index 48c9915..685d908 100644 --- a/ai/rules/requirements.mdc +++ b/ai/skills/aidd-functional-requirements/SKILL.md @@ -1,7 +1,8 @@ --- -description: When writing functional requirements for a user story, use this guide for functional requirement specification -alwaysApply: false +name: aidd-functional-requirements +description: Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs. --- + # Functional requirements Act as a senior product manager to write functional requirements for a user story. @@ -11,4 +12,4 @@ type FunctionalRequirement = "Given $situation, should $jobToDo" Constraints { Focus on functional requirements to support the user journey. Avoid describing specific UI elements or interactions, instead, focus on the job the user wants to accomplish and the benefits we expect the user to achieve. -} +} \ No newline at end of file diff --git a/ai/skills/aidd-functional-requirements/index.md b/ai/skills/aidd-functional-requirements/index.md new file mode 100644 index 0000000..42176be --- /dev/null +++ b/ai/skills/aidd-functional-requirements/index.md @@ -0,0 +1,12 @@ +# aidd-functional-requirements + +This index provides an overview of the contents in this directory. + +## Files + +### Functional requirements + +**File:** `SKILL.md` + +Write functional requirements for a user story. Use when drafting requirements, specifying user stories, or when the user asks for functional specs. + diff --git a/ai/rules/javascript/javascript-io-network-effects.mdc b/ai/skills/aidd-javascript-io-effects/SKILL.md similarity index 81% rename from ai/rules/javascript/javascript-io-network-effects.mdc rename to ai/skills/aidd-javascript-io-effects/SKILL.md index ae55f00..733b441 100644 --- a/ai/rules/javascript/javascript-io-network-effects.mdc +++ b/ai/skills/aidd-javascript-io-effects/SKILL.md @@ -1,7 +1,8 @@ --- -description: When you need to make network requests or invoke side-effects, use this guide for saga pattern implementation -alwaysApply: false +name: aidd-javascript-io-effects +description: Isolate network I/O and side effects using the saga pattern with call and put. Use when making network requests, invoking side effects, or implementing Redux sagas. --- + # JavaScript IO Guide Act as a top-tier software engineer with serious JavaScript/TypeScript discipline to isolate network I/O and effects using the saga pattern. @@ -19,12 +20,12 @@ The saga itself never calls the effect function. Instead, it yields the effect o ## put(action) => { PUT: Action } -The `put` function is used to dispatch an action to the store. Use it to update tha state. +The `put` function is used to dispatch an action to the store. Use it to update the state. ## Action -An action is an object with a `type` property and a `payload` property. It's used in central dispatch architectures such as Redux to update the state in a way that provides obvservability into semantic user intents, a complete log of user actions, along with the specific components (slices) that originated the action. +An action is an object with a `type` property and a `payload` property. It's used in central dispatch architectures such as Redux to update the state in a way that provides observability into semantic user intents, a complete log of user actions, along with the specific components (slices) that originated the action. ## Saga Runtime @@ -40,23 +41,23 @@ e.g. ```javascript describe("signInSaga happy path", async assert => { const gen = signInUser(); - + assert({ given: "load user triggered", should: "call fetchUser with id", actual: gen.next().value, expected: call(fetchUser, "42") }); - + const fakeUser = { id: "42", name: "Pup" }; - + assert({ given: "second yield", should: "put the user data into the store", actual: gen.next(fakeUser).value, expected: put(userLoaded(fakeUser)) }); - + assert({ given: "completion", should: "be done", @@ -64,4 +65,4 @@ describe("signInSaga happy path", async assert => { expected: true }); }); -``` \ No newline at end of file +``` diff --git a/ai/skills/aidd-javascript-io-effects/index.md b/ai/skills/aidd-javascript-io-effects/index.md new file mode 100644 index 0000000..2896760 --- /dev/null +++ b/ai/skills/aidd-javascript-io-effects/index.md @@ -0,0 +1,12 @@ +# aidd-javascript-io-effects + +This index provides an overview of the contents in this directory. + +## Files + +### JavaScript IO Guide + +**File:** `SKILL.md` + +Isolate network I/O and side effects using the saga pattern with call and put. Use when making network requests, invoking side effects, or implementing Redux sagas. + diff --git a/ai/rules/javascript/javascript.mdc b/ai/skills/aidd-javascript/SKILL.md similarity index 94% rename from ai/rules/javascript/javascript.mdc rename to ai/skills/aidd-javascript/SKILL.md index a107707..f478fea 100644 --- a/ai/rules/javascript/javascript.mdc +++ b/ai/skills/aidd-javascript/SKILL.md @@ -1,7 +1,6 @@ --- -description: When writing JavaScript or TypeScript code, use this guide for JavaScript best practices and guidance -globs: **/*.js,**/*.jsx,**/*.ts,**/*.tsx -alwaysApply: false +name: aidd-javascript +description: JavaScript and TypeScript best practices and guidance. Use when writing, reviewing, or refactoring JavaScript or TypeScript code. --- # JavaScript/TypeScript guide @@ -16,7 +15,7 @@ Act as a top-tier software engineer with serious JavaScript/TypeScript disciplin ## Principles -- DOT +- DOT - YAGNI - KISS - DRY @@ -39,7 +38,7 @@ Constraints { Avoid `class` and `extends` as much as possible. Prefer composition of functions and data structures over inheritance. Keep related code together; group by feature, not by technical type. Put statements and expressions in positive form. - Use parallel code for parallel concepts. + Use parallel code for parallel concepts. Avoid null/undefined arguments; use options objects instead. Use concise syntax: arrow functions, object destructuring, array destructuring, template literals. Avoid verbose property assignments. bad: `const a = obj.a;` good: `const { a } = obj;` diff --git a/ai/skills/aidd-javascript/index.md b/ai/skills/aidd-javascript/index.md new file mode 100644 index 0000000..b3a7f5b --- /dev/null +++ b/ai/skills/aidd-javascript/index.md @@ -0,0 +1,12 @@ +# aidd-javascript + +This index provides an overview of the contents in this directory. + +## Files + +### JavaScript/TypeScript guide + +**File:** `SKILL.md` + +JavaScript and TypeScript best practices and guidance. Use when writing, reviewing, or refactoring JavaScript or TypeScript code. + diff --git a/ai/rules/security/jwt-security.mdc b/ai/skills/aidd-jwt-security/SKILL.md similarity index 93% rename from ai/rules/security/jwt-security.mdc rename to ai/skills/aidd-jwt-security/SKILL.md index 1a19239..d272850 100644 --- a/ai/rules/security/jwt-security.mdc +++ b/ai/skills/aidd-jwt-security/SKILL.md @@ -1,15 +1,16 @@ --- -description: JWT security review - flag insecure patterns -alwaysApply: false +name: aidd-jwt-security +description: JWT security review patterns. Use when reviewing or implementing authentication code, token handling, session management, or when JWT is mentioned. --- + # JWT Security Review **AVOID JWT if you can.** Prefer opaque tokens with server-side sessions. Patterns { ## Session State - any(refresh token rotation, refresh reuse detection, jti denylist, jti revocation, - token bound to session, token bound to device, logout invalidates token server-side) + any(refresh token rotation, refresh reuse detection, jti denylist, jti revocation, + token bound to session, token bound to device, logout invalidates token server-side) => Critical: Prefer opaque tokens with server-side sessions. You're tracking state anyway. ## Storage & Transport diff --git a/ai/skills/aidd-jwt-security/index.md b/ai/skills/aidd-jwt-security/index.md new file mode 100644 index 0000000..5bc962c --- /dev/null +++ b/ai/skills/aidd-jwt-security/index.md @@ -0,0 +1,12 @@ +# aidd-jwt-security + +This index provides an overview of the contents in this directory. + +## Files + +### JWT Security Review + +**File:** `SKILL.md` + +JWT security review patterns. Use when reviewing or implementing authentication code, token handling, session management, or when JWT is mentioned. + diff --git a/ai/rules/log.mdc b/ai/skills/aidd-log/SKILL.md similarity index 86% rename from ai/rules/log.mdc rename to ai/skills/aidd-log/SKILL.md index bfc756d..d63df5c 100644 --- a/ai/rules/log.mdc +++ b/ai/skills/aidd-log/SKILL.md @@ -1,7 +1,9 @@ --- -description: When documenting changes, use this guide for creating structured change logs with emoji categorization -alwaysApply: false +name: aidd-log +description: Document completed epics in a structured changelog with emoji categorization. Use when the user asks to log changes, update the changelog, or after completing a significant feature or epic. +allowed-tools: Bash(git:*) --- + # log Act as a senior software engineer to log completed epics using the following template: @@ -53,7 +55,6 @@ Constraints { Omit the "epic" from the description. } - gitChanges() { git add . git --no-pager diff --cached @@ -65,4 +66,4 @@ planChanges() { detectChanges() { gitChanges |> planChanges |> logDetectedChanges -} \ No newline at end of file +} diff --git a/ai/skills/aidd-log/index.md b/ai/skills/aidd-log/index.md new file mode 100644 index 0000000..eb4be54 --- /dev/null +++ b/ai/skills/aidd-log/index.md @@ -0,0 +1,12 @@ +# aidd-log + +This index provides an overview of the contents in this directory. + +## Files + +### log + +**File:** `SKILL.md` + +Document completed epics in a structured changelog with emoji categorization. Use when the user asks to log changes, update the changelog, or after completing a significant feature or epic. + diff --git a/ai/rules/please.mdc b/ai/skills/aidd-please/SKILL.md similarity index 65% rename from ai/rules/please.mdc rename to ai/skills/aidd-please/SKILL.md index 8b2b3db..8162ba7 100644 --- a/ai/rules/please.mdc +++ b/ai/skills/aidd-please/SKILL.md @@ -1,7 +1,8 @@ --- -description: When user says "please", use this guide for general assistance, logging, committing, and proofing tasks -alwaysApply: true +name: aidd-please +description: General AI assistant for software development projects. Use when user says "please" or needs general assistance, logging, committing, and proofing tasks. --- + # Aiden Act as a top-tier senior software engineer, product manager, project manager, and technical writer. Your job is to assist with software development projects. @@ -12,7 +13,7 @@ You are a SoTA AI agent system with access to advanced tools and computational r Think() deeply when a complex task is presented. -Read the project README.md and stack.mdc before responding. +Read the project README.md and [stack guide](../aidd-stack/SKILL.md) before responding. UnrecognizedCommand => check the agent orchestrator for relevant instructions. @@ -33,15 +34,15 @@ Options { } Commands { - โ“ /help - List commands from please.mdc and report the available commands to the user without modifying any files - ๐Ÿ“ /log - use log.mdc to collect salient changes, and log them to the activity-log.md. - ๐Ÿ’พ /commit - use commit.md to commit the changes to the repository. - ๐Ÿ“‹ /plan - review plan.md to identify priorities and suggest next steps to the user -d 10 - ๐Ÿ” /discover - use productmanager.mdc to discover a user journey, user story, or feature. + โ“ /help - List commands and report the available commands to the user without modifying any files + ๐Ÿ“ /log - use [log guide](../aidd-log/SKILL.md) to collect salient changes, and log them to the activity-log.md. + ๐Ÿ’พ /commit - use [commit guide](../../commands/commit.md) to commit the changes to the repository. + ๐Ÿ“‹ /plan - review [plan](../../commands/plan.md) to identify priorities and suggest next steps to the user -d 10 + ๐Ÿ” /discover - use [product manager](../aidd-product-manager/SKILL.md) to discover a user journey, user story, or feature. โœ… /task - use the task creator to plan and execute a task epic โš™๏ธ /execute - use the task creator to execute a task epic ๐Ÿ”ฌ /review - conduct a thorough code review focusing on code quality, best practices, and adherence to project standards - ๐Ÿงช /user-test - use user-testing.mdc to generate human and AI agent test scripts from user journeys + ๐Ÿงช /user-test - use [user testing](../aidd-user-testing/SKILL.md) to generate human and AI agent test scripts from user journeys ๐Ÿค– /run-test - execute AI agent test script in real browser with screenshots } @@ -53,4 +54,4 @@ Constraints { Do ONE THING at a time, get user approval before moving on. BEFORE attempting to use APIs for which you are not 99.9% confident, try looking at the documentation for it in the installed module README, or use web search if necessary. -} \ No newline at end of file +} diff --git a/ai/skills/aidd-please/index.md b/ai/skills/aidd-please/index.md new file mode 100644 index 0000000..5444647 --- /dev/null +++ b/ai/skills/aidd-please/index.md @@ -0,0 +1,12 @@ +# aidd-please + +This index provides an overview of the contents in this directory. + +## Files + +### Aiden + +**File:** `SKILL.md` + +General AI assistant for software development projects. Use when user says "please" or needs general assistance, logging, committing, and proofing tasks. + diff --git a/ai/rules/productmanager.mdc b/ai/skills/aidd-product-manager/SKILL.md similarity index 93% rename from ai/rules/productmanager.mdc rename to ai/skills/aidd-product-manager/SKILL.md index 0176dcf..d3b48e4 100644 --- a/ai/rules/productmanager.mdc +++ b/ai/skills/aidd-product-manager/SKILL.md @@ -1,6 +1,6 @@ --- -description: When planning features, user stories, user journeys, or conducting product discovery, use this guide for building specifications and user journey maps -alwaysApply: false +name: aidd-product-manager +description: Plan features, user stories, user journeys, and conduct product discovery. Use when building specifications, user journey maps, story maps, personas, or feature PRDs. --- # ProductManager @@ -114,4 +114,4 @@ Interface { /feature - Plan a feature from a given user story - output PRD in markdown format /save - Export project and all associated state in YAML format to $projectRoot/plan/story-map/ /cancel [step] - Cancel a given story -} \ No newline at end of file +} diff --git a/ai/skills/aidd-product-manager/index.md b/ai/skills/aidd-product-manager/index.md new file mode 100644 index 0000000..bb4c28b --- /dev/null +++ b/ai/skills/aidd-product-manager/index.md @@ -0,0 +1,12 @@ +# aidd-product-manager + +This index provides an overview of the contents in this directory. + +## Files + +### ProductManager + +**File:** `SKILL.md` + +Plan features, user stories, user journeys, and conduct product discovery. Use when building specifications, user journey maps, story maps, personas, or feature PRDs. + diff --git a/ai/rules/frameworks/redux/example.mdc b/ai/skills/aidd-redux-example/SKILL.md similarity index 77% rename from ai/rules/frameworks/redux/example.mdc rename to ai/skills/aidd-redux-example/SKILL.md index cd9e424..c910de6 100644 --- a/ai/rules/frameworks/redux/example.mdc +++ b/ai/skills/aidd-redux-example/SKILL.md @@ -1,7 +1,8 @@ --- -description: Autodux usage example showing Todo App implementation in SudoLang -alwaysApply: false +name: aidd-redux-example +description: Autodux usage example showing a Todo App implementation in SudoLang. Use as reference when building Redux state management with the Autodux pattern. --- + ## AutoduxUsage Example: Todo App /* @@ -20,7 +21,7 @@ Todo Item { isComplete, } -createTodo({ text = '', id = createId(), isComplete = false } = {}) => ActionObject +createTodo({ text = '', id = createId(), isComplete = false } = {}) => ActionObject deleteTodo(id) => ActionObject toggleComplete(id) => ActionObject diff --git a/ai/skills/aidd-redux-example/index.md b/ai/skills/aidd-redux-example/index.md new file mode 100644 index 0000000..9d8db2b --- /dev/null +++ b/ai/skills/aidd-redux-example/index.md @@ -0,0 +1,12 @@ +# aidd-redux-example + +This index provides an overview of the contents in this directory. + +## Files + +### SKILL + +**File:** `SKILL.md` + +Autodux usage example showing a Todo App implementation in SudoLang. Use as reference when building Redux state management with the Autodux pattern. + diff --git a/ai/rules/review.mdc b/ai/skills/aidd-review/SKILL.md similarity index 61% rename from ai/rules/review.mdc rename to ai/skills/aidd-review/SKILL.md index b9ba9f8..f8d095f 100644 --- a/ai/rules/review.mdc +++ b/ai/skills/aidd-review/SKILL.md @@ -1,22 +1,24 @@ --- -description: Use this guide to conduct a thorough code review focusing on code quality, best practices, and adherence to project standards. -alwaysApply: false +name: aidd-review +description: Conduct a thorough code review focusing on code quality, best practices, security, test coverage, and adherence to project standards and functional requirements. Use when reviewing code, pull requests, or completed epics. +allowed-tools: Read Grep Glob Bash(git:*) --- + # ๐Ÿ”ฌ Code Review Act as a top-tier principal software engineer to conduct a thorough code review focusing on code quality, best practices, and adherence to requirements, plan, and project standards. Criteria { - Before beginning, read and respect the constraints in please.mdc. - Use javascript/javascript.mdc for JavaScript/TypeScript code quality and best practices. - Use tdd.mdc for test coverage and test quality assessment. - Use stack.mdc for NextJS + React/Redux + Shadcn UI architecture and patterns. - Use ui.mdc for UI/UX design and component quality. - Use frameworks/redux/autodux.mdc for Redux state management patterns and Autodux usage. - Use javascript/javascript-io-network-effects.mdc for network effects and side effect handling. - Use commit.md for commit message quality and conventional commit format. - Use security/timing-safe-compare.mdc when reviewing secret/token comparisons (CSRF, API keys, sessions). - Use security/jwt-security.mdc when reviewing authentication code. Recommend opaque tokens over JWT. + Before beginning, read and respect the constraints in [please](../aidd-please/SKILL.md). + Use [JavaScript guide](../aidd-javascript/SKILL.md) for JavaScript/TypeScript code quality and best practices. + Use [TDD guide](../aidd-tdd/SKILL.md) for test coverage and test quality assessment. + Use [stack guide](../aidd-stack/SKILL.md) for NextJS + React/Redux + Shadcn UI architecture and patterns. + Use [UI guide](../aidd-ui/SKILL.md) for UI/UX design and component quality. + Use [Autodux guide](../aidd-autodux/SKILL.md) for Redux state management patterns and Autodux usage. + Use [JavaScript IO guide](../aidd-javascript-io-effects/SKILL.md) for network effects and side effect handling. + Use [commit guide](../../commands/commit.md) for commit message quality and conventional commit format. + Use [timing-safe compare](../aidd-timing-safe-compare/SKILL.md) when reviewing secret/token comparisons (CSRF, API keys, sessions). + Use [JWT security](../aidd-jwt-security/SKILL.md) when reviewing authentication code. Recommend opaque tokens over JWT. Carefully inspect for OWASP top 10 violations and other security mistakes. Use search. Explicitly list each of the current OWASP top 10, review all changes and inspect for violations. Compare the completed work to the functional requirements to ensure adherence and that all requirements are met. Compare the task plan in $projectRoot/tasks/ to the completed work to ensure that all tasks were completed and that the completed work adheres to the plan. diff --git a/ai/skills/aidd-review/index.md b/ai/skills/aidd-review/index.md new file mode 100644 index 0000000..531b446 --- /dev/null +++ b/ai/skills/aidd-review/index.md @@ -0,0 +1,12 @@ +# aidd-review + +This index provides an overview of the contents in this directory. + +## Files + +### ๐Ÿ”ฌ Code Review + +**File:** `SKILL.md` + +Conduct a thorough code review focusing on code quality, best practices, security, test coverage, and adherence to project standards and functional requirements. Use when reviewing code, pull requests, or completed epics. + diff --git a/ai/rules/stack.mdc b/ai/skills/aidd-stack/SKILL.md similarity index 80% rename from ai/rules/stack.mdc rename to ai/skills/aidd-stack/SKILL.md index d4ea55a..7835f9c 100644 --- a/ai/rules/stack.mdc +++ b/ai/skills/aidd-stack/SKILL.md @@ -1,7 +1,8 @@ --- -description: When implementing NextJS + React/Redux + Shadcn UI features, use this guide for tech stack guidance and best practices -alwaysApply: false +name: aidd-stack +description: Tech stack guidance for NextJS + React/Redux + Shadcn UI features. Use when implementing full stack features, choosing architecture patterns, or working with this technology stack. --- + # Tech Stack Act as a top-tier senior full stack software engineer. Always use best practices, declarative approaches, concise code. @@ -34,6 +35,6 @@ Avoid Redux Toolkit. Use frameworks/redux/autodux and redux connect instead. 2. Transpile to JavaScript and save it as "${slice name}-dux.js" Constraints { - ALWAYS use tdd as defined in tdd.mdc when implementing source code changes. + ALWAYS use tdd as defined in [TDD guide](../aidd-tdd/SKILL.md) when implementing source code changes. NEVER change source code without clear requirements, tests, and/or manual user approval of your plan. -} \ No newline at end of file +} diff --git a/ai/skills/aidd-stack/index.md b/ai/skills/aidd-stack/index.md new file mode 100644 index 0000000..cb8caa5 --- /dev/null +++ b/ai/skills/aidd-stack/index.md @@ -0,0 +1,12 @@ +# aidd-stack + +This index provides an overview of the contents in this directory. + +## Files + +### Tech Stack + +**File:** `SKILL.md` + +Tech stack guidance for NextJS + React/Redux + Shadcn UI features. Use when implementing full stack features, choosing architecture patterns, or working with this technology stack. + diff --git a/ai/rules/sudolang/sudolang-syntax.mdc b/ai/skills/aidd-sudolang-syntax/SKILL.md similarity index 91% rename from ai/rules/sudolang/sudolang-syntax.mdc rename to ai/skills/aidd-sudolang-syntax/SKILL.md index 83646e2..81ad71d 100644 --- a/ai/rules/sudolang/sudolang-syntax.mdc +++ b/ai/skills/aidd-sudolang-syntax/SKILL.md @@ -1,6 +1,6 @@ --- -description: A quick cheat sheet for SudoLang syntax. -alwaysApply: false +name: aidd-sudolang-syntax +description: Quick cheat sheet for SudoLang syntax. Use when writing or reading SudoLang pseudocode, interfaces, constraints, or function definitions. --- # SudoLang Syntax @@ -36,7 +36,7 @@ Constraints { } -## Function Definitons +## Function Definitions // You can define an inferred function with the `fn` or `function` keywords: fn foo(); @@ -83,12 +83,12 @@ updateUser({ id: "123", name: "Pup" }) "foo $bar" `foo $bar` -Note: Avoid single quotes for strings, because they are used as apostraphies in natural language, and they can break the syntax hightlighting badly. +Note: Avoid single quotes for strings, because they are used as apostrophes in natural language, and they can break the syntax hightlighting badly. // nested template strings: ["foo $bar"] -// nested tempalate strings with objects: +// nested template strings with objects: { name: "Hello, $name" } diff --git a/ai/skills/aidd-sudolang-syntax/index.md b/ai/skills/aidd-sudolang-syntax/index.md new file mode 100644 index 0000000..54f8108 --- /dev/null +++ b/ai/skills/aidd-sudolang-syntax/index.md @@ -0,0 +1,12 @@ +# aidd-sudolang-syntax + +This index provides an overview of the contents in this directory. + +## Files + +### SudoLang Syntax + +**File:** `SKILL.md` + +Quick cheat sheet for SudoLang syntax. Use when writing or reading SudoLang pseudocode, interfaces, constraints, or function definitions. + diff --git a/ai/rules/task-creator.mdc b/ai/skills/aidd-task-creator/SKILL.md similarity index 90% rename from ai/rules/task-creator.mdc rename to ai/skills/aidd-task-creator/SKILL.md index 050ace0..1189e60 100644 --- a/ai/rules/task-creator.mdc +++ b/ai/skills/aidd-task-creator/SKILL.md @@ -1,7 +1,8 @@ --- -description: when the user asks you to complete a task, use this guide for systematic task/epic planning and execution -alwaysApply: false +name: aidd-task-creator +description: Systematic task and epic planning and execution. Use when the user asks to complete a task, plan an epic, break down work, or execute a task plan. --- + # Task Creator Act as a top-tier software project manager and systematic task planner and execution coordinator. Your job is to break down complex requests into manageable, sequential tasks that can be executed one at a time with user approval. @@ -28,12 +29,12 @@ State { ## Requirements Analysis -Use @requirements.mdc to analyze and generate the requirements of the task. +Use [functional requirements](../aidd-functional-requirements/SKILL.md) to analyze and generate the requirements of the task. ## Agent Orchestration -For complex tasks that require specialized expertise, systematically employ the agent orchestrator pattern in @agent-orchestrator.mdc - +For complex tasks that require specialized expertise, systematically employ the agent orchestrator pattern in [agent orchestrator](../aidd-agent-orchestrator/SKILL.md) + assessComplexity() { criteria: Multiple technical domains (UI, backend, testing, etc.) @@ -77,7 +78,7 @@ epicTemplate() { """ # ${EpicName} Epic - **Status**: ๐Ÿ“‹ PLANNED + **Status**: ๐Ÿ“‹ PLANNED **Goal**: ${briefGoal} ## Overview @@ -154,5 +155,5 @@ Commands { /help /task - create a task/epic /execute - execute a task/epic - /list [(tasks|epics) = tasks]- list all tasks in the epic + /list [(tasks|epics) = tasks] - list all tasks in the epic } diff --git a/ai/skills/aidd-task-creator/index.md b/ai/skills/aidd-task-creator/index.md new file mode 100644 index 0000000..2273954 --- /dev/null +++ b/ai/skills/aidd-task-creator/index.md @@ -0,0 +1,12 @@ +# aidd-task-creator + +This index provides an overview of the contents in this directory. + +## Files + +### Task Creator + +**File:** `SKILL.md` + +Systematic task and epic planning and execution. Use when the user asks to complete a task, plan an epic, break down work, or execute a task plan. + diff --git a/ai/rules/tdd.mdc b/ai/skills/aidd-tdd/SKILL.md similarity index 93% rename from ai/rules/tdd.mdc rename to ai/skills/aidd-tdd/SKILL.md index 67777cb..3430df8 100644 --- a/ai/rules/tdd.mdc +++ b/ai/skills/aidd-tdd/SKILL.md @@ -1,8 +1,8 @@ --- -description: When implementing code changes, use this guide for systematic test-driven development with proper test isolation -globs: **/*.js,**/*.jsx,**/*.ts,**/*.tsx -alwaysApply: false +name: aidd-tdd +description: Systematic test-driven development with proper test isolation. Use when implementing code changes, writing tests, or when TDD process guidance is needed. --- + # TDD Engineer Act as a top-tier software engineer with serious TDD discipline to systematically implement software using the TDD process. @@ -65,7 +65,7 @@ For Vitest/Riteway tests: - Timers: vi.useFakeTimers and vi.setSystemTime - UI testing strategy: - Redux actions/selectors: Pure tests (no component rendering needed) - - Side effects: must be isolated from UI, see `javascript/javascript-io-network-effects.mdc` + - Side effects: must be isolated from UI, see [JavaScript IO guide](../aidd-javascript-io-effects/SKILL.md) - Component rendering: Use riteway/render for markup verification - Browser interactions: Use Playwright to exercise real browser APIs - Never use @testing-library/react (redundant with above patterns) @@ -83,5 +83,3 @@ State { testFramework = Riteway Library + Vitest libraryStack // e.g. React + Redux + Redux Saga } - -/welcome diff --git a/ai/skills/aidd-tdd/index.md b/ai/skills/aidd-tdd/index.md new file mode 100644 index 0000000..368db1e --- /dev/null +++ b/ai/skills/aidd-tdd/index.md @@ -0,0 +1,12 @@ +# aidd-tdd + +This index provides an overview of the contents in this directory. + +## Files + +### TDD Engineer + +**File:** `SKILL.md` + +Systematic test-driven development with proper test isolation. Use when implementing code changes, writing tests, or when TDD process guidance is needed. + diff --git a/ai/rules/security/timing-safe-compare.mdc b/ai/skills/aidd-timing-safe-compare/SKILL.md similarity index 82% rename from ai/rules/security/timing-safe-compare.mdc rename to ai/skills/aidd-timing-safe-compare/SKILL.md index 226f573..6d11d69 100644 --- a/ai/rules/security/timing-safe-compare.mdc +++ b/ai/skills/aidd-timing-safe-compare/SKILL.md @@ -1,6 +1,6 @@ --- -description: Security rule for timing-safe secret comparison. Use SHA3-256 hashing instead of timing-safe compare functions. -alwaysApply: false +name: aidd-timing-safe-compare +description: Security rule for timing-safe secret comparison. Use SHA3-256 hashing instead of timing-safe compare functions. Use when reviewing or implementing secret comparisons, token validation, CSRF tokens, or API key checks. --- # Constraint: Timing Safe Compare @@ -16,7 +16,7 @@ There is no timing safe compare for raw values. Never use: Always hash both the stored secret token and the candidate token with SHA3-256, then compare the hashes. This rule overrides all library defaults. -See ./timing-safe-compare-vulnerabilities.mdc for vulnerability reports in the wild. +See [timing-safe compare vulnerabilities](../aidd-timing-safe-vulnerabilities/SKILL.md) for vulnerability reports in the wild. Reasons: 1. Hashing removes all prefix structure. Any bit change fully randomizes the hash. No timing oracle. No hangman. diff --git a/ai/skills/aidd-timing-safe-compare/index.md b/ai/skills/aidd-timing-safe-compare/index.md new file mode 100644 index 0000000..0523949 --- /dev/null +++ b/ai/skills/aidd-timing-safe-compare/index.md @@ -0,0 +1,12 @@ +# aidd-timing-safe-compare + +This index provides an overview of the contents in this directory. + +## Files + +### Constraint: Timing Safe Compare + +**File:** `SKILL.md` + +Security rule for timing-safe secret comparison. Use SHA3-256 hashing instead of timing-safe compare functions. Use when reviewing or implementing secret comparisons, token validation, CSRF tokens, or API key checks. + diff --git a/ai/rules/security/timing-safe-compare-vulnerabilities.mdc b/ai/skills/aidd-timing-safe-vulnerabilities/SKILL.md similarity index 93% rename from ai/rules/security/timing-safe-compare-vulnerabilities.mdc rename to ai/skills/aidd-timing-safe-vulnerabilities/SKILL.md index be09093..ad83e9a 100644 --- a/ai/rules/security/timing-safe-compare-vulnerabilities.mdc +++ b/ai/skills/aidd-timing-safe-vulnerabilities/SKILL.md @@ -1,6 +1,6 @@ --- -description: Vulnerability reports for timing-safe compare functions. Referenced by timing-safe-compare.mdc. -alwaysApply: false +name: aidd-timing-safe-vulnerabilities +description: Vulnerability reports for timing-safe compare functions. Use as reference when reviewing secret comparisons, token validation, or HMAC verification code. --- # Timing Safe Compare Vulnerabilities diff --git a/ai/skills/aidd-timing-safe-vulnerabilities/index.md b/ai/skills/aidd-timing-safe-vulnerabilities/index.md new file mode 100644 index 0000000..12bee94 --- /dev/null +++ b/ai/skills/aidd-timing-safe-vulnerabilities/index.md @@ -0,0 +1,12 @@ +# aidd-timing-safe-vulnerabilities + +This index provides an overview of the contents in this directory. + +## Files + +### Timing Safe Compare Vulnerabilities + +**File:** `SKILL.md` + +Vulnerability reports for timing-safe compare functions. Use as reference when reviewing secret comparisons, token validation, or HMAC verification code. + diff --git a/ai/rules/ui.mdc b/ai/skills/aidd-ui/SKILL.md similarity index 78% rename from ai/rules/ui.mdc rename to ai/skills/aidd-ui/SKILL.md index 36c64b5..a1d53c4 100644 --- a/ai/rules/ui.mdc +++ b/ai/skills/aidd-ui/SKILL.md @@ -1,6 +1,6 @@ --- -description: When building user interfaces and user experiences, use this guide for beautiful and friendly UI/UX design -alwaysApply: false +name: aidd-ui +description: Design beautiful and friendly user interfaces and experiences. Use when building UI components, styling, animations, accessibility, responsive design, or working with design systems. --- # UI/UX Engineer @@ -21,4 +21,4 @@ Skills [ Accessibility Responsive design Design systems -] \ No newline at end of file +] diff --git a/ai/skills/aidd-ui/index.md b/ai/skills/aidd-ui/index.md new file mode 100644 index 0000000..786677e --- /dev/null +++ b/ai/skills/aidd-ui/index.md @@ -0,0 +1,12 @@ +# aidd-ui + +This index provides an overview of the contents in this directory. + +## Files + +### UI/UX Engineer + +**File:** `SKILL.md` + +Design beautiful and friendly user interfaces and experiences. Use when building UI components, styling, animations, accessibility, responsive design, or working with design systems. + diff --git a/ai/rules/user-testing.mdc b/ai/skills/aidd-user-testing/SKILL.md similarity index 93% rename from ai/rules/user-testing.mdc rename to ai/skills/aidd-user-testing/SKILL.md index 7a360cd..608f7dd 100644 --- a/ai/rules/user-testing.mdc +++ b/ai/skills/aidd-user-testing/SKILL.md @@ -1,10 +1,11 @@ --- -description: Generate human and AI agent test scripts from user journey specifications -alwaysApply: false +name: aidd-user-testing +description: Generate human and AI agent test scripts from user journey specifications. Use when creating user test scripts, running user tests, or validating user journeys. --- + # User Testing Generator -Use UserJourney and Persona from @productmanager.mdc +Use UserJourney and Persona from [product manager](../aidd-product-manager/SKILL.md) Generate dual test scripts: human (think-aloud protocol, video recorded) + AI agent (executable with screenshots). @@ -124,7 +125,7 @@ User test scripts are saved to $projectRoot/plan/ folder (create if not present) - Agent test scripts: $projectRoot/plan/${journey-name}-agent-test.md - User journeys reference the YAML files in $projectRoot/plan/story-map/${journey-name}.yaml -Note: Journey YAML files use base Persona (meta fields only) from productmanager.mdc. +Note: Journey YAML files use base Persona (meta fields only) from [product manager](../aidd-product-manager/SKILL.md). When generating test scripts from a journey, extend personas to UserTestPersona: UserTestPersona { diff --git a/ai/skills/aidd-user-testing/index.md b/ai/skills/aidd-user-testing/index.md new file mode 100644 index 0000000..c6f5daa --- /dev/null +++ b/ai/skills/aidd-user-testing/index.md @@ -0,0 +1,12 @@ +# aidd-user-testing + +This index provides an overview of the contents in this directory. + +## Files + +### User Testing Generator + +**File:** `SKILL.md` + +Generate human and AI agent test scripts from user journey specifications. Use when creating user test scripts, running user tests, or validating user journeys. + diff --git a/ai/skills/index.md b/ai/skills/index.md new file mode 100644 index 0000000..3b61245 --- /dev/null +++ b/ai/skills/index.md @@ -0,0 +1,86 @@ +# skills + +This index provides an overview of the contents in this directory. + +## Subdirectories + +### ๐Ÿ“ aidd-agent-orchestrator/ + +See [`aidd-agent-orchestrator/index.md`](./aidd-agent-orchestrator/index.md) for contents. + +### ๐Ÿ“ aidd-autodux/ + +See [`aidd-autodux/index.md`](./aidd-autodux/index.md) for contents. + +### ๐Ÿ“ aidd-error-causes/ + +See [`aidd-error-causes/index.md`](./aidd-error-causes/index.md) for contents. + +### ๐Ÿ“ aidd-functional-requirements/ + +See [`aidd-functional-requirements/index.md`](./aidd-functional-requirements/index.md) for contents. + +### ๐Ÿ“ aidd-javascript/ + +See [`aidd-javascript/index.md`](./aidd-javascript/index.md) for contents. + +### ๐Ÿ“ aidd-javascript-io-effects/ + +See [`aidd-javascript-io-effects/index.md`](./aidd-javascript-io-effects/index.md) for contents. + +### ๐Ÿ“ aidd-jwt-security/ + +See [`aidd-jwt-security/index.md`](./aidd-jwt-security/index.md) for contents. + +### ๐Ÿ“ aidd-log/ + +See [`aidd-log/index.md`](./aidd-log/index.md) for contents. + +### ๐Ÿ“ aidd-please/ + +See [`aidd-please/index.md`](./aidd-please/index.md) for contents. + +### ๐Ÿ“ aidd-product-manager/ + +See [`aidd-product-manager/index.md`](./aidd-product-manager/index.md) for contents. + +### ๐Ÿ“ aidd-redux-example/ + +See [`aidd-redux-example/index.md`](./aidd-redux-example/index.md) for contents. + +### ๐Ÿ“ aidd-review/ + +See [`aidd-review/index.md`](./aidd-review/index.md) for contents. + +### ๐Ÿ“ aidd-stack/ + +See [`aidd-stack/index.md`](./aidd-stack/index.md) for contents. + +### ๐Ÿ“ aidd-sudolang-syntax/ + +See [`aidd-sudolang-syntax/index.md`](./aidd-sudolang-syntax/index.md) for contents. + +### ๐Ÿ“ aidd-task-creator/ + +See [`aidd-task-creator/index.md`](./aidd-task-creator/index.md) for contents. + +### ๐Ÿ“ aidd-tdd/ + +See [`aidd-tdd/index.md`](./aidd-tdd/index.md) for contents. + +### ๐Ÿ“ aidd-timing-safe-compare/ + +See [`aidd-timing-safe-compare/index.md`](./aidd-timing-safe-compare/index.md) for contents. + +### ๐Ÿ“ aidd-timing-safe-vulnerabilities/ + +See [`aidd-timing-safe-vulnerabilities/index.md`](./aidd-timing-safe-vulnerabilities/index.md) for contents. + +### ๐Ÿ“ aidd-ui/ + +See [`aidd-ui/index.md`](./aidd-ui/index.md) for contents. + +### ๐Ÿ“ aidd-user-testing/ + +See [`aidd-user-testing/index.md`](./aidd-user-testing/index.md) for contents. + diff --git a/biome.json b/biome.json index d1080e8..08a33c1 100644 --- a/biome.json +++ b/biome.json @@ -109,6 +109,12 @@ } }, "includes": ["package.json"] + }, + { + "formatter": { + "enabled": false + }, + "includes": ["**/*.md"] } ], "vcs": { From f4d0ff028f30859d43e054b187b82e34697c07b9 Mon Sep 17 00:00:00 2001 From: Jan Date: Tue, 10 Feb 2026 04:05:14 +0100 Subject: [PATCH 2/2] fix(skills): update stale .mdc and ai/rules/ references across docs, commands, and tests --- .github/pull_request_template.md | 4 +- CONTRIBUTING.md | 6 +-- README.md | 43 +++++++++++----------- ai/commands/discover.md | 4 +- ai/commands/execute.md | 2 +- ai/commands/help.md | 4 +- ai/commands/log.md | 4 +- ai/commands/plan.md | 2 +- ai/commands/review.md | 4 +- ai/commands/run-test.md | 4 +- ai/commands/task.md | 2 +- ai/commands/user-test.md | 4 +- ai/rules/review-example.md | 8 ++-- ai/rules/user-testing.test.js | 16 +++----- docs/new-project-setup-nextjs-shadcn.md | 6 +-- docs/security.md | 4 +- plan/review-command-agent-test.md | 2 +- plan/review-command-human-test.md | 2 +- plan/story-map/review-command-journey.yaml | 2 +- release.js | 4 +- 20 files changed, 61 insertions(+), 66 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index a0d4993..06bdeea 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,7 +1,7 @@ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 9a55f14..9adda8a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -10,7 +10,7 @@ See the [Development Workflow](README.md#development-workflow) section in the RE ### JavaScript/TypeScript -- Follow the guidelines in `ai/rules/javascript/javascript.mdc` +- Follow the guidelines in `ai/skills/aidd-javascript/SKILL.md` - Use functional programming patterns - Keep functions small, pure, and composable - Use `const`, avoid mutation @@ -52,7 +52,7 @@ Types: `feat`, `fix`, `docs`, `test`, `refactor`, `chore`, `perf`, `ci`, `build` 1. Ensure all tests pass (`npm test`) 2. Update documentation if needed -3. Follow the code review guidelines in `ai/rules/review.mdc` +3. Follow the code review guidelines in `ai/skills/aidd-review/SKILL.md` 4. Address review feedback promptly 5. Squash commits if requested 6. Wait for approval from maintainers @@ -60,7 +60,7 @@ Types: `feat`, `fix`, `docs`, `test`, `refactor`, `chore`, `perf`, `ci`, `build` ## Questions or Issues? - Check existing [issues](https://github.com/paralleldrive/aidd/issues) -- Review the AI rules in `ai/rules/` for guidance +- Review the AI skills in `ai/skills/` for guidance - Ask questions in your PR or open a discussion ## License diff --git a/README.md b/README.md index 38d094d..50077e3 100644 --- a/README.md +++ b/README.md @@ -127,17 +127,17 @@ npx aidd my-project ```bash cd my-project ls ai/ # See available components - cat ai/rules/please.mdc # Read the main orchestrator + cat ai/skills/aidd-please/SKILL.md # Read the main orchestrator ``` 5. **Start using AI workflows**: - - Reference `ai/rules/` in AI prompts for better context + - Reference `ai/skills/` in AI prompts for better context - Use `ai/commands/` as workflow templates - - Customize rules for your specific project needs + - Customize skills for your specific project needs This gives you immediate access to: -- ๐Ÿค– **Agent orchestration rules** (`ai/rules/`) +- ๐Ÿค– **Agent orchestration skills** (`ai/skills/`) - โš™๏ธ **AI workflow commands** (`ai/commands/`) - ๐Ÿ“‹ **Development best practices** (JavaScript, TDD, UI/UX) - ๐ŸŽฏ **Product management tools** (user stories, journey mapping) @@ -430,13 +430,12 @@ your-project/ โ”‚ โ”‚ โ”œโ”€โ”€ review.md # Code reviews โ”‚ โ”‚ โ”œโ”€โ”€ task.md # Task management โ”‚ โ”‚ โ””โ”€โ”€ ... -โ”‚ โ”œโ”€โ”€ rules/ # Agent orchestration rules -โ”‚ โ”‚ โ”œโ”€โ”€ agent-orchestrator.mdc -โ”‚ โ”‚ โ”œโ”€โ”€ javascript/ # JS/TS best practices -โ”‚ โ”‚ โ”œโ”€โ”€ frameworks/ # Redux, TDD patterns -โ”‚ โ”‚ โ”œโ”€โ”€ productmanager.mdc -โ”‚ โ”‚ โ”œโ”€โ”€ tdd.mdc -โ”‚ โ”‚ โ”œโ”€โ”€ ui.mdc +โ”‚ โ”œโ”€โ”€ skills/ # Agent orchestration skills +โ”‚ โ”‚ โ”œโ”€โ”€ aidd-please/ # Main agent orchestrator +โ”‚ โ”‚ โ”œโ”€โ”€ aidd-javascript/ # JS/TS best practices +โ”‚ โ”‚ โ”œโ”€โ”€ aidd-tdd/ # Test-driven development +โ”‚ โ”‚ โ”œโ”€โ”€ aidd-review/ # Code review guidelines +โ”‚ โ”‚ โ”œโ”€โ”€ aidd-ui/ # UI/UX design guidelines โ”‚ โ”‚ โ””โ”€โ”€ ... โ”‚ โ””โ”€โ”€ ... โ”œโ”€โ”€ plan/ # Product discovery artifacts @@ -448,13 +447,13 @@ your-project/ ### Key Components -- **Agent Orchestrator** (`ai/rules/agent-orchestrator.mdc`) - Coordinates multiple AI agents -- **Development Rules** (`ai/rules/javascript/`, `ai/rules/tdd.mdc`) - Best practices and patterns +- **Agent Orchestrator** (`ai/skills/aidd-agent-orchestrator/SKILL.md`) - Coordinates multiple AI agents +- **Development Skills** (`ai/skills/aidd-javascript/`, `ai/skills/aidd-tdd/`) - Best practices and patterns - **Workflow Commands** (`ai/commands/`) - Structured AI interaction templates -- **Product Management** (`ai/rules/productmanager.mdc`) - User stories and journey mapping +- **Product Management** (`ai/skills/aidd-product-manager/SKILL.md`) - User stories and journey mapping - **Product Discovery Artifacts** (`plan/story-map/`) - User journeys, personas, and story maps (YAML format) - **User Testing Scripts** (`plan/`) - Human and AI agent test scripts generated from journeys -- **UI/UX Guidelines** (`ai/rules/ui.mdc`) - Design and user experience standards +- **UI/UX Guidelines** (`ai/skills/aidd-ui/SKILL.md`) - Design and user experience standards ## ๐ŸŽฏ AI Integration @@ -577,20 +576,20 @@ npx aidd my-project **For Cursor users with existing rules:** -Reference the rules in your prompts or add to `.cursor/rules`: +Reference the skills in your prompts or add to `.cursor/skills`: ``` -See ai/rules/javascript/javascript.mdc for JavaScript best practices -See ai/rules/tdd.mdc for test-driven development -See ai/rules/productmanager.mdc for product management +See ai/skills/aidd-javascript/SKILL.md for JavaScript best practices +See ai/skills/aidd-tdd/SKILL.md for test-driven development +See ai/skills/aidd-product-manager/SKILL.md for product management ``` **For other editors (VS Code, Vim, etc.):** -Reference rules directly in your AI assistant prompts: +Reference skills directly in your AI assistant prompts: ``` -Please follow the guidelines in ai/rules/javascript/javascript.mdc +Please follow the guidelines in ai/skills/aidd-javascript/SKILL.md Use the workflow from ai/commands/task.md ``` @@ -603,7 +602,7 @@ Use the workflow from ai/commands/task.md ls ai/ # Verify key files exist -ls ai/rules/please.mdc +ls ai/skills/aidd-please/SKILL.md ls ai/commands/ ``` diff --git a/ai/commands/discover.md b/ai/commands/discover.md index f41709e..cd3276c 100644 --- a/ai/commands/discover.md +++ b/ai/commands/discover.md @@ -1,8 +1,8 @@ ## ๐Ÿ” Discover -Use productmanager.mdc to discover a user journey, user story, or feature. +Use [product manager](../skills/aidd-product-manager/SKILL.md) to discover a user journey, user story, or feature. Constraints { Begin by reading the file and asking the user relevant questions to spark the discovery process. -Before beginning, read and respect the constraints in please.mdc. +Before beginning, read and respect the constraints in [please](../skills/aidd-please/SKILL.md). } diff --git a/ai/commands/execute.md b/ai/commands/execute.md index 70c62eb..975dbc4 100644 --- a/ai/commands/execute.md +++ b/ai/commands/execute.md @@ -3,6 +3,6 @@ Use the task creator to execute a task epic. Constraints { -Before beginning, read and respect the constraints in please.mdc. +Before beginning, read and respect the constraints in [please](../skills/aidd-please/SKILL.md). Remember to use the TDD process if asked to implement code. } diff --git a/ai/commands/help.md b/ai/commands/help.md index 529d4c6..b6bd20d 100644 --- a/ai/commands/help.md +++ b/ai/commands/help.md @@ -1,8 +1,8 @@ ## โ“ Help -List commands from please.mdc and report them to the user. +List commands from [please](../skills/aidd-please/SKILL.md) and report them to the user. Constraints { -Before beginning, read and respect the constraints in please.mdc. +Before beginning, read and respect the constraints in [please](../skills/aidd-please/SKILL.md). Keep the response extremely concise - essentially just the list of commands, their descriptions, and options, without offering trivial details or informing users of constraints. } diff --git a/ai/commands/log.md b/ai/commands/log.md index 18ae367..edc554d 100644 --- a/ai/commands/log.md +++ b/ai/commands/log.md @@ -1,4 +1,4 @@ ## ๐Ÿ“ Log -Use log.mdc to collect salient changes, and log them to the activity-log.md. -Before beginning, read and respect the constraints in please.mdc. +Use [log guide](../skills/aidd-log/SKILL.md) to collect salient changes, and log them to the activity-log.md. +Before beginning, read and respect the constraints in [please](../skills/aidd-please/SKILL.md). diff --git a/ai/commands/plan.md b/ai/commands/plan.md index 9cef037..98f755e 100644 --- a/ai/commands/plan.md +++ b/ai/commands/plan.md @@ -1,4 +1,4 @@ ## ๐Ÿ“‹ Plan Review plan.md to identify priorities and suggest next steps to the user -d 10. -Before beginning, read and respect the constraints in please.mdc. +Before beginning, read and respect the constraints in [please](../skills/aidd-please/SKILL.md). diff --git a/ai/commands/review.md b/ai/commands/review.md index 4d5c1e7..4d1298c 100644 --- a/ai/commands/review.md +++ b/ai/commands/review.md @@ -1,7 +1,7 @@ # ๐Ÿ”ฌ Code Review -use review.mdc to conduct a thorough code review focusing on code quality, best practices, and adherence to project standards. +use [review guide](../skills/aidd-review/SKILL.md) to conduct a thorough code review focusing on code quality, best practices, and adherence to project standards. Constraints { -Before beginning, read and respect the constraints in please.mdc. +Before beginning, read and respect the constraints in [please](../skills/aidd-please/SKILL.md). } diff --git a/ai/commands/run-test.md b/ai/commands/run-test.md index 2ab4690..14270ad 100644 --- a/ai/commands/run-test.md +++ b/ai/commands/run-test.md @@ -2,10 +2,10 @@ Execute AI agent test script in real browser. -Use @user-testing.mdc to run agent test, capturing screenshots and generating report. +Use [user testing](../skills/aidd-user-testing/SKILL.md) to run agent test, capturing screenshots and generating report. Constraints { - Before beginning, read and respect the constraints in please.mdc. + Before beginning, read and respect the constraints in [please](../skills/aidd-please/SKILL.md). Drive real browser, narrate thoughts like human tester. Generate structured markdown report with screenshots. } diff --git a/ai/commands/task.md b/ai/commands/task.md index c17684d..47664aa 100644 --- a/ai/commands/task.md +++ b/ai/commands/task.md @@ -3,6 +3,6 @@ Use the task creator to plan and execute a task epic. Constraints { -Before beginning, read and respect the constraints in please.mdc. +Before beginning, read and respect the constraints in [please](../skills/aidd-please/SKILL.md). Remember to use the TDD process if asked to implement code. } diff --git a/ai/commands/user-test.md b/ai/commands/user-test.md index ac0fb65..186ffbe 100644 --- a/ai/commands/user-test.md +++ b/ai/commands/user-test.md @@ -1,7 +1,7 @@ ## ๐Ÿงช User Test -Use @user-testing.mdc to generate human and AI agent test scripts from user journeys. +Use [user testing](../skills/aidd-user-testing/SKILL.md) to generate human and AI agent test scripts from user journeys. Constraints { -Before beginning, read and respect the constraints in please.mdc. +Before beginning, read and respect the constraints in [please](../skills/aidd-please/SKILL.md). } diff --git a/ai/rules/review-example.md b/ai/rules/review-example.md index 101eb01..5a13f6e 100644 --- a/ai/rules/review-example.md +++ b/ai/rules/review-example.md @@ -36,7 +36,7 @@ lib/ ## **2. JavaScript Standards Compliance** โœ… -### **Outstanding Adherence to javascript.mdc** +### **Outstanding Adherence to JavaScript Guidelines** **Functional Programming Excellence:** @@ -104,7 +104,7 @@ assert({ ### **Clean Comment Implementation** -After our comment cleanup effort, all code follows javascript.mdc comment policy: +After our comment cleanup effort, all code follows JavaScript guidelines comment policy: - **โœ… No Style Guide Reiteration**: Removed all violations - **โœ… No Obvious Redundancy**: Clean, self-documenting code @@ -249,10 +249,10 @@ This code is **production-ready** and represents **best-in-class** implementatio ## **Review Methodology** -This review was conducted following the review.mdc guidelines: +This review was conducted following the review skill guidelines: 1. โœ… **Code Structure Analysis**: Architecture and organization patterns -2. โœ… **Standards Compliance**: JavaScript.mdc and TDD.mdc adherence +2. โœ… **Standards Compliance**: JavaScript and TDD guidelines adherence 3. โœ… **Test Coverage Evaluation**: Quality and thoroughness of tests 4. โœ… **Performance & Security**: Efficiency and safety considerations 5. โœ… **Architecture Validation**: Design patterns and decisions diff --git a/ai/rules/user-testing.test.js b/ai/rules/user-testing.test.js index 66e55c6..80a0526 100644 --- a/ai/rules/user-testing.test.js +++ b/ai/rules/user-testing.test.js @@ -78,16 +78,14 @@ describe("user-testing", () => { }); }); - test("references user-testing.mdc", async () => { + test("references user-testing skill", async () => { const filePath = path.join(__dirname, "../commands/user-test.md"); const content = await fs.readFile(filePath, "utf-8"); assert({ given: "user-test.md content", - should: "reference user-testing.mdc", - actual: - content.includes("@user-testing.mdc") || - content.includes("user-testing.mdc"), + should: "reference user-testing skill", + actual: content.includes("aidd-user-testing"), expected: true, }); }); @@ -106,16 +104,14 @@ describe("user-testing", () => { }); }); - test("references user-testing.mdc", async () => { + test("references user-testing skill", async () => { const filePath = path.join(__dirname, "../commands/run-test.md"); const content = await fs.readFile(filePath, "utf-8"); assert({ given: "run-test.md content", - should: "reference user-testing.mdc", - actual: - content.includes("@user-testing.mdc") || - content.includes("user-testing.mdc"), + should: "reference user-testing skill", + actual: content.includes("aidd-user-testing"), expected: true, }); }); diff --git a/docs/new-project-setup-nextjs-shadcn.md b/docs/new-project-setup-nextjs-shadcn.md index 59be044..3e9dbd0 100644 --- a/docs/new-project-setup-nextjs-shadcn.md +++ b/docs/new-project-setup-nextjs-shadcn.md @@ -56,9 +56,9 @@ Stop A: Stop here. Report what was installed, what was configured, and the exact - Desktop: primary action button 5. Use TDD for any custom components you create. - - Follow ai/rules/tdd.mdc carefully. + - Follow ai/skills/aidd-tdd/SKILL.md carefully. -6. Follow JavaScript best practices in ai/rules/javascript. +6. Follow JavaScript best practices in ai/skills/aidd-javascript/SKILL.md. 7. Apply the style prompt below for visual look and feel guidance. @@ -75,7 +75,7 @@ Prompt me for guidance on the visual look and feel of my application before you After I respond, continue with the task epic, then present it to me for feedback. -Stop B: Stop here and wait for approval, then /execute the task following the instructions in the ai/rules folder carefully. +Stop B: Stop here and wait for approval, then /execute the task following the instructions in the ai/skills folder carefully. Once that work is complete, please /review all the code you have written so far: diff --git a/docs/security.md b/docs/security.md index d35a153..a26fc3b 100644 --- a/docs/security.md +++ b/docs/security.md @@ -205,8 +205,8 @@ This provides stronger guarantees than trusting a single source like the Web Cry The AIDD `/review` command automatically checks for these security issues. Rules are located in: -- `ai/rules/security/jwt-security.mdc` - JWT patterns -- `ai/rules/security/timing-safe-compare.mdc` - Secret comparison +- `ai/skills/aidd-jwt-security/SKILL.md` - JWT patterns +- `ai/skills/aidd-timing-safe-compare/SKILL.md` - Secret comparison To run a security-focused review: diff --git a/plan/review-command-agent-test.md b/plan/review-command-agent-test.md index 376be0a..d5a8b1d 100644 --- a/plan/review-command-agent-test.md +++ b/plan/review-command-agent-test.md @@ -29,7 +29,7 @@ ### Step 3: AI Analyzes Project Context (CHECKPOINT) 1. **Interact with real UI**: Observe AI responses in chat panel -2. **Express thoughts**: "Watching the AI's messages. I expect to see it mention reading project files like please.mdc, review.mdc, security guidelines. This shows it's following the process." +2. **Express thoughts**: "Watching the AI's messages. I expect to see it mention reading project skills like please, review, security guidelines. This shows it's following the process." 3. **Validate**: AI shows it's reading project constraints and coding standards 4. **Screenshot**: CHECKPOINT - Capture chat showing context loading 5. **Record**: difficulty, duration, clarity of AI's progress messages diff --git a/plan/review-command-human-test.md b/plan/review-command-human-test.md index b31b6d7..dc58c0f 100644 --- a/plan/review-command-human-test.md +++ b/plan/review-command-human-test.md @@ -33,7 +33,7 @@ Read each step out loud before attempting it. Think aloud as you work - this hel ### Step 3 (Checkpoint) - **Goal**: Ensure AI reads relevant project rules, standards, and guidelines -- **Do**: Observe AI reading please.mdc, review.mdc, and relevant stack/language guidelines +- **Do**: Observe AI reading please skill, review skill, and relevant stack/language guidelines - **Think aloud**: Can you tell what the AI is doing? Is there enough feedback? - **Success**: AI displays messages indicating it's reading project constraints and coding standards diff --git a/plan/story-map/review-command-journey.yaml b/plan/story-map/review-command-journey.yaml index 36fa0bf..b43324b 100644 --- a/plan/story-map/review-command-journey.yaml +++ b/plan/story-map/review-command-journey.yaml @@ -1,5 +1,5 @@ # User Journey: Code Review Command -# Following interfaces from ai/rules/productmanager.mdc +# Following interfaces from ai/skills/aidd-product-manager/SKILL.md id: cljkp8y9k0001abc123def456 name: Code Review Command Usage diff --git a/release.js b/release.js index ae49227..218cadc 100755 --- a/release.js +++ b/release.js @@ -4,7 +4,7 @@ import { execSync } from "child_process"; import process from "process"; import { createError, errorCauses } from "error-causes"; -// Configuration objects (camelCase per javascript.mdc) +// Configuration objects (camelCase per JavaScript guidelines) const bumpAliases = { breaking: "major", feature: "minor", @@ -40,7 +40,7 @@ const [releaseErrors, handleReleaseErrors] = errorCauses({ const { ValidationError, GitError, ReleaseItError } = releaseErrors; -// Pure utility functions (explicit parameter defaults per javascript.mdc) +// Pure utility functions (explicit parameter defaults per JavaScript guidelines) const parseBumpType = ({ argv = process.argv, defaultType = defaultBump,