We craft minimal, composable Python libraries that automate the repetitive parts of cloud infrastructure, DevOps workflows, and AI agent development — so you can focus on what matters.
| Package | Description | Install |
|---|---|---|
| fastops | End-to-end DevOps toolkit: Docker, VPS, DNS, Caddy, and CI/CD — all from Python | pip install fastops |
| vpseasy | Provision, configure, and deploy to cloud VPS (Hetzner + Multipass) | pip install vpseasy |
| dockeasy | Docker made easy — fluent Python API for images, containers, and Compose | pip install dockeasy |
| cfeasy | Cloudflare DNS and tunnel management from Python | pip install cfeasy |
| awseasy | AWS resources made easy | pip install awseasy |
| gcpeasy | GCP resources made easy | pip install gcpeasy |
| azeasy | Azure resources made easy | pip install azeasy |
| Package | Description | Install |
|---|---|---|
| karma | Repo memory for AI agents — FTS5+vector code index, episodic decisions, and practice patterns | pip install karma |
| claude-plugins | One-command Claude Code setup: hooks, MCP servers, and skills for the AnswerDotAI ecosystem | pip install claude-plugins |
| onneta | Stateful helpers for onnxruntime-genai |
pip install onneta |
| Package | Description | Install |
|---|---|---|
| shipit | Python project setup made easy | pip install shipit |
| gheasy | GitHub made easy — automate repos, PRs, and workflows from Python | pip install gheasy |
Small libraries, big leverage.
Each package does one thing well and composes with the others. Whether you're deploying a Python webapp behind Caddy with a Cloudflare tunnel, or giving your AI agent a persistent memory of past decisions — you're never more than a pip install away.
# From zero to a deployed app in minutes
from fastops import appfile, Compose, caddy, cloudflared_svc
from fastops import vps_init, create, deploy, dns_record
# Build configs
df = appfile(port=8080)
dc = (Compose()
.svc('app', build='.', networks=['web'])
.svc('caddy', **caddy('myapp.example.com', port=8080, cloudflared=True))
.svc('cloudflared', **cloudflared_svc(), networks=['web'])
.network('web'))
# Provision, deploy, point DNS
ip = create('prod-01', server_type='cx22', location='nbg1',
cloud_init=vps_init('prod-01', pub_keys='...'))
deploy(dc, ip, key='~/.ssh/id_ed25519')
dns_record('example.com', 'myapp', ip, proxied=True)We build tools that treat AI coding agents as first-class users. karma gives any agent (Claude, Copilot, GPT-4o, …) a persistent, searchable memory of your repo:
from karma import index_repo, arun, build_dev_context
index_repo('.') # index once, reuse forever
ctx = arun(build_dev_context('how to extend a class', repo_root='.'))
# → surfaces existing code, past decisions, and practices before writing a lineclaude-plugins wires up hooks, MCP servers, and skills in a single command:
pip install claude-plugins
claude-plugins setup # hooks + MCP + skills — live in Claude Code immediately