Getting Started¶
This guide walks you through creating your first cluster, deploying AI infra tools, creating agent sandboxes, and managing apps.
Create a cluster¶
The fastest way to get started is with a profile:
This creates a k3d cluster and enables the agent-dev tool set: LiteLLM Proxy, Ollama, Langfuse, Qdrant, PostgreSQL, and Valkey.
You can also create a bare cluster and enable tools individually:
The CLI will prompt you for a cluster name and bootstrap repo URL. You can also pass them directly:
sikifanso cluster create --name mylab --bootstrap https://github.com/sikifanso/sikifanso-homelab-bootstrap.git
This takes a few minutes. When it's done, you'll see:
╭──────────────────────────────────────────╮
│ Cluster: default │
├──────────────────────────────────────────┤
│ State: running │
│ │
│ ArgoCD URL: http://localhost:30080 │
│ ArgoCD User: admin │
│ ArgoCD Password: •••••••• │
│ │
│ Hubble URL: http://localhost:30081 │
│ │
│ GitOps Path: ~/.sikifanso/clusters/… │
╰──────────────────────────────────────────╯
Open the ArgoCD URL in your browser and log in with the displayed credentials. You'll see ArgoCD and Cilium already deployed and healthy.
Open the Hubble URL to see real-time network traffic in your cluster.
Enable tools from the catalog¶
Browse all available AI infra tools:
Enable a tool:
This sets enabled: true in the catalog entry, commits the change, and triggers an ArgoCD sync.
Disable a tool:
Deploy a custom Helm chart¶
You can also deploy any Helm chart directly. Let's deploy podinfo as an example.
sikifanso app add podinfo \
--repo https://stefanprodan.github.io/podinfo \
--chart podinfo \
--version 6.10.1 \
--namespace podinfo
This writes the chart coordinates and a stub values file to your gitops repo, auto-commits, and triggers an ArgoCD sync.
Running sikifanso app add with no arguments and no flags launches a TUI catalog browser where you can toggle catalog apps interactively. If you provide a name but omit flags, the CLI prompts for each missing field.
List installed apps¶
NAME CHART VERSION NAMESPACE SOURCE
litellm-proxy litellm 0.2.1 gateway catalog
langfuse langfuse 1.2.14 observability catalog
podinfo podinfo 6.10.1 podinfo custom
Both custom apps and enabled catalog apps are shown, with a SOURCE column to distinguish them.
Remove an app¶
For custom apps:
For catalog apps:
Create an agent sandbox¶
Agent sandboxes are isolated namespaces for running AI agent code safely:
Each sandbox gets resource quotas, network policies (default-deny egress, allowlisted access to LiteLLM, Qdrant, PostgreSQL, Valkey), and its own service account.
Check cluster health¶
Run cluster doctor to verify that all components are healthy:
This checks Docker, k3d nodes, Cilium, Hubble, ArgoCD, every enabled catalog app, and agent namespaces. If anything is wrong, it tells you exactly what failed and how to fix it.
Manage your cluster¶
# Show cluster details
sikifanso cluster info
# Trigger ArgoCD sync
sikifanso app sync
# Check app status
sikifanso app status
# Stop the cluster (preserves state)
sikifanso cluster stop
# Start it again
sikifanso cluster start
# Delete the cluster entirely
sikifanso cluster delete
# Take a snapshot of your cluster config
sikifanso snapshot capture --name my-backup
# Restore from a snapshot
sikifanso snapshot restore my-backup
# Start the web dashboard
sikifanso cluster dashboard
Next steps¶
- Profiles -- predefined tool sets for common workloads
- Agent Sandboxes -- isolated namespaces for AI agents
- MCP Server -- expose operations as MCP tools for AI agents
- Multi-Cluster -- run multiple independent clusters
- Custom Bootstrap Repos -- use your own bootstrap template
- Architecture -- understand how it all fits together
- CLI Reference -- full list of commands and flags
- Roadmap -- what's shipped and what's next