MeowKit
Skills

mk:jira

Routing skill — recommends the correct mk:jira-* leaf for any Jira task. Pure router; no execution.

Source.claude/skills/jira/SKILL.md
Ownerjira
Runtimeclaude-code
Riskmedium
Phaseon-demand

What This Skill Does

mk:jira is a pure routing layer as of v2.8.3. Its sole purpose is to identify the right mk:jira-* leaf for the user's Jira task and point at it. No execution.

The Atlassian-MCP-coupled implementation has been removed. Jira execution now lives in 16 thin leaf skills (each forks a dedicated agent in .claude/agents/) backed by the jira-as CLI installed via npx mewkit setup.

When to Use

  • Triggers: "jira", "jira ticket", ambiguous Jira intent
  • NOT for: Direct execution — forward to a specific mk:jira-{leaf}. If you already know the leaf, invoke it directly.

Routing Table

User intentLeaf skill
Get/create/update/delete a single issuemk:jira-issue
Find issues by criteria; export; filtersmk:jira-search
Transition through workflow; assign; resolvemk:jira-lifecycle
Comments, attachments, watchers, notifymk:jira-collaborate
Issue links, blockers, dependenciesmk:jira-relationships
Worklogs, time tracking, reportsmk:jira-time
Epics, sprints, backlog, story pointsmk:jira-agile
Custom field discovery + configurationmk:jira-fields
Bulk ops (10+ issues, dry-run mandatory)mk:jira-bulk
Service Management (queues, SLAs, customers)mk:jira-jsm
Project/user/group/scheme administrationmk:jira-admin
Git/PR/branch-name integrationmk:jira-dev
Cache + project-context discoverymk:jira-ops
Evaluate ticket complexity + inconsistenciesmk:jira-evaluator
Estimate story points (heuristic)mk:jira-estimator
Analyze ticket context + media; RCAmk:jira-analyst

Setup

Install, authentication, safety rules, and troubleshooting live on Jira Integration. The variable list is in Configuration.

Mechanically: the SessionStart hook jira-env-loader.sh validates .meowkit/.env and emits [mk:jira] env OK / [mk:jira] <KEY> missing; the wrapper scripts/jira-as.sh translates MEOW_JIRA_* -> native JIRA_* env per call.

Architecture

The router recommends a leaf and never executes; each of the 16 leaves runs context: fork against its matching agent in .claude/agents/.

mk:jira (router, ≤80 lines)
├── shared resources (used by all 16 leaves):
│   ├── scripts/{jira-as.sh, jql-sanitize.sh, fetch-workflow.sh}
│   ├── scripts/requirements.txt          pip deps installed by mewkit setup
│   └── references/{install-and-auth, cli-idioms, safety-framework}.md
└── 16 thin leaf skills
    ├── 13 domain leaves (issue, search, lifecycle, collaborate, relationships,
    │                     time, agile, fields, bulk, jsm, admin, dev, ops)
    └── 3 intelligence leaves (evaluator, estimator, analyst)

The discovered Jira workflow cache (new in 2.8.3) lands separately:

README.md
_schemes/<PROJECT_KEY>.md — project → workflow-name mapping
<workflow-slug>.md — full statuses + transitions per workflow

Handoff

  • mk:intake → recommends the right mk:jira-* leaf based on triage
  • mk:planning-engine → consumes mk:jira-evaluator + mk:jira-estimator reports for capacity analysis
  • mk:cook Phase 3 → may invoke mk:jira-issue to create implementation tickets
  • mk:ship Phase 5 → may invoke mk:jira-dev for branch-name + PR description

Gotchas

  • mk:jira itself never executes; if you find yourself thinking about jira-as commands inside this skill, you're in the wrong place — forward to a leaf.
  • Escape hatch: if jira-as is unusable (mTLS, multi-profile), invoke Atlassian MCP directly per references/install-and-auth.md. The router does NOT auto-fallback.

On this page