---
title: Trello
---

# Trello

> **Status:** in-development. Enable it via `AMC_SHOW_TRELLO=1` env var or the
> Lab toggle once released; the "Trello" sidebar row appears once it is on.

## What it is

A first-party AMC integration that connects to your real Trello account via
the Trello REST API v1. It surfaces as a **"Trello" row in the projects sidebar**
(blue LayoutGrid icon) that opens a kanban board view of any Trello board.

It is gated through the unreleased-feature registry (`trello`), same pattern as
Jira board, ClickUp, and Pull Requests.

This is separate from Ollert (the self-hosted native port). Trello talks to
your real trello.com account; Ollert talks to a separate Ollert backend.

## Where to find it

The board lives behind a **"Trello" row in the projects sidebar** — a blue LayoutGrid icon. It is still in development, so it is hidden until you set `AMC_SHOW_TRELLO=1` or turn it on in **Settings > Lab > Trello**; the sidebar row appears once it is on. There is no separate Settings page for the connection itself, so the row is also where you connect and reconnect the account.

## How it behaves

### How to use it

1. **Enable it:** Set `AMC_SHOW_TRELLO=1` or toggle in Settings > Lab > Trello.
2. **Connect:** Open the **Trello** sidebar row — until credentials are saved the
   board shows a **"Set up Trello"** button. Click it to open the connection
   drawer and paste your Trello **API Key** and **API Token** (get them from
   trello.com/app-key → Power-Up admin, then generate a token from the link on
   that page). If the saved credentials later stop working the board shows a
   **"Fix connection"** button to re-enter them. (There is no separate Settings
   page to hunt for — the board connects itself, like the other board
   integrations.)
3. Open the **Trello** sidebar row:
   - The **sidebar** shows your open boards.
   - Select a **board** to see its lists as kanban columns with cards.
   - Click a **card** to open the detail drawer (description, checklists,
     comments, labels, members, due dates).
   - Use **Search** to find cards across your boards by name.

**Working cards (no browser needed):**

- View card details, labels, members, due dates, and checklists.
- Create, update, and archive cards.
- Move cards between lists.
- Add comments to cards directly from AMC.
- Check/uncheck checklist items, create new checklists.
- Cards assigned to you appear in your **Inbox** (when inbox is enabled).

### Inbox source

When `trelloInboxEnabled` is on, cards assigned to you appear in the unified
Inbox. The poller runs every few minutes and pushes `INBOX_TRELLO_UPDATED` when
changes are detected (diff by `dateLastActivity`).

### Troubleshooting

- **"Trello not connected"** — open the Trello board and click **"Set up Trello"**
  to enter your API key and token in the connection drawer.
- **Rate limit errors** — the queue auto-retries; if persistent, check your
  Trello API quota (100 req/10s per token).
- **Card not showing** — ensure the card is on the selected board and not archived.
- **Auth errors (401/403)** — regenerate your token from trello.com; tokens can
  expire or be revoked.

## For agents

### CLI routes (for AI agents)

- `POST /trello/move-card` — `{ cardId, listId }` moves a card to a list.
- `POST /trello/create-card` — `{ listId, name, ... }` creates a card.
- `POST /trello/comment` — `{ cardId, text }` (up to 16,384 characters) adds a comment to a card. This is the route behind the "add comments to cards directly from AMC" capability above; a retried or double-fired request posting the *same* card + text is coalesced rather than posting twice.

All three are bearer-authenticated via the CLI server token.

### Architecture

- **Auth:** API Key + API Token as query params `key` and `token` (not headers).
- **SSRF guard:** Fixed host `api.trello.com`, HTTPS only.
- **Rate limiting:** 6 concurrent requests max, auto-retry on 429 with
  `Retry-After` header respect. IPC volume cap: 600/min.
- **Log safety:** Credentials redacted from all logged URLs (`key=***&token=***`).
- **Trello hierarchy:** Board > List > Card.
- **ID format:** 24-character hex string, validated via regex.
- **"Delete" is archive:** The delete action sets `closed: true` (reversible),
  not a permanent delete.
- **Workflow trigger:** `trigger.trello_card` fires on created/list_changed/updated.

## Related

The other first-party board integrations follow the same sidebar-row pattern, and are covered on [Jira board](jira-board.md), [ClickUp](clickup.md), [Asana board](asana-board.md), [Linear board](linear-board.md), and [Notion board](notion-board.md). For the self-hosted native port that talks to a separate Ollert backend rather than your real trello.com account, see [Ollert](ollert.md). What a board row can do across all of these is described on [Boards](boards.md).
