warp-from-jira
Build the plan files /warp-scan reads from the Jira issues that carry one or more labels, for example /warp-from-jira version:1.5.5,ui.
Skill by smlsr
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/smlsr-warp-from-jira
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/warp-from-jira
What's inside
- Skill name
warp-from-jira- Description
- Build the plan files /warp-scan reads from the Jira issues that carry one or more labels, for example /warp-from-jira version:1.5.5,ui. Use when there is no plan file and the work is already in Jira.
- License
- MIT
- Instructions
- 35 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- files: referenced but missing: scripts/plansim.py
Files (1)
- SKILL.md
SKILL.md (first lines)
# From Jira
Warp has no Jira credentials. The script writes the query and builds the files; you call the Atlassian MCP server named `jiraMcp` (default `atlassian`) in between. Nothing is written to Jira.
```bash
python3 <plugin>/scripts/jira_pull.py plan version:1.5.5,ui
python3 <plugin>/scripts/jira_pull.py build
```
`jira_pull.py ?` prints every flag (`help`, `-h`, and `--help` do the same). Quote `?` if the shell expands it.
## Steps
1. Run `jira_pull.py plan <labels>` with the user's labels (commas or spaces) and any flags they gave: `--folder <folder>`, `--project <KEY>` or `--any-project` (default: `jiraProject` from the config), `--match all` (every label; default any), `--jql "<clause>"`, `--force`. It writes `.warp/jira-pull.json` and prints `jql:`, `fields:`, `folder:`. If it prints `refuse:`, stop and show that line: the folder already has a plan, and `/warp-scan <folder>` reads it. Rebuild only when the user says so (`--force`).
2. `cloudId`: `jiraSite` when it is set, else `getAccessibleAtlassianResources` on `jiraMcp`.
3. Call `searchJiraIssuesUsingJql` with exactly the printed `jql`, `fields` set to the printed list, and `maxResults: 100`. When the `fields:` line says expand names, also pass `expand: "names"` if the tool has that argument. Repeat with `nextPageToken` (or `startAt` plus the page size, when the tool pages that way) until there is no next page or `isLast` is true. Do not summarize or edit what comes back.
4. Save every response as returned in one file, `.warp/jira-pull/issues.json`: `{"pages": [<first response>, <second response>, ...]}`. If the tool returned field names, add them as `"names": {"customfield_10050": "External ID"}`. If a response left out `description` or `issuelinks` for an issue, call `getJiraIssue` for that key with the same fields and add it as `"issues": [<that issue>]` in the same file; that copy wins.
5. Run `jira_pull.py build`. It prints `jira:`, `note:` (Done issues and epics left out, where plan ids came from), `plan:` (tickets, gates, agent-hours, finish, peak), `warn:` lines, `wrote:`, and `next: /warp-scan <folder>`.
6. Tell the user the `plan:` line, every `warn:` line as it is, and the `next:` line. Typical warnings: issues with no size (planned as M), issues with no locks (Warp cannot keep two of them off the same files), blockers outside these labels that are not Done (left out). These are fixed in Jira (add the `size:M` label, a Locks section, the label on the blocker) and rebuilt with `--force`; or by editing the written files before `/warp-scan`. Do not run `/warp-scan` or `/warp-start` unless the user asked for it.
`refuse: ... dependency cycle: A → B → A` means the links in Jira loop; nothing was written. `refuse: ... holds no issues` means the search found nothing: check the label spelling and `--project` / `--any-project`.
## How an issue is read
Warp's own Jira import (`/build-pack`) writes everything this reads; hand-made issues work with less:
- Plan id: the External ID field (`jiraExternalIdField`, else a field named External ID, External Key, Plan ID or Ticket ID), else label `warp:<id>` or `ext:<id>`, else a `[ID]` summary prefix, else the Jira key itself.
- Size: label `size:S|M|L|XL`, else the `Size` section, else the original estimate, else story points; hours are the original estimate when set.
- Blockers: `is blocked by` / `depends on` links and the `Blocked by` section. `run:id` there stays a cross-run blocker. A blocker that is Done is met.
- Locks: the `Locks` section, one path per line. Gate: label `gate:G1`. Lane, repo, module: labels `lane:`, `repo:`, `area:` (else the first component). Acceptance: the `Acceptance` or `Acceptance criteria` section.
- Sections are `h2. Name` (wiki), `## Name` (markdown), or headings in the rich-text description.
The schedule is planned with `maxAgents` slots, `gateOrder` and `autoMergeSizes` from `.warp/config.yaml`, by the same rule Warp dispatches with (`scripts/plansim.py`). Each ticket keeps its Jira key (`jira`), and `.warp/jira-map.json` gets every plan id, so `/warp-scan` stores the keys without a lookup.From smlsr/Warp, MIT.
More from smlsr/Warp
- 0.565score
warp-jira-map
smlsr
Map plan ticket ids to real Jira issue keys.
SkillAFreshness: AClaude Code +9 - 0.565score
warp-sync
smlsr
Read Jira statuses into the beam.
SkillAFreshness: AClaude Code +9 - 0.565score
warp-jira-check
smlsr
Explain, per ticket, which Jira transition and which Jira or pull-request comment should have happened, what the beam recorded, and what is missing.
SkillAFreshness: AClaude Code +9 - 0.565score
warp-cleanup
smlsr
List registered Warp agents and clear idle or leftover cloud agents for this repo.
SkillAFreshness: AClaude Code +9 - 0.565score
warp-status-post
smlsr
Post Warp status to Slack and Teams, including the status files.
SkillAFreshness: AClaude Code +9 - 0.561score
warp-scan
smlsr
Scan any repo, or one folder of it, for CURSOR_PLAN.md, schedule.json, a build map, or a Jira ticket export and build the Warp plan.
SkillAFreshness: AClaude Code +9 - 0.561score
warp-jira-external-id
smlsr
Write the plan id into Jira's External ID field for tickets that are already mapped.
SkillAFreshness: AClaude Code +9 - 0.561score
warp-jira-match
smlsr
Link unmapped Warp tickets to Jira issues by summary.
SkillAFreshness: AClaude Code +9 - 0.561score
warp-alarm
smlsr
Raise, record, and clear Warp alarms when a PR cannot pass Bugbot, a lock is escaped, or a ticket is stuck.
SkillAFreshness: AClaude Code +9 - 0.560score
shuttle-run
smlsr
Run one claimed ticket on its own VM, or in its own git worktree, through an open pull request.
SkillAFreshness: AClaude Code +9 - 0.560score
warp-allow-notify
smlsr
Write the Cursor allowlist so Slack and Jira calls Warp makes do not stop for Allow or Run.
SkillAFreshness: AClaude Code +9 - 0.560score
warp-status
smlsr
Write and report the Warp status file: done, working, and left.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 13, 2026 (16 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/smlsr/Warp
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from smlsr
- 0.565score
warp-sync
smlsr
Read Jira statuses into the beam.
SkillAFreshness: AClaude Code +9 - 0.565score
warp-cleanup
smlsr
List registered Warp agents and clear idle or leftover cloud agents for this repo.
SkillAFreshness: AClaude Code +9 - 0.565score
warp-jira-check
smlsr
Explain, per ticket, which Jira transition and which Jira or pull-request comment should have happened, what the beam recorded, and what is missing.
SkillAFreshness: AClaude Code +9 - 0.565score
warp-status-post
smlsr
Post Warp status to Slack and Teams, including the status files.
SkillAFreshness: AClaude Code +9 - 0.565score
warp-jira-map
smlsr
Map plan ticket ids to real Jira issue keys.
SkillAFreshness: AClaude Code +9 - 0.561score
warp-jira-external-id
smlsr
Write the plan id into Jira's External ID field for tickets that are already mapped.
SkillAFreshness: AClaude Code +9
Cite this page
warp-from-jira skill. Agent Mart. https://agentmart.dev/skills/smlsr-warp-from-jira (last updated 2026-10-24)