Dev Feature Hub turns feature markdown into:
- prompt files for manual AI use, and
- structured Azure DevOps-style tasks generated via OpenAI.
- Reads feature markdown files from
src/inputs(manual flow) andsrc/task-breakdown/feature-templates(automated flow). - Builds reusable AI prompts using
src/task-breakdown/common/feature-prompt.ts. - Generates manual prompt text files into
src/outputs/prompts. - Generates AI task breakdown JSON files into
src/task-breakdown/feature-tasks.
- Node.js 20+ (tested with Node 22)
- npm
- OpenAI API key (for AI task generation only)
npm installCreate a .env file in the project root:
OPENAI_API_KEY=your_openai_api_key_here
OPENAI_API_KEYis required forgenerate:ai-tasks.
src/
inputs/ # Input feature markdown files (*.md)
outputs/
prompts/ # Output from manual prompt generator
task-breakdown/
manual-task-breakdown.ts
automated-task-breakdown.ts
feature-templates/ # Input for automated AI task generator
feature-tasks/ # Output from automated AI task generator
common/
feature-prompt.ts
npm run generate:manual-promptsReads markdown files in src/inputs and writes *-prompt.txt files to src/outputs/prompts.
npm run generate:ai-tasksReads markdown from src/task-breakdown/feature-templates, sends prompts to OpenAI, and writes *-azure-tasks.json files to src/task-breakdown/feature-tasks.
npm run dev
npm run lint
npm run format- Add or update feature markdown files in
src/inputsfor manual prompt generation. - Add or update feature markdown files in
src/task-breakdown/feature-templatesfor automated AI task generation. - Run
npm run generate:manual-promptsto produce prompt files. - Run
npm run generate:ai-tasksto produce JSON task output. - Review output in
src/outputs/promptsandsrc/task-breakdown/feature-tasks.
- You may see Node warnings related to
--loader ts-node/esm; these are currently non-blocking. - If OpenAI returns non-JSON content, the script falls back to saving raw text output.
Use the provided npm scripts (they already run Node with the ts-node ESM loader):
npm run generate:manual-prompts
npm run generate:ai-tasksEnsure ESM import paths include .js in TypeScript source imports when using ts-node/esm, for example:
import { createPrompt } from "./common/feature-prompt.js";Check that .env exists and OPENAI_API_KEY is valid.