TaskGoblin connects to two kinds of tools, and the distinction shapes how you sign up:
- A git provider — GitLab or GitHub — supplies your repositories and provisions your organisation. Exactly one per organisation, chosen when you sign in.
- Capability providers — Linear, Jira, Slack, and Microsoft Teams — add surfaces where loops can fire and goblins can report back. You connect these into an organisation you already have.
Manage them all from Integrations in your organisation menu (/{organisation}/integrations).
Connecting a provider installs its default loops. That is the practical consequence worth holding on to: an integration is not just a credential, it is a set of standing behaviours arriving with it. See Event loops for what each one installs.
Git providers (GitLab or GitHub)
Signing in is connecting your git provider — one OAuth consent both authenticates you and provisions your organisation and repositories. That is why there is no separate "connect your repo" step.
GitLab
Connecting GitLab enumerates the groups you belong to and provisions a TaskGoblin organisation for each one, plus a personal organisation. The goblin posts as @taskgoblin on merge requests and issues. If the token ever needs refreshing, the Integrations page offers a one-click Reconnect.
Installs: Review merge requests, Work on assigned issues.
GitHub
GitHub is a GitHub App, not a classic OAuth app. You install the TaskGoblin app on the organisation you want, and each installation becomes one TaskGoblin organisation. The app mints short-lived installation tokens on demand and the goblin posts as taskgoblin[bot]. Because permissions refresh through the installation itself, GitHub organisations never need a manual reconnect.
Installs: Review pull requests, Work on labelled issues.
A git-provisioned organisation is locked to the provider that created it — that provider's card offers Reconnect rather than Disconnect.
Capability providers
Linear
A one-click OAuth consent into your active organisation. Once connected, goblins can pick up issues assigned to the TaskGoblin agent, read the issue and its comments for context, and post status, activity, and the merge-request link back onto the issue.
Installs: Work on assigned issues.
Jira
An Atlassian OAuth consent, connecting your Jira site into the active organisation. Goblins pick up issues assigned to the TaskGoblin account and answer mentions on issue comments, replying as a comment on the issue and moving it through your workflow when you ask.
A Jira issue rarely names a repository, so the goblin works the destination out from the request, your organisation memory, and your connected repositories — and asks rather than guessing when it genuinely cannot tell. Telling it once is enough; it writes the answer down.
Installs: Work on assigned issues.
Slack
Connecting Slack lets anyone mention the goblin in a thread and get a reply where the conversation is happening. The bot token does not expire, so there is nothing to refresh. Slack is also where schedule loops deliver digests and reminders when the instruction names a channel.
Installs no loops of its own — it is a surface, not a trigger.
Microsoft Teams
Mention the goblin in a Teams channel, a group chat, or a direct message and it replies in place, editing its own message as the work progresses. Connecting verifies your Microsoft tenant; there is no bot token for you to manage.
Installs no loops of its own.
How the goblin authenticates as itself
You never paste a personal access token into TaskGoblin, and the goblin never sees your credentials.
Each provider has its own bot identity — @taskgoblin on GitLab, Slack, and Teams, taskgoblin[bot] on GitHub. Inside the sandbox, git credentials are provisioned per organisation at run time (a GitLab OAuth token, or a freshly minted GitHub installation token) and injected into the environment around the agent rather than handed to it as something to read.
That boundary is deliberate and it is also why the goblin comments through its own integrations rather than through the git token it was given: feedback posted with your token would appear under your name. Everything a goblin says, it says as itself.
Disconnecting
Disconnect a provider from the Integrations page and goblins lose that access immediately — the loops that depended on it stop firing, and nothing further is read or posted there. Reconnecting restores the same connection.
Where to go next
- Event loops — what each provider's default loops do, and how to change them.
- Ad-hoc runs — mentioning the goblin directly on any connected surface.
- Quickstart — the whole path from sign-in to your first loop.