ChatGPT × ServiceNow CMDB: connect your infrastructure platforms, let the system continuously index everything into a knowledge graph, then ask questions like:
- "What breaks if I reboot this server?"
- "What applications depend on SQL01?"
- "Which servers are missing Defender?"
- "Which VMs haven't been backed up?"
| Layer | Choice |
|---|---|
| App | Next.js 15 (App Router, TypeScript) |
| CMDB store | SQLite via Prisma (property-graph schema: ConfigItems + typed Relationships) |
| Graph engine | In-memory projection — impact closures, dependency traversal, articulation points (SPOF) |
| Vector search | Local MiniLM embeddings (@huggingface/transformers), cosine search, lexical fallback |
| RAG | Agentic tool loop (find / impact / dependencies / search / insight) via OpenRouter, with a deterministic no-LLM fallback |
| Diagrams | Mermaid (auto-generated impact & topology), Cytoscape (interactive full graph) |
| Connectors | Azure ARM, AWS SDK, VMware vCenter REST, Microsoft Graph, AD LDAP, Cisco Catalyst Center, FortiGate REST — each with a demo mode |
npm install
npx prisma db push
npm run devOpen http://localhost:3000 → create the admin account → Load demo environment on the dashboard (a fictional logistics company spanning all seven platforms), or add real connectors under Connectors.
Optional: add an OpenRouter API key in Settings to enable full AI answers. Without a key, the chat still answers the core question classes through the deterministic graph engine.
See ARCHITECTURE.md (or the in-app Architecture page) for diagrams.
Set DEMO_MODE=1 to run InfraMind as a self-resetting public demo:
- Sign-in is
demo/demo— no registration. - Every session gets its own private sandbox: a copy of a pre-seeded SQLite template. Changes are isolated per visitor and the sandbox is deleted when the session ends (logout or expiry, default 2 h).
- AI chat uses the server's
OPENROUTER_API_KEYenv var; visitors cannot read or change it, and chat is capped per session. - Live connector credentials are disabled — connectors run in demo mode only.
Build the template once with scripts/build-demo-template.sh, then start with
DEMO_MODE=1 npm start.
AGPL-3.0-only — if you run a modified version as a network service, you must offer its source to users of that service.