Interactive coding agent CLI
Project description
pig-coding-agent
Interactive coding agent CLI with file operations and code generation.
Features
- 💻 Code Generation: AI-powered code generation
- 📁 File Operations: Read, write, edit files
- 🔍 Code Analysis: Understand and analyze code
- 🛠️ Refactoring: Automated code refactoring
- 🐚 Shell Integration: Execute shell commands
- 💬 Interactive Chat: Conversational interface
Installation
pip install pig-coding-agent
Quick Start
Start Interactive Session
# Start coding agent
pig-code
# With specific model
pig-code --model gpt-4
# In a specific directory
pig-code --path /path/to/project
Command Line Usage
# Generate code
pig-code gen "Create a FastAPI hello world app"
# Analyze file
pig-code analyze main.py
# Refactor code
pig-code refactor main.py "Add type hints"
# Chat mode
pig-code chat
Built-in Tools
The coding agent comes with these tools:
File Operations
read_file(path)- Read file contentswrite_file(path, content)- Write to filelist_files(directory)- List directory contentssearch_files(pattern)- Search for files
Code Operations
generate_code(description)- Generate code from descriptionexplain_code(code)- Explain what code doesfix_code(code, error)- Fix code errorsadd_tests(code)- Generate tests for code
Shell Operations
run_command(command)- Execute shell commandgit_status()- Get git statusgit_diff()- Get git diff
Usage Examples
Generate a Python Module
$ pig-code
> Create a Python module for handling JSON files with read/write functions
Agent will:
1. Generate the code
2. Write to file
3. Show you the result
Analyze Codebase
$ pig-code analyze
> Analyze this codebase and suggest improvements
Agent will:
1. Read relevant files
2. Analyze structure
3. Provide recommendations
Interactive Refactoring
$ pig-code
> Refactor main.py to use async/await
Agent will:
1. Read the file
2. Refactor the code
3. Show diff
4. Ask for confirmation
5. Write changes
Configuration
Create .pig-code-config.json:
{
"provider": "openai",
"model": "gpt-4",
"temperature": 0.7,
"max_iterations": 10,
"auto_confirm": false,
"workspace": "./",
"ignore_patterns": [
"node_modules",
".git",
"__pycache__"
]
}
Chat Commands
Inside the agent:
/help - Show help
/exit - Exit agent
/clear - Clear conversation
/files - List files in workspace
/read PATH - Read a file
/write PATH - Write to file
/run CMD - Run shell command
/status - Show agent status
Safety Features
- File operation confirmations
- Command execution warnings
- Workspace boundaries
- Backup before overwrite
- Git integration for tracking changes
Architecture
CodingAgent
├── Agent Core (pig-agent-core)
├── LLM Client (pig-llm)
├── TUI (pig-tui)
└── Built-in Tools
├── FileTools
├── CodeTools
└── ShellTools
Examples
See examples/coding-agent/:
generate_app.py- Generate full applicationrefactor_demo.py- Code refactoringanalysis_demo.py- Code analysis
License
MIT
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
pig_coding_agent-0.0.3.tar.gz
(22.8 kB
view details)
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 pig_coding_agent-0.0.3.tar.gz.
File metadata
- Download URL: pig_coding_agent-0.0.3.tar.gz
- Upload date:
- Size: 22.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f984a32a6249f7cb39a60e102d6e38a429a2c9da844d1dc489881b171201b8ce
|
|
| MD5 |
c55ef6c8a1e00a064b7e6b5f7ed9d074
|
|
| BLAKE2b-256 |
bf7ac62ae8049da25af13352e8f7af02dd3bf475088682d4927cd1207040c0d7
|
File details
Details for the file pig_coding_agent-0.0.3-py3-none-any.whl.
File metadata
- Download URL: pig_coding_agent-0.0.3-py3-none-any.whl
- Upload date:
- Size: 21.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4e56f8cfc2491a2fcdf1961801e9df66145f38506ab520e964ab0ea5ff5f55ca
|
|
| MD5 |
34b06fdf0242c29153c5d3af846c0aef
|
|
| BLAKE2b-256 |
95914294256856a74949fdfc543a4654887293ed2036b329b710ae7532cd6fa0
|