Skip to main content
Every integration Orchestra offers can run in one of two homes:
  • This laptop (Orchestra Local). You connect your own account. The token stays in your operating system’s keychain, and everything the integration reads is written to the store on your laptop. Nothing is stored on Orchestra’s cloud.
  • Orchestra’s cloud. Your workspace connects once (the Orchestra GitHub App, or a Linear workspace connection), and what it reads is stored in Orchestra’s hosted store, visible to each person only as the source system allows.
The integration is the same code in both homes. Only three things differ: the store it writes to, where its token is kept, and what wakes it up.

See where each one runs

For each integration it prints where it runs for the folder you are in, who it acts as, what it stores and where, the connected account and the last sync, and the one command that moves it. In the web app and in the desktop app on a hosted workspace, Settings, Integrations shows one card per integration: who it is connected as, what it brings in, its last sync, and whether it can write. In the desktop app on Orchestra Local, connect Linear under Settings, This machine, with a Linear API key. On a laptop using Orchestra Local, a repo your team has moved to Orchestra’s cloud is served by the cloud, so orchestra integrations in that repo shows the cloud’s integrations, and in any other repo it shows the laptop’s.

What each integration does in each home

What is stored, and where

On a laptop, a token is kept in the macOS keychain or libsecret (a file only you can read where neither exists), never on Orchestra’s servers. Because each person connects as themselves, a laptop only ever holds what its owner can see in the source system. Your teammates’ views come from their own connections, never from a copy of yours.

What it writes back

  • Linear sends the issue updates you make: with your own token on a laptop, with the workspace connection in the cloud.
  • GitHub and pull request context write the context section of a pull request description: as you on a laptop, as the App in the cloud.
  • GitHub Issues, on a laptop only: a change you make in Orchestra to an issue that lives on GitHub (its title, description, labels, closing or reopening it, a comment) is made on GitHub as you, through your own gh login. To open a new issue on GitHub from Orchestra, name the repository as the team (owner/name); otherwise a new issue stays in Orchestra. Priority, project, parent and assignee are not written to GitHub, and Orchestra says so instead of saving half a change.
  • Commit links and Knowledge from repository files write nothing back.

Limits on a laptop

  • No webhooks. Linear and GitHub tell a server the moment something changes by calling a public address (a webhook). A laptop has no public address, and a webhook would send your issues to a public server. So on Local your laptop asks instead: when you open Issues or an agent reads or writes an issue (if the last sync is more than 30 seconds old), right after a teammate’s laptop changes something, and every 10 to 15 minutes while the desktop app or the terminal client is open (less often when you are away or on battery). With no app open it does not ask at all. In the cloud, changes arrive as they happen.
  • GitHub issue refs. A GitHub issue is shown as the repository’s name and its number, such as APP-12 for issue 12 of acme/app. Two repositories with the same name under different owners would share that prefix.
  • Only while the laptop is on. A laptop that is asleep does not sync; it catches up from where it stopped when it wakes.
  • Your account only. A laptop syncs what your account can see, not what the whole organization can.

Move to Orchestra’s cloud

For your own laptop:
For a repo, or your whole team, a team admin runs orchestra promote. See Moving between Local and hosted for the preview and the consent it asks for first. What happens at each step: Nothing is lost or counted twice. Every event keeps the id it had on your laptop, and every issue, pull request and commit is recognized by the id the source gave it, so the same object seen from three laptops is one object in the cloud. In the cloud, who can see an integration’s content follows the source system’s own permissions, never a broader default.

Move back to this laptop

For your own laptop:
For a repo or the team, a team admin runs orchestra demote, and each person brings the export onto their laptop with orchestra local import <file>. The export carries every event and where each sync had got to. After you reconnect your own account, your laptop resumes from that point, with no gap in history.

Integrations that run only in the cloud

An integration with no laptop version is shown as Cloud only in orchestra integrations, with the reason. Every integration offered today runs in both homes. Slack, Jira and Google Drive have no connector yet, so they are not offered in either.