Aegis is production operations from your terminal. Zero-dependency, event-sourced process supervision and zero-downtime deployment platform written in Rust.
curl -fsSL https://raw.githubusercontent.com/shivam411/Aegis/main/install.sh | bash
| Feature | Description |
|---|---|
| β‘ Zero-Dependency | Single daemon binary with embedded SQLite. No PostgreSQL, Redis, or Docker required. |
| π Zero-Downtime Deployments | Build in isolation, health-check, atomically switch. Live traffic is never interrupted. |
| π§Ή Automated Version Retention | Keeps the last N releases on disk (default: 2). Older versions auto-pruned after each deploy. |
| β° Scheduled Auto-Deployments | Background scheduler triggers builds at specific daily hours (e.g. 02:00 AM). |
| π οΈ Polyglot Runtime Detection | Auto-detects Node.js, Rust, Go, Python, Bun, Deno from project files. |
| π₯οΈ Terminal UI (TUI) | Real-time interactive dashboard powered by ratatui + crossterm. |
| π Event-Sourced Audit Trail | Every mutation is an immutable domain event. Full replay on startup. |
| π Instant Rollbacks | Roll back to any previous release without rebuilding from source. |
| π Plugin System | Extensible event bus with Slack, GitHub, and webhook integrations. |
curl -fsSL https://raw.githubusercontent.com/shivam411/Aegis/main/install.sh | bash
The installer automatically detects your OS and CPU architecture, downloads the latest release from GitHub, and installs to ~/.local/bin/.
Download the latest binary for your platform from GitHub Releases:
| Platform | Archive |
|---|---|
| Linux x86_64 | aegis-linux-amd64.tar.gz |
| Linux ARM64 | aegis-linux-arm64.tar.gz |
| macOS x86_64 | aegis-darwin-amd64.tar.gz |
| macOS ARM64 (Apple Silicon) | aegis-darwin-arm64.tar.gz |
| Windows x86_64 | aegis-windows-amd64.zip |
tar -xzf aegis-linux-amd64.tar.gz
mv aegis-daemon aegis-cli aegis-tui ~/.local/bin/
git clone https://github.com/shivam411/Aegis.git
cd Aegis
cargo build --release
cp target/release/aegis-daemon target/release/aegis-cli target/release/aegis-tui ~/.local/bin/
Requires Rust 1.75+, SQLite3, and protoc.
# 1. Initialize project in your repository
aegis init
# 2. Verify project configuration
aegis validate
# 3. Trigger zero-downtime deployment
aegis deploy
# 4. Investigate outages & root cause
aegis investigate
# 5. Execute instant rollback if needed
aegis rollback
For an interactive 2-minute tour, run: aegis demo.
See the public operational metrics on the Public Scorecard.
Every capability in Aegis is assigned a Feature Maturity Level:
| Feature / Capability | Maturity Level | Empirical Validation Report |
|---|---|---|
| Event Store & Event Bus | π’ Dogfooded | validation/dogfood/dogfood-report.md |
| Detector Pipeline | π‘ Validated | validation/compatibility/compatibility-report.md |
| Runtime Supervisor Engine | π‘ Validated | validation/soak/72h-report.md |
| Atomic Release Switcher | π‘ Validated | validation/chaos/chaos-report.md |
| PM2 & Systemd Migration Engine | π‘ Validated | validation/migration/migration-report.md |
Deployment Replay (aegis replay) |
π§ͺ Experimental | docs/proof_phase.md |
Time Travel Inspection (aegis inspect --at) |
π§ͺ Experimental | docs/proof_phase.md |
Outage Investigation Engine (aegis investigate) |
π§ͺ Experimental | docs/proof_phase.md |
For complete empirical evidence, see the validation/ evidence repository.
Aegis follows CQRS-Lite event-sourcing principles. Commands mutate state by appending immutable events to SQLite. The EventBus broadcasts events to the ProjectionEngine for fast in-memory TUI rendering.
βββββββββββββββββββ Command ββββββββββββββββ
β CLI / TUI / β βββββββββββββββββββΊ β Aegis Daemon β
β Git Webhooks β ββββββββ¬ββββββββ
βββββββββββββββββββ β
(Emits Event)
βΌ
βββββββββββββββββββ
β Event Bus β
ββββββββββ¬βββββββββ
ββββββββββββββββββββββββββββΌβββββββββββββββββββββββββββ
βΌ βΌ βΌ
βββββββββββββββββββββ βββββββββββββββββββββ βββββββββββββββββββββ
β Event Store β β Projection Engine β β Plugin Manager β
β (SQLite DB) β β(In-Memory Caches) β β (Slack / GitHub) β
βββββββββββββββββββββ βββββββββββββββββββββ βββββββββββββββββββββ
Clone β Install β Build β Test β Package β Verify β Promote
Each stage runs in an isolated build directory. If any stage fails, the live version remains untouched.
For a deep dive, see the Architecture Documentation.
| Command | Description |
|---|---|
aegis-cli status |
Query daemon health and version |
aegis-cli init |
Initialize a project with runtime auto-detection |
aegis-cli deploy |
Trigger a zero-downtime deployment |
aegis-cli schedule |
Configure daily auto-deployment (--hour 0-23) |
aegis-cli rollback |
Roll back to a previous release version |
aegis-cli list |
List active projects and running processes |
aegis-cli logs |
Tail real-time process logs |
aegis-cli stop |
Gracefully stop a process |
aegis-cli restart |
Restart a monitored process |
aegis-cli emit-event |
Emit a custom event to the event store |
aegis-cli stream-events |
Stream live event bus notifications |
Aegis reads aegis.toml from the working directory:
[daemon]
host = "127.0.0.1"
port = 50051
database_path = "aegis.db"
log_level = "info"
max_retained_versions = 2
[!NOTE] Aegis is currently in Beta Readiness (
v0.4.0-beta). New architectural changes follow the RFC Process.
| Production Theme | Key Focus & Customer Outcome | Status |
|---|---|---|
| Theme 1: Production Reliability | Crash recovery, health verification, restart backoff, rollback safety (slo_targets.md) |
β Complete |
| Theme 2: Production Visibility | Live dashboard, deployment timeline, event explorer, incident diagnosis (aegis incident) |
βΆ In Progress |
| Theme 3: Production Automation | GitHub Actions CI/CD, auto-deploy, scheduled auto-deploys, environment promotion | π Planned |
| Theme 4: Production Fleet | Multi-node rolling deployments, node agent coordination, fleet management | π Planned |
git clone https://github.com/shivam411/Aegis.git
cd Aegis
cargo check --workspace # Compile check
cargo test --workspace # Run all tests
cargo clippy --workspace # Lint
cargo fmt --all # Format
Aegis/
βββ core/ # Daemon, config, event store, projection, scheduler
βββ deployment/ # Release, builder, strategy, health, rollback
βββ runtime/ # Process supervisor, polyglot engine, logs
βββ git/ # Repository operations, webhooks
βββ ui/ # CLI (clap + tonic), TUI (ratatui + crossterm)
βββ integrations/ # Slack, GitHub, Docker plugins
βββ docs/ # Documentation (GitHub Pages)
βββ scripts/ # Install/uninstall helpers
βββ install.sh # One-line installer
βββ .github/ # CI, release, and pages workflows
Licensed under the MIT License.
Built with β€οΈ in Rust.