https://github.com/dcversus/prp
Autonomous Software Development Orchestration - AI-powered development system using PRPs and autonomous agent coordination
https://github.com/dcversus/prp
ai-agents anthropic autonomous-development claude cli developer-tools git-worktree ink-cli macos openai orchestration prp signals terminal-automation typescript
Last synced: 2 days ago
JSON representation
Autonomous Software Development Orchestration - AI-powered development system using PRPs and autonomous agent coordination
- Host: GitHub
- URL: https://github.com/dcversus/prp
- Owner: dcversus
- License: mit
- Created: 2025-10-28T05:23:24.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2025-12-01T08:29:24.000Z (7 months ago)
- Last Synced: 2026-03-31T12:39:34.229Z (3 months ago)
- Topics: ai-agents, anthropic, autonomous-development, claude, cli, developer-tools, git-worktree, ink-cli, macos, openai, orchestration, prp, signals, terminal-automation, typescript
- Language: TypeScript
- Homepage: https://prp.theedgestory.org
- Size: 4.71 MB
- Stars: 3
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Agents: AGENTS.md
Awesome Lists containing this project
README
# PRP - Product Requirement Prompts
> **Bootstrap context-driven development workflow based on Product Requirement Prompts (PRPs) and orchestrate execution with LOOP MODE**
>
> By Vasilisa Versus
## What is PRP?
**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
### The PRP Workflow (Autonomous Orchestration)
**Key Principle:** AI Orchestrator makes decisions autonomously. Humans are subordinate agents, not decision makers.
Every development task follows this cycle:
1. **📖 Read ALL PRPs** - Load context across entire project
2. **🔍 Analyze ALL Signals** - Identify highest priority signal (10→1)
3. **⚡ React to Strongest Signal** - Work on highest priority across ALL PRPs
4. **🔨 Execute Work** - Implement changes, write code, solve problems
5. **💬 Update Progress** - Leave detailed comment in progress log
6. **🎯 Leave Signal** - Express current state (TIRED, CONFIDENT, BLOCKED, etc.)
7. **🔄 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**:
```bash
# 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 signal
```
**Signal 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](AGENTS.md)**
**For contributing guidelines, see [CONTRIBUTING.md](CONTRIBUTING.md)**
[](https://www.npmjs.com/package/@dcversus/prp)
[](LICENSE)
[](https://nodejs.org/)
## Project Scaffolding Features
- 🚀 **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
## Quick Start
### Using npx (no installation required)
```bash
npx @dcversus/prp
```
### Global Installation
```bash
npm install -g @dcversus/prp
prp
```
### Local Installation
```bash
npm install @dcversus/prp
npx prp
```
## Usage
### Interactive Mode (Default)
Simply run the command and follow the prompts:
```bash
prp
```
The interactive CLI will guide you through:
1. Project metadata (name, description, author)
2. Template selection (FastAPI, NestJS, React, etc.)
3. Feature selection (LICENSE, Code of Conduct, GitHub Actions, etc.)
4. AI integration options (optional)
### Non-Interactive Mode
Pass all options via command-line arguments:
```bash
prp \
--name my-project \
--description "My awesome project" \
--author "Your Name" \
--email "you@example.com" \
--template react \
--license MIT \
--no-interactive
```
### Command-Line Options
```
Options:
-n, --name Project name
-d, --description Project description
-a, --author Author name
-e, --email Author email
-t, --template Template (fastapi, nestjs, react, typescript-lib, none)
--no-interactive Run in non-interactive mode
--yes Use default values for all options
--license License type (default: MIT)
--no-git Skip git initialization
--no-install Skip dependency installation
-h, --help Display help
-V, --version Display version
```
## Supported Templates
| 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!
## What Gets Generated
### Core Project Files
- `README.md` - Project documentation with badges and sections
- `LICENSE` - Your chosen license (default: MIT)
- `.gitignore` - Language/framework-specific ignores
- `package.json` / `requirements.txt` - Dependency management
- `.editorconfig` - Consistent coding styles
### Open Source Best Practices
- `CONTRIBUTING.md` - Contribution guidelines
- `CODE_OF_CONDUCT.md` - Contributor Covenant
- `SECURITY.md` - Security policy and vulnerability reporting
- `CHANGELOG.md` - Keep a Changelog format
### GitHub Templates
- `.github/ISSUE_TEMPLATE/` - Bug reports and feature requests
- `.github/PULL_REQUEST_TEMPLATE.md` - PR checklist
- `.github/workflows/ci.yml` - CI/CD workflows
### Development Tools
- ESLint configuration (for JS/TS projects)
- Prettier configuration (for JS/TS projects)
- TypeScript configuration (for TS projects)
- Jest/pytest configuration (testing)
- Docker configuration (optional)
## AI Integration
PRP can optionally integrate with AI coding assistants to generate boilerplate code:
### Supported Providers
- **OpenAI** (GPT-4, Codex) - `OPENAI_API_KEY`
- **Anthropic** (Claude) - `ANTHROPIC_API_KEY`
- **Google** (Gemini) - `GOOGLE_API_KEY`
### Configuration
Set your API key as an environment variable:
```bash
export OPENAI_API_KEY="your-api-key"
prp
```
Or create a `.prprc` file in your home directory:
```json
{
"aiProvider": "openai",
"apiKey": "your-api-key"
}
```
## Development
### Prerequisites
- Node.js >= 20.0.0
- npm >= 10.0.0
### Setup
```bash
# 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 format
```
### Project Structure
```
prp/
├── 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
```
## Contributing
Contributions are welcome! Please read [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
## License
MIT License - see [LICENSE](LICENSE) file for details.
## Credits
Inspired by:
- [Yeoman](https://yeoman.io/)
- [Cookiecutter](https://github.com/cookiecutter/cookiecutter)
- [create-react-app](https://create-react-app.dev/)
- [Telefonica Open Source Scaffold](https://github.com/Telefonica/opensource-scaffold)
Built with:
- [Ink](https://github.com/vadimdemedes/ink) - React for CLIs
- [Commander.js](https://github.com/tj/commander.js) - Command-line framework
- [TypeScript](https://www.typescriptlang.org/) - Type-safe JavaScript
## Links
- [GitHub Repository](https://github.com/dcversus/prp)
- [npm Package](https://www.npmjs.com/package/@dcversus/prp)
- [Issue Tracker](https://github.com/dcversus/prp/issues)
- [Changelog](CHANGELOG.md)
---
Made with ❤️ by [dcversus](https://github.com/dcversus)