Bootstrap context-driven development workflow based on Product Requirement Prompts (PRPs) and orchestrate execution with LOOP MODE
By Vasilisa Versus
PRP is both a methodology and a CLI tool that revolutionizes how you approach software development:
- π PRP Methodology - Context-driven development using Product Requirement Prompts as living documents
- π LOOP MODE - Continuous agent iteration guided by signals and progress tracking
- π€ Agent Orchestration - AI agents collaborate through standardized PRPs with emotional signals
- β‘ Signal System - Track progress and emotional state with 14+ signals (ATTENTION, BLOCKED, ENCANTADO, etc.)
- π Project Scaffolding - Bootstrap new projects with best practices and complete infrastructure
Key Principle: AI Orchestrator makes decisions autonomously. Humans are subordinate agents, not decision makers.
Every development task follows this cycle:
- π Read ALL PRPs - Load context across entire project
- π Analyze ALL Signals - Identify highest priority signal (10β1)
- β‘ React to Strongest Signal - Work on highest priority across ALL PRPs
- π¨ Execute Work - Implement changes, write code, solve problems
- π¬ Update Progress - Leave detailed comment in progress log
- π― Leave Signal - Express current state (TIRED, CONFIDENT, BLOCKED, etc.)
- π Loop - Continue until DoD met or checkpoint reached
Orchestrator Rules:
- β NO QUESTIONS to humans for decisions
- β DECIDE AUTONOMOUSLY based on signal analysis
- β DOCUMENT decisions in PRP progress log
- β EXECUTE immediately without waiting
β οΈ NUDGE only for critical blocks (Priority 10)
Quick Start with PRPs:
# List all PRPs
ls PRPs/
# Start working on a PRP
# 1. Read the PRP file
# 2. Check Progress Log for latest signal
# 3. Follow signal's algorithm (see AGENTS.md)
# 4. Do work
# 5. Update Progress Log with your signalSignal Examples:
- π΄ ATTENTION (10) - New work or need user input (triggers NUDGE system)
- π« BLOCKED (9) - Can't proceed, need external help
- β CONFIDENT (3) - Work done, ready for review
- π COMPLETED (1) - PRP finished, DoD met
For detailed workflow instructions, see AGENTS.md For contributing guidelines, see CONTRIBUTING.md
- π Interactive CLI with beautiful TUI powered by Ink (React for terminal)
- π¨ Multiple Templates - FastAPI, NestJS, React, TypeScript libraries, and more
- π Complete Project Setup - LICENSE, README, CONTRIBUTING, Code of Conduct, and more
- π€ AI Integration - Optional AI-powered code generation (OpenAI, Anthropic, Google)
- π§ GitHub Actions - Pre-configured CI/CD workflows
- π¦ Dependency Management - Auto-install with npm, yarn, or pnpm
- π³ Docker Support - Optional Dockerfile and docker-compose configuration
- βοΈ Configurable - Choose exactly what to include in your project
npx @dcversus/prpnpm install -g @dcversus/prp
prpnpm install @dcversus/prp
npx prpSimply run the command and follow the prompts:
prpThe interactive CLI will guide you through:
- Project metadata (name, description, author)
- Template selection (FastAPI, NestJS, React, etc.)
- Feature selection (LICENSE, Code of Conduct, GitHub Actions, etc.)
- AI integration options (optional)
Pass all options via command-line arguments:
prp \
--name my-project \
--description "My awesome project" \
--author "Your Name" \
--email "you@example.com" \
--template react \
--license MIT \
--no-interactiveOptions:
-n, --name <name> Project name
-d, --description <desc> Project description
-a, --author <author> Author name
-e, --email <email> Author email
-t, --template <template> Template (fastapi, nestjs, react, typescript-lib, none)
--no-interactive Run in non-interactive mode
--yes Use default values for all options
--license <license> License type (default: MIT)
--no-git Skip git initialization
--no-install Skip dependency installation
-h, --help Display help
-V, --version Display version
| Template | Description | Tech Stack |
|---|---|---|
none |
Minimal setup with docs only | N/A |
fastapi |
FastAPI Python web service | Python, FastAPI, Uvicorn |
nestjs |
NestJS TypeScript backend | TypeScript, NestJS, Node.js |
react |
React web application | TypeScript, React, Vite |
typescript-lib |
TypeScript library/package | TypeScript, Node.js |
express |
Express.js backend | TypeScript, Express, Node.js |
More templates coming soon!
README.md- Project documentation with badges and sectionsLICENSE- Your chosen license (default: MIT).gitignore- Language/framework-specific ignorespackage.json/requirements.txt- Dependency management.editorconfig- Consistent coding styles
CONTRIBUTING.md- Contribution guidelinesCODE_OF_CONDUCT.md- Contributor CovenantSECURITY.md- Security policy and vulnerability reportingCHANGELOG.md- Keep a Changelog format
.github/ISSUE_TEMPLATE/- Bug reports and feature requests.github/PULL_REQUEST_TEMPLATE.md- PR checklist.github/workflows/ci.yml- CI/CD workflows
- ESLint configuration (for JS/TS projects)
- Prettier configuration (for JS/TS projects)
- TypeScript configuration (for TS projects)
- Jest/pytest configuration (testing)
- Docker configuration (optional)
PRP can optionally integrate with AI coding assistants to generate boilerplate code:
- OpenAI (GPT-4, Codex) -
OPENAI_API_KEY - Anthropic (Claude) -
ANTHROPIC_API_KEY - Google (Gemini) -
GOOGLE_API_KEY
Set your API key as an environment variable:
export OPENAI_API_KEY="your-api-key"
prpOr create a .prprc file in your home directory:
{
"aiProvider": "openai",
"apiKey": "your-api-key"
}- Node.js >= 20.0.0
- npm >= 10.0.0
# Clone the repository
git clone https://github.com/dcversus/prp.git
cd prp
# Install dependencies
npm install
# Run in development mode
npm run dev
# Build
npm run build
# Run tests
npm test
# Lint and format
npm run lint
npm run formatprp/
βββ src/
β βββ cli.ts # CLI entry point
β βββ index.ts # Main module
β βββ types.ts # TypeScript types
β βββ ui/ # Ink UI components
β β βββ App.tsx
β β βββ components/
β βββ generators/ # Template generators
β βββ templates/ # Template files
β βββ ai/ # AI integration
β βββ utils/ # Helper functions
βββ tests/ # Test files
βββ dist/ # Compiled output
βββ docs/ # Documentation
Contributions are welcome! Please read CONTRIBUTING.md for guidelines.
MIT License - see LICENSE file for details.
Inspired by:
Built with:
- Ink - React for CLIs
- Commander.js - Command-line framework
- TypeScript - Type-safe JavaScript
Made with β€οΈ by dcversus