From sprint-jira
Converts Jira labels, components, and issue type into weighted domain routing signals for each InternalTicket. Reads labelMappings from .sprint-agent.json. Populates the domainSignals array on each ticket before domain-router runs.
How this skill is triggered — by the user, by Claude, or both
Slash command
/sprint-jira:label-classifierThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Annotates each `InternalTicket` with domain routing signals by scoring labels, components, and issue type against the configured `labelMappings`. Runs after `ticket-normalizer`, before `domain-router`.
Annotates each InternalTicket with domain routing signals by scoring labels, components, and issue type against the configured labelMappings. Runs after ticket-normalizer, before domain-router.
{
"backend": ["api", "server", "service", "csharp", "golang", "java", "nodejs"],
"frontend": ["ui", "react", "angular", "component", "page", "prismatic", "design-system"],
"database": ["db", "schema", "migration", "query", "postgres", "sql", "mongo", "cosmos"],
"devops": ["ci", "cd", "pipeline", "docker", "infra", "kubernetes", "terraform"],
"security": ["security", "auth", "cve", "vulnerability", "sast", "snyk", "sonarqube"]
}
Custom mappings from .sprint-agent.json labelMappings block override these defaults using the same section-level replacement pattern (a domain key in custom mappings fully replaces that domain's defaults).
For each ticket, score each domain as follows:
| Signal source | Score contribution per match |
|---|---|
| Jira label matches a domain keyword | +0.4 |
| Jira component name matches a domain keyword | +0.3 |
| Issue type keyword matches a domain (see table below) | +0.2 |
| Description keyword matches a domain keyword | +0.1 |
Scores are capped at 1.0 per domain. A ticket may have signals for multiple domains (multi-domain ticket).
| Issue type (case-insensitive contains) | Domain signal |
|---|---|
| "infrastructure", "pipeline", "release", "deployment" | devops |
| "security", "vulnerability", "cve", "pen test" | security |
| "database", "migration", "schema" | database |
| "ui", "frontend", "design", "ux" | frontend |
| "api", "service", "backend", "integration" | backend |
Mutates each InternalTicket to populate domainSignals:
{
"id": "PROJ-123",
"domainSignals": [
{ "domain": "backend", "score": 0.7 },
{ "domain": "security", "score": 0.4 }
]
}
Returns the full annotated InternalTicket[] array.
npx claudepluginhub gagandeepp/software-agent-teams --plugin sprint-jiraGuides completion of development work by verifying tests, detecting environment, and presenting structured options for merge, PR, or cleanup.
Enforces test-driven development: write failing test first, then minimal code to pass. Use when implementing features or bugfixes.
Guides creation and editing of skills using test-driven development with pressure scenarios and subagents to verify agent compliance.