Ir al contenido

Issue trackers (Jira & Linear)

Esta página aún no está disponible en tu idioma.

Chronos can turn an issue straight into a session. Bind a workspace to a Jira board or a Linear team and the dashboard gains an Execute issue button: pick a ticket and Chronos opens a session already seeded with the issue’s title, description and a link back to it — with the external reference recorded end to end in the audit trail.

As with every connected tool, the credential is never exposed to the agent or written into your repository. Chronos fetches issues on your behalf using a token the enterprise panel holds; the agent (and the picker) only ever see the public issue data.

Configuration is split so secrets stay in the panel and only a harmless reference lives in your repo:

  1. The panel (admin, once). An administrator registers the connector and its credential.
  2. The workspace (committed). Your .chronos/settings.toml binds that connector by id and names the board/team to scope the picker to. No secret here.

An administrator adds it in the enterprise dashboard → ConnectorsConnect an issue tracker (kind issue_tracker). What they provide:

FieldJiraLinear
ide.g. jira-acmee.g. linear-acme
endpointyour Atlassian site, https://acme.atlassian.netalways https://api.linear.app/graphql
secretJira OAuth / API tokenLinear API key (lin_api_…) or OAuth access token
scopeglobal, or a specific teamglobal, or a specific team

The secret is stored in the panel, never shown again, and minted per-call by Chronos — it never reaches the client or the agent. The endpoint always comes from the signed catalog (never the client), and must be https://.

Which provider a connector is comes from the workspace binding below, not the panel — the panel just knows it’s an issue_tracker.

Add one block to the committed .chronos/settings.toml. Use connector = the id the admin registered. A workspace binds one tracker; if both are present, Jira wins.

Jira — scoped to a project:

[integrations.jira]
connector = "jira-acme" # the connector id from the panel
project_key = "PROJ" # the picker is scoped to this project
default_jql = "status != Done" # optional saved filter (still AND-scoped to the project)

Linear — scoped to a team:

[integrations.linear]
connector = "linear-acme" # the connector id from the panel
team_key = "ENG" # the picker is scoped to this team

Once bound, the workspace’s Execute issue button lights up:

  • It lists the board/team’s issues, with a search box (title/summary text).
  • Picking one opens a session whose first prompt is the issue — key, status, description and a link — plus any extra instruction you add.
  • The session carries an external reference back to the ticket, shown on the session and woven into the audit trail (which records which issue, never the token).
  • Identifiers. Jira keys look like PROJ-123; Linear identifiers like ENG-42.
  • Scope is enforced. The picker can only ever see issues in the bound project/team — it can’t enumerate outside it.
  • Search. Jira uses your default_jql plus free-text; Linear filters by team plus a title/description text match (saved filters are Jira-only for now).
  • Linear auth. A personal API key (lin_api_…) and an OAuth token both work — Chronos picks the right header automatically.