diff --git a/README.md b/README.md index 088c702..1f6cd24 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,8 @@ | **[AI App Starter](#ai-app-starter)** | A project your coding agent builds with you, step by step, up to launch. | You want to build and launch a web app | | **[Agent configurations](#agent-configurations)** | Working instructions for Claude Code. | You code with Claude Code every day | +The planning prompts and the AI App Starter also install as [skills](#skills) for Claude Code and Codex, with one line. + ## Planning prompts Most prompts tell the AI to write a document straight away, so it fills every gap with guesses. These prompts make it **interview you first**: @@ -105,6 +107,30 @@ your-project/ +## Skills + +Use Claude Code or Codex? You can install the planning prompts and the AI App Starter as skills, then you can run each one by name. + +**Install:** paste this into Claude Code or Codex. + +```text +Install the AI Product Development Toolkit skills: clone https://github.com/TechNomadCode/AI-Product-Development-Toolkit with git clone --depth 1 into a temporary folder, then follow agent-skills/INSTALL.md from it. +``` + +The agent copies seven skills into your personal skills folder, so they work in every project. To update them, paste the same line again. + +| Skill | Run it with | What it does | +| --- | --- | --- | +| User research | `/user-research` | Plans a questionnaire, then turns the responses into input for your PRD | +| PRD | `/prd` | Interviews you, then drafts your product requirements | +| UX and user flows | `/ux` | Maps the screens and user flows from your PRD | +| MVP concept | `/mvp` | Picks the smallest first version worth building | +| MVP build plan | `/mvp-plan` | Plans the build: a full plan or an ultra-lean spec | +| Test plan | `/test-plan` | Drafts a test plan with scope and acceptance criteria | +| AI App Starter | `/nextjs-supabase-vercel` | Sets up an empty folder with the AI App Starter | + +In Codex, type `$` instead of `/`, for example `$prd`. Skills run only when you call them. Each planning skill runs its [planning prompt](#planning-prompts) unchanged and fills it from what you give it. + ## Agent configurations Working instructions for Claude Code, based on Anthropic's documentation. Merge them into your own setup instead of replacing it. diff --git a/agent-skills/INSTALL.md b/agent-skills/INSTALL.md new file mode 100644 index 0000000..827c029 --- /dev/null +++ b/agent-skills/INSTALL.md @@ -0,0 +1,32 @@ +# Install the skills (instructions for the agent) + +The owner asked you to install this toolkit's skills, and you cloned this repository into a temporary folder. Install them into the owner's personal skills folder, so they work in every project. + +1. **Find the skills folder.** Use the personal skills folder of the tool you're running in: + + | Tool | Personal skills folder | + | --- | --- | + | Claude Code | `~/.claude/skills/` | + | Codex | `~/.agents/skills/` | + + On Windows, `~` is the user's home folder. Create the folder if it doesn't exist. If the owner asks for both tools, install into both folders. + +2. **Copy each skill.** For each row below, copy the folder `agent-skills//` from the clone to `//`, including its `agents/` folder. Then copy the listed prompt files from the clone's `prompt-templates/` into that same installed folder, next to its `SKILL.md`. + + | Skill | Prompt files to copy in | + | --- | --- | + | `user-research` | `user-research-questionnaire/Guided-User-Research-Questionnaire.md`, `user-research-questionnaire/Post-Research-PRD-Input.md` | + | `prd` | `prd-generation/prd-generation.md` | + | `ux` | `ux-user-flow/Guided-UX-User-Flow.md` | + | `mvp` | `mvp-concept-definition/Guided-MVP-Concept-Definition.md` | + | `mvp-plan` | `mvp-development-planning/Guided-MVP.md`, `ultra-lean-mvp-development-planning/Guided-Ultra-Lean-MVP.md` | + | `test-plan` | `test-plan-generation/Guided-Test-Plan.md` | + | `nextjs-supabase-vercel` | none | + +3. **Don't overwrite the owner's own skills.** If `//` already exists, look at its `SKILL.md`. If it contains the line `From the AI Product Development Toolkit`, it's an earlier install: replace the whole folder. Otherwise it's the owner's own skill with the same name: leave it untouched, skip that skill, and tell the owner. + +4. **Check.** Every installed folder has its `SKILL.md`, its `agents/openai.yaml` and all of its prompt files. If anything is missing, stop and tell the owner. + +5. **Clean up.** Delete the temporary clone. Change nothing else on the owner's computer. + +6. **Tell the owner,** in a few plain lines: which skills are installed and where, and how to run one: `/prd` in Claude Code, `$prd` in Codex. Skills run only when the owner calls them. If a skill doesn't show up yet, a new session loads it. To update the skills later, they paste the same install line again. diff --git a/agent-skills/mvp-plan/SKILL.md b/agent-skills/mvp-plan/SKILL.md new file mode 100644 index 0000000..9f5d12e --- /dev/null +++ b/agent-skills/mvp-plan/SKILL.md @@ -0,0 +1,18 @@ +--- +name: mvp-plan +description: Plan the MVP build from a PRD and an MVP concept, as a full development plan or an ultra-lean build spec, with the AI Product Development Toolkit's planning prompts. +disable-model-invocation: true +--- + + + +This skill has two prompts in its folder. Unless the owner's message makes it clear, ask which one they need: + +- `Guided-MVP.md`: a full development plan, with scope, tech stack, phases, testing and success metrics. +- `Guided-Ultra-Lean-MVP.md`: a short build spec for a fast first version, with purpose, user, features and tech choices. + +If a file is missing, tell the owner to install the skills again. Then run the prompt: + +- Read it in full and follow it exactly, as if the owner had pasted it. +- Fill its placeholders from the owner: use what's in their message or the files they point to, and ask for the rest. Don't guess. +- When the owner approves the draft, offer to save it as a Markdown file. diff --git a/agent-skills/mvp-plan/agents/openai.yaml b/agent-skills/mvp-plan/agents/openai.yaml new file mode 100644 index 0000000..167724b --- /dev/null +++ b/agent-skills/mvp-plan/agents/openai.yaml @@ -0,0 +1,7 @@ +interface: + display_name: "MVP build plan" + short_description: "Plan the MVP build: a full plan or a lean spec" + default_prompt: "Use $mvp-plan to plan how to build my MVP." + +policy: + allow_implicit_invocation: false diff --git a/agent-skills/mvp/SKILL.md b/agent-skills/mvp/SKILL.md new file mode 100644 index 0000000..5fda432 --- /dev/null +++ b/agent-skills/mvp/SKILL.md @@ -0,0 +1,13 @@ +--- +name: mvp +description: Define the smallest first version worth building (the MVP concept) from a PRD through a guided interview, with the AI Product Development Toolkit's MVP concept prompt. +disable-model-invocation: true +--- + + + +Run the prompt in `Guided-MVP-Concept-Definition.md` in this skill's folder. If the file is missing, tell the owner to install the skills again. + +- Read it in full and follow it exactly, as if the owner had pasted it. +- Fill its placeholders from the owner: use what's in their message or the files they point to, and ask for the rest. Don't guess. +- When the owner approves the draft, offer to save it as a Markdown file. diff --git a/agent-skills/mvp/agents/openai.yaml b/agent-skills/mvp/agents/openai.yaml new file mode 100644 index 0000000..70cea87 --- /dev/null +++ b/agent-skills/mvp/agents/openai.yaml @@ -0,0 +1,7 @@ +interface: + display_name: "MVP concept" + short_description: "Choose the smallest first version worth building" + default_prompt: "Use $mvp to define the first version of my product from my PRD." + +policy: + allow_implicit_invocation: false diff --git a/agent-skills/nextjs-supabase-vercel/SKILL.md b/agent-skills/nextjs-supabase-vercel/SKILL.md new file mode 100644 index 0000000..32d357b --- /dev/null +++ b/agent-skills/nextjs-supabase-vercel/SKILL.md @@ -0,0 +1,9 @@ +--- +name: nextjs-supabase-vercel +description: Set up the current empty folder with the AI App Starter, so the agent builds a Next.js, Supabase and Vercel app with the owner step by step, from idea to launch. +disable-model-invocation: true +--- + + + +Set up this folder with the AI App Starter: clone https://github.com/TechNomadCode/AI-Product-Development-Toolkit with git clone --depth 1 into a temporary folder, then follow starters/nextjs-supabase-vercel/SETUP.md from it. diff --git a/agent-skills/nextjs-supabase-vercel/agents/openai.yaml b/agent-skills/nextjs-supabase-vercel/agents/openai.yaml new file mode 100644 index 0000000..142fe81 --- /dev/null +++ b/agent-skills/nextjs-supabase-vercel/agents/openai.yaml @@ -0,0 +1,7 @@ +interface: + display_name: "AI App Starter" + short_description: "Start a Next.js, Supabase and Vercel app" + default_prompt: "Use $nextjs-supabase-vercel to set up this empty folder with the AI App Starter." + +policy: + allow_implicit_invocation: false diff --git a/agent-skills/prd/SKILL.md b/agent-skills/prd/SKILL.md new file mode 100644 index 0000000..2b978a1 --- /dev/null +++ b/agent-skills/prd/SKILL.md @@ -0,0 +1,13 @@ +--- +name: prd +description: Interview the owner about a product idea, then draft a Product Requirements Document (PRD) with the AI Product Development Toolkit's PRD prompt. +disable-model-invocation: true +--- + + + +Run the prompt in `prd-generation.md` in this skill's folder. If the file is missing, tell the owner to install the skills again. + +- Read it in full and follow it exactly, as if the owner had pasted it. +- Fill its placeholders from the owner: use what's in their message or the files they point to, and ask for the rest. Don't guess. +- When the owner approves the draft, offer to save it as a Markdown file. diff --git a/agent-skills/prd/agents/openai.yaml b/agent-skills/prd/agents/openai.yaml new file mode 100644 index 0000000..e97e938 --- /dev/null +++ b/agent-skills/prd/agents/openai.yaml @@ -0,0 +1,7 @@ +interface: + display_name: "PRD interview" + short_description: "Interview, then draft a product requirements doc" + default_prompt: "Use $prd to turn my notes into a product requirements document." + +policy: + allow_implicit_invocation: false diff --git a/agent-skills/test-plan/SKILL.md b/agent-skills/test-plan/SKILL.md new file mode 100644 index 0000000..f3d221a --- /dev/null +++ b/agent-skills/test-plan/SKILL.md @@ -0,0 +1,13 @@ +--- +name: test-plan +description: Draft a test plan outline (scope, test types, environments and acceptance criteria) through a guided interview, with the AI Product Development Toolkit's test plan prompt. +disable-model-invocation: true +--- + + + +Run the prompt in `Guided-Test-Plan.md` in this skill's folder. If the file is missing, tell the owner to install the skills again. + +- Read it in full and follow it exactly, as if the owner had pasted it. +- Fill its placeholders from the owner: use what's in their message or the files they point to, and ask for the rest. Don't guess. +- When the owner approves the draft, offer to save it as a Markdown file. diff --git a/agent-skills/test-plan/agents/openai.yaml b/agent-skills/test-plan/agents/openai.yaml new file mode 100644 index 0000000..a233a57 --- /dev/null +++ b/agent-skills/test-plan/agents/openai.yaml @@ -0,0 +1,7 @@ +interface: + display_name: "Test plan" + short_description: "Draft a test plan with scope and acceptance criteria" + default_prompt: "Use $test-plan to draft a test plan for the features I'm building." + +policy: + allow_implicit_invocation: false diff --git a/agent-skills/user-research/SKILL.md b/agent-skills/user-research/SKILL.md new file mode 100644 index 0000000..6b83dc2 --- /dev/null +++ b/agent-skills/user-research/SKILL.md @@ -0,0 +1,18 @@ +--- +name: user-research +description: Plan a user research questionnaire, or turn collected responses into evidence-linked input for a PRD, with the AI Product Development Toolkit's research prompts. +disable-model-invocation: true +--- + + + +This skill has two prompts in its folder. Unless the owner's message makes it clear, ask which one they need: + +- `Guided-User-Research-Questionnaire.md`: design a questionnaire, before the research. +- `Post-Research-PRD-Input.md`: turn collected responses into input for a PRD, after the research. + +If a file is missing, tell the owner to install the skills again. Then run the prompt: + +- Read it in full and follow it exactly, as if the owner had pasted it. +- Fill its placeholders from the owner: use what's in their message or the files they point to, and ask for the rest. Don't guess. +- When the owner approves the draft, offer to save it as a Markdown file. diff --git a/agent-skills/user-research/agents/openai.yaml b/agent-skills/user-research/agents/openai.yaml new file mode 100644 index 0000000..bd7d1d5 --- /dev/null +++ b/agent-skills/user-research/agents/openai.yaml @@ -0,0 +1,7 @@ +interface: + display_name: "User research" + short_description: "Plan user research and turn answers into PRD input" + default_prompt: "Use $user-research to plan a questionnaire for my product idea." + +policy: + allow_implicit_invocation: false diff --git a/agent-skills/ux/SKILL.md b/agent-skills/ux/SKILL.md new file mode 100644 index 0000000..ed1d2cb --- /dev/null +++ b/agent-skills/ux/SKILL.md @@ -0,0 +1,13 @@ +--- +name: ux +description: Turn a PRD into UX specifications (screens, user flows and interaction patterns) through a guided interview, with the AI Product Development Toolkit's UX prompt. +disable-model-invocation: true +--- + + + +Run the prompt in `Guided-UX-User-Flow.md` in this skill's folder. If the file is missing, tell the owner to install the skills again. + +- Read it in full and follow it exactly, as if the owner had pasted it. +- Fill its placeholders from the owner: use what's in their message or the files they point to, and ask for the rest. Don't guess. +- When the owner approves the draft, offer to save it as a Markdown file. diff --git a/agent-skills/ux/agents/openai.yaml b/agent-skills/ux/agents/openai.yaml new file mode 100644 index 0000000..10641ca --- /dev/null +++ b/agent-skills/ux/agents/openai.yaml @@ -0,0 +1,7 @@ +interface: + display_name: "UX and user flows" + short_description: "Map screens and user flows from your PRD" + default_prompt: "Use $ux to turn my PRD into screens and user flows." + +policy: + allow_implicit_invocation: false diff --git a/starters/nextjs-supabase-vercel/README.md b/starters/nextjs-supabase-vercel/README.md index 6be3574..d299692 100644 --- a/starters/nextjs-supabase-vercel/README.md +++ b/starters/nextjs-supabase-vercel/README.md @@ -18,6 +18,8 @@ Build and launch a web app with an AI coding agent that leads the way. It can't Set up this folder with the AI App Starter: clone https://github.com/TechNomadCode/AI-Product-Development-Toolkit with git clone --depth 1 into a temporary folder, then follow starters/nextjs-supabase-vercel/SETUP.md from it. ``` +Installed the toolkit's [skills](../../README.md#skills)? Run `/nextjs-supabase-vercel` instead (`$nextjs-supabase-vercel` in Codex). + **3. Answer its questions.** After that, just talk to it: ask **what's next?**, then say **continue** or **do X instead**. Ask for a new feature or report a bug in your own words, and it fits the request into the plan. ## What happens