Connect the work. Know the coverage.
Each source is opt-in and belongs to one workspace. Create a credential under Workspace → Connections. Only owners can create or revoke connections.
ChatGPT browser companion
The companion observes the title and URL of ChatGPT conversations you open in Chrome-compatible browsers, once per minute while the tab exists. It does not read messages, infer completion, retrieve closed conversations or backfill your account history. Signing in with ChatGPT alone does not enable tracking.
- Create a ChatGPT connection in your workspace and copy its token.
- Download the companion and unzip it.
- Open your browser’s extension manager, enable developer mode, and load the unpacked folder. This early companion is not yet browser-store reviewed.
- Open SignalDesk Companion, paste the token, read the collection notice and enable observation.
- Open a ChatGPT conversation and confirm the first event appears in SignalDesk. Pause or disconnect at any time.
Codex local bridge
Download the Python bridge. With Python 3.10 or newer, run it with a Codex connection token in the SIGNALDESK_TOKEN environment variable. The script refreshes once per minute while running. It reads local desktop task names and timestamps, not messages or file contents. The local Codex format is experimental and can change. A background service is not installed automatically.
GitHub signed webhooks
Create a GitHub connection with the exact owner/repository. In the repository’s webhook settings, add the provided endpoint, choose JSON, enter the one-time secret, keep SSL verification enabled and select workflow runs, check runs, pull requests or deployment statuses. Verify a test delivery. SignalDesk verifies HMAC-SHA256 signatures and the repository identity, rejects revoked connections and deduplicates delivery IDs. No GitHub personal access token is stored.
CI, deployments and business systems
Use an API connection to send an authenticated POST to the provided endpoint. Keep the token in your provider’s secret store. This is a generic integration; native CRM, Netlify, Jira and other provider account connections are not included yet.
Authorization: Bearer YOUR_CONNECTION_TOKEN
Content-Type: application/json
{
"externalId": "unique-provider-event-id",
"title": "Production smoke test passed",
"url": "https://your-provider.example/evidence",
"state": "succeeded",
"observedAt": 1789459200000
}Use the current timestamp in milliseconds. Supported states: observed, running, succeeded, failed, waiting, unknown. A provider’s succeeded event is evidence to review; it does not automatically verify an action.
Freshness and limits
The app shows last-received times and flags sources with no event for 15 minutes as stale or quiet. A quiet webhook may be healthy. Tokens expire after 90 days. Event and connection limits depend on the workspace plan. The browser companion and local bridge must be running for local observation; server-side webhooks are received while the app is closed.
Open your connections →