AI-powered terminal assistant for coding tasks
Project description
Ripperdoc - AI-Powered Terminal Assistant
Ripperdoc is an AI-powered terminal assistant for coding tasks, providing an interactive interface for AI-assisted development, file management, and command execution.
中文文档 | Contributing | Documentation
Features
- AI-Powered Assistance - Uses AI models to understand and respond to coding requests
- Multi-Model Support - Support for Anthropic Claude and OpenAI models
- Rich UI - Beautiful terminal interface with syntax highlighting
- Code Editing - Directly edit files with intelligent suggestions
- Codebase Understanding - Analyzes project structure and code relationships
- Command Execution - Run shell commands with real-time feedback
- Tool System - Extensible architecture with specialized tools
- Subagents - Delegate tasks to specialized agents with their own tool scopes
- File Operations - Read, write, edit, search, and manage files
- Todo Tracking - Plan, read, and update persistent todo lists per project
- Background Commands - Run commands in background and monitor output
- Permission System - Safe mode with permission prompts for operations
- Multi-Edit Support - Batch edit operations on files
- MCP Server Support - Integration with Model Context Protocol servers
- Session Management - Persistent session history and usage tracking
- Jupyter Notebook Support - Edit .ipynb files directly
Installation
Quick Installation
Install from git repository:
pip install git+https://github.com/quantmew/ripperdoc.git
Or install from source:
# Clone the repository
git clone <repository-url>
cd Ripperdoc
# Install from source
pip install -e .
Configuration
Set your API key as an environment variable:
export OPENAI_API_KEY="your-api-key-here"
# or for Anthropic Claude
export ANTHROPIC_API_KEY="your-api-key-here"
Usage
Interactive Mode (Recommended)
ripperdoc
This launches an interactive session where you can:
- Ask questions about your codebase
- Request code modifications
- Execute commands
- Navigate and explore files
Python SDK (headless)
Use Ripperdoc without the terminal UI via the new Python SDK. See docs/SDK_USAGE.md for examples of the one-shot query helper and the session-based RipperdocClient. 中文指南见 docs/SDK_USAGE_CN.md。
SDK Examples
- Basic Usage: Simple one-shot queries
- Session Management: Persistent sessions with context
- Tool Integration: Direct tool access and customization
- Configuration: Custom model providers and settings
See the examples/ directory for complete SDK usage examples.
Safe Mode Permissions
Safe mode is the default. Use --unsafe to skip permission prompts. Choose a/always to allow a tool for the current session (not persisted across sessions).
Examples
Code Analysis
> Can you explain what this function does?
File Operations
> Read the main.py file and suggest improvements
Code Generation
> Create a new Python script that implements a REST API client
Project Navigation
> Show me all the Python files in the project
Development
Setup Development Environment
# Install development dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Type checking
mypy ripperdoc
# Code formatting
black ripperdoc
# Linting
ruff ripperdoc
License
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.
Key License Terms
- Commercial Use: Permitted
- Distribution: Permitted
- Modification: Permitted
- Patent Grant: Included
- Private Use: Permitted
- Sublicensing: Permitted
- Trademark Use: Not granted
For full license terms and conditions, please refer to the LICENSE file.
Credits
Inspired by:
- Claude Code - Anthropic 官方 CLI
- aider - AI pair programming tool
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ripperdoc-0.2.2.tar.gz.
File metadata
- Download URL: ripperdoc-0.2.2.tar.gz
- Upload date:
- Size: 166.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dae689781e17b6ce8989d8a5d7044a8b30088a40ab9ccbf9399cb00f689c519b
|
|
| MD5 |
84a4bdb02c46fcaac797084c42b308cb
|
|
| BLAKE2b-256 |
45e21ff383152e88272cc93cf54c85bfd94c162d286aa21e394c7bb1a79e845f
|
File details
Details for the file ripperdoc-0.2.2-py3-none-any.whl.
File metadata
- Download URL: ripperdoc-0.2.2-py3-none-any.whl
- Upload date:
- Size: 191.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
129898b44dcbc69baa44a8401709cc8abbf642772f0a9618d9df7d424fa7efa5
|
|
| MD5 |
ccb5fbda52b60e0acaf28d6a4bb8020c
|
|
| BLAKE2b-256 |
cc4c387c03a3355625d83e5df927f4249540c1f6318923c5f121e2911f7b5db6
|