Install with an AI coding agent
If you’re driving a coding agent — Claude Code, Cursor, Cline, GitHub Copilot Workspace, or any other LLM-based dev assistant — the installer ships a machine-consumable spec the agent can follow directly. You don’t need to translate the README for it.
The prompt
Section titled “The prompt”Paste this into your agent of choice:
Install Lupid on this machine by following the instructions at
https://raw.githubusercontent.com/akashsebastian333/agentum/opensource/installation/AGENTS.md. Run the install non-interactively, verify the dashboard responds, then print the admin credentials it generated.
The agent will:
- Fetch
installation/AGENTS.md— a file written explicitly for AI agents to consume. - Detect the OS and run the right platform-specific one-liner with
--yes/LUPID_YES=1so it stays non-interactive. - Run the two
curlverification probes documented inAGENTS.md. - Read
<install-dir>/.envand surface the admin email and admin password.
What’s in installation/
Section titled “What’s in installation/”The repo ships a dedicated installation/
directory with four files an agent (or a human) can read:
| File | Purpose |
|---|---|
install.sh | Bash installer for Linux / macOS / Git-Bash on Windows |
install.ps1 | PowerShell installer for native Windows |
AGENTS.md | Decision tree, exact commands, verification probes, recovery table |
manifest.json | Same content as AGENTS.md in structured JSON for tools that prefer it |
README.md | Human-readable overview of the directory |
Why AGENTS.md works
Section titled “Why AGENTS.md works”A coding agent is good at translating intent to commands, but it loops badly on
unknown failures. AGENTS.md removes the ambiguity:
- Decision tree removes “should I try X or Y first?” — the agent reads the right
branch based on
uname -s. - Exact commands with
--yesalready applied — no interactive-prompt trap. - Verification probes with the exact expected JSON response (
{"status":"ok",…}) let the agent decide “done” versus “broken” without guessing. - Per-symptom recovery table maps every installer error message to the next action, so the agent doesn’t loop trying random fixes.
- Hard constraints (don’t echo secrets to long-lived buffers, don’t commit
.env) stop the agent from doing dumb things.
The structured manifest
Section titled “The structured manifest”If your agent or pipeline prefers structured input over prose, point it at
installation/manifest.json:
{ "name": "lupid", "description": "Runtime security and observability layer for AI agents.", "platforms": { "linux": { "command": "curl -fsSL .../install.sh | bash -s -- --yes" }, "macos": { "command": "curl -fsSL .../install.sh | bash -s -- --yes" }, "windows": { "command": "$env:LUPID_YES='1'; iwr -useb .../install.ps1 | iex" } }, "prerequisites": [ { "name": "docker", "min_version": "24.0", "check": "docker --version" }, { "name": "docker-compose", "min_version": "2.0", "check": "docker compose version" } // ... ], "verify": { "dashboard": "curl -fsSL -m 5 http://localhost:3000", "api_health": "curl -fsSL -m 5 http://localhost:3000/api/v1/health" }, "credentials_location": "<install-dir>/.env", "credentials_keys": ["AGENTUM_ADMIN_EMAIL", "AGENTUM_ADMIN_PASSWORD"]}