Task-focused programming environment designed for the right vibe.
Pivo is built with Tauri, React, and Rust, providing a seamless experience for managing Git-based projects with integrated AI assistance and terminal capabilities.
Watch the demo video showing task management, file changes, and AI conversation features
- Git Integration: Native Git repository support with automatic project detection
- Multi-Project Workspace: Manage multiple projects simultaneously
- Branch Management: Advanced Git worktree support for task isolation
- Kanban Board: Visual task management with drag-and-drop functionality
- Task Hierarchy: Support for parent-child task relationships
- Status Tracking: Comprehensive task status and priority management
- Task Attempts: Isolated execution environments for each task attempt
- Claude Assistant: Integrated Claude AI for intelligent task assistance
- Gemini Support: Alternative AI model support for diverse workflows
- Conversation History: Persistent AI conversation tracking per task
- Context-Aware: AI understands project structure and task context
- Embedded Terminal: Built-in terminal with xterm.js
- Process Management: Track and manage running processes
- Command History: Persistent command execution history
- Multi-Session: Support for multiple terminal sessions
- MCP Server Support: Model Control Protocol for extensible AI capabilities
- File Watching: Real-time file system monitoring
- Diff Viewer: Built-in code diff visualization
- Merge Request Integration: GitLab and GitHub integration support
- Multi-language: English and Chinese interface support
- Node.js (v18 or higher)
- Rust (latest stable)
- pnpm (recommended package manager)
- Git
Install Node.js:
# Using Homebrew
brew install node
# Or download from nodejs.org
# https://nodejs.org/en/download/
Install Rust:
# Using rustup (recommended)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Follow the on-screen instructions, then reload your shell
source $HOME/.cargo/env
Install pnpm:
# Using npm
npm install -g pnpm
# Or using Homebrew
brew install pnpm
-
Clone the repository
git clone https://github.com/12Particles/Pivo.git cd pivo
-
Install dependencies
pnpm install
-
Install Rust dependencies
cd src-tauri cargo build cd ..
-
Run in development mode
pnpm tauri dev
# Build the application
pnpm tauri build
# The built application will be in src-tauri/target/release/bundle/
pivo/
βββ src/ # React frontend source
β βββ components/ # React components
β βββ lib/ # Utility libraries
β βββ hooks/ # Custom React hooks
β βββ types/ # TypeScript type definitions
β βββ locales/ # i18n translations
βββ src-tauri/ # Tauri/Rust backend
β βββ src/ # Rust source code
β βββ migrations/ # Database migrations
β βββ capabilities/ # Tauri capabilities
βββ public/ # Static assets
βββ docs/ # Documentation
# Start development server
pnpm dev
# Build frontend only
pnpm build
# Run Tauri development mode
pnpm tauri dev
# Build Tauri application
pnpm tauri build
# Run tests (if available)
pnpm test
# Lint code
pnpm lint
Pivo uses SQLite for data persistence. The database is automatically initialized on first run with the following tables:
projects
: Project information and Git repository detailstasks
: Task management and hierarchytask_attempts
: Task execution attempts with isolated environmentsexecution_processes
: Process execution tracking
The application stores configuration in the system's app data directory:
- macOS:
~/Library/Application Support/com.living.pivo/
- Windows:
%APPDATA%\com.living.pivo\
- Linux:
~/.local/share/com.living.pivo/
Configure Git platform integrations for merge request support:
- GitLab: Personal access token with
api
scope - GitHub: Personal access token with
repo
scope
- Create a Project: Select a Git repository directory to create a new project
- Manage Tasks: Use the Kanban board to create and organize tasks
- AI Assistance: Click on any task to start an AI conversation for guidance
- Execute Tasks: Use the integrated terminal or AI to execute task-related commands
- Track Progress: Monitor task attempts and execution history
Join our Discord community for discussions, support, and updates:
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Make your changes and test thoroughly
- Commit your changes:
git commit -m 'Add amazing feature'
- Push to the branch:
git push origin feature/amazing-feature
- Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Tauri for the excellent desktop app framework
- Radix UI for accessible UI components
- Anthropic Claude for AI capabilities
- xterm.js for terminal emulation
If you find this project helpful, please consider giving it a β on GitHub!
For support, please open an issue.