All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.2.3 - 2026-04-14
${secrets.X}resolution incluster.toml-- secret references are now expanded inai.api_key,ai.endpoint, andnetwork.setup_key, so cluster-level config can be checked into git without leaking credentials (#22).- Per-service CPU and memory stats for remote nodes -- agents stream container resource usage over the WS heartbeat, so
orca statusand the TUI now show live per-container metrics for every node, not just the master (#13). orca logs <service> --summarize-- pipes the recent log buffer through the configured AI backend and returns a concise summary with likely issues and next steps (#23).- Multi-arg CLI commands --
orca deploy svc1 svc2 svc3,orca redeploy svc1 svc2, andorca stop svc1 svc2now accept any number of service names in a single invocation. - Shell completions --
orca completions <bash|zsh|fish|powershell>prints a completion script ready to source or drop into your shell's completion directory. - Config path resolution -- the CLI walks up from the current working directory to find
cluster.tomlandservices/, the same waygitfinds.git. Runorcacommands from any subdirectory of your infra repo. - AMD ROCm GPU passthrough -- services declaring
vendor = "amd"get/dev/kfdand/dev/drimounted, with thevideoandrendergroup IDs auto-detected from the host. orca webhooks add --secret <value> --infra-- the--secretand--infraflags are now wired through the CLI (previously only the API accepted them).
- WS agent node registration --
placement.node = "<agent-name>"now correctly resolves to remote agents over the WS transport. Services pinned to an agent node previously stayed pending until the master was restarted. - Proxy forwards original Host header -- upstream services see the public hostname instead of the internal container IP. Fixes redirect loops in apps like LiteLLM whose
/uiendpoint generates absolute URLs from the request host.
0.2.2 - 2026-04-09
- Bidirectional WebSocket streaming between agent and master, replacing HTTP heartbeat polling. Agents now maintain a persistent WS connection for real-time state sync.
- Agent proxy hot-adds routes and TLS certs on container deploy -- no proxy restart needed (#19).
- Reconcile remote services on agent reconnect -- when an agent reconnects after a network partition, the master replays the desired state so the agent converges automatically (#21).
- Infra webhook -- git push to your orca-infra repo triggers an automatic
git pull+ redeploy on the cluster. Full GitOps without a CI runner. orca deploy <service-name>-- deploy a single service by name instead of the entire stack.orca redeploy <service>-- force pull the image and restart a service, even if the spec hasn't changed.- CLI auto-connects to master on agent nodes -- all commands work without
--apiwhen running on an agent that has joined a cluster. - Unresolved env template comparison in reconciler -- prevents unnecessary container restarts when only the resolved value changes (e.g., OAuth token refresh) but the template (
${secrets.X}) is unchanged. - Webhook persistence -- webhooks are now saved to
~/.orca/webhooks.jsonand survive restarts (#20, closed as already-done).
0.2.1 - 2026-03-28
- iptables NAT rule cleanup on shutdown, plus stale rule detection on startup (#18).
- Full spec-change detection in reconciler -- detects changes to
extra_ports,mounts,volume,domain,aliases, and all other spec fields, not justimageandenv(#14). - Systemd unit with
AmbientCapabilitiesand automaticsetcaprestore onorca update(#8, #16). orca redeploy <service>CLI and API endpoint for force-pull + restart (#15).- Container image pull policy -- configurable per service:
auto,always,never,if-not-present(#9). orca install-servicefor both master and agent nodes (use--leaderflag for agents).orca updateprerelease/RC discovery -- finds prerelease and release-candidate versions.- Backup auto-pull of busybox -- the backup subsystem automatically pulls the
busyboximage if it is missing.
0.2.0 - 2026-03-14
- Multi-node clustering with Raft consensus via
openraftandredbstorage. - Bin-packing scheduler with GPU awareness and Wasm preference.
- Cross-provider networking via NetBird WireGuard mesh.
- Built-in reverse proxy with auto-TLS (ACME / Let's Encrypt).
- AI operations assistant (
orca ask) with conversational diagnostics. - TUI dashboard with k9s-style navigation.
- Webhook-based CI/CD (GitHub/Gitea push events).
- Backup scheduler with S3 and local targets.
- Secrets management with AES-256 encryption at rest.
- Health checks with configurable liveness probes.
orca db createfor one-click database provisioning.- RBAC with admin, deployer, and viewer roles.
0.1.0 - 2026-02-01
- Initial release: single-node container orchestrator.
- Docker runtime via bollard.
- WebAssembly runtime via wasmtime.
- Basic CLI:
orca server,orca deploy,orca status,orca logs. - TOML-based service configuration.