A powerful and modular command-line toolkit for managing development tools, Git signing configurations, and more.
- SSH Signing (Recommended)
- Generate new SSH signing keys
- Import existing SSH keys
- Upload keys to GitHub automatically
- Configure Git for commit/tag signing
- GPG Signing
- Generate new GPG keys
- Configure Git for GPG signing
- Export public keys with clipboard support
- Cleanup Tools
- Remove GPG/SSH keys from system and GitHub
- Clear Git signing configuration
- Start fresh with new keys
- Track API usage and costs
- Compare Free vs Pro vs Business plans
- View 30-day usage history with charts
- Get cost-saving recommendations
- Export usage data
- Manage all settings from one place
- Secure credential storage
- Easy configuration updates
- Interactive menus with keyboard navigation
- Animated banners and loading indicators
- Color-coded messages and status updates
- Progress bars and spinners
The easiest way to install DevTools on macOS is using our install script:
# System-wide installation (may require sudo)
bash -c "$(curl -fsSL https://raw.githubusercontent.com/kkz6/devtools/main/install.sh)"
# User-only installation (no sudo required)
bash -c "$(curl -fsSL https://raw.githubusercontent.com/kkz6/devtools/main/install.sh)" -- --user
# Alternative method (download and run)
curl -fsSL https://raw.githubusercontent.com/kkz6/devtools/main/install.sh -o install.sh
chmod +x install.sh
./install.sh
The install script will:
- Download the latest release
- Ask for sudo permission only if needed
- Install to
/usr/local/bin
(system) or~/.local/bin
(user) - Create the configuration directory at
~/.devtools
- Provide PATH setup instructions if needed
-
Download the latest release for your platform from GitHub Releases
-
Extract and move to your PATH:
# macOS/Linux chmod +x devtools-darwin-amd64 sudo mv devtools-darwin-amd64 /usr/local/bin/devtools # Verify installation devtools --version
# Clone the repository
git clone https://github.com/kkz6/devtools.git
cd devtools
# Build the application
go build -o devtools
# Install to system (optional)
sudo mv devtools /usr/local/bin/
# Run the application
devtools
brew tap kkz6/devtools
brew install devtools
The application stores its configuration in ~/.devtools/config.yaml
. A default configuration file is created on first run.
github:
username: "your-github-username"
token: "your-github-personal-access-token"
email: "your-email@example.com"
ssh:
signing_key_path: "/Users/username/.ssh/git-ssh-signing-key"
key_comment: "git-ssh-signing-key"
gpg:
key_id: ""
email: "your-email@example.com"
settings:
preferred_signing_method: "ssh"
Simply run:
devtools
You'll be presented with an interactive menu where you can:
- Git Commit Signing Setup - Configure SSH/GPG signing for secure commits
- Configuration Manager - Manage your DevTools settings
- Cursor AI Usage Report - Track your AI assistant usage and costs
devtools
# Select "Git Commit Signing Setup"
# Choose "SSH signing setup (recommended)"
# Follow the prompts
devtools
# Select "Cursor AI Usage Report"
# View your usage statistics and cost analysis
devtools
# Select "Git Commit Signing Setup"
# Choose "Clean up GPG/SSH signing (Remove all)"
# Select what to remove
To upload SSH keys to GitHub, you'll need a personal access token with the write:ssh_signing_key
scope:
- Go to https://github.com/settings/tokens
- Click "Generate new token"
- Select the
write:ssh_signing_key
scope - Generate and copy the token
- Add it to your config file or enter it when prompted
To add a new tool module:
- Create a new package in
internal/modules/yourmodule/
- Implement the
Module
interface:type Module interface { Execute(cfg *config.Config) error Info() ModuleInfo }
- Register your module in
internal/modules/register.go
devtools/
βββ main.go # Entry point
βββ go.mod # Go module file
βββ internal/
β βββ config/ # Configuration management
β β βββ config.go
β βββ menu/ # Interactive menu system
β β βββ menu.go
β βββ modules/ # Tool modules
β βββ registry.go # Module registry
β βββ register.go # Module registration
β βββ gitsigning/ # Git signing module
β βββ module.go # Main module logic
β βββ ssh.go # SSH signing implementation
β βββ gpg.go # GPG signing implementation
βββ README.md
- macOS: 10.15 (Catalina) or later
- Linux: Ubuntu 20.04+ or equivalent
- Windows: Windows 10+ (WSL recommended)
- Git 2.34+ (for SSH signing support)
- OpenSSH (included in macOS/Linux)
- GPG (optional, auto-installed on macOS if needed)
- Go 1.23 or later (only if building from source)
Karthick
Email: karthick@gigcodes.com
Website: devkarti.com
MIT License
Copyright (c) 2024 Karthick
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.