docs: remove beta references from Coder Agents docs and manifest (#27939)

Removes all references to "beta" from the Coder Agents documentation
under `docs/ai-coder/agents/` and the corresponding `"state": ["beta"]`
entries in `docs/manifest.json`. Also updates screenshots, video, and
hero image, and regenerates the auto-generated feature-stages table.

**Beta reference removal:**
- `getting-started.md`: Removed "Coder Agents is in Beta" from the top
note, "is in beta" from the Chats API note, and "during Beta" from the
feedback section. Removed the version/stability note pinning 2.33.1.
- `index.md`: Removed the "Product status" section that stated Coder
Agents is in Beta.
- `manifest.json`: Removed `"state": ["beta"]` from 17 entries for pages
under `docs/ai-coder/agents/`. Preserved all `premium` and `early
access` states.
- `feature-stages.md`: Regenerated the auto-generated beta features
table, which no longer lists Coder Agents.

**Asset updates:**
- `coder-agents-ui.mp4`: Updated demo video on the agents landing page.
- `llm-providers.png`: Updated LLM provider support screenshot.
- `models-list.png`: Updated models list screenshot.
- `models-add-model.png`: Updated add model form screenshot.
- `agents-hero-image.png`: Updated hero image on the `docs/ai-coder`
landing page.

Two references in `models.md` (`v1beta` in the Google Gemini API URL and
`anthropic-beta` in the Anthropic header name) were left unchanged as
they are provider API identifiers, not product status labels.

PR generated with Coder Agents

---------

Co-authored-by: Nick Vigilante <nickvigilante@users.noreply.github.com>
This commit is contained in:
Matt Vollmer
2026-08-11 08:57:57 -04:00
committed by GitHub
parent 7f75e625cc
commit 75e0790cd7
19 changed files with 87 additions and 123 deletions
+7 -17
View File
@@ -3,11 +3,6 @@
This guide walks platform teams and administrators through setting up Coder
Agents, preparing your deployment, and running your first Coder Agent.
> [!NOTE]
> Coder Agents is in Beta. APIs, behavior, and configuration may change
> between releases without notice; pin a release before broad rollout.
> Use **Coder version 2.33.1 or greater**.
## Prerequisites
Before you begin, confirm the following:
@@ -167,10 +162,9 @@ credential scoping, and pre-installing dependencies.
### Plan for change between releases
Coder Agents is under active development. APIs, behavior, and
configuration may change between releases without notice. Pin a
specific release before broad rollout and review the release notes
before upgrading so changes do not surprise developers in production.
Coder Agents is generally available.
However, APIs, behavior, and configuration may change between releases.
As always, you should review [release notes](https://github.com/coder/coder/releases) and the [changelog](https://coder.com/changelog) before upgrading, so changes do not affect production.
### Use HTTPS for push notifications
@@ -196,7 +190,7 @@ deployment. Use this to encode organizational conventions:
- Any guardrails specific to your environment.
Configure the system prompt from **AI Settings** > **Coder Agents** > **Instructions**
or via the API at `PUT /api/experimental/chats/config/system-prompt`.
or via the API at `PUT /api/v2/chats/config/system-prompt`.
See [Platform Controls](./platform-controls/index.md) for details.
### Understand the security model
@@ -256,7 +250,7 @@ This is useful for building automations such as:
**Quick example — create a Coder Agent via the API:**
```sh
curl -X POST https://coder.example.com/api/experimental/chats \
curl -X POST https://coder.example.com/api/v2/chats \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
@@ -269,7 +263,7 @@ curl -X POST https://coder.example.com/api/experimental/chats \
Stream updates in real time by connecting to the WebSocket endpoint:
```txt
GET /api/experimental/chats/{chat}/stream
GET /api/v2/chats/{chat}/stream
```
For service-to-service automation, use
@@ -277,10 +271,6 @@ For service-to-service automation, use
rather than developer session tokens. Keep automation credentials
narrowly scoped.
> [!NOTE]
> The Chats API is in beta and may change without notice.
> See [Chats API](../../reference/api/chats.md) for the full endpoint reference.
### Add workspace context with AGENTS.md
Create an `AGENTS.md` file in the home directory (`~/.coder/AGENTS.md`) or
@@ -319,7 +309,7 @@ Good feedback includes:
- **Context** — screenshots, `chat_id` values, or links to the Agents page help
the team investigate quickly.
Your input directly influences product direction during Beta.
Your input directly influences product direction.
## Next steps
-5
View File
@@ -321,8 +321,3 @@ Coder Agents is a new approach that differs from
| Workspace selection | Automatic, based on task description | Manual, user selects template |
| Sub-agents | Built-in parallel delegation | Not supported |
| Modern chat UI | Native chat with diffs, queuing | Terminal-based interface |
## Product status
Coder Agents is in Beta. The feature is under active development and
available for evaluation.
+3 -3
View File
@@ -297,9 +297,9 @@ subagents always run on the administrator-configured computer-use model and
reject explicit model selection.
> [!NOTE]
> Both override layers are experimental and may change between releases.
> The same values are available through the experimental chat
> configuration API under `/api/experimental/chats/config/`.
> Both override layers may change between releases.
> The same values are available through the chat
> configuration API under `/api/v2/chats/config/`.
## User API keys (BYOK)
@@ -44,5 +44,5 @@ Failed advisor invocations refund the per-turn budget.
The same configuration is available at:
- `GET /api/experimental/chats/config/advisor`
- `PUT /api/experimental/chats/config/advisor`
- `GET /api/v2/chats/config/advisor`
- `PUT /api/v2/chats/config/advisor`
@@ -78,8 +78,8 @@ enable auto-archiving.
Use the admin API to read or update the value:
GET /api/experimental/chats/config/auto-archive-days
PUT /api/experimental/chats/config/auto-archive-days
GET /api/v2/chats/config/auto-archive-days
PUT /api/v2/chats/config/auto-archive-days
## Rollout advice
@@ -12,11 +12,11 @@ Off by default. Three layers control whether it runs for a given chat:
1. **Runtime admin gate.** With the deployment override unset, the
*Let users record chat debug logs* toggle decides whether users can opt
in. Configure it under **AI Settings** > **Lifecycle**, or at
`GET/PUT /api/experimental/chats/config/debug-logging`.
`GET/PUT /api/v2/chats/config/debug-logging`.
1. **Per-user toggle.** Users with the admin gate enabled can turn debug
logging on for their own chats from **Agents** > **Settings** > **General**
under *Record debug logs for my chats*. The endpoint
`PUT /api/experimental/chats/config/user-debug-logging` returns
`PUT /api/v2/chats/config/user-debug-logging` returns
`409 Conflict` if the deployment override is active and `403 Forbidden`
if the admin has not enabled user opt-in.
@@ -49,11 +49,11 @@ the newest runs.
### API access
The same data is available through the experimental API:
The same data is available through the API:
- `GET /api/experimental/chats/{chat}/debug/runs` lists the most recent runs
- `GET /api/v2/chats/{chat}/debug/runs` lists the most recent runs
for a chat (up to 100, newest first).
- `GET /api/experimental/chats/{chat}/debug/runs/{debugRun}` returns a single
- `GET /api/v2/chats/{chat}/debug/runs/{debugRun}` returns a single
run with all of its steps, including normalized request and response bodies.
Fetch a single run and save it as JSON:
@@ -66,7 +66,7 @@ export RUN_ID="11111111-1111-1111-1111-111111111111"
curl -fsS \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
"$CODER_URL/api/experimental/chats/$CHAT_ID/debug/runs/$RUN_ID" \
"$CODER_URL/api/v2/chats/$CHAT_ID/debug/runs/$RUN_ID" \
| jq . > "coder-agents-debug-run-$RUN_ID.json"
```
@@ -77,7 +77,7 @@ from above:
```sh
RUN_IDS=$(curl -fsS \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
"$CODER_URL/api/experimental/chats/$CHAT_ID/debug/runs" \
"$CODER_URL/api/v2/chats/$CHAT_ID/debug/runs" \
| jq -r '.[].id') || {
echo "Failed to list debug runs" >&2
exit 1
@@ -89,7 +89,7 @@ trap 'rm -f "$RUN_EXPORTS"' EXIT
for RUN_ID in $RUN_IDS; do
curl -fsS \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
"$CODER_URL/api/experimental/chats/$CHAT_ID/debug/runs/$RUN_ID" \
"$CODER_URL/api/v2/chats/$CHAT_ID/debug/runs/$RUN_ID" \
>> "$RUN_EXPORTS" || {
echo "Failed to fetch debug run $RUN_ID" >&2
exit 1
@@ -25,11 +25,11 @@ Navigate to the **Agents** page, open **Settings**, and select the
Set the value to `0` to disable debug data retention entirely. The maximum value
is `3650` days.
Use the experimental admin API to read or update the value:
Use the admin API to read or update the value:
```txt
GET /api/experimental/chats/config/debug-retention-days
PUT /api/experimental/chats/config/debug-retention-days
GET /api/v2/chats/config/debug-retention-days
PUT /api/v2/chats/config/debug-retention-days
```
## Interaction with conversation retention
@@ -28,11 +28,11 @@ Navigate to the **Agents** page, open **Settings**, and select the **Behavior**
tab to configure the conversation retention period. The default is 30 days. Use the toggle to
disable retention entirely.
Use the experimental admin API to read or update the value:
Use the admin API to read or update the value:
```txt
GET /api/experimental/chats/config/retention-days
PUT /api/experimental/chats/config/retention-days
GET /api/v2/chats/config/retention-days
PUT /api/v2/chats/config/retention-days
```
## What gets deleted
@@ -63,10 +63,10 @@ plan sections, approval checkpoints, or review workflows.
This setting is available under **AI Settings** > **Coder Agents** > **Instructions**. Developers do not edit it directly.
The same value is exposed over the experimental chat configuration API:
The same value is exposed over the chat configuration API:
- `GET /api/experimental/chats/config/plan-mode-instructions`
- `PUT /api/experimental/chats/config/plan-mode-instructions`
- `GET /api/v2/chats/config/plan-mode-instructions`
- `PUT /api/v2/chats/config/plan-mode-instructions`
### Template routing
@@ -28,9 +28,9 @@ $1,000,000 per member per period.
> Configured per-model prices and historical native cost totals are also not migrated to AI Gateway.
> Before upgrading, record any per-model prices you need from **Admin settings** > **AI** > **Models**.
> The old cost endpoints default `start_date` to 30 days before the request and `end_date` to the request time, so choose explicit RFC 3339 UTC values that cover all history you need.
> Fetch `/api/experimental/chats/cost/users?start_date=<start>&end_date=<end>&limit=100&offset=0` and save the response.
> Fetch `/api/v2/chats/cost/users?start_date=<start>&end_date=<end>&limit=100&offset=0` and save the response.
> After each page, stop when `offset + users.length >= count`; otherwise, increase `offset` by 100 and fetch the next page.
> For every `users[].user_id` across those pages, save `/api/experimental/chats/cost/{user_id}/summary?start_date=<start>&end_date=<end>` with the same dates.
> For every `users[].user_id` across those pages, save `/api/v2/chats/cost/{user_id}/summary?start_date=<start>&end_date=<end>` with the same dates.
> Each summary contains the user's totals plus `by_model` and `by_chat` breakdowns.
> After upgrading, the native **Spend** page, per-model pricing fields, and aggregate cost endpoints are unavailable.
> Historical `chat_messages.total_cost_micros` values remain in the database temporarily for rolling upgrade compatibility, but AI Gateway reports do not include or reconstruct them.
@@ -39,5 +39,5 @@ provider is set.
The same configuration is available at:
- `GET /api/experimental/chats/config/computer-use-provider`
- `PUT /api/experimental/chats/config/computer-use-provider`
- `GET /api/v2/chats/config/computer-use-provider`
- `PUT /api/v2/chats/config/computer-use-provider`
@@ -1,16 +1,13 @@
# Migrating from the Tasks API to the Chats API
The [Tasks API](../../reference/api/tasks.md) (`/api/v2/tasks`) and the
[Chats API](../../reference/api/chats.md) (`/api/experimental/chats`) serve similar
[Chats API](../../reference/api/chats.md) (`/api/v2/chats`) serve similar
goals (programmatic access to AI-powered coding agents) but they differ
significantly in architecture, capabilities, and usage patterns.
This guide walks you through updating your integrations from the Tasks API
to the Chats API.
> [!NOTE]
> The Chats API is experimental in current Coder releases. Endpoints live under `/api/experimental/chats` and may change without notice until the feature graduates to GA.
## When to migrate
Coder Tasks is being deprecated. Support continues on the ESR release and
@@ -44,21 +41,21 @@ Before mapping individual endpoints, understand the structural changes:
The table below maps each Tasks API endpoint to its Chats API equivalent.
| Operation | Tasks API | Chats API |
|-------------------|-------------------------------------------|---------------------------------------------------------------------|
| List | `GET /api/v2/tasks` | `GET /api/experimental/chats` |
| Create | `POST /api/v2/tasks/{user}` | `POST /api/experimental/chats` |
| Get by ID | `GET /api/v2/tasks/{user}/{task}` | `GET /api/experimental/chats/{chat}` |
| Delete | `DELETE /api/v2/tasks/{user}/{task}` | `PATCH /api/experimental/chats/{chat}` with `{"archived": true}` |
| Send follow-up | `POST /api/v2/tasks/{user}/{task}/send` | `POST /api/experimental/chats/{chat}/messages` |
| Update input | `PATCH /api/v2/tasks/{user}/{task}/input` | `PATCH /api/experimental/chats/{chat}/messages/{message}` |
| Get logs / stream | `GET /api/v2/tasks/{user}/{task}/logs` | `GET /api/experimental/chats/{chat}/stream` (WebSocket) |
| Pause | `POST /api/v2/tasks/{user}/{task}/pause` | `POST /api/experimental/chats/{chat}/interrupt` |
| Resume | `POST /api/v2/tasks/{user}/{task}/resume` | `POST /api/experimental/chats/{chat}/messages` (send a new message) |
| Watch all | n/a | `GET /api/experimental/chats/watch` (WebSocket) |
| Get messages | n/a | `GET /api/experimental/chats/{chat}/messages` |
| List models | n/a | `GET /api/experimental/chats/models` |
| Upload file | n/a | `POST /api/experimental/chats/files` |
| Operation | Tasks API | Chats API |
|-------------------|-------------------------------------------|-----------------------------------------------------------|
| List | `GET /api/v2/tasks` | `GET /api/v2/chats` |
| Create | `POST /api/v2/tasks/{user}` | `POST /api/v2/chats` |
| Get by ID | `GET /api/v2/tasks/{user}/{task}` | `GET /api/v2/chats/{chat}` |
| Delete | `DELETE /api/v2/tasks/{user}/{task}` | `PATCH /api/v2/chats/{chat}` with `{"archived": true}` |
| Send follow-up | `POST /api/v2/tasks/{user}/{task}/send` | `POST /api/v2/chats/{chat}/messages` |
| Update input | `PATCH /api/v2/tasks/{user}/{task}/input` | `PATCH /api/v2/chats/{chat}/messages/{message}` |
| Get logs / stream | `GET /api/v2/tasks/{user}/{task}/logs` | `GET /api/v2/chats/{chat}/stream` (WebSocket) |
| Pause | `POST /api/v2/tasks/{user}/{task}/pause` | `POST /api/v2/chats/{chat}/interrupt` |
| Resume | `POST /api/v2/tasks/{user}/{task}/resume` | `POST /api/v2/chats/{chat}/messages` (send a new message) |
| Watch all | n/a | `GET /api/v2/chats/watch` (WebSocket) |
| Get messages | n/a | `GET /api/v2/chats/{chat}/messages` |
| List models | n/a | `GET /api/v2/chats/models` |
| Upload file | n/a | `POST /api/v2/chats/files` |
## Migration steps
@@ -97,7 +94,7 @@ path segment is required:
```sh
# Chats API: create a chat
curl -X POST https://coder.example.com/api/experimental/chats \
curl -X POST https://coder.example.com/api/v2/chats \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
@@ -140,7 +137,7 @@ curl -X POST https://coder.example.com/api/v2/tasks/me/my-task/send \
```sh
# Chats API: send a message
curl -X POST \
https://coder.example.com/api/experimental/chats/$CHAT_ID/messages \
https://coder.example.com/api/v2/chats/$CHAT_ID/messages \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
@@ -168,7 +165,7 @@ curl https://coder.example.com/api/v2/tasks/me/my-task/logs \
**Chats API**. You open a one-way WebSocket connection:
```txt
GET wss://coder.example.com/api/experimental/chats/{chat}/stream
GET wss://coder.example.com/api/v2/chats/{chat}/stream
```
The WebSocket sends JSON envelopes with a `type` field (`"ping"`,
@@ -215,7 +212,7 @@ The Tasks API uses `DELETE` to remove a task. The Chats API uses archiving:
- curl -X DELETE https://coder.example.com/api/v2/tasks/me/my-task \
- -H "Coder-Session-Token: $CODER_SESSION_TOKEN"
+ curl -X PATCH https://coder.example.com/api/experimental/chats/$CHAT_ID \
+ curl -X PATCH https://coder.example.com/api/v2/chats/$CHAT_ID \
+ -H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
+ -H "Content-Type: application/json" \
+ -d '{"archived": true}'
@@ -244,12 +241,12 @@ message resumes processing:
```sh
# Chats API: interrupt
curl -X POST \
https://coder.example.com/api/experimental/chats/$CHAT_ID/interrupt \
https://coder.example.com/api/v2/chats/$CHAT_ID/interrupt \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN"
# Chats API: resume by sending a new message
curl -X POST \
https://coder.example.com/api/experimental/chats/$CHAT_ID/messages \
https://coder.example.com/api/v2/chats/$CHAT_ID/messages \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
@@ -480,7 +477,7 @@ WORKSPACE_ID=$(curl -s -X POST \
}' | jq -r '.id')
# 2. Create the chat bound to that workspace.
curl -s -X POST https://coder.example.com/api/experimental/chats \
curl -s -X POST https://coder.example.com/api/v2/chats \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d "{
@@ -510,7 +507,7 @@ List available models to verify at least one provider is configured and
reachable:
```sh
curl -s https://coder.example.com/api/experimental/chats/models \
curl -s https://coder.example.com/api/v2/chats/models \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" | jq '.[].display_name'
```
@@ -522,7 +519,7 @@ If this returns an empty list or an error, revisit
Create a simple chat that does not require a workspace:
```sh
curl -s -X POST https://coder.example.com/api/experimental/chats \
curl -s -X POST https://coder.example.com/api/v2/chats \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
@@ -541,7 +538,7 @@ returns a response. Using [websocat](https://github.com/vi/websocat):
```sh
websocat -H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
"wss://coder.example.com/api/experimental/chats/$CHAT_ID/stream"
"wss://coder.example.com/api/v2/chats/$CHAT_ID/stream"
```
You should see JSON envelopes with `"type": "data"` containing
@@ -554,7 +551,7 @@ Verify multi-turn conversation works:
```sh
curl -s -X POST \
"https://coder.example.com/api/experimental/chats/$CHAT_ID/messages" \
"https://coder.example.com/api/v2/chats/$CHAT_ID/messages" \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{
@@ -584,7 +581,7 @@ as `execute`) against the attached workspace. After the chat finishes,
verify the chat is bound to the workspace via the API:
```sh
curl -s "https://coder.example.com/api/experimental/chats/$CHAT_ID" \
curl -s "https://coder.example.com/api/v2/chats/$CHAT_ID" \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" | jq '{workspace_id, status}'
```
@@ -599,14 +596,14 @@ Start a long-running chat and interrupt it:
```sh
curl -s -X POST \
"https://coder.example.com/api/experimental/chats/$CHAT_ID/interrupt" \
"https://coder.example.com/api/v2/chats/$CHAT_ID/interrupt" \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN"
```
Then confirm the chat status returns to `"waiting"`:
```sh
curl -s "https://coder.example.com/api/experimental/chats/$CHAT_ID" \
curl -s "https://coder.example.com/api/v2/chats/$CHAT_ID" \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" | jq '.status'
```
@@ -615,20 +612,20 @@ curl -s "https://coder.example.com/api/experimental/chats/$CHAT_ID" \
```sh
# Archive
curl -s -X PATCH \
"https://coder.example.com/api/experimental/chats/$CHAT_ID" \
"https://coder.example.com/api/v2/chats/$CHAT_ID" \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{"archived": true}'
# Confirm it no longer appears in the default list
curl -s "https://coder.example.com/api/experimental/chats" \
curl -s "https://coder.example.com/api/v2/chats" \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
| jq --arg id "$CHAT_ID" '[.[] | select(.id == $id)] | length'
# Should return 0
# Restore
curl -s -X PATCH \
"https://coder.example.com/api/experimental/chats/$CHAT_ID" \
"https://coder.example.com/api/v2/chats/$CHAT_ID" \
-H "Coder-Session-Token: $CODER_SESSION_TOKEN" \
-H "Content-Type: application/json" \
-d '{"archived": false}'
Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

After

Width:  |  Height:  |  Size: 353 KiB

Binary file not shown.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 KiB

After

Width:  |  Height:  |  Size: 178 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 95 KiB

After

Width:  |  Height:  |  Size: 144 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

After

Width:  |  Height:  |  Size: 156 KiB

+4 -5
View File
@@ -102,11 +102,10 @@ available in the documentation.
<!-- Code generated by scripts/release/docs_update_feature_stages.sh. DO NOT EDIT. -->
<!-- BEGIN: available-beta-features -->
| Feature | Description |
|------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------|
| [MCP Server](../../ai-coder/mcp-server.md) | Connect external AI coding agents to Coder using its built-in Model Context Protocol server. |
| [JetBrains Toolbox](../../user-guides/workspace-access/jetbrains/toolbox.md) | Connect to and manage your Coder workspaces from the JetBrains Toolbox app. |
| [Coder Agents](../../ai-coder/agents/index.md) | Delegate development work to coding agents in your deployment with Coder Agents, a chat interface and API. |
| Feature | Description |
|------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------|
| [MCP Server](../../ai-coder/mcp-server.md) | Connect external AI coding agents to Coder using its built-in Model Context Protocol server. |
| [JetBrains Toolbox](../../user-guides/workspace-access/jetbrains/toolbox.md) | Connect to and manage your Coder workspaces from the JetBrains Toolbox app. |
<!-- END: available-beta-features -->
## General Availability (GA)
+15 -32
View File
@@ -1027,61 +1027,51 @@
"title": "Coder Agents",
"description": "Delegate development work to coding agents in your deployment with Coder Agents, a chat interface and API.",
"path": "./ai-coder/agents/index.md",
"state": ["beta"],
"children": [
{
"title": "Getting Started",
"description": "Enable Coder Agents, prepare your deployment, and run your first Coder Agent",
"path": "./ai-coder/agents/getting-started.md",
"state": ["beta"]
"path": "./ai-coder/agents/getting-started.md"
},
{
"title": "Search Syntax",
"description": "Filter Coder Agents conversations by title, status, and linked pull requests with search syntax.",
"path": "./ai-coder/agents/chat-search-syntax.md",
"state": ["beta"]
"path": "./ai-coder/agents/chat-search-syntax.md"
},
{
"title": "Architecture",
"description": "Learn how the Coder Agents control-plane agent communicates with your workspaces.",
"path": "./ai-coder/agents/architecture.md",
"state": ["beta"]
"path": "./ai-coder/agents/architecture.md"
},
{
"title": "Chat Sharing",
"description": "Give other users and groups read-only access to a Coder Agents conversation with chat sharing.",
"path": "./ai-coder/agents/chat-sharing.md",
"state": ["beta"]
"path": "./ai-coder/agents/chat-sharing.md"
},
{
"title": "Models",
"description": "Configure the LLM providers and models that power Coder Agents from Admin settings.",
"path": "./ai-coder/agents/models.md",
"state": ["beta"]
"path": "./ai-coder/agents/models.md"
},
{
"title": "Tools",
"description": "How Coder Agents uses tool calls to select templates and create workspaces",
"path": "./ai-coder/agents/tools/index.md",
"state": ["beta"]
"path": "./ai-coder/agents/tools/index.md"
},
{
"title": "Platform Controls",
"description": "Learn how platform teams control Coder Agents behavior, models, spend, and policies.",
"path": "./ai-coder/agents/platform-controls/index.md",
"state": ["beta"],
"children": [
{
"title": "Template Optimization",
"description": "Best practices for creating templates that are discoverable and useful to Coder Agents",
"path": "./ai-coder/agents/platform-controls/template-optimization.md",
"state": ["beta"]
"path": "./ai-coder/agents/platform-controls/template-optimization.md"
},
{
"title": "MCP Servers",
"description": "Configure external MCP servers that provide additional tools for agent chat sessions",
"path": "./ai-coder/agents/platform-controls/mcp-servers.md",
"state": ["beta"]
"path": "./ai-coder/agents/platform-controls/mcp-servers.md"
},
{
"title": "Spend management",
@@ -1092,26 +1082,22 @@
{
"title": "Git Providers",
"description": "Configure Git providers so Coder Agents can show pull request diffs in the in-chat viewer.",
"path": "./ai-coder/agents/platform-controls/git-providers.md",
"state": ["beta"]
"path": "./ai-coder/agents/platform-controls/git-providers.md"
},
{
"title": "Data Retention",
"description": "Configure automatic cleanup of old Coder Agents conversation data to manage database size.",
"path": "./ai-coder/agents/platform-controls/chat-retention.md",
"state": ["beta"]
"path": "./ai-coder/agents/platform-controls/chat-retention.md"
},
{
"title": "Debug Data Retention",
"description": "Configure automatic cleanup of old Coder Agents chat debug data to manage database size.",
"path": "./ai-coder/agents/platform-controls/chat-debug-retention.md",
"state": ["beta"]
"path": "./ai-coder/agents/platform-controls/chat-debug-retention.md"
},
{
"title": "Auto-Archive",
"description": "Automatically archive long-inactive Coder Agents conversations to keep chat lists tidy.",
"path": "./ai-coder/agents/platform-controls/chat-auto-archive.md",
"state": ["beta"]
"path": "./ai-coder/agents/platform-controls/chat-auto-archive.md"
},
{
"title": "Advisor",
@@ -1136,14 +1122,12 @@
{
"title": "Extending Agents",
"description": "Extend Coder Agents with custom skills and MCP tools defined in your workspace templates.",
"path": "./ai-coder/agents/extending-agents.md",
"state": ["beta"]
"path": "./ai-coder/agents/extending-agents.md"
},
{
"title": "Tasks to Chats API Migration",
"description": "Migrate your integrations from the Coder Tasks API to the newer Coder Agents Chats API.",
"path": "./ai-coder/agents/tasks-to-chats-migration.md",
"state": ["beta"]
"path": "./ai-coder/agents/tasks-to-chats-migration.md"
}
]
},
@@ -1411,8 +1395,7 @@
{
"title": "Tasks to Chats API Migration",
"description": "Migrate your integrations from the Coder Tasks API to the newer Coder Agents Chats API.",
"path": "./ai-coder/agents/tasks-to-chats-migration.md",
"state": ["beta"]
"path": "./ai-coder/agents/tasks-to-chats-migration.md"
}
]
}