Provon Connectors
Connectors move evidence and review state across the Provon boundary. They are project-scoped and store credentials as encrypted secrets.
On this page Browse sections
Connector Roles#
| Role | Supported paths | Purpose |
|---|---|---|
| Evidence input | OpenAI-compatible Gateway, OpenTelemetry/OTLP | Capture model and agent behavior |
| Finding repair handoff | GitHub | Create repair Issues and track external resolution |
| Automation issue systems | GitHub, GitLab, Linear, Jira | Let workflow steps open or update tracked work |
| Automation notifications | Slack, Microsoft Teams, Lark, email | Send review and operations updates |
| Automation data destinations | Notion, Lark Base, monday.com, Airtable | Write structured workflow records |
| Blob export | S3, Azure Blob, Google Cloud Storage, custom object storage | Archive workflow artifacts |
The distinction matters: GitHub is currently the only connector used by the canonical Finding repair handoff and status sync. Configuring another issue-system connector does not make it a Finding repair-status provider.
GitHub Repair Handoff#
Use GitHub when a Finding should become repair work for Claude Code, Codex, or another controlled coding-agent workflow.
Configure With OAuth#
The deployment must provide:
GITHUB_INTEGRATION_CLIENT_ID=...
GITHUB_INTEGRATION_CLIENT_SECRET=...Register this callback, replacing the origin with the public Provon URL:
https://your-provon.example.com/v1/integrations/github/callbackThen:
- Open Connectors in the project.
- Select Connect on GitHub.
- Authorize the repository access.
- Expand GitHub and set Default owner and Default repo.
- Keep the connector enabled.
The default OAuth scope is repo because Provon must create and read Issues and inspect associated
pull requests, including in private repositories.
Configure With A Token#
For local development or a deployment without OAuth:
- Open Connectors and expand GitHub.
- Enter a token that can create Issues and read pull requests in the target repository.
- Set Default owner and Default repo.
- Enable and save the connector.
Tokens may use the classic ghp_... or fine-grained github_pat_... form. Prefer the narrowest
repository access that still supports Issues and pull-request reads.
Repair Issue Contract#
Selecting Create repair issue on a Finding:
- creates an Issue in the default repository;
- adds the
provon-repairlabel; - stores
github:owner/repo#numberon the Finding; - changes the Finding review state to
confirmed; - starts external status tracking.
The Issue includes the goal, diagnosis, evidence, remediation direction, delivery requirement, and hidden correlation metadata. Provon records a merged pull request or closed Issue as resolved.
Evidence Connectors#
Gateway#
Use the Gateway when the application already speaks an OpenAI-compatible API and Provon should own routing, policy, guardrails, and trace capture.
http://127.0.0.1:3000/gateway/v1See Gateway.
OpenTelemetry#
Use OTLP/HTTP when the application already emits telemetry or must keep calling providers directly.
export OTEL_EXPORTER_OTLP_ENDPOINT="http://127.0.0.1:3000"
export OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer $PROVON_API_KEY"
export OTEL_EXPORTER_OTLP_PROTOCOL="http/protobuf"See OpenTelemetry setup.
Automation Connectors#
The Connectors page groups automation destinations by intent:
- Handoff: GitHub, GitLab, Linear, and Jira.
- Notify: Slack, Microsoft Teams, and Lark.
- Data: Notion, Lark Base, monday.com, and Airtable.
OAuth-backed connectors use deployment-level client credentials and project-level authorization. Webhook and token connectors can be configured directly in the project.
OAuth Environment Variables#
| Connector | Required variables | Optional scope override |
|---|---|---|
| GitHub | GITHUB_INTEGRATION_CLIENT_ID, GITHUB_INTEGRATION_CLIENT_SECRET |
GITHUB_INTEGRATION_SCOPES |
| Slack | SLACK_INTEGRATION_CLIENT_ID, SLACK_INTEGRATION_CLIENT_SECRET |
SLACK_INTEGRATION_SCOPES |
| Notion | NOTION_INTEGRATION_CLIENT_ID, NOTION_INTEGRATION_CLIENT_SECRET |
None |
| Jira | JIRA_INTEGRATION_CLIENT_ID, JIRA_INTEGRATION_CLIENT_SECRET |
JIRA_INTEGRATION_SCOPES |
| Linear | LINEAR_INTEGRATION_CLIENT_ID, LINEAR_INTEGRATION_CLIENT_SECRET |
LINEAR_INTEGRATION_SCOPES |
Callback paths follow:
https://your-provon.example.com/v1/integrations/<connector>/callbackAccess And Secrets#
- Project API keys authenticate Gateway and OTLP clients; they are not connector credentials.
- Provider credentials and connector secrets are stored per project.
- Connector secrets are encrypted with the deployment integration secret.
- Disabling a connector pauses its use without deleting the stored configuration.
- Deleting a connector removes the project record and its stored secret.
Do not place provider keys, project API keys, or connector tokens in workflow definitions or issue bodies.
Common Patterns#
Trace To Repair#
- Capture an agent conversation through Gateway or OTLP.
- Let diagnostic Rules publish a supported Finding.
- Review the cause and evidence.
- Create a GitHub repair Issue.
- Let a user-controlled coding agent open a pull request.
- Track the external resolution on the Finding.
Finding Notification#
- Trigger an Automation from a Finding or evaluation result.
- Format a compact review message.
- Send it to Slack, Teams, Lark, or email.
- Keep the Finding as the evidence source of truth.
Structured Archive#
- Select the workflow record to export.
- Map fields to Notion, Lark Base, monday.com, or Airtable.
- Store Provon IDs and evidence references with the external record.
- Treat the external table as a destination, not the canonical Finding store.