Skip to content
Registry

devin

v0.1.16

Devin CLI + API as an iii worker; devin::run/start/stop/status/sessions::list follow the agent-worker family and deliver AgentEvent frames on the devin::agent-event trigger type, devin::session::* wrap the Devin cloud session lifecycle, devin::pr-review::* exposes Devin's review surface, and devin::api reaches any Devin v1/v3 endpoint.

license: Apache-2.0agentcloudcoding-agentdevinpr-review
Deprecated

This worker is deprecated and is no longer recommended.

Install

bash
iii trigger compose::add worker=devin@0.1.16

Run in your project with the iii engine running. Exact versions are immutable and digest-pinned.

Functions12

devin::api

Function

Call any Devin v3 API endpoint directly: {method, path, query?, body?}. Use for anything the typed devin::session::* wrappers do not cover.

Request
  • bodyunknown

    Optional JSON request body.

  • methodstringrequired

    HTTP method: GET, POST, PUT, PATCH, or DELETE.

  • pathstringrequired

    Path relative to the configured base URL, e.g. `organizations/{org_id}/sessions`.

  • queryunknown

    Optional query parameters as a flat object.

Response
Empty object

devin::on-config-change

Function

Internal: reload devin configuration when it changes.

Request
Empty object
Response
  • okboolean

devin::pr-review::status

Function

Get the latest Devin review status for a pull/merge request.

Request
  • commit_shastring

    Commit SHA (full or short); defaults to the PR head when omitted.

  • pr_urlstringrequired

    Full URL of the pull/merge request to look up.

Response
Empty object

devin::pr-review::trigger

Function

Trigger a Devin review for a pull/merge request by its URL.

Request
  • pr_urlstringrequired

    Full URL of the pull/merge request to review.

Response
Empty object

devin::run

Function

Run one Devin CLI turn and wait for the result. Accepts `prompt` or a `messages` array; streams raw CLI stdout onto devin::events, terminal AgentEvent frames onto agent::events, and returns {session_id, devin_session_id, url, result, stop_reason, is_error}.

Request
  • cwdstring

    Working directory the CLI runs in. Empty = the worker's process directory.

  • iii_contextboolean

    Prepend the iii runtime discovery prompt as leading instructions (default from config).

  • messagesobject[]

    Alternative to prompt: role/content messages; the last user entry becomes the prompt.

    • contentunknownrequired

      Either a plain string or an array of content blocks.

    • rolestringrequired
  • promptstring

    The prompt handed to the `devin` CLI for this turn.

  • session_idstring

    iii session id; reuse to keep the same local record. Omit to generate one.

Response
  • busyboolean
  • devin_session_idstring
  • is_errorboolean
  • num_turnsinteger
  • reasonstring
  • resultstring
  • session_idstring
  • stop_reasonstring
  • urlstring

devin::session::create

Function

Create a Devin cloud session from a prompt. Optional fields (title, tags, playbook_id, snapshot_id, idempotent, max_acu_limit, secret_ids, knowledge_ids, unlisted) map to POST /sessions.

Request
  • attachment_urlsstring[]

    (v3) File attachment URLs.

  • bypass_approvalboolean

    (v3) Skip approval workflows for this session.

  • devin_modestring

    (v3) Agent mode: normal, fast, lite, ultra, or fusion.

  • idempotentboolean

    (v1) Reuse an existing matching session instead of creating a duplicate.

  • knowledge_idsstring[]

    Knowledge ids to attach to the session.

  • max_acu_limitinteger· uint64min 0

    Cap the session's ACU consumption.

  • messagesobject[]

    Alternative to prompt: role/content messages; the last user entry becomes the prompt.

    • contentunknownrequired

      Either a plain string or an array of content blocks.

    • rolestringrequired
  • playbook_idstring

    Playbook id to run.

  • promptstring

    The task prompt for the new Devin session.

  • reposstring[]

    (v3) Repository identifiers to attach to the session.

  • resumableboolean

    (v3) Preserve VM state so the session can be resumed (default true).

  • secret_idsstring[]

    Secret ids to expose to the session.

  • snapshot_idstring

    (v1) Machine snapshot id to start the session from.

  • tagsstring[]

    Tags to apply to the session.

  • titlestring

    Human-readable session title.

  • unlistedboolean

    (v1) Create the session as unlisted.

Response
Empty object

devin::session::get

Function

Fetch one Devin cloud session (status, messages, output) by session id.

Request
  • session_idstringrequired

    iii session id (devin::run) or Devin cloud session id (devin::session::*).

Response
Empty object

devin::session::message

Function

Send a message to continue a running Devin cloud session.

Request
  • messagestringrequired

    The message to send.

  • session_idstringrequired

    Devin cloud session id (returned by devin::session::create).

Response
Empty object

devin::sessions::list

Function

List the Devin CLI runs this worker has recorded, each linked to its Devin cloud session id. For all Devin cloud sessions org-wide, use devin::api {method: GET, path: sessions}.

Request
Empty object
Response
  • sessionsobject[]
    Empty object

devin::start

Function

Start a Devin CLI turn and return immediately; watch devin::events / agent::events (group_id = session_id) for progress and turn_end.

Request
  • cwdstring

    Working directory the CLI runs in. Empty = the worker's process directory.

  • iii_contextboolean

    Prepend the iii runtime discovery prompt as leading instructions (default from config).

  • messagesobject[]

    Alternative to prompt: role/content messages; the last user entry becomes the prompt.

    • contentunknownrequired

      Either a plain string or an array of content blocks.

    • rolestringrequired
  • promptstring

    The prompt handed to the `devin` CLI for this turn.

  • session_idstring

    iii session id; reuse to keep the same local record. Omit to generate one.

Response
  • session_idstring
  • startedboolean

devin::status

Function

Check the status of a local Devin CLI run.

Request
  • session_idstringrequired

    iii session id (devin::run) or Devin cloud session id (devin::session::*).

Response
  • liveboolean
  • recordobject
  • session_idstring

devin::stop

Function

Stop a running Devin CLI turn for a session.

Request
  • session_idstringrequired

    iii session id (devin::run) or Devin cloud session id (devin::session::*).

Response
  • reasonstring
  • session_idstring
  • stoppedboolean

Triggers0

No triggers registered

Search the registry

Find workers, kits and executables, or jump to a page.