AI-powered command-line tool for developers with AWS Bedrock integration.
- 📝 AI-powered commit message generation
- 🤖 AI code review with security analysis
- 🔐 AWS SSO authentication and credential management
- 🗄️ DynamoDB table management and export utilities
- 📡 EventBridge rule management
- 🖥️ AWS Systems Manager Session Manager integration
- 📦 CodeArtifact authentication
- ⚙️ Configuration management system
- 🔄 Self-updating capability
- 📦 Standalone binaries (no Python required)
- ⚡ Fast startup on macOS/Windows (optimized onedir builds)
- 🐚 Shell autocompletion support
Linux/macOS:
curl -fsSL https://raw.githubusercontent.com/edu526/devo-cli/main/install.sh | bashWindows (PowerShell):
irm https://raw.githubusercontent.com/edu526/devo-cli/main/install.ps1 | iexRequirements: AWS credentials configured (aws configure)
# AI commit message generation
devo commit
# AI code review
devo code-reviewer --base-branch main# AWS SSO login
devo aws-login
devo aws-login list
devo aws-login refresh
# CodeArtifact authentication
devo codeartifact-login# DynamoDB operations
devo dynamodb list
devo dynamodb export my-table --filter "userId = user123"
# EventBridge rules
devo eventbridge list
devo eventbridge enable my-rule
# SSM Session Manager
devo ssm database connect my-db
devo ssm instance shell i-1234567890abcdef0
devo ssm forward my-service 8080# Configuration management
devo config show
devo config set bedrock.model_id us.anthropic.claude-sonnet-4-20250514-v1:0
# Shell autocompletion
devo autocomplete --install
# Update to latest version
devo upgrade
# Use specific AWS profile
devo --profile my-profile dynamodb listdevo commit [OPTIONS]
Options:
-a, --add Add all changes before committing
-p, --push Push to current branch
-pr, --pull-request Open browser to create GitHub PR
-A, --all Execute add, commit, push, and PR in sequence
--profile TEXT AWS profile to usecommit- Generate conventional commit messages from staged changescode-reviewer- AI-powered code review with security analysis
-
aws-login- AWS SSO authentication and credential managementlist- List all profiles with statuslogin [PROFILE]- Login to specific profilerefresh- Refresh expired credentialsset-default [PROFILE]- Set default profileconfigure [PROFILE]- Configure new SSO profile
-
codeartifact-login- Authenticate with AWS CodeArtifact
-
dynamodb- DynamoDB table managementlist- List all tablesdescribe TABLE- Describe table structureexport TABLE- Export table data (CSV, JSON, JSONL, TSV)list-templates- List saved export templates
-
eventbridge- EventBridge rule managementlist- List all rulesenable RULE- Enable a ruledisable RULE- Disable a ruledescribe RULE- Describe rule details
-
ssm- AWS Systems Manager Session Managerdatabase connect NAME- Connect to RDS database via SSMinstance shell INSTANCE_ID- Start shell sessionforward SERVICE PORT- Port forwardinghosts setup- Setup /etc/hosts entries
-
config- Configuration managementshow- View current configurationset KEY VALUE- Set configuration valueget KEY- Get configuration valueedit- Open config in editorexport FILE- Export configurationimport FILE- Import configurationreset- Reset to defaults
-
autocomplete- Shell autocompletion setup--install- Automatically install completion
-
upgrade- Update to latest version
Configuration stored in ~/.devo/config.json:
devo config show # View current config
devo config set aws.region us-west-2
devo config get bedrock.model_id
devo config edit # Open in editor
devo config export backup.json # Export config
devo config import backup.json # Import config
devo config reset # Reset to defaultsSee Configuration Guide for details.
# Zsh (add to ~/.zshrc)
eval "$(_DEVO_COMPLETE=zsh_source devo)"
# Bash (add to ~/.bashrc)
eval "$(_DEVO_COMPLETE=bash_source devo)"
# Fish (add to ~/.config/fish/config.fish)
_DEVO_COMPLETE=fish_source devo | sourcegit clone https://github.com/edu526/devo-cli.git
cd devo-cli
./setup-dev.shmake venv
source venv/bin/activate
make install
make completionThe project has different dependency groups for different purposes:
# Development (testing, linting, formatting)
pip install -e ".[dev]"
# Documentation (building docs)
pip install -e ".[docs]"
# All optional dependencies
pip install -e ".[dev,docs]"The project uses pre-commit hooks for code quality:
# Install hooks (run once after cloning)
pre-commit install # Install pre-commit hooks
pre-commit install --hook-type pre-push # Install pre-push hooksPre-commit hooks (run on every commit):
- Code formatting (black, isort)
- Linting (flake8)
- File checks (large files, merge conflicts, etc.)
- Commit message validation (conventional commits)
Pre-push hooks (run before pushing):
- Unit tests (
pytest -m unit)
To skip hooks temporarily (not recommended):
git commit --no-verify # Skip pre-commit hooks
git push --no-verify # Skip pre-push hooksTo run hooks manually:
pre-commit run --all-files # Run all pre-commit hooks
pre-commit run --hook-stage push --all-files # Run pre-push hooksmake build-binary # Build for current platform
make build-all # Build with platform namingUses Semantic Release with Conventional Commits:
# Feature (1.0.0 → 1.1.0)
git commit -m "feat: add new command"
# Bug fix (1.0.0 → 1.0.1)
git commit -m "fix: resolve parsing error"
# Breaking change (1.0.0 → 2.0.0)
git commit -m "feat!: redesign CLI
BREAKING CHANGE: Command structure changed"Push to main triggers automated release with binaries for all platforms.
- commit - AI commit message generation
- code-reviewer - AI code review
- aws-login - AWS SSO authentication
- codeartifact-login - CodeArtifact auth
- config - Configuration management
- autocomplete - Shell completion
- upgrade - Self-update system
Windows:
- Execution policy error:
Set-ExecutionPolicy -Scope CurrentUser RemoteSigned - Access denied: Choose user-only installation option
Linux/macOS:
- Command not found: Restart terminal or add to PATH manually
Runtime:
- No AWS credentials: Run
aws configure - Disable version check: Set
DEVO_SKIP_VERSION_CHECK=1
MIT License - See LICENSE file for details