Pro cloud setup
Argus Pro adds a hosted scan dashboard and API. Your CLI and MCP agent still run scans locally; after each run, upload normalized findings so your team can track history, pass/fail gates, and diffs over time.
Free vs Pro: Community tier needs no account. Pro requires a dashboard login, an API key, and an upload step after scans (automatic --upload is on the roadmap).
Architecture
Local scan (CLI / MCP)
│
▼
Agent uploads ──POST /v1/scans──▶ Cloud API ──▶ Database
│ ▲
│ │
└──────── refresh dashboard ──GET /v1/scans── Cloud dashboardStep-by-step
1. Get Pro access
Request early access or run the cloud stack locally while billing is in preview.
- Production signup and Stripe checkout are coming soon.
- Today you can run the open-source cloud stack from this repo (backend + dashboard) for development and evaluation.
- For hosted Pro on code-scan.arestechub.com, use Request Demo — we will provision your workspace.
2. Open the cloud dashboard
Sign in to view scan history, pass/fail status, diffs, and API keys.
- Dashboard URL: http://localhost:3001
- Local dev default: dev@example.com / argus-admin (change before any public deploy).
- The dashboard reads from the same API your agent uploads to — refresh after each scan.
The marketing site /admin page is internal ops only, not the customer Pro dashboard.
3. Create an API key
One key per machine, CI job, or MCP agent. Keys authenticate upload requests.
- Dashboard → Settings → API keys → Create key → copy argus-code-… immediately.
- Store the key in your password manager or CI secrets — it is shown only once.
# Create a key via API (after login)
TOKEN=$(curl -s -X POST http://localhost:4000/v1/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"dev@example.com","password":"argus-admin"}' | jq -r .accessToken)
curl -s -X POST http://localhost:4000/v1/api-keys \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"label":"MCP agent"}' | jq -r .key4. Configure your agent
Point the Argus MCP server or CI job at the cloud API with your key.
- Set ARGUS_API_URL and ARGUS_API_KEY in MCP env (Cursor / Claude Desktop) or CI secrets.
- Scans still run locally — only results are sent to the cloud.
- Until built-in --upload ships in the CLI, use the upload script or wrapper after each scan.
{
"mcpServers": {
"argus": {
"command": "argus",
"args": ["mcp"],
"env": {
"ARGUS_API_URL": "http://localhost:4000/v1",
"ARGUS_API_KEY": "argus-code-PASTE_YOUR_KEY"
}
}
}
}5. Upload after each scan
POST normalized findings so they appear in your dashboard history.
- Preferred (today): backend-nodejs/scripts/upload-scan.mjs or npm run scan:upload after a scan.
- Future: argus scan all . --fail-on high --upload reads env vars automatically.
- CI: export ARGUS_API_KEY in GitHub Actions / GitLab CI and call the upload script on scan completion.
export ARGUS_API_URL=http://localhost:4000/v1
export ARGUS_API_KEY=argus-code-...
# From repo root (after a scan writes JSON)
node backend-nodejs/scripts/upload-scan.mjs scan-result.json6. Review in the dashboard
Track trends, compare runs, and share pass/fail status with your team.
- Runs list shows repo label, branch, commit, severity counts, and duration.
- Open a run for finding details; use diff view to see what changed since the last upload.
- Scheduled scans and Slack alerts ship in a later Pro milestone.
Run locally (preview)
The cloud API and dashboard live in this repo under backend-nodejs/ and cloud-dashboard/.
# Terminal 1 — API
cd backend-nodejs && npm run start:dev
# Terminal 2 — Dashboard
cd cloud-dashboard && npm run dev
# Open dashboard
open http://localhost:3001Upload API
Agents and CI jobs POST JSON to /v1/scans with a Bearer API key. See docs/AGENT-UPLOAD.md in the repo for scripts and wrappers.
POST http://localhost:4000/v1/scans
Authorization: Bearer {ARGUS_API_KEY}
Content-Type: application/json
{
"repo": "my-local-project",
"branch": "main",
"commit": "abc123",
"trigger": "cli",
"status": "failed",
"failOn": "high",
"durationSec": 82,
"findings": [
{
"ruleId": "semgrep.x",
"title": "Issue title",
"severity": "high",
"file": "src/app.ts",
"line": 10,
"scanner": "semgrep",
"message": "Description"
}
]
}Checklist
- Cloud API running (default :4000)
- Cloud dashboard running and logged in
- API key created and stored securely
- ARGUS_API_URL + ARGUS_API_KEY set on agent or CI
- Upload script or wrapper runs after each scan
- Dashboard refreshed to see new runs
FAQ
Does Pro change how scans run?
No. Scans always execute on your machine or CI runner. Pro adds cloud storage, history, and team visibility — not a remote scan farm.
Is my source code uploaded?
Only scan metadata and findings are sent (rule IDs, file paths, line numbers, severity). Full source files are not uploaded unless you explicitly configure that in a future feature.
Why don't I see runs after scanning?
The MCP server does not upload automatically yet. You must POST results with an API key (upload script, CI step, or future --upload flag), then refresh the dashboard.
Can I self-host Pro?
The cloud stack in this monorepo (backend-nodejs + cloud-dashboard) can be self-hosted for evaluation. Enterprise includes licensed on-prem/air-gapped deployment with support.