Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.claboard.dev/llms.txt

Use this file to discover all available pages before exploring further.

List Projects

GET /api/projects
Returns all projects with basic info.
[
  {
    "id": 1,
    "name": "My App",
    "slug": "my-app",
    "workingDir": "/home/user/my-app",
    "createdAt": "2025-01-15T10:00:00Z"
  }
]

Get Project Summary

GET /api/projects/summary
Returns all projects with task counts per status. Useful for dashboard overview.
[
  {
    "id": 1,
    "name": "My App",
    "slug": "my-app",
    "workingDir": "/home/user/my-app",
    "backlogCount": 5,
    "inProgressCount": 2,
    "testingCount": 1,
    "doneCount": 12
  }
]

Get Project

GET /api/projects/:id
Returns a single project with full settings including permission mode, allowed tools, queue configuration, git settings, auto-test, and GitHub integration.
{
  "id": 1,
  "name": "My App",
  "slug": "my-app",
  "workingDir": "/home/user/my-app",
  "icon": null,
  "iconSeed": null,
  "permissionMode": "auto-accept",
  "allowedTools": null,
  "autoQueue": 1,
  "maxConcurrent": 2,
  "autoBranch": 1,
  "autoPr": 0,
  "prBaseBranch": "main",
  "autoTest": 0,
  "testPrompt": "",
  "taskTimeoutMinutes": null,
  "maxRetries": 0,
  "githubRepo": "owner/repo",
  "githubSyncEnabled": 0,
  "createdAt": "2025-01-15T10:00:00Z"
}

Create Project

POST /api/projects
Content-Type: application/json
{
  "name": "My App",
  "slug": "my-app",
  "workingDir": "/home/user/my-app",
  "permissionMode": "auto-accept",
  "allowedTools": [],
  "icon": null,
  "iconSeed": null
}
FieldRequiredDescription
nameYesProject display name
slugYesURL-safe identifier (must be unique)
workingDirYesAbsolute path to codebase
permissionModeNoauto-accept, allow-tools, default
allowedToolsNoComma-separated tool names (for allow-tools mode)
iconNoCustom icon identifier
iconSeedNoSeed for auto-generated icon
Additional settings like queue, git, auto-test, and GitHub integration are configured via Update Project after creation.

Update Project

PUT /api/projects/:id
Content-Type: application/json
Accepts any combination of the fields below. Only included fields are updated.
{
  "name": "My App (Updated)",
  "autoQueue": true,
  "maxConcurrent": 3,
  "autoBranch": true,
  "autoPr": true,
  "prBaseBranch": "develop",
  "autoTest": true,
  "testPrompt": "Run npm test and verify all pass",
  "taskTimeoutMinutes": 30,
  "maxRetries": 3,
  "githubRepo": "owner/repo",
  "githubSyncEnabled": 1
}

Basic Fields

FieldTypeDescription
namestringProject display name
slugstringURL-safe identifier
workingDirstringAbsolute path to codebase
iconstringCustom icon identifier
iconSeedstringSeed for auto-generated icon
permissionModestringauto-accept, allow-tools, default
allowedToolsstringComma-separated tool names

Queue Settings

FieldTypeDescription
autoQueuebooleanAuto-start queued tasks when slots available
maxConcurrentintegerMax concurrent agents (1–5)

Git & PR Settings

FieldTypeDescription
autoBranchbooleanAuto-create feature branches per task
autoPrbooleanAuto-create pull request when task completes
prBaseBranchstringTarget branch for auto-PRs (default: main)

Auto-Test Settings

FieldTypeDescription
autoTestbooleanEnable automatic test verification after task completion
testPromptstringCustom prompt for the test verification agent

Retry & Timeout Settings

FieldTypeDescription
taskTimeoutMinutesintegerKill agent after N minutes (0 = no timeout)
maxRetriesintegerAuto-retry failed tasks up to N times (0 = no retries, default max: 2)

GitHub Integration

FieldTypeDescription
githubRepostringGitHub repository in owner/repo format
githubSyncEnabledintegerEnable GitHub issue sync (1 = enabled, 0 = disabled)

Delete Project

DELETE /api/projects/:id
Deleting a project stops all running agents and removes all tasks, logs, webhooks, snippets, templates, and attachments. This cannot be undone.