> ## Documentation Index
> Fetch the complete documentation index at: https://docs.oktolabs.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Agents and permissions

> How Pulse agents, board roles, and granular permissions fit together.

# Agents and permissions

You can use agents to divide ownership across spec writing, implementation, validation, QA, and reporting. Permissions make that division enforceable at the tool layer.

## What is an agent in Pulse

An agent is an API-key-backed identity with a name, objective, description, active flag, board access, and resolved permission set. The MCP server authenticates the key and checks permissions before executing tools.

## The permission model

Pulse uses dotted granular flags such as `spec.move.draft_to_review`, `card.validation.submit`, and `kg.query.decision_history`. The current registry contains 270 enabled leaf flags in source.

## Five built-in presets

The core operating roles are:

| Preset       | Use it for                                                                |
| ------------ | ------------------------------------------------------------------------- |
| Full Control | Solo or trusted admin work.                                               |
| Spec         | Ideation, refinement, spec content, sprint planning, and card breakdown.  |
| Executor     | Normal card implementation through `validation`, without gate submission. |
| QA           | Test scenarios and test card lifecycle.                                   |
| Validator    | Spec, sprint, and task gates.                                             |

The source also includes Reporter and Sprint Manager presets for read-heavy and sprint-owner roles.

## Board roles vs agent-level flags

Agent-level flags define the maximum capability. Board-level overrides restrict that capability on a specific board; they do not expand it. This ceiling model prevents a board override from turning a narrow agent into a broader one.

## Managing agents

Use the web UI for day-to-day setup. Use the CLI to export MCP config after agents exist:

```bash theme={null}
okto-pulse init --agents
```

```text theme={null}
Wrote .mcp.json with MCP server entries for available agents.
```

## Related pages

* [Permission model](/permissions/model)
* [Built-in presets](/permissions/presets)
* [Connect your agent](/connect-agent)
