Skip to content

overmindtech/cli

Repository files navigation

Overmind

Overmind CLI

Discord Server

🎥 Watch a demo | 📖 Docs | 🚀 Sign up | 💻 Playground | 🙌 Follow us

What is Overmind?

Overmind is a tribal knowledge database that empowers your team to manage infrastructure confidently, even without extensive experience.

Signs your team needs Overmind

  • Blocked Experts & Slow Onboarding

    • Expert team members spend too much time on approvals, reducing overall productivity.
    • Newer staff face a steep learning curve, delaying their effectiveness.
  • Limited Dependency Visibility

    • Tools like Terraform show intended changes but don't reveal underlying dependencies.
    • Difficulty in assessing whether changes will disrupt existing applications.
  • Complex Outage Troubleshooting

    • Pinpointing issues during outages is challenging due to hidden dependencies.
    • Outages often result from intricate, unforeseen relationships rather than simple cause-and-effect.

Quick Start

Install the Overmind CLI using brew:

brew install overmindtech/overmind/overmind-cli

Launch the assistant and explore your newly configured AWS source:

overmind explore

Run a terraform plan:

overmind terraform plan

Running 'overmind terraform plan' and viewing in the app

Install on other platforms

Prerequisites

  • Terraform environment set up
  • Access to all required credentials
  • Ability to install and run the Overmind CLI

Installation

MacOS

To install on Mac with homebrew use:

brew install overmindtech/overmind/overmind-cli

Windows

Install using winget:

winget install Overmind.OvermindCLI

Or manually download the latest release, extract overmind.exe, and add to your PATH

Ubuntu / Debian

Set up the repository automatically:

curl -1sLf \
  'https://dl.cloudsmith.io/public/overmind/tools/setup.deb.sh' \
  | sudo -E bash

Or set it up manually

# NOTE: For Debian Stretch, Ubuntu 16.04 and later
keyring_location=/usr/share/keyrings/overmind-tools-archive-keyring.gpg
# NOTE: For Debian Jessie, Ubuntu 15.10 and earlier
keyring_location=/etc/apt/trusted.gpg.d/overmind-tools.gpg

# Capture the codename
codename=$(lsb_release -cs)

apt-get install -y debian-keyring  # debian only
apt-get install -y debian-archive-keyring  # debian only

apt-get install -y apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/overmind/tools/gpg.BC5CDEFB4E37A1B3.key' |  gpg --dearmor >> ${keyring_location}
curl -1sLf 'https://dl.cloudsmith.io/public/overmind/tools/config.deb.txt?distro=ubuntu&$codename=xenial&component=main' > /etc/apt/sources.list.d/overmind-tools.list
chmod 0644 /etc/apt/sources.list.d/overmind-tools.list
chmod 0644 /usr/share/keyrings/overmind-tools-archive-keyring.gpg
apt-get update

Then install the CLI:

apt-get install overmind-cli

RHEL

Set up the repository automatically:

curl -1sLf \
  'https://dl.cloudsmith.io/public/overmind/tools/setup.rpm.sh' \
  | sudo -E bash

Or set it up manually

yum install yum-utils pygpgme
rpm --import 'https://dl.cloudsmith.io/public/overmind/tools/gpg.BC5CDEFB4E37A1B3.key'
curl -1sLf 'https://dl.cloudsmith.io/public/overmind/tools/config.rpm.txt?distro=amzn&codename=2023' > /tmp/overmind-tools.repo
yum-config-manager --add-repo '/tmp/overmind-tools.repo'
yum -q makecache -y --disablerepo='*' --enablerepo='overmind-tools'

Then install the CLI:

sudo yum install overmind-cli

Alpine

Set up the repository automatically:

sudo apk add --no-cache bash
curl -1sLf \
  'https://dl.cloudsmith.io/public/overmind/tools/setup.alpine.sh' \
  | sudo -E bash

Or set it up manually

curl -1sLf 'https://dl.cloudsmith.io/public/overmind/tools/rsa.7B6E65C2058FDB78.key' > /etc/apk/keys/[email protected]
curl -1sLf 'https://dl.cloudsmith.io/public/overmind/tools/config.alpine.txt?distro=alpine&codename=v3.8' >> /etc/apk/repositories
apk update

Then install the CLI:

apk add overmind-cli

Arch

Packages for Arch are available on the releases page for manual download and installation.

Additionally a community maintained package can be found in the aur.

ASDF

Overmind can be instaled using asdf:

# Add the plugin
asdf plugin add overmind-cli https://github.com/overmindtech/asdf-overmind-cli.git

# Show all installable versions
asdf list-all overmind-cli

# Install specific version
asdf install overmind-cli latest

# Set a version globally (on your ~/.tool-versions file)
asdf global overmind-cli latest

# Now overmind-cli commands are available
overmind --version

Discover CLI Commands

  • overmind explore

    Overmind Assistant is a chat assistant that has real-time access to all your AWS and K8’s infrastructure. It alleviates the mental exhaustion of manual troubleshooting, simplifies incident resolution by easily accessing historical data, and automates time-consuming tasks such as documentation and Terraform code generation. You can access the assistant by running overmind explore .

  • overmind terrafrom plan / apply

    Overmind can identify the blast radius and uncover potential risks with overmind terrafrom plan before they harm your infrastructure, allowing anyone to make changes with confidence. It can also track the impact of the changes you make with overmind teraform apply, so that you can be sure that your changes haven't had any unexpected downstream impact.

How We Solve It?


🔍 Blast Radius: Overmind maps out all potential dependencies and interactions within your infra in realtime. Supports over 120 AWS resources and all Kubernetes.

🚨 Risks: Discover specific risks that would be invisible otherwise. Risks are delivered directly to the pull request. Make deployment decisions within minutes not hours.

Advanced Use

Passing Arguments

Overmind's overmind terraform plan and overmind terraform apply commands mostly just wrap the terraform that you already have installed, adding all of Overmind's features on top. This means that no matter how you're using Terraform today, this will still work with Overmind. For example if you're using a more complex command like:

terraform plan -var-file=production.tfvars -parallelism=20 -auto-approve

Then you would add overmind to the beginning, and your arguments after a double-dash e.g.

overmind terraform plan -- -var-file=production.tfvars -parallelism=20 -auto-approve

Join the Community

Additional Resources

Reporting Bugs

Development

Please look in the CONTRIBUTING.md document.

License

See the LICENSE file for licensing information.

Overmind is made with ❤️ in 🇺🇸🇬🇧🇦🇹🇫🇷🇷🇴