Skip to content

Latest commit

Β 

History

History
362 lines (259 loc) Β· 10.4 KB

File metadata and controls

362 lines (259 loc) Β· 10.4 KB

Devvami

🧰 Devvami

DevEx CLI for developers and teams β€” manage repos, PRs, pipelines, and costs from the terminal.
Built for teams that move fast.

npm ci license node


✨ What It Does

Devvami gives you a unified CLI to manage your entire development workflow:

Feature What You Can Do
πŸ”€ Pull Requests Create, review, and track PRs with presets
πŸš€ Pipelines Monitor CI/CD runs, view logs, rerun failures
πŸ“ Repositories List and manage GitHub repos
πŸ’Έ Costs Analyze AWS costs by service
βœ… Tasks View and manage tasks without leaving the terminal
πŸ“– Docs Search and read repository documentation
πŸ” Search Search code across repositories
🩺 Health Check Diagnose your development environment
πŸ—‚οΈ Dotfiles Manage dotfiles with chezmoi and age encryption
πŸ€– AI Config Sync AI tool configurations across environments
πŸ’¬ Prompts Browse, download, and run AI prompts locally
πŸ›‘οΈ Vulnerabilities Scan and search CVEs in your dependencies
πŸ“‹ Logs Browse and query CloudWatch log groups
πŸ” Security Set up credential protection tools (aws-vault, GPG)

All from your terminal. No context switching.


πŸš€ Quick Start

Installation

npm install -g devvami

First Time Setup

dvmi init

This wizard will:

  • Check your development prerequisites
  • Ask about GitHub organization (optional)
  • Configure AWS profile and region
  • Set up integrations (GitHub, AWS, task management)

Verify Installation

dvmi --version
dvmi --help
dvmi doctor

πŸ“– Commands

Organization

dvmi init          # Setup: configure auth, org, AWS, integrations
dvmi doctor        # Health check: verify your environment
dvmi upgrade       # Update to latest version
dvmi whoami        # Show current identity (GitHub, AWS, etc.)

Pull Requests

dvmi pr create     # Create a PR with presets
dvmi pr status     # Show PR status for current branch
dvmi pr detail     # View detailed PR information
dvmi pr review     # Review a PR

Repositories

dvmi repo list     # List all repos in your org
dvmi create repo   # Create a new repo from template

CI/CD Pipelines

dvmi pipeline status   # Show workflow status
dvmi pipeline logs     # View workflow logs
dvmi pipeline rerun    # Rerun a failed workflow

Tasks & Work

dvmi tasks list       # List all tasks
dvmi tasks today      # Show today's tasks
dvmi tasks assigned   # Show tasks assigned to you

Costs

dvmi costs get     # Analyze AWS costs
dvmi costs trend   # Show 2-month daily AWS cost trend

If awsProfile is configured (dvmi init), AWS cost commands automatically re-run via aws-vault exec <profile> -- ... when credentials are missing, so developers can run:

dvmi costs get
dvmi costs trend

without manually prefixing aws-vault exec.

Documentation

dvmi docs list       # List docs in repositories
dvmi docs read       # Read documentation
dvmi docs search     # Search docs
dvmi docs projects   # List documented projects

Dotfiles

dvmi dotfiles setup    # Configure chezmoi with age encryption
dvmi dotfiles add      # Add files to chezmoi management (auto-encrypts sensitive files)
dvmi dotfiles status   # Show managed files, encryption state, and sync health
dvmi dotfiles sync     # Sync dotfiles with remote repository (push/pull)

Prompts

dvmi prompts list              # List prompts from your personal repository
dvmi prompts browse            # Browse prompts from skills.sh or awesome-copilot
dvmi prompts download          # Download a prompt to .prompts/
dvmi prompts run               # Execute a local prompt with a configured AI tool
dvmi prompts install-speckit   # Install spec-kit and run specify init

Vulnerabilities

dvmi vuln scan              # Scan current directory for known vulnerabilities
dvmi vuln search            # Search for recent CVEs by keyword
dvmi vuln detail <CVE-ID>   # View full details for a specific CVE

Logs

