一键导入
jira-parser
Parse and normalize Jira issue fields into a structured format for STP generation
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Parse and normalize Jira issue fields into a structured format for STP generation
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Classify PR review comments on STP/STD documents into auto-fixable vs needs-human categories. Maps free-text feedback to QualityFlow domain rules for automated fix routing.
Resolve Jira ID to project configuration and load project context
Generate comprehensive v2.1-ENHANCED STD YAML with pattern metadata, variables, test structure from ALL STP scenarios (single file)
Orchestrate STP → STD pipeline (generates comprehensive STD YAML only)
Generate test stubs with PSE docstrings from STD YAML — language and framework driven by project config
Detect test conventions from a codebase to drive test generation without tier config
| name | jira-parser |
| description | Parse and normalize Jira issue fields into a structured format for STP generation |
| model | claude-opus-4-6 |
Phase: Pre-Processing User-Invocable: false
Parse and normalize Jira issue fields into a structured format for STP generation.
Invoked by the jira-collector subagent after fetching raw Jira issue data.
Raw Jira issue response containing:
parsed_issue:
key: PROJ-12345
summary: <issue summary>
description: <full description text>
status: <In Progress | Done | etc>
issue_type: <Story | Bug | Enhancement | Epic | Task>
priority: <Critical | Major | Minor | etc>
labels:
- label1
- label2
components:
- component1
- component2
acceptance_criteria: <extracted from description or custom field>
feature_link: <URL or null>
git_pull_requests:
- https://github.com/...
reporter:
name: <name>
email: <email>
assignee:
name: <name>
email: <email>
created: <date> # ISO 8601 format
updated: <date> # ISO 8601 format
fix_version: <version string or null>
custom_fields:
- id: customfield_12345
name: Feature Link
value: <value>
- id: customfield_67890
name: Git Pull Request
value: <value>
- ... # All non-null custom fields
| Jira Field | Output Field | Notes |
|---|---|---|
summary | summary | Direct mapping |
description | description | Full text, may contain markdown |
status.name | status | Status display name |
issuetype.name | issue_type | Issue type display name |
priority.name | priority | Priority display name |
labels | labels | Array of strings |
components[].name | components | Array of component names |
fixVersions[0].name | fix_version | First fix version or null |
reporter | reporter | {name, email} object |
assignee | assignee | {name, email} object |
created | created | ISO 8601 timestamp |
updated | updated | ISO 8601 timestamp |
Custom field IDs vary by Jira instance. Search for these patterns:
| Custom Field Name | Common Patterns | Output Field |
|---|---|---|
| Feature Link | customfield_* containing "Feature", "Epic Link" | feature_link |
| Git Pull Request | customfield_* containing "Git", "Pull Request", "PR" | git_pull_requests |
Extract ALL non-null custom fields into the custom_fields array:
| Rule | Description |
|---|---|
| Include | All custom fields with non-null, non-empty values |
| Exclude | System fields (already mapped above) |
| Format | {id, name, value} for each field |
| Name Discovery | Use Jira API field metadata to get display names |
| Value Types | Strings, arrays, objects - preserve original structure |
MANDATORY Custom Fields to Look For:
Look for acceptance criteria in:
h3. Acceptance Criteria (Jira wiki markup)For each comment, extract:
comments:
- id: <comment id>
author:
name: <display name>
email: <email if available>
created: <timestamp>
body: <comment body>
pr_urls_found:
- <any GitHub PR URLs found in body>
Scan text for patterns matching:
https://github.com/{owner}/{repo}/pull/{number}github.com/{owner}/{repo}/pull/{number} (without https)Return deduplicated list of full URLs.
null for missing optional fields, empty arrays for listsInput (raw Jira response):
{
"key": "PROJ-12345",
"fields": {
"summary": "Add hot-plug support for CPU",
"description": "As a user, I want to...\n\nAcceptance Criteria:\n- CPU can be added\n- CPU can be removed",
"status": {"name": "In Progress"},
"issuetype": {"name": "Story"},
"priority": {"name": "Major"},
"labels": ["hot-plug", "cpu"],
"components": [{"name": "app-controller"}],
"customfield_12345": "https://your-jira.example.com/browse/PROJ-99000",
"customfield_67890": "https://github.com/example-org/example-repo/pull/1234"
}
}
Output:
parsed_issue:
key: PROJ-12345
summary: Add hot-plug support for CPU
description: "As a user, I want to...\n\nAcceptance Criteria:\n- CPU can be added\n- CPU can be removed"
status: In Progress
issue_type: Story
priority: Major
labels:
- hot-plug
- cpu
components:
- app-controller
acceptance_criteria: |
- CPU can be added
- CPU can be removed
feature_link: https://your-jira.example.com/browse/PROJ-99000
git_pull_requests:
- https://github.com/example-org/example-repo/pull/1234