Simple cli for genai project management
Project description
Droid Please
A simple CLI tool that acts as your AI coding assistant, powered by Anthropic's Claude. It helps you manage your project through natural language commands, allowing you to perform various file operations and coding tasks by simply asking.
Quick Start
# Install the package
pip install droid-please
# Set your API key
export ANTHROPIC_API_KEY=your-api-key
# Start using it!
droid please # interactive mode
droid please "update the version in pyproject.toml" # direct command
Features
- 💬 Natural language interface for project management
- 📁 File operations:
- Read file contents
- Create new files
- Update existing files
- Rename files
- Delete files
- List directory contents
- 🤖 Powered by Anthropic's Claude AI model
- 💻 Interactive CLI experience
- 🔄 Context-aware file operations
Installation
Using pip
pip install droid-please
From source
git clone https://github.com/yourusername/droid-please.git
cd droid-please
poetry install
Configuration
- Get an API key from Anthropic
- Set up your Anthropic API key as an environment variable:
export ANTHROPIC_API_KEY=your-api-key
You can also add this to your .bashrc, .zshrc, or equivalent to make it permanent.
Usage
Interactive Mode
droid please
This starts an interactive session where you can type commands in natural language.
Direct Commands
droid please "read the contents of config.py"
droid please "update the version number to 1.0.0 in pyproject.toml"
droid please "create a new file called example.txt with Hello World content"
Example Commands
"Show me what's in the src directory""Create a new Python file called utils.py""Update the project description in pyproject.toml""Delete the temporary files in the cache directory""Rename old_file.txt to new_file.txt"
Requirements
- Python 3.10 or higher
- Anthropic API key
Development
This project uses Poetry for dependency management and development workflows.
Setting up the development environment
# Clone the repository
git clone https://github.com/yourusername/droid-please.git
cd droid-please
# Install all dependencies including development ones
poetry install --with dev
# Activate the virtual environment
poetry shell
Running Tests
poetry run pytest
Code Quality
# Run linter
poetry run ruff check .
Dependencies
anthropic: Anthropic API client for Claude integrationtyper: Modern CLI framework for Pythonrich: Rich text and beautiful formatting in the terminalpydantic: Data validation using Python type annotationspython-dotenv: Environment variable managementpyyaml: YAML file handlingjsonschema: JSON schema validation
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
License
[Add your license information here]
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
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 droid_please-0.0.2.tar.gz.
File metadata
- Download URL: droid_please-0.0.2.tar.gz
- Upload date:
- Size: 12.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.7 Darwin/23.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
545b2a3f8f65965b7e6aefcd6240b930350b93c322c3ea34c17113c5a1b3d289
|
|
| MD5 |
18062bea9872a0d2175ae969a877e33e
|
|
| BLAKE2b-256 |
a0f0c18f13a40cb7b77f551bd095e5d8726c56f37f30cf256138d2d872a86b73
|
File details
Details for the file droid_please-0.0.2-py3-none-any.whl.
File metadata
- Download URL: droid_please-0.0.2-py3-none-any.whl
- Upload date:
- Size: 13.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.11.7 Darwin/23.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6b87ccb80dc5d1d4d5a14cd3bb44d27e568d07277a293968c0bd3c2e70732f5f
|
|
| MD5 |
964382057f299492d1050346ee360140
|
|
| BLAKE2b-256 |
ed56f03a8aa11dffb8ce2b6f0fb62ab8cfc4b0b804c7393ce64d26daf6447f68
|