Configuration Management Database for agentic infrastructure — stored as linked data on a W3C Solid Pod.
Seabase is a CMDB (Configuration Management Database) viewer for teams running AI agents. It shows you what hosts are running, which services are deployed on them, which agents are associated with those services, what firewall policies are in place, and what external service accounts the organisation holds.
All CMDB data is stored as RDF/Turtle on a W3C Solid Pod. Seabase loads that data into your browser, queries it with SPARQL, and presents a unified view. No data ever leaves your browser — it is read directly from your Pod and queried locally.
Seabase reads CMDB data from a Solid Pod. This version uses crawlout.io (operated by Interition). You need an account, a Pod, and a WebID:
alice). This creates your Pod at https://crawlout.io/alice/ and WebID at https://crawlout.io/alice/profile/card#meClick Login to crawlout.io in the top right. You'll be redirected to crawlout.io to authenticate. After authorising Seabase, you'll be redirected back. Your session is saved in your browser.
Once logged in, create a CMDB container on your Pod — for example https://crawlout.io/alice/cmdb/ — and upload hardware.ttl and accounts.ttl files following the structure described below. The SKILL.md contains complete write examples with SPARQL UPDATE commands for populating the CMDB via the Solid Protocol.
Enter your CMDB URL (e.g. https://crawlout.io/alice/cmdb/) in the CMDB URL field and click Connect. Seabase will load both files and display your infrastructure.
Shows at-a-glance counts: active hosts, running services, stopped services, agents, and service accounts.
Lists each host as a card. Within each card, a table shows the services running on that host — port, protocol, container name, health check URL, status, and associated agent.
Service status badges: running stopped
Lists all agents discovered via cmdb:agent predicates on services, with the service they are associated with, the host that service runs on, and their LLM provider.
Lists all service accounts (external APIs, credentials) recorded in accounts.ttl.
A force-directed graph showing the relationships between hosts, services, firewall policies, and agents. Use the toggles to show or hide node types.
Run SPARQL queries directly against the CMDB data loaded in your browser. Use the preset buttons to load common queries, or write your own. Press Cmd+Enter (Mac) or Ctrl+Enter (Windows/Linux) to run a query.
The CMDB is two Turtle files in a Pod container:
https://your-server/your-pod/cmdb/ ├── hardware.ttl ← hosts, services, firewall policies └── accounts.ttl ← service accounts
Resources within each file use fragment URIs — lowercase, hyphenated names:
| Resource type | Fragment pattern | Example |
|---|---|---|
| Host | #hostname | <#ubuntu01> |
| Service | #service-name | <#openclaw-ten> |
| Firewall policy | #hostname-fw | <#ubuntu01-fw> |
| Service account | #provider-name | <#anthropic> |
The CMDB uses two namespace prefixes:
| Prefix | Namespace | Purpose |
|---|---|---|
cmdb: | {base}vocab# | CMDB types and predicates |
schema: | http://schema.org/ | Names, descriptions |
A physical or virtual machine.
| Property | Type | Purpose |
|---|---|---|
schema:name | string | Hostname |
cmdb:status | string | "active" | "inactive" |
cmdb:model | string | Hardware model |
cmdb:cpu | string | CPU description |
cmdb:ram | string | RAM capacity |
cmdb:storage | string | Storage capacity |
cmdb:os | string | Operating system |
cmdb:role | string | Purpose of this host |
cmdb:managedBy | WebID URI | Agent responsible for this host |
cmdb:hasService | URI | Links host to a service it runs |
A process or application running on a host.
| Property | Type | Purpose |
|---|---|---|
schema:name | string | Service name |
cmdb:runsOn | Host URI | The host this service runs on |
cmdb:status | string | "running" | "stopped" |
cmdb:port | integer | Exposed port |
cmdb:protocol | string | "http" | "https" etc. |
cmdb:container | string | Docker container name |
cmdb:healthCheck | URL | Health check endpoint |
cmdb:agent | WebID URI | The agent this service hosts |
cmdb:llmProvider | string | LLM API provider (e.g. "Anthropic") |
cmdb:llmModel | string | Model name |
cmdb:runAs | string | OS user |
cmdb:deployPath | string | Filesystem path |
cmdb:stoppedReason | string | Why it was stopped |
cmdb:stoppedDate | date | When it was stopped |
Firewall rules applied to a host.
| Property | Type | Purpose |
|---|---|---|
cmdb:appliesTo | Host URI | Which host this policy covers |
cmdb:tool | string | e.g. "ufw" |
cmdb:ufwStatus | string | "active" | "inactive" |
cmdb:rule | string | Individual rule (multi-valued) |
An external service account used by the organisation.
| Property | Type | Purpose |
|---|---|---|
schema:name | string | Account name (e.g. "Anthropic") |
cmdb:credentialType | string | "API key", "OAuth", "SSH key" etc. |
SKILL.md is the agent skill prompt. It teaches any AI agent — Claude Code, OpenClaw, or similar — how to:
hardware.ttl + accounts.ttl)"running" / "stopped")When an agent updates a service status or registers a new deployment via the Solid Protocol, the change appears in Seabase on the next Connect. The Pod is the shared source of truth.
cmdb:agent matching its WebID; PATCH status to "running""stopped" with a reason and datecmdb:hasServicecmdb:healthCheck endpoint is reachable and update status if notThe Solid server enforces access control (WAC/ACP) on every request. Each agent's WebID must be granted read/write access to hardware.ttl and accounts.ttl by the Pod owner. If an agent receives a 403, ask the Pod owner to update the .acl file for the CMDB container.
Seabase is a static web application with no backend. It uses:
cmdb: vocabulary for CMDB-specific termsAll queries run locally in your browser against the data loaded from your Pod. No CMDB data is sent to any server.