# Remote delegations

Delegate work to Droid from Slack, Linear, Jira, and Microsoft Teams with shared instructions, plugins, identity, and compute.

Remote delegations let your team send work to Droid from Slack, Linear, Jira, and Microsoft Teams. Mention Factory in a conversation or delegate an issue, and Droid works on a remote computer using your organization's configuration.

<Info>
  Remote delegations are in Private Preview. To request access, contact your Factory account team. Available apps and settings depend on your organization's preview access.
</Info>

An administrator configures the instructions, plugins, identity, and compute once. Team members can then delegate work from a connected app without choosing a computer for every request.

Delegation apps receive requests from your team. [Connectors](/harness/connectors) give Droid tools to use while carrying out those requests. Connecting a personal connector does not install the corresponding delegation app for your organization.

## Prerequisites

To configure remote delegations, you need:

- Private Preview access for your Factory organization.
- The **Manager** or **Owner** role in Factory.
- Permission to install or authorize the delegation app in your Slack workspace, Linear workspace, Jira site, or Microsoft Teams organization.
- Service-account access for your organization to configure shared execution.
- Git credentials and any connectors needed by the identity that will run the work.

Team members who delegate work must have a Factory account in the connected organization. Use the same account email in Factory and the connected app so Factory can match the person making the request.

## Connect a delegation app

Open <a href="https://app.factory.ai/settings/remote-delegations">**Settings → Remote Delegations**</a> in Factory. Under **Delegation Apps**, select **Set Up for Org** for the app you want to connect. Follow its setup page to authorize the integration. For a connected app, select **Configure** to return to its setup and management options.

| App | How to delegate work | Setup notes |
| --- | --- | --- |
| Slack | Mention `@Factory` in a channel or send a direct message. | Invite Factory to channels where it should receive requests. |
| Linear | Assign an issue to Factory or mention Factory in an issue comment. | Authorize Factory for the workspace and the teams that will delegate work. |
| Jira | Assign an issue to Factory or mention Factory in an issue comment. | Install the Factory Jira app and link the Jira site to your Factory organization. Use **Install Jira App** from the app's management options. |
| Microsoft Teams | Mention `@Factory` in a channel or send a direct message. | Teams availability is enabled separately during the preview. |

A disabled **Set Up for Org** action means that app is not available for your organization yet.

## Configure delegated sessions

Under **Remote Delegation Configs**, select **Edit** on **Apps**. This configuration powers work delegated from Slack, Linear, Jira, and Microsoft Teams.

Factory creates a default configuration, service account, and execution template when setting up eligible organizations. Review those defaults before delegating work. If setup could not complete, use the configuration wizard to select an active identity and compute.

<Steps>
  <Step title="General">
    Choose the **Default model** and **Default reasoning level**. Leave the model on **Auto Model** to use [Factory Router](/model-independence/factory-router).

    Add **Custom Instructions** for behavior that should apply to every delegated session. For example, specify which tests to run, what a completion summary should contain, or when Droid should open a pull request.

    The configuration's name is fixed, and **Access** is **Everyone**. Custom groups are coming soon.
  </Step>
  <Step title="Plugins">
    Add plugins that delegated sessions need. Enter the plugin name, choose its marketplace, and select **Add**.

    Marketplaces must first be registered under **Enterprise Controls → Plugins**. Plugins enabled organization-wide are included automatically. A plugin disabled organization-wide stays disabled even if it is listed in this configuration.
  </Step>
  <Step title="Identity">
    Choose **Use Existing Service Account** or **New Service Account**. The selected account must be active.

    Shared delegated sessions run as this service account, not as the administrator editing the configuration. Use the identity's controls to configure Git credentials, connectors, API keys, and computers. Make sure it can access the repositories and external tools the work requires.
  </Step>
  <Step title="Compute">
    Choose **Dynamic** and select an execution template, or choose **Persistent** and add computers to the service account's pool.

    Select **Finish** to save. Dynamic compute requires a template. Persistent compute requires at least one computer owned by the selected service account.
  </Step>
</Steps>

## Set personal model defaults

Team members can open **Settings → Session Defaults → Delegations** to set **Default delegation model** and **Default delegation reasoning level**.

A personal model selection overrides the Apps configuration's model when organization policy allows it. Its reasoning preference applies to that selected model. Choose **Org default** to use the configuration's model and reasoning settings instead.

These preferences change model selection, not the configuration's shared identity, compute, instructions, or plugins.

## Delegate your first task

Start with a small, reviewable request in a connected app. Include the repository, the desired outcome, and how Droid should verify the result.

For example, mention Factory in Slack or Teams:

> @Factory Investigate the failing checkout test in the storefront repository. Fix the cause, run the relevant tests, and open a pull request with a summary of the change.

For Linear or Jira, put those details in the issue description, then assign the issue to Factory or mention Factory in a comment.

Review Droid's response and any linked session or pull request. Send follow-up instructions through the originating conversation or issue. Check the test results and proposed changes before merging.

## Troubleshooting

<Troubleshooting>
  <TroubleshootingItem title="Remote Delegations is missing from Settings">
    Confirm that your organization has preview access and that you are a Manager or Owner. Remote Delegations settings are not available in airgapped deployments. If the page is visible but Remote Delegation Configs is missing, ask your Factory account team to check service-account eligibility.
  </TroubleshootingItem>
  <TroubleshootingItem title="Factory cannot match my account">
    Make sure the email on your connected-app account matches your Factory account email, and that you belong to the connected Factory organization. Then retry the request.
  </TroubleshootingItem>
  <TroubleshootingItem title="The execution identity is inactive">
    An administrator must choose an active service account in the configuration's Identity step. Check that its Git credentials and connectors are ready for the work.
  </TroubleshootingItem>
  <TroubleshootingItem title="The delegation template is not ready">
    Check that the selected execution template still exists and has a ready build. If provisioning fails, retry. If Factory reports that managed compute is unavailable, ask an administrator to review compute policy and usage limits.
  </TroubleshootingItem>
  <TroubleshootingItem title="No delegation machines are available">
    For Persistent compute, check that computers belong to the selected service account and have finished provisioning. Bring-your-own machines must be online with a current Droid daemon.
  </TroubleshootingItem>
  <TroubleshootingItem title="All delegation machines are busy">
    Retry after a session finishes. An administrator can add computers or adjust the per-machine parallel worker limit. Increasing the limit means more sessions share the same resources.
  </TroubleshootingItem>
</Troubleshooting>

<RelatedLinks>
  <RelatedLink href="/enterprise/identity-and-access" title="Identity & Access">
    Configure service accounts and Git credentials for shared work.
  </RelatedLink>
  <RelatedLink href="/droid-computers/byom" title="Bring Your Own Machine (BYOM)">
    Connect your own computers for persistent execution.
  </RelatedLink>
  <RelatedLink href="/software-factory/slack" title="Slack">
    Install Factory in your Slack workspace.
  </RelatedLink>
  <RelatedLink href="/software-factory/linear" title="Linear">
    Connect Factory to your Linear workspace.
  </RelatedLink>
</RelatedLinks>
