jira-writer
Skill4 starsChanged 4 months agoApache-2.0View on GitHub
Update and modify JIRA issues on Red Hat Issue Tracker. Use this skill to push release notes, update custom fields (release note content, status), manage labels (add/remove), and modify issue properties. This skill performs write operations and will prompt for user approval before making changes. Requires jira and ratelimit Python packages. Only use when explicitly asked to update or modify JIRA issues.
- Reads credentials
In this repository53 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- action-commentsSkill
- article-extractorSkill
- docs-convert-gdoc-mdSkill
- docs-orchestratorSkill
- docs-review-content-qualitySkill
- docs-review-modular-docsSkill
- docs-review-securitySkill
- docs-review-styleSkill
- docs-review-technicalSkill
- docs-ticket-readinessSkill
- docs-workflow-code-analysisSkill
- docs-workflow-create-jiraSkill
- docs-workflow-create-merge-requestSkill
- docs-workflow-jira-readySkill
- docs-workflow-pipeline-diagnosticsSkill
- docs-workflow-planningSkill
- docs-workflow-pr-analysisSkill
- docs-workflow-quality-gateSkill
- docs-workflow-requirementsSkill
- docs-workflow-scope-req-auditSkill
- docs-workflow-security-reviewSkill
- docs-workflow-startSkill
- docs-workflow-style-reviewSkill
- docs-workflow-tech-reviewSkill
- docs-workflow-writingSkill
- git-pr-readerSkill
- ibm-sg-audience-and-mediumSkill
- ibm-sg-language-and-grammarSkill
- ibm-sg-legal-informationSkill
- ibm-sg-numbers-and-measurementSkill
- ibm-sg-punctuationSkill
- ibm-sg-referencesSkill
- ibm-sg-structure-and-formatSkill
- ibm-sg-technical-elementsSkill
- jira-readerSkill
- learn-codeSkill
- lint-with-valeSkill
- mdita-writeSkill
- query-codeSkill
- redhat-docs-tocSkill
- rh-ssg-accessibilitySkill
- rh-ssg-formattingSkill
- rh-ssg-grammar-and-languageSkill
- rh-ssg-gui-and-linksSkill
- rh-ssg-legal-and-supportSkill
- rh-ssg-release-notesSkill
- rh-ssg-structureSkill
- rh-ssg-technical-examplesSkill
- rn-known-issuesSkill
- understand-pull-requestSkill
- validate-plugin-prereqsSkill
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 9 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈9
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 15
Push Release Notes: Update the release note custom field with generated content
- Distinctive: line 18
Label Management: Add or remove labels on JIRA issues
- Distinctive: line 19
Batch Updates: Update multiple issues with the same content
- Distinctive: line 110
All changes are logged with details
- Distinctive: line 118
Label management: Add or remove labels for workflow automation
- Distinctive: line 122
Always review the content before pushing to JIRA
- Distinctive: line 123
Test with non-production issues first
- Distinctive: line 124
Verify the issue key is correct
- Distinctive: line 126
Use descriptive commit messages when used with git workflows
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
JIRA Writer Skill
This skill provides write access to JIRA issues on Red Hat Issue Tracker (https://redhat.atlassian.net).
WARNING: This skill modifies JIRA issues. Always verify the changes before confirming.
Capabilities
- Push Release Notes: Update the release note custom field with generated content
- Update Status: Set release note status to 'Proposed' or other values
- Update Custom Fields: Modify any custom field on a JIRA issue
- Label Management: Add or remove labels on JIRA issues
- Batch Updates: Update multiple issues with the same content
Usage
The skill uses a Python script that connects to JIRA using an authentication token.
Environment Variables Required
Set in ~/.env (global) or .env in the project root (local override). See docs-skills README for setup:
JIRA_API_TOKEN=your-jira-api-token
JIRA_EMAIL=you@redhat.com # required for Atlassian Cloud
JIRA_URL=https://redhat.atlassian.net # optional, defaults to redhat.atlassian.netThe script loads .env files automatically — do not prepend source ~/.env to bash commands.
Examples
Push a release note:
uv run --script ${CLAUDE_SKILL_DIR}/scripts/jira_writer.py --issue INFERENG-5233 --release-note "Fixed issue with..."Update release note status:
uv run --script ${CLAUDE_SKILL_DIR}/scripts/jira_writer.py --issue INFERENG-5233 --status ProposedUpdate custom field:
uv run --script ${CLAUDE_SKILL_DIR}/scripts/jira_writer.py --issue INFERENG-5233 --custom-field customfield_10783 --value "Release note content"Batch update multiple issues:
uv run --script ${CLAUDE_SKILL_DIR}/scripts/jira_writer.py --issue INFERENG-5233 --issue INFERENG-5049 --status ApprovedRead release note from file:
uv run --script ${CLAUDE_SKILL_DIR}/scripts/jira_writer.py --issue INFERENG-5233 --release-note-file /path/to/note.txtAdd a label:
uv run --script ${CLAUDE_SKILL_DIR}/scripts/jira_writer.py --issue PROJ-123 --labels-add docs-in-progressSwap labels (remove + add in one API call):
uv run --script ${CLAUDE_SKILL_DIR}/scripts/jira_writer.py --issue PROJ-123 --labels-remove docs-ready --labels-add docs-in-progressBatch label update:
uv run --script ${CLAUDE_SKILL_DIR}/scripts/jira_writer.py --issue PROJ-123 --issue PROJ-456 --labels-add docs-completeOutput Format
The script outputs JSON with the following structure:
{
"success": true,
"issue_key": "INFERENG-5233",
"updated_fields": {
"customfield_10783": "Release note content",
"customfield_10807": "Proposed"
},
"url": "https://redhat.atlassian.net/browse/INFERENG-5233"
}Custom Fields
Common custom fields used:
customfield_10783: Release Note Textcustomfield_10807: Release Note Status (values: Proposed, Approved, Rejected)customfield_10785: Release Note Type
Rate Limiting
The skill respects JIRA API rate limits (2 calls per 5 seconds) to avoid overwhelming the server.
Security
- Requires user approval before making changes (no allowed-tools restriction)
- Token stored in environment variable (not in code)
- All changes are logged with details
Common Use Cases
- Publish release notes: Push generated release note content to JIRA
- Update status: Mark release notes as Proposed/Approved after review
- Batch updates: Apply same status to multiple issues
- Field updates: Modify any custom field on JIRA issues
- Label management: Add or remove labels for workflow automation
Best Practices
- Always review the content before pushing to JIRA
- Test with non-production issues first
- Verify the issue key is correct
- Back up existing content if overwriting
- Use descriptive commit messages when used with git workflows
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

