Skip to content

AI Classification ​

How GitWire uses Claude to classify issues and pull requests.

The Pipeline ​

When a triage job is picked up by the Triage Worker:

  1. Fetch issue data from the database (title, labels, existing metadata)
  2. Build prompt with classification instructions and the issue context
  3. Send to Claude via the Anthropic API
  4. Parse response — extract type, priority, and summary
  5. Upsert triage fields in the issues table
  6. Apply labels on GitHub via the API

Classification Types ​

Claude assigns one of these types:

TypeDescriptionGitHub Label
bugSomething isn't workingbug
featureNew feature or requestenhancement
questionFurther information requestedquestion
documentationImprovements or additions to docsdocumentation
enhancementImprovement to existing featureimprovement
performancePerformance issue or optimizationperformance
securitySecurity vulnerability or concernsecurity
otherDoesn't fit other categories—

Priority Levels ​

PriorityCriteriaGitHub Label
criticalSecurity vulnerabilities, data loss, production outagespriority: critical
highBreaking functionality, significant user impactpriority: high
mediumNon-critical bugs, feature requests with clear valuepriority: medium
lowMinor issues, nice-to-have featurespriority: low

Summary Generation ​

Claude generates a one-line summary of the issue, stored in triage_summary. This is used in:

  • Dashboard issue lists (quick scan)
  • /gitwire status command output
  • Duplicate detection embedding text

Confidence ​

The triage worker does not currently assign a confidence score. All classifications are applied directly. Future versions may add a confidence threshold below which triage is skipped.

Re-triage ​

Issuing /gitwire triage on an issue triggers a re-classification. The previous triage fields are overwritten.

Worker Reference ​

See Triage Worker for implementation details.

→ Duplicate Detection

Released under the MIT License.