Skip to main content

REST API

The dashboard serves JSON from the same port as the UI. There is no authentication. Requests can read and modify ~/.dotagen/, create or remove links, and initialize the store, so do not expose this service beyond a trusted local network.

MethodEndpointAction
GET/api/configRead configuration
PUT/api/configReplace configuration
GET/api/agentsList agents
GET/api/agents/{name}Read an agent
POST/api/agentsCreate an agent
PUT/api/agents/{name}Update an agent
DELETE/api/agents/{name}Delete an agent
GET/api/skillsList skills
GET/api/skills/{name}Read a skill
POST/api/skillsCreate a skill
PUT/api/skills/{name}Update a skill
DELETE/api/skills/{name}Delete a skill
GET/api/targetsList supported target IDs
GET/api/preview/{agent}/{target}Preview an agent render
GET/api/preview/skill/{skill}/{target}Preview a skill render
POST/api/syncSync agents and skills
POST/api/sync/{target}Sync one target
POST/api/sync-skillsSync skills only
POST/api/cleanRemove managed links and generated output, then clear all entry targets
POST/api/clean-brokenRepair or remove broken links
GET/api/statusList managed link status
POST/api/toggleEnable or disable agent or skill targets
POST/api/initReinitialize the store

The API uses JSON request and response bodies. Invalid JSON and invalid target or name values return HTTP 400; missing definitions return HTTP 404. Several mutating operations serialize access with the server's internal lock. Unlike the CLI dotagen clean, POST /api/clean also sets every configured agent and skill target list to empty.