infrakit

command module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 7, 2026 License: MIT Imports: 1 Imported by: 0

README

InfraKit

InfraKit

Dev infrastructure that just works.
Databases, caches, queues, and storage—running locally in seconds.

Release License Platform MCP Enabled

FeaturesAI-NativeQuick StartDocumentation


The Problem

You're building an app. You need Postgres, Redis, maybe S3 storage. So you:

  1. Write a docker-compose.yml
  2. Figure out the right images and ports
  3. Create databases and users manually
  4. Repeat for the next project
  5. End up with 5 different Postgres containers eating your RAM

Sound familiar?

The Solution

InfraKit gives you a shared, managed infrastructure layer for local development:

# Install
brew install tobeasim/tap/infrakit

# Start everything
infrakit start

# Open the dashboard
infrakit dashboard

That's it. PostgreSQL, Redis, MinIO, Mailpit—all running, all managed, all persistent.


AI-Native Infrastructure

InfraKit is built for the AI-assisted development era. It implements the Model Context Protocol (MCP), letting AI assistants manage your infrastructure directly.

Talk to Your Infrastructure

Instead of clicking through UIs or memorizing commands, just tell Claude what you need:

You say... InfraKit does...
"Set up a database for my new project" Creates PostgreSQL DB, user, generates secure password
"What's running right now?" Lists all services with status and ports
"Start Redis and show me the connection string" Starts Redis, returns redis://localhost:16379
"Provision postgres, redis, and minio for acme-app" Creates all resources, returns all connection strings
"Show me the logs for PostgreSQL" Fetches recent container logs
"Which apps are using MySQL?" Lists all apps with MySQL databases

One-Line Setup

Add InfraKit to Claude Desktop or Claude Code:

{
  "mcpServers": {
    "infrakit": {
      "url": "http://localhost:18000/mcp"
    }
  }
}

That's it. Claude can now see and manage your entire dev infrastructure.

What Claude Can Do

Tools (actions):

  • start_service / stop_service — Control any service
  • provision_app — Create databases, buckets, users for an app
  • get_logs — Fetch service logs
  • enable_service / disable_service — Manage service catalog

Resources (read-only data):

  • infrakit://services — All services with live status
  • infrakit://services/{name} — Connection strings, ports, credentials
  • infrakit://apps — All provisioned applications
  • infrakit://catalog — Available services to enable

Safe by Design

Destructive operations (deleting databases, resetting services) require human confirmation. Claude receives a 4-character token that you must type to proceed—no accidental data loss.

Why This Matters

AI coding assistants are transforming development. But they've been blind to infrastructure—they can write code that uses Postgres, but can't actually set up Postgres for you.

InfraKit bridges that gap. Your AI assistant becomes a full-stack partner that handles both code and the services your code depends on.


Features

One Command, All Services Start your entire dev backend with infrakit start. Stop it with infrakit stop. No YAML files to write.

App-Centric Provisioning Each app gets its own database, user, and credentials. No more shared dev databases with tangled data.

provision_app app="my_saas" services=["postgres", "redis", "minio"]

15+ Services Ready to Go PostgreSQL, MySQL, MongoDB, Redis, MinIO, Kafka, RabbitMQ, Elasticsearch, Mailpit, Prometheus, Grafana, Keycloak, and more.

Beautiful Dashboard Mission-control interface to start/stop services, view logs, copy connection strings, and provision app resources.

Persistent Data Docker volumes keep your data safe across restarts. No more "where did my test data go?"

Non-Conflicting Ports PostgreSQL on 15432, Redis on 16379—no conflicts with system-installed services.


Quick Start

Install

# Homebrew (macOS/Linux)
brew install tobeasim/tap/infrakit

# Or with Go
go install github.com/tobeasim/infrakit@latest

Run

infrakit start      # Start all services
infrakit dashboard  # Open web UI at localhost:18000
infrakit status     # Check what's running

Use

Your services are ready:

Service Port Connection
PostgreSQL 15432 postgresql://postgres:postgres@localhost:15432/postgres
Redis 16379 redis://localhost:16379
MinIO 19000 http://localhost:19000 (minioadmin/minioadmin)
Mailpit 8025 http://localhost:8025 (SMTP on 1025)

Why InfraKit

vs. Docker Compose

Docker Compose is powerful but repetitive. Every project needs its own compose file, its own database setup, its own port juggling. InfraKit is shared infrastructure—one PostgreSQL serves all your projects, each with isolated databases.

vs. Cloud Dev Environments

Cloud dev environments (Gitpod, Codespaces) are great for teams, but add latency and cost for solo work. InfraKit runs locally—fast, free, offline-capable.

vs. Installing Services Directly

Installing Postgres, Redis, etc. directly pollutes your system and creates version conflicts. InfraKit uses Docker containers—isolated, reproducible, easy to reset.

vs. Nothing (Just Use Production)

Developing against production is risky and slow. InfraKit gives you local parity—same services, same behavior, instant feedback loops.


Service Catalog

Category Services
Databases PostgreSQL, MySQL, MariaDB, MongoDB, CockroachDB
Caching Redis
Storage MinIO (S3-compatible)
Messaging RabbitMQ, Apache Kafka
Search Elasticsearch, Meilisearch
Email Mailpit
Monitoring Prometheus, Grafana
Auth Keycloak
AI/ML ChromaDB
Cloud LocalStack

Enable any service from the catalog with one click in the dashboard.


Documentation


Menubar App (macOS)

Run InfraKit in your menubar for always-on access:

make app-install
make app-autostart

Status at a glance: ⚫ none | 🟡 some | 🟢 all running


Contributing

Contributions welcome! See CONTRIBUTING.md.

License

MIT — see LICENSE.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
mcp
internal/mcp/confirmation.go
internal/mcp/confirmation.go

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL