---
title: "List the agents that review a repository"
method: GET
path: "/api/v1/agents/{forge}/{owner}/{repo}"
tags: ["Project Agents"]
---

# List the agents that review a repository

`GET /api/v1/agents/{forge}/{owner}/{repo}`

## Request

- Base URL: `https://entire.io` (the document declares no server; this is the origin it was published from)
- URL: `https://entire.io/api/v1/agents/{forge}/{owner}/{repo}`
- Auth: none declared

Every active agent of the repository's project that selects it, by name, with its latest run and reading here. Requires pull on the repository; it holds nothing of an agent's configuration beyond what it is called and runs and when it runs.

## Path parameters

- `forge` 'gh' | 'et', required
- `owner` string, required
- `repo` string, required

## Response `200`

The repository's agents, ordered by name

- object
  - `items` object[], required
    - `id` string, required
    - `name` string, required: The agent's name; a preset agent's is its preset's.
    - `description` string, required
    - `preset` object, nullable, required: The Entire preset the agent runs; null for a custom agent.
      - `id` string, required
      - `version` integer, required
    - `harness` string, required
    - `model` string, nullable, required
    - `signal` object, required
      - `value_type` 'boolean' | 'percent' | 'size', required
      - `polarity` 'higher_is_better' | 'lower_is_better' | 'neutral', required
    - `is_enabled` boolean, required: Whether its trigger runs it. A paused agent runs only when a manager asks.
    - `triggers` object[], required: Zero or one trigger; empty for an agent that runs only when asked to.
      - `id` string, required
      - `kind` string, required
      - `when` string: A push trigger's readiness condition: ready, always or not_ready. Open, like kind.
      - `branches` string[]: Branch name globs a push trigger runs on; empty, every branch.
      - `paths` string[]: Repository path globs a push trigger runs on a change to; empty, every change.
    - `latest_run` object, nullable, required: Its newest run in this repository, finished or not; null before its first.
      - `id` string, required
      - `status` 'queued' | 'running' | 'succeeded' | 'failed' | 'timed_out' | 'canceled', required
      - `trigger` object, required
        - `kind` 'push' | 'manual' | 'retry', required
        - `id` string, nullable, required
      - `trail_id` string, required: The product Trail of the Change it reviewed.
      - `change_id` string, required: The Change it reviewed.
      - `head_sha` string, nullable, required: The head it reviewed; null before the run resolved it.
      - `error` object, nullable, required: Why the run failed, timed out or was canceled.
        - `code` string, nullable, required
        - `message` string, required
      - `created_at` string, required
    - `latest_reading` object, nullable, required: The newest finished reading in this repository of the signal's current value type; null until one exists.
      - `percent_value` number, nullable, required
      - `size_value` 'small' | 'medium' | 'large', nullable, required
      - `boolean_value` boolean, nullable, required
      - `rationale` string, nullable, required
      - `summary` string, nullable, required: The review as a whole; null before summaries.
      - `verdicts` object, required: The run's verdicts on the agent's earlier open findings.
        - `fixed` integer, required
        - `still_present` integer, required
        - `no_longer_applies` integer, required
        - `decided_by_person` integer: Verdicts a person's decision overrode; not counted above.
      - `run_id` string, required
      - `head_sha` string, nullable, required
      - `updated_at` string, required

## Other responses

- `401`: Not authenticated
- `403`: Agents feature disabled
- `404`: Repository not found, or repository pull is missing
- `502`: Agents service unavailable

## Changes

- **2026-10-26** `82deb2eae7c6`: 1 breaking, 2 info
  - removed the required property `repository_id` from the response with the `200` status
  - added the optional property `items/items/triggers/items/branches` to the response with the `200` status
  - added the optional property `items/items/triggers/items/paths` to the response with the `200` status
- **2026-10-26** `d83dd99e700e`: 1 info
  - added the optional property `items/items/latest_reading/anyOf[subschema #1]/verdicts/decided_by_person` to the response with the `200` status
- **2026-10-25** `e8893f80c9f2`: 1 info
  - added the optional property `items/items/triggers/items/when` to the response with the `200` status
- **2026-10-25** `ac11f2ad3549`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/entire/apis/entire-api/changes/api/v1/agents/:forge/:owner/:repo/get.md)

---

[API](https://skmtc.dev/entire/apis/entire-api.md) - [All operations](https://skmtc.dev/entire/apis/entire-api/llms.txt) - [OpenAPI document](https://skmtc.dev/entire/apis/entire-api/revisions/a24dfcc828d7?raw)