dvmi logs   # Browse and query CloudWatch log groups interactively

Security

dvmi security setup   # Interactive wizard to set up credential protection tools

AI Config

dvmi sync-config-ai         # Manage AI tool configurations across environments via TUI
dvmi sync-config-ai --json  # Output current state as structured JSON (CI / scripting)

The TUI shows 6 tabs β€” Environments (read-only detection) + one tab per category (MCPs, Commands, Rules, Skills, Agents). Each category tab has two sections:

  • Native β€” items already in each tool's config that dvmi doesn't manage yet (press i to import)
  • Managed β€” entries you've added via dvmi; synced across all target environments automatically

MCP server forms adapt to the selected transport type: stdio shows Command and Args fields, sse/streamable-http shows a URL field, and irrelevant fields are hidden automatically. Environment variables (e.g. API keys) can be set via a dedicated editor in KEY=VALUE format. Args are entered one per line for proper support of arguments containing spaces. Transport-specific validation ensures stdio entries have a command and SSE/streamable-http entries have a URL before saving.

Supports 10 AI environments: VS Code Copilot, Claude Code, OpenCode, Gemini CLI, GitHub Copilot CLI, Cursor, Windsurf, Continue.dev, Zed, Amazon Q.

Key bindings: n create Β· Enter edit Β· d toggle active Β· Del delete Β· r reveal env vars Β· i import native Β· Tab switch section Β· q exit

Other

dvmi auth login      # Login to GitHub/AWS
dvmi search          # Search code across repos
dvmi changelog       # Generate changelog from commits
dvmi open            # Open resources in browser
dvmi welcome         # Show the dvmi mission dashboard

βš™οΈ Configuration

Devvami stores config at ~/.config/dvmi/config.json:

{
  "org": "myorg",
  "awsProfile": "default",
  "awsRegion": "eu-west-1",
  "shell": "osxkeychain",
  "clickup": {
    "teamId": "...",
    "teamName": "My Team",
    "authMethod": "personal_token"
  }
}

Run dvmi init to update settings anytime.


πŸ” Credentials

Devvami uses your system's secure credential storage:

  • macOS: Keychain
  • Linux: Secret Service / pass
  • WSL2: Windows bridge for browser/GCM + Linux tooling for security setup
  • Windows (native / non-WSL): limited support (see Platform Support)

Tokens are never stored in plain text. They're stored securely via @keytar/keytar.


πŸ–₯️ Platform Support

Fully supported

  • macOS
  • Linux (Debian/Ubuntu family)
  • Windows via WSL2

Linux/WSL notes

  • dvmi security setup currently uses apt-get for package install (Debian/Ubuntu oriented).
  • dvmi security setup requires authenticated sudo (sudo -n true must pass).
  • On WSL2, browser opening tries wslview first, then falls back to xdg-open.

Windows native (non-WSL)

  • Not fully supported today.
  • Platform detection does not handle win32 explicitly yet.
  • Some shell assumptions are Unix-centric (for example which usage and security setup steps).
  • Recommended path on Windows is to use WSL2.

πŸ“š Documentation


🀝 Contributing

We welcome contributions! See CONTRIBUTING.md for:

  • Development setup
  • Code style (JavaScript ESM + JSDoc)
  • Testing & linting
  • Commit conventions
  • PR process

Quick start:

git clone https://github.com/savez/devvami
cd devvami
nvm use
pnpm install
pnpm test
pnpm lint
pnpm commit  # Use interactive commit

πŸ“‹ Requirements

  • Node.js >= 24 (managed with nvm)
  • pnpm >= 10 or npm/yarn
  • Git
  • GitHub CLI (gh) β€” recommended
  • AWS CLI β€” optional, for cost analysis

πŸ› Found a Bug?

Please open an issue with:

  • Clear description of the problem
  • Steps to reproduce
  • Your environment (OS, Node.js version, etc.)
  • Expected vs. actual behavior

For security issues, see SECURITY.md.


πŸ’‘ Have an Idea?

Open a feature request


πŸ“„ License

MIT License β€” See LICENSE for details.


πŸ™ Credits

Built with:


Made with ❀️ by Devvami Contributors