> For the complete documentation index, see [llms.txt](https://agpt.co/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://agpt.co/docs/integrations/block-integrations/create_workspace.md).

# Conductor Create Workspace

Creates a Conductor cloud workspace for a project or repository, optionally starts its agent with a prompt and waits for the reply. Requires your own Conductor API key, created at [app.conductor.build/users/api-keys](https://app.conductor.build/users/api-keys) and added through AutoGPT’s credentials UI. Select that credential for each Conductor block; no server-wide default key is used.

## Conductor Create Workspace

### What it is

Create a Conductor cloud workspace for a project or repository, optionally start its agent with a prompt and wait for the reply. Set base\_branch explicitly when the repository's PR target differs from the Conductor project default; an empty base\_branch uses that default, which Conductor does not report back.

### How it works

The block posts to `POST /v0/workspaces` with exactly one of `project_id` or `repository_url` (both or neither is an input error). Blank optional fields are omitted so Conductor applies its defaults. `base_branch` is sent as the API's `branch`: leave it empty and the workspace is cut from the Conductor project's default branch, which can differ from the branch the repository's PRs target (an AutoGPT workspace defaults to `master` while PRs go to `dev`), so set it explicitly for such repositories. Neither the create response nor `GET /v0/workspaces/{id}` reports the branch a workspace was cut from, so the `base_branch` output echoes what was requested and is empty when the default was used; check it against the PR target before opening a PR. `model` is passed through as-is, so use an id Conductor accepts (for example `fable-5-1`, `opus-5-5-1m`, `sonnet-5-1m`, `gpt-6-astra` or `auto`). When `message` is set the agent starts on it immediately and `initial_message_id` is returned, together with `next_after`: the prompt's transcript row ID to pass as `after` to Get Session (the receipt itself while the prompt has no row yet, which Get Session also accepts). With `wait_for_reply` the block then waits the same way as Send Message: it reads the transcript and then `GET /v0/sessions/{id}/status` every `poll_interval_seconds` (a wall-clock bound of `timeout_seconds`, reported through `timed_out`), correlates the transcript rows with the prompt's turn (a freshly initializing workspace reports idle until the agent actually starts, and startup events alone are not treated as done), and returns those rows with their visible agent text joined into `reply` (`truncated` is set when the turn exceeded the 1000 rows kept or its start was older than the rows read).

### Inputs

| Input                   | Description                                                                                                                                                                                                                                                                                                                | Type                                                                       | Required |
| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- | -------- |
| project\_id             | Project (repository) to open the workspace in. Find IDs with Get Account. Use this or repository\_url, not both.                                                                                                                                                                                                           | str                                                                        | No       |
| repository\_url         | Git repository URL to open instead of a project ID                                                                                                                                                                                                                                                                         | str                                                                        | No       |
| message                 | Initial prompt for the agent. Leave empty to create an idle workspace.                                                                                                                                                                                                                                                     | str                                                                        | No       |
| base\_branch            | Branch the workspace branches from. Empty = Conductor project default, which may differ from the repository's PR target branch (for example a project that defaults to master while PRs go to dev). Set it explicitly for repos whose default is not the PR target, otherwise the PR inherits commits from the wrong base. | str                                                                        | No       |
| name                    | Workspace name                                                                                                                                                                                                                                                                                                             | str                                                                        | No       |
| session\_name           | Name of the initial agent session                                                                                                                                                                                                                                                                                          | str                                                                        | No       |
| agent                   | Agent for the initial session                                                                                                                                                                                                                                                                                              | "claude" \| "codex" \| "cursor" \| "acp"                                   | No       |
| model                   | Model id such as fable-5-1, opus-5-5-1m, sonnet-5-1m, gpt-6-astra or auto. Leave empty for Conductor's default.                                                                                                                                                                                                            | str                                                                        | No       |
| effort                  | Reasoning effort; leave empty for the default                                                                                                                                                                                                                                                                              | "" \| "none" \| "low" \| "medium" \| "high" \| "xhigh" \| "max" \| "ultra" | No       |
| fast\_mode              | Enable fast mode                                                                                                                                                                                                                                                                                                           | bool                                                                       | No       |
| env                     | Environment variables for the workspace                                                                                                                                                                                                                                                                                    | Dict\[str, str]                                                            | No       |
| restricted\_access      | Restrict the workspace to its creator                                                                                                                                                                                                                                                                                      | bool                                                                       | No       |
| wait\_for\_reply        | After sending the initial prompt, wait until the agent is idle and return its reply                                                                                                                                                                                                                                        | bool                                                                       | No       |
| timeout\_seconds        | How long to wait for the reply                                                                                                                                                                                                                                                                                             | int                                                                        | No       |
| poll\_interval\_seconds | Seconds between status checks while waiting                                                                                                                                                                                                                                                                                | int                                                                        | No       |

### Outputs

| Output               | Description                                                                                                                                                                                                                                                            | Type                   |
| -------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- |
| error                | Error message if the operation failed                                                                                                                                                                                                                                  | str                    |
| workspace\_id        | ID of the new workspace                                                                                                                                                                                                                                                | str                    |
| session\_id          | ID of the initial session                                                                                                                                                                                                                                              | str                    |
| deep\_link           | Link that opens the workspace                                                                                                                                                                                                                                          | str                    |
| base\_branch         | Branch the workspace was asked to branch from, as sent to Conductor. Empty when Conductor's project default was used: the API does not report the resolved branch, so an empty value means the base is unknown. Verify this matches the PR target before opening a PR. | str                    |
| initial\_message\_id | ID of the initial prompt message, empty when none was sent                                                                                                                                                                                                             | str                    |
| next\_after          | Transcript row ID of the prompt's row; pass it as `after` to Get Session to read the agent's turn. Falls back to initial\_message\_id while the prompt has no row yet, which Get Session also accepts                                                                  | str                    |
| session\_status      | idle, working or error once waiting finished                                                                                                                                                                                                                           | str                    |
| reply                | Text the agent produced in response                                                                                                                                                                                                                                    | str                    |
| messages             | Raw transcript messages after the prompt                                                                                                                                                                                                                               | List\[Dict\[str, Any]] |
| timed\_out           | True when the wait ended before the agent went idle                                                                                                                                                                                                                    | bool                   |
| truncated            | True when the turn produced more messages than are kept; messages holds the newest ones and reply may be incomplete                                                                                                                                                    | bool                   |
| error\_message       | Session error, if any                                                                                                                                                                                                                                                  | str                    |

### Possible use case

**Ticket to branch**: Take an issue description from a trigger, create a workspace on the repo with that prompt, and wait for the agent's summary of the change.

**Parallel exploration**: Fan one task out to several workspaces with different `model` or `agent` values and compare the replies.

***


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://agpt.co/docs/integrations/block-integrations/create_workspace.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
