Skip to content

Module · requires task boards

The repository and the board, telling the same story

Enclessa connects to GitHub and turns issues and pull requests into cards on a task board, keeping the two in step in both directions. A pull request that closes an issue attaches to that issue’s card rather than becoming a second card, the check rollup and the review decision are shown on the card, and board columns map onto a GitHub Projects v2 Status field. Writing changes back to GitHub is a setting an organisation switches on deliberately; with it off the connector reads and never writes.

Open betaThe platform is being built in the open, so parts of it are not there yet, behaviour changes between releases, and no availability figure is committed while it is in beta. What is still being built.

At a glance

Direction
GitHub to Enclessa always; back to GitHub is opt-in
What syncs
Issues, pull requests, Projects v2 status, checks, reviews
Card linking
A pull request attaches to the issue card it closes
Hosts
GitHub.com and GitHub Enterprise Server
Auth
A GitHub App or a personal access token, stored sealed
Requires
The task boards module

How does the GitHub connection work?

It is three layers, and keeping them separate is what stops one careless click rewiring an organisation. An administrator makes one connection per organisation, using either a GitHub App or a personal access token. Somebody who may manage boards then links a board to a repository, a Projects v2 project, or both. From there each card carries its own reference to the issue, pull request or project item it stands for.

  • One connection per organisation, made by an administrator
  • One link per board, guarded by the permission that already governs boards
  • One reference per card, guarded by the permission that already governs cards
  • GitHub Enterprise Server is supported by storing its API host and its web host separately
  • Credentials are encrypted with AES-256-GCM before they are stored, never held in the clear

What actually crosses between GitHub and the board?

Issues and pull requests arrive as board items. Board columns map onto the Status field of a GitHub Projects v2 project, so moving a card and moving a project item mean the same thing. Each card caches what it points at — the state, the review decision and the check rollup — so a reviewer can see that the build is red without opening another tab.

  • Issues in, cards out, kept in step as either side changes
  • A pull request that closes an issue attaches to that issue’s card
  • Column to Projects v2 Status field mapping, set once per board
  • Check rollup and review decision cached on the card
  • A card can be filed as a new GitHub issue from Enclessa

What stops it writing to the repository by accident?

A setting called “write changes back to GitHub”, which an organisation controls. When it is off, a link that would push a moved card to GitHub stops writing and carries on reading. It is the first module setting the platform actually reads at runtime, and it exists because a connector that silently starts editing a repository because somebody tidied a board is a connector nobody keeps.

  • Write-back is a per-organisation setting, not a per-user habit
  • With it off, the connector is read-only and says so
  • Every inbound delivery is signature-verified before it is acted on
  • Deliveries are recorded before they are applied, and a replayed delivery id is a no-op
  • The console shows a delivery log, so a missing update is diagnosable

Which GitHub events does it listen to?

A closed set of six, chosen rather than accumulated: issues, issue comments, pull requests, pull-request reviews, Projects v2 item changes and check suites. Anything else that arrives is recorded as ignored rather than half-handled. Deliveries are applied one at a time per installation, because GitHub’s secondary rate limits punish concurrency from a single installation harder than they punish volume.

  • issues, issue_comment, pull_request, pull_request_review, projects_v2_item, check_suite
  • Unrecognised events are recorded as ignored, not guessed at
  • Applied strictly in order per installation, to stay inside GitHub’s rate limits
  • Recorded deliveries are pruned after a week

What this does not do

  • The GitHub connector requires the task boards module, because the things it syncs are board cards. Turning boards off turns GitHub off with it, and resuming GitHub first is refused.
  • GitHub only. There is no GitLab, Bitbucket, Azure DevOps or Gitea connector, and none is promised.
  • Enclessa does not host code, run pipelines or review diffs. It shows you the state of work that lives in GitHub; the work stays in GitHub.
  • Write-back covers the fields the sync owns — status and the issue a card was filed as. It is not a general-purpose repository editor.
  • The connector works on managed rooms and their boards. End-to-end encrypted rooms have no server-side key, so nothing server-side can read or post in them.

Related

Questions

GitHub: common questions

Does Enclessa sync with GitHub issues?

Yes. The GitHub module turns issues and pull requests into cards on an Enclessa task board and keeps them in step. A pull request that closes an issue attaches to that issue’s card, and the check rollup and review decision are shown on the card.

Does Enclessa write changes back to GitHub?

Only if the organisation switches write-back on. It is a per-organisation setting; with it off, the connector reads from GitHub and never writes to it, so moving a card cannot change a repository.

Does the GitHub integration work with GitHub Enterprise Server?

Yes. A connection stores the API host and the web host separately, because on GitHub Enterprise Server one cannot be derived from the other. Authentication is either a GitHub App or a personal access token.

Do I need the task boards module to use GitHub sync?

Yes. The GitHub connector syncs onto board cards, so it requires the boards module. If boards are switched off for the organisation, every GitHub route answers 404 rather than half-working.

Does Enclessa integrate with GitLab or Jira?

No. GitHub is the only source-control connector that exists, and there is no Jira, Linear, GitLab or Bitbucket connector. Anything else you want to connect goes through incoming webhooks, slash commands or the API.

Encrypted collaboration, hosted in Europe.

Create a workspace in a couple of minutes. It is yours at your-team.enclessa.app, hosted in the European Union, with encrypted direct messages from the first one you send.

Open beta. Free plan, no payment card to start.