Devin

Autonomous AI software engineer

Devin is an autonomous AI software engineer by Cognition that can independently write, run, debug, and deploy code.

With Devin, you can:

  • Automate coding tasks: Assign software engineering tasks and let Devin autonomously write, test, and iterate on code
  • Manage sessions: Create, monitor, and interact with Devin sessions to track progress on assigned tasks
  • Guide active work: Send messages to running sessions to provide additional context, redirect efforts, or answer questions
  • Retrieve structured output: Poll completed sessions for pull requests, structured results, and detailed status
  • Control costs: Set ACU (Autonomous Compute Unit) limits to cap spending on long-running tasks
  • Standardize workflows: Use playbook IDs to apply repeatable task patterns across sessions

In Sim, the Devin integration enables your agents to programmatically manage Devin sessions as part of their workflows:

  • Create sessions: Kick off new Devin sessions with a prompt describing the task, optional playbook, ACU limits, and tags
  • Get session details: Retrieve the full state of a session including status, pull requests, structured output, and resource consumption
  • List sessions: Query all sessions in your organization with optional pagination
  • Send messages: Communicate with active or suspended sessions to provide guidance, and automatically resume suspended sessions

This allows for powerful automation scenarios such as triggering code generation from upstream events, polling for completion before consuming results, orchestrating multi-step development pipelines, and integrating Devin's output into broader agent workflows.

Usage Instructions

Integrate Devin into your workflow. Create sessions to assign coding tasks, send messages to guide active sessions, and retrieve session status and results. Devin autonomously writes, runs, and tests code.

Tools

devin_create_session

Create a new Devin session with a prompt. Devin will autonomously work on the task described in the prompt.

Input

ParameterTypeRequiredDescription
apiKeystringYesDevin API key (service user credential starting with cog_)
promptstringYesThe task prompt for Devin to work on
playbookIdstringNoOptional playbook ID to guide the session
maxAcuLimitnumberNoMaximum ACU limit for the session
tagsstringNoComma-separated tags for the session

Output

ParameterTypeDescription
sessionIdstringUnique identifier for the session
urlstringURL to view the session in the Devin UI
statusstringSession status (new, claimed, running, exit, error, suspended, resuming)
statusDetailstringDetailed status (working, waiting_for_user, waiting_for_approval, finished, inactivity, etc.)
titlestringSession title
createdAtnumberUnix timestamp when the session was created
updatedAtnumberUnix timestamp when the session was last updated
acusConsumednumberACUs consumed by the session
tagsjsonTags associated with the session
pullRequestsjsonPull requests created during the session
structuredOutputjsonStructured output from the session
playbookIdstringAssociated playbook ID

devin_get_session

Retrieve details of an existing Devin session including status, tags, pull requests, and structured output.

Input

ParameterTypeRequiredDescription
apiKeystringYesDevin API key (service user credential starting with cog_)
sessionIdstringYesThe session ID to retrieve

Output

ParameterTypeDescription
sessionIdstringUnique identifier for the session
urlstringURL to view the session in the Devin UI
statusstringSession status (new, claimed, running, exit, error, suspended, resuming)
statusDetailstringDetailed status (working, waiting_for_user, waiting_for_approval, finished, inactivity, etc.)
titlestringSession title
createdAtnumberUnix timestamp when the session was created
updatedAtnumberUnix timestamp when the session was last updated
acusConsumednumberACUs consumed by the session
tagsjsonTags associated with the session
pullRequestsjsonPull requests created during the session
structuredOutputjsonStructured output from the session
playbookIdstringAssociated playbook ID

devin_list_sessions

List Devin sessions in the organization. Returns up to 100 sessions by default.

Input

ParameterTypeRequiredDescription
apiKeystringYesDevin API key (service user credential starting with cog_)
limitnumberNoMaximum number of sessions to return (1-200, default: 100)

Output

ParameterTypeDescription
sessionsarrayList of Devin sessions
sessionIdstringUnique identifier for the session
urlstringURL to view the session
statusstringSession status
statusDetailstringDetailed status
titlestringSession title
createdAtnumberCreation timestamp (Unix)
updatedAtnumberLast updated timestamp (Unix)
tagsjsonSession tags

devin_send_message

Send a message to a Devin session. If the session is suspended, it will be automatically resumed. Returns the updated session state.

Input

ParameterTypeRequiredDescription
apiKeystringYesDevin API key (service user credential starting with cog_)
sessionIdstringYesThe session ID to send the message to
messagestringYesThe message to send to Devin

Output

ParameterTypeDescription
sessionIdstringUnique identifier for the session
urlstringURL to view the session in the Devin UI
statusstringSession status (new, claimed, running, exit, error, suspended, resuming)
statusDetailstringDetailed status (working, waiting_for_user, waiting_for_approval, finished, inactivity, etc.)
titlestringSession title
createdAtnumberUnix timestamp when the session was created
updatedAtnumberUnix timestamp when the session was last updated
acusConsumednumberACUs consumed by the session
tagsjsonTags associated with the session
pullRequestsjsonPull requests created during the session
structuredOutputjsonStructured output from the session
playbookIdstringAssociated playbook ID

On this page

Start building today
Trusted by over 60,000 builders.
Build Agentic workflows visually on a drag-and-drop canvas or with natural language.
Get started