Bivvy
A Zero-Dependency Stateful PRD Framework for AI-Driven Development
Install / Use
/learn @taggartbg/BivvyREADME
Bivvy
A Zero-Dependency Stateful PRD Framework for AI-Driven Development
Quickstart
npx bivvy init --cursor
Then ask your AI agent to create a new climb and you're ready to go!
**(NOTE: We suggest you commit the created Bivvy files before making additional changes)
Supported Clients
Currently, Bivvy supports:
- Cursor (✅ Available now)
- Windsurf (🚧 Coming soon)
Want to see Bivvy support another client? Open an issue!
How it Works
Bivvy provides a structured framework for AI-driven development through a combination of Product Requirements Documents (PRDs) and task management. Here's how it works:
Initialization
When you run bivvy init --cursor, Bivvy:
- Creates a
.cursor/rules/bivvy.mdcfile with the AI interaction rules - Sets up a
.bivvydirectory with example files - Creates a
.bivvy/completedirectory for finished work
The Climb Concept
A "Climb" is Bivvy's term for a development project, which can be a feature, bug fix, task, or exploration. Each Climb consists of two key components:
-
PRD (
.bivvy/[id]-climb.md)- Contains the project requirements and specifications
- Includes metadata like ID, type, and description
- Documents dependencies, prerequisites, and relevant files
- Structured as a markdown file with YAML frontmatter
-
Moves (
.bivvy/[id]-moves.json)- A JSON file containing the task list
- Each move has a status:
todo,climbing,skip, orcomplete - Moves can be marked with
rest: truefor mandatory checkpoints - Tasks are executed in strict order
File Structure
.bivvy/
├── [id]-climb.md # Active PRD
├── [id]-moves.json # Active task list
└── complete/ # Completed climbs
├── [id]-climb.md
└── [id]-moves.json
Interacting with the Agent
-
Starting a Climb
- Ask your AI agent to create a new climb
- The agent will help you draft the PRD
- You must approve the initial PRD before proceeding
-
During Development
- The agent works through moves one at a time
- Stops for approval at
rest: truecheckpoints - Skips tasks marked as
skip(can return to them later) - Updates move statuses in real-time
-
Completing a Climb
- When all moves are done, the agent will:
- Ask to mark the climb as complete
- Move files to
.bivvy/complete/ - Stop tracking the climb
- When all moves are done, the agent will:
Example Workflow
- Initialize Bivvy:
npx bivvy init --cursor - Start a new climb: "Create a new feature climb for adding user authentication"
- Review and approve the PRD
- Review and approve the moves list
- Let the agent work through the moves
- Review and approve each significant change
- Complete the climb when done
Best Practices
- Always review PRDs and moves lists before approval
- Use
rest: truefor important checkpoints - Mark non-critical tasks as
skipto focus on core functionality - Keep moves small and focused (2-3 code changes)
- Trust the process and follow moves in order
Running Locally
Want to try out changes or contribute? Clone the repo and copy the files manually:
git clone https://github.com/taggartbg/bivvy.git
mkdir your-project/.bivvy
cp -r bivvy/src/example/* your-project/.bivvy
cp bivvy/src/rules/.cursor.mdc your-project/.cursor/rules/bivvy.mdc
Contributing
While Bivvy is a small project, I'd love to see it grow! Contributions are welcome through:
- Pull Requests for new features or improvements
- Issues for bug reports or feature requests
- Discussions in the Issues section
Let's make AI-driven development more structured and efficient together!
License
MIT
Related Skills
node-connect
342.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.7kCommit, push, and open a PR
