Skip to main content
Goals define the “why” and projects/departments define the “what” for organizing work.

Goals

Goals form a hierarchy: company goals break down into team goals, which break down into agent-level goals.

List Goals

Query parameters: Goals support both the legacy single parentId shape and the current DAG-style parentIds shape. projectIds records department/project membership.

Get Goal

Create Goal

projectIds is required — at least one department or project must be provided. Returns 400 if missing or empty. Requires founder or team_lead role.

Update Goal

Delete Goal

Permanently removes the goal. Returns the deleted goal object. Requires founder or team_lead role.

Goal Tree and Parents

The tree route returns the nested planning model used by the Objectives UI. Parent replacement enforces cycle prevention and scope integrity.

Projects and Departments

The projects table serves both Departments and Projects, distinguished by type: 'department' or 'project'. Both use the same endpoints.

List Projects

Query parameters:

Get Project

Returns project details including workspaces. The executionWorkspacePolicy field is gated by the instance’s enableIsolatedWorkspaces setting.

Create Project

workspace is optional. If present, the project is seeded with that workspace. A workspace requires at least one of cwd or repoUrl. Projects and departments can set agentCompletionPolicyDefault to review_required, agent_can_complete, or null. null inherits the company default. They can also set humanQuestionSlaHours from 1 to 720, or null to inherit the company’s work-question SLA. Agents cannot change these scope policies; board operators need task-assignment authority. The completion policy is resolved and snapshotted when a task is created. Project or department defaults override the company default, but the company review guardrail can still force review. See Tasks.

Update Project

Delete Project

Deletes the project. Returns 409 if the project has active tasks or goals that must be reassigned first. Returns the deleted project object.

Project Workspaces

Workspaces link a project to a repository and working directory. Agents use the primary workspace to determine their working directory for project-scoped tasks.
Create payload:

Project Agent Assignment

Manage which agents are assigned to a project.

List Assigned Agents

Returns each assigned agent with agentId, name, role, title, icon, status, and createdAt (assignment date).

Assign Agent

Idempotent — assigning an already-assigned agent is a no-op. Returns 201 { ok: true }.

Unassign Agent

Returns 404 if the agent was not assigned. Returns { ok: true } on success.

Project Environment

Environment variables scoped to the project. Passed to agent runs in the project context.

Get Environment

Returns { env: { KEY: "value", ... } } or { env: null }.

Update Environment

Pass { "env": null } to clear all environment variables. Returns { env: { ... } }. Company-scoped execution environments are separate from this legacy project environment map. See docs/api/environments.md for /api/companies/{companyId}/environments.

Project Git

These routes power project git graph visualizations and enrichment.

Project Budget

Returns cost totals for the project for the current billing month: total spend, per-agent breakdown, and the project’s budget limit if set.