Five minutes
Get started
About five minutes: an account, a read-only GitHub token, then Enni inside the tool you already use.
Want to see an answer first? Check any public GitHub issue, no account needed. Check a public issue
1. Create an account
Your name, your email and a password. Free while in beta.
2. Connect GitHub with a read-only token
A fine-grained token, scoped to the repositories you choose. Make it in GitHub, then paste it into Enni under Connect GitHub.
- Open GitHub and go to Settings, then Developer settings, then Personal access tokens.
- Choose Fine-grained tokens, then Generate new token. Set Resource owner to whoever owns the repositories, you or your organisation, choose them, and under Repository permissions set Issues and Pull requests to Read-only.
- Copy the token it shows you — it starts with github_pat_.
The token needs exactly these permissions
- Issues: Read-only
- Pull requests: Read-only
- Metadata: Read-only (GitHub adds it)
Enni never writes to your apps, so that's all it needs. It's stored encrypted and never shown again.
To judge an issue, Enni sends it to an AI model through OpenRouter with zero data retention: it is not stored and not used for training.
Stuck? Developer settings is at the very bottom of your personal Settings, not the organisation's. If your organisation blocks fine-grained tokens, an owner has to allow them first. Don't see a repository? A GitHub key reads one owner's repositories, yours or one organisation's, so another owner needs a key of its own.
3. Add Enni to your tools
Run this line in a terminal where you use Claude Code.
claude mcp add --transport http enni https://enni.vibana.com/api/mcpAdd this address as an MCP server in Cursor's settings.
https://enni.vibana.com/api/mcpAdd this step to a workflow. It fails the job unless Enni says the pull request is ready.
- uses: situated-ai/enni-action@v1 with: enni-url: https://enni.vibana.com token: ${{ secrets.ENNI_CI_TOKEN }} subject-url: ${{ github.event.pull_request.html_url }}An admin makes a CI token here — it can run readiness checks and nothing else — and you save it as the repository secret ENNI_CI_TOKEN.
Then ask before you or your agent start: “Check with Enni if issue 1427 is ready before you start.” Enni answers Ready, Needs care or Not ready yet, with a step for each finding and the line it quotes.
Linear and Slack are optional. Connect them from inside Enni whenever you like.