Jira Natural Language Interface
jjmartres/opencode
Lets an agent view, create, update and transition Jira issues in natural language, automatically choosing between the jira CLI and Atlassian MCP tools.
Create Jira issues — story, bug, epic, feature, initiative, task, risk, spike, or feature-request — with CNTRLPLANE, OCPBUGS, GCP, HyperShift, ARO, ROSA conventions and type-specific templates
$ npx skills add openshift-eng/ai-helpers --skill create -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install openshift-eng/ai-helpers create --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/jira/skills/create .claude/skills/create && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "create" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/jira/skills/create into .claude/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/openshift-eng/ai-helpers/tree/main/plugins/jira/skills/createType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add openshift-eng/ai-helpers --skill create -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install openshift-eng/ai-helpers create --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/jira/skills/create .agents/skills/create && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "create" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/jira/skills/create into .agents/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add openshift-eng/ai-helpers --skill create -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install openshift-eng/ai-helpers create --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/jira/skills/create .cursor/skills/create && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "create" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/jira/skills/create into .cursor/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/openshift-eng/ai-helpers.git --path plugins/jira/skills/create--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add openshift-eng/ai-helpers --skill create -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install openshift-eng/ai-helpers create --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/jira/skills/create .gemini/skills/create && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "create" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/jira/skills/create into .gemini/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install openshift-eng/ai-helpers createInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add openshift-eng/ai-helpers --skill create -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/jira/skills/create .github/skills/create && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "create" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/jira/skills/create into .github/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add openshift-eng/ai-helpers --skill create -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install openshift-eng/ai-helpers create --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openshift-eng/ai-helpers.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/jira/skills/create .opencode/skills/create && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "create" agent skill from https://github.com/openshift-eng/ai-helpers/tree/main/plugins/jira/skills/create into .opencode/skills/create/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "create", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
createCreate Jira issues — story, bug, epic, feature, initiative, task, risk, spike, or feature-request — with CNTRLPLANE, OCPBUGS, GCP, HyperShift, ARO, ROSA conventions and type-specific templates
Create is an agent skill from openshift-eng/ai-helpers. Create Jira issues — story, bug, epic, feature, initiative, task, risk, spike, or feature-request — with CNTRLPLANE, OCPBUGS, GCP, HyperShift, ARO, ROSA conventions and type-specific templates
Its SKILL.md is about 2.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Product & Project Management. It works with Jira and Google Cloud. The repository describes itself as: Developer productivity tools for Claude Code & other AI assistants. The licence is Apache-2.0.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit a627176. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Create loads about 2.5k tokens when it runs. Until then it costs about 50 tokens; SKILL.md has 905 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from openshift-eng/ai-helpers at commit a627176, republished under its Apache-2.0 licence (© openshift-eng). 905 words, ~2,534 tokens.
.claude/skills/create/SKILL.md (or your agent's skills folder)./jira:create <type> [project-key] <summary> [--component <name>] [--version <version>] [--parent <key>]Creates Jira issues following best practices and team-specific conventions. Supports stories, epics, features, initiatives, tasks, bugs, risks, spikes, and feature requests with intelligent defaults, interactive prompts, and validation.
Load the reference file matching the issue type for templates, interactive workflows, and best practices:
| Type | Reference | Key Content |
|---|---|---|
| story | Story guide | User story format, acceptance criteria, summary vs description |
| bug | Bug guide | Bug template, steps to reproduce, reproducibility |
| epic | Epic guide | Epic Name field, scope/timeline, parent Feature linking |
| feature | Feature guide | Market problem, strategic value, success criteria |
| initiative | Initiative guide | Internal capability, problem statement, internal impact |
| risk | Risk guide | Qualifying criteria, probability/impact assessment, auto-calculated fields |
| spike | Spike guide | Research question, time box, investigation approach |
| task | Task guide | Task vs story distinction, action-verb summaries |
| feature-request | Feature Request guide | RFE project, 4-question workflow, business requirements |
Also load Markdown for Jira for description formatting.
story | epic | feature | initiative | task | bug | risk | spike | feature-requestCNTRLPLANE, OCPBUGS, RFE. Default for bugs: OCPBUGS. Default for feature-requests: RFE."Enable automatic scaling"openshift-X.Y per project conventions.CNTRLPLANE-123).jira:jira-conventions skill when the project key, component, or summary keywords match a known project or teamParse required and optional arguments. Analyze summary text for context clues (team, component, platform keywords).
Universal requirements (ALL tickets):
"labels": ["ai-generated-jira"]
"security": {"name": "Red Hat Employee"}
contentFormat: "markdown"Project and team defaults (version, component, labels) come from the jira-conventions skill.
Follow the type-specific reference file's interactive workflow to collect missing information (story format, bug template sections, epic scope, etc.).
Check for anti-patterns before creation:
If detected:
The summary looks like a full user story. Summaries should be concise titles.
Current: "As a cluster admin, I want to configure ImageTagMirrorSet in HostedCluster CRs so that I can enable tag-based image proxying"
Suggested: "Enable ImageTagMirrorSet configuration in HostedCluster CRs"
Use the suggested summary? (yes/no/edit)Scan all content (summary, description) for sensitive data:
If detected: STOP creation, inform user of the type found (without echoing it), suggest placeholder values.
Use createJiraIssue with collected parameters. Include universal fields and any project/team-specific fields.
Created: PROJECT-1234
Title: <issue summary>
URL: <issue URL>
Applied defaults:
- <Field>: <Value>| Field | ID | Type | Usage |
|---|---|---|---|
| Epic Name | customfield_10011 | String | Required for Epics; must match summary |
| Target Version | customfield_10855 | Array | Format: [{"id": "VERSION_ID"}] — fetch via getJiraIssueTypeMetaWithFields. Some projects use string format; project conventions take precedence |
Jira issue types have a hierarchyLevel that determines valid parent-child relationships. The parent field only accepts an issue whose hierarchyLevel is exactly one level above the child. Not all projects have all levels — use getJiraProjectIssueTypesMetadata to discover available types and their levels for a given project.
Level 3: Outcome
Level 2: Feature / Initiative
Level 1: Epic
Level 0: Story / Task / Bug / Spike
Level -1: Sub-taskUse {"parent": {"key": "PARENT-KEY"}} in additional_fields for all parent-child relationships (Story→Epic, Task→Epic, Bug→Epic, Spike→Epic, Epic→Feature, Epic→Initiative, Feature→Outcome, Initiative→Outcome).
--parent is provided)Fetch the parent via getJiraIssue to verify it exists and its type matches the hierarchy:
| Creating | Parent Should Be | If Wrong Type |
|---|---|---|
| Story | Epic | Warn user, ask to confirm or correct |
| Task | Epic | Warn user, ask to confirm or correct |
| Bug | Epic | Warn user, ask to confirm or correct |
| Spike | Epic | Warn user, ask to confirm or correct |
| Epic | Feature or Initiative | Warn user, ask to confirm or correct |
| Feature | Outcome | Warn user, ask to confirm or correct |
| Initiative | Outcome | Warn user, ask to confirm or correct |
If parent not found, offer options: proceed without parent, specify different parent, or cancel.
If creation fails with a parent-related error, create without the parent and link via editJiraIssue with {"parent": {"key": "PARENT-KEY"}}.
When changing an existing issue's type to a different hierarchy level, the current parent may become invalid. Jira validates the one-level-higher constraint on every edit, so you must change the parent and type in separate steps:
editJiraIssue with {"parent": null}editJiraIssue with {"issuetype": {"name": "NewType"}}editJiraIssue with {"parent": {"key": "NEW-PARENT"}}Invalid issue type "stroy". Valid types: story, epic, feature, initiative, task, bug, risk, spike, feature-request
Did you mean "story"?Project key is required for stories/tasks/epics/features/initiatives/risks/spikes.
Usage: /jira:create story PROJECT-KEY "summary"| Field | Wrong | Correct |
|---|---|---|
| Target Version | "customfield_10855": "openshift-4.21" | "customfield_10855": [{"id": "12448830"}] |
| Component | "components": "Name" | "components": [{"name": "Name"}] |
/jira:create story CNTRLPLANE "Add user dashboard"
/jira:create story CNTRLPLANE "Add search" --component "Frontend" --version "4.22"
/jira:create epic CNTRLPLANE "Mobile redesign" --parent CNTRLPLANE-100
/jira:create bug "API returns 500 error" --component "Backend"
/jira:create task CNTRLPLANE "Update API docs" --parent CNTRLPLANE-456
/jira:create feature CNTRLPLANE "Advanced search capabilities"
/jira:create initiative GCP "Establish performance testing infrastructure"
/jira:create risk GCP "Cincinnati API outage could block new cluster creation due to version resolution dependency"
/jira:create spike GCP "Evaluate Workload Identity Federation vs service account key rotation for HCP node auth"
/jira:create feature-request RFE "Support custom SSL certificates for ROSA HCP"The jira-conventions skill automatically detects and applies conventions:
To add conventions for your project, create a reference file at plugins/jira/reference/your-project.md and add a routing entry to plugins/jira/skills/jira-conventions/SKILL.md.
--component and --version flags when known to skip prompts--parent to maintain issue hierarchy/jira:create story "Refactor database" → technical work, use task/jira:create bug "Something is broken" → be specificYOUR_API_KEY© openshift-eng, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in plugins/jira/skills/create of openshift-eng/ai-helpers.
Open the folder on GitHubat commit a627176
Create next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Create this skillopenshift-eng/ai-helpers | 120 | — | ~2.5k | Automated safety check: Pass | Apache-2.0 | |
| Jira Natural Language Interfacejjmartres/opencode | 133 | 3 repos | ~1.7k | Automated safety check: Pass | MIT | |
| Tidycroffasia/itsaplan | 895 | — | ~2.8k | Automated safety check: Pass | AGPL-3.0 | |
| Jirakv0906/pm-kit | 138 | — | ~4.2k | Automated safety check: Notes | MIT | |
| Jira CLICode-and-Sorts/awesome-copilot-agents | 578 | 1 repos | ~1.7k | Automated safety check: Pass | MIT | |
| JiraVixenLights/Vixen | 114 | — | ~3.4k | Automated safety check: Pass | Custom licence |
jjmartres/opencode
Lets an agent view, create, update and transition Jira issues in natural language, automatically choosing between the jira CLI and Atlassian MCP tools.
croffasia/itsaplan
Simplifies and refines code for clarity, consistency, and maintainability while preserving all functionality.
kv0906/pm-kit
Jira integration via acli CLI. An agent skill from kv0906/pm-kit.
Code-and-Sorts/awesome-copilot-agents
Interact with Jira from the command line to create, list, view, edit, and transition issues, manage sprints and epics, and perform common Jira workflows.
VixenLights/Vixen
Manages JIRA issues, projects, and workflows using Atlassian MCP.
koolamusic/claudefiles
A skill your agent uses when a user completes a phase, sprint, milestone, or meaningful unit of work and needs a retrospective.
openshift-eng/ai-helpers
Find and independently validate actionable reliability defects across OpenShift release jobs and presubmits, then export portable issue handoffs.
openshift-eng/ai-helpers
Fetch and address all PR review comments — categorize by priority, make code changes, post replies, and push.
openshift-eng/ai-helpers
Categorize Jira issues into Red Hat Sankey Activity Type categories using MCP Jira tools.
openshift-eng/ai-helpers
Decide whether a GitHub PR has unanswered authorized review comments or new required CI failures worth a follow-up agent.
openshift-eng/ai-helpers
Analyze OpenShift must-gather diagnostic data including cluster operators, pods, nodes, and network components.
openshift-eng/ai-helpers
Schema for the autodl JSON data file produced by payload-analysis for database ingestion — you must use this skill whenever generating the autodl JSON file
Works with
Categories
Create Jira issues — story, bug, epic, feature, initiative, task, risk, spike, or feature-request — with CNTRLPLANE, OCPBUGS, GCP, HyperShift, ARO, ROSA conventions and type-specific templates. Create is an agent skill from openshift-eng/ai-helpers.
Create fits situations like: product & Project Management work in your project.
Run `npx skills add openshift-eng/ai-helpers --skill create -a claude-code`. Or copy the skill folder (plugins/jira/skills/create in openshift-eng/ai-helpers) into .claude/skills/create in your project. Claude Code loads it when a task matches its description.
Run `npx skills add openshift-eng/ai-helpers --skill create -a codex`. Or copy the skill folder (plugins/jira/skills/create in openshift-eng/ai-helpers) into .agents/skills/create in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add openshift-eng/ai-helpers --skill create -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create, .gemini/skills/create, .github/skills/create and .opencode/skills/create in your project.
SKILL.md names no scripts, command-line tools or credentials: Create is instructions for the agent only. Our summary lists: A credential in YOUR_API_KEY.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Create is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.5k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Create: Jira Natural Language Interface (jjmartres/opencode, 133 stars), Tidy (croffasia/itsaplan, 895 stars), Jira (kv0906/pm-kit, 138 stars) and Jira CLI (Code-and-Sorts/awesome-copilot-agents, 578 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
openshift-eng (a GitHub organization) maintains it in openshift-eng/ai-helpers, which has 120 GitHub stars. The repository holds 118 skills in this directory. The repository was last updated on October 6, 2026.
Source: openshift-eng/ai-helpers on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.