Skip to main content

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
  • Agent Skills - Load SKILL.md bundles to extend the agent on demand
  • 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).

Agent Skills

Extend Ripperdoc with reusable Skill bundles:

  • Personal skills live in ~/.ripperdoc/skills/<skill-name>/SKILL.md
  • Project skills live in .ripperdoc/skills/<skill-name>/SKILL.md and can be checked into git
  • Each SKILL.md starts with YAML frontmatter (name, description, optional allowed-tools, model, max-thinking-tokens, disable-model-invocation) followed by the instructions; add supporting files alongside it
  • Model and max-thinking-token hints from skills are applied automatically for the rest of the session after you load them with the Skill tool
  • Ripperdoc exposes skill names/descriptions in the system prompt and loads full content on demand via the Skill tool

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:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ripperdoc-0.2.7.tar.gz (254.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ripperdoc-0.2.7-py3-none-any.whl (285.3 kB view details)

Uploaded Python 3

File details

Details for the file ripperdoc-0.2.7.tar.gz.

File metadata

  • Download URL: ripperdoc-0.2.7.tar.gz
  • Upload date:
  • Size: 254.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ripperdoc-0.2.7.tar.gz
Algorithm Hash digest
SHA256 92beb918e3ce40d1701aaf1fb692b38899bba4156a7f008606827430552bd74e
MD5 16c3f1e630630c70a009d2d3c08b2c0d
BLAKE2b-256 0d104230e2eeb32e87f7410ee5ff3a13e70e47623d4bb14862c70d0d628096a1

See more details on using hashes here.

File details

Details for the file ripperdoc-0.2.7-py3-none-any.whl.

File metadata

  • Download URL: ripperdoc-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 285.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for ripperdoc-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 c9d4163ea02fe2fa8633cf9e5a3d4c3ba6e11ea437ed650b393cc4b193ff5c35
MD5 85e1ea75b3852a9e43b5f2997a268dd0
BLAKE2b-256 a6840d1bec1cb401ae8cd63d3c49355d8b11aecc04977c493bc79d835f2f6ab1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page