jira
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseJira Skill
Jira 技能
Provides comprehensive Jira project management capabilities for the Golden Armada AI Agent Fleet Platform.
为Golden Armada AI Agent Fleet平台提供全面的Jira项目管理能力。
When to Use This Skill
何时使用该技能
Activate this skill when working with:
- Issue creation and management
- Sprint planning and execution
- Backlog grooming
- Jira API integration
- Workflow automation
在以下场景中激活该技能:
- 问题创建与管理
- 冲刺规划与执行
- 待办事项梳理
- Jira API集成
- 工作流自动化
Jira API Quick Reference
Jira API 快速参考
Authentication
认证
```python
from jira import JIRA
python
from jira import JIRABasic auth
Basic auth
jira = JIRA(
server='https://your-domain.atlassian.net',
basic_auth=('email@example.com', 'API_TOKEN')
)
jira = JIRA(
server='https://your-domain.atlassian.net',
basic_auth=('email@example.com', 'API_TOKEN')
)
OAuth
OAuth
jira = JIRA(
server='https://your-domain.atlassian.net',
oauth={
'access_token': 'ACCESS_TOKEN',
'access_token_secret': 'ACCESS_TOKEN_SECRET',
'consumer_key': 'CONSUMER_KEY',
'key_cert': 'KEY_CERT'
}
)
```
jira = JIRA(
server='https://your-domain.atlassian.net',
oauth={
'access_token': 'ACCESS_TOKEN',
'access_token_secret': 'ACCESS_TOKEN_SECRET',
'consumer_key': 'CONSUMER_KEY',
'key_cert': 'KEY_CERT'
}
)
undefinedIssue Operations
问题操作
```python
python
undefinedCreate issue
Create issue
new_issue = jira.create_issue(
project='GA',
summary='Implement agent health monitoring',
description='Add health check endpoints and monitoring dashboards',
issuetype={'name': 'Story'},
priority={'name': 'High'},
labels=['backend', 'monitoring'],
components=[{'name': 'Agent Platform'}]
)
print(f"Created: {new_issue.key}")
new_issue = jira.create_issue(
project='GA',
summary='Implement agent health monitoring',
description='Add health check endpoints and monitoring dashboards',
issuetype={'name': 'Story'},
priority={'name': 'High'},
labels=['backend', 'monitoring'],
components=[{'name': 'Agent Platform'}]
)
print(f"Created: {new_issue.key}")
Get issue
Get issue
issue = jira.issue('GA-123')
print(f"Summary: {issue.fields.summary}")
print(f"Status: {issue.fields.status.name}")
issue = jira.issue('GA-123')
print(f"Summary: {issue.fields.summary}")
print(f"Status: {issue.fields.status.name}")
Update issue
Update issue
issue.update(
summary='Updated summary',
description='Updated description',
priority={'name': 'Critical'}
)
issue.update(
summary='Updated summary',
description='Updated description',
priority={'name': 'Critical'}
)
Add comment
Add comment
jira.add_comment(issue, 'This is a comment')
jira.add_comment(issue, 'This is a comment')
Transition issue
Transition issue
jira.transition_issue(issue, 'In Progress')
jira.transition_issue(issue, 'In Progress')
Assign issue
Assign issue
jira.assign_issue(issue, 'username')
jira.assign_issue(issue, 'username')
Link issues
Link issues
jira.create_issue_link('Blocks', 'GA-123', 'GA-124')
```
jira.create_issue_link('Blocks', 'GA-123', 'GA-124')
undefinedSearch (JQL)
搜索(JQL)
```python
python
undefinedBasic search
Basic search
issues = jira.search_issues('project = GA AND status = "In Progress"')
issues = jira.search_issues('project = GA AND status = "In Progress"')
With fields
With fields
issues = jira.search_issues(
'project = GA',
fields='summary,status,assignee',
maxResults=50
)
issues = jira.search_issues(
'project = GA',
fields='summary,status,assignee',
maxResults=50
)
Common JQL queries
Common JQL queries
queries = {
'my_open': 'assignee = currentUser() AND status != Done',
'sprint_backlog': 'project = GA AND sprint in openSprints()',
'high_priority': 'project = GA AND priority = High AND status != Done',
'recently_updated': 'project = GA AND updated >= -7d ORDER BY updated DESC',
'unassigned': 'project = GA AND assignee is EMPTY AND status != Done',
'bugs': 'project = GA AND issuetype = Bug AND status != Done'
}
for name, jql in queries.items():
results = jira.search_issues(jql)
print(f"{name}: {len(results)} issues")
```
queries = {
'my_open': 'assignee = currentUser() AND status != Done',
'sprint_backlog': 'project = GA AND sprint in openSprints()',
'high_priority': 'project = GA AND priority = High AND status != Done',
'recently_updated': 'project = GA AND updated >= -7d ORDER BY updated DESC',
'unassigned': 'project = GA AND assignee is EMPTY AND status != Done',
'bugs': 'project = GA AND issuetype = Bug AND status != Done'
}
for name, jql in queries.items():
results = jira.search_issues(jql)
print(f"{name}: {len(results)} issues")
undefinedSprint Management
冲刺管理
```python
python
undefinedGet board
Get board
board = jira.boards(name='GA Board')[0]
board = jira.boards(name='GA Board')[0]
Get sprints
Get sprints
sprints = jira.sprints(board.id)
active_sprint = next(s for s in sprints if s.state == 'active')
sprints = jira.sprints(board.id)
active_sprint = next(s for s in sprints if s.state == 'active')
Get sprint issues
Get sprint issues
sprint_issues = jira.search_issues(f'sprint = {active_sprint.id}')
sprint_issues = jira.search_issues(f'sprint = {active_sprint.id}')
Create sprint
Create sprint
new_sprint = jira.create_sprint(
name='Sprint 15',
board_id=board.id,
startDate='2024-01-15',
endDate='2024-01-29'
)
new_sprint = jira.create_sprint(
name='Sprint 15',
board_id=board.id,
startDate='2024-01-15',
endDate='2024-01-29'
)
Add issues to sprint
Add issues to sprint
jira.add_issues_to_sprint(active_sprint.id, ['GA-123', 'GA-124'])
jira.add_issues_to_sprint(active_sprint.id, ['GA-123', 'GA-124'])
Start/Complete sprint
Start/Complete sprint
jira.update_sprint(sprint.id, state='active')
jira.update_sprint(sprint.id, state='closed')
```
jira.update_sprint(sprint.id, state='active')
jira.update_sprint(sprint.id, state='closed')
undefinedBulk Operations
批量操作
```python
python
undefinedBulk create
Bulk create
issues_to_create = [
{
'project': {'key': 'GA'},
'summary': f'Task {i}',
'issuetype': {'name': 'Task'}
}
for i in range(1, 6)
]
created = jira.create_issues(issues_to_create)
issues_to_create = [
{
'project': {'key': 'GA'},
'summary': f'Task {i}',
'issuetype': {'name': 'Task'}
}
for i in range(1, 6)
]
created = jira.create_issues(issues_to_create)
Bulk transition
Bulk transition
issues = jira.search_issues('project = GA AND status = "To Do"')
for issue in issues:
jira.transition_issue(issue, 'In Progress')
```
issues = jira.search_issues('project = GA AND status = "To Do"')
for issue in issues:
jira.transition_issue(issue, 'In Progress')
undefinedIssue Templates
问题模板
Story Template
用户故事模板
```markdown
markdown
undefinedUser Story
User Story
As a [type of user],
I want [goal]
So that [benefit]
As a [type of user],
I want [goal]
So that [benefit]
Acceptance Criteria
Acceptance Criteria
- Criterion 1
- Criterion 2
- Criterion 3
- Criterion 1
- Criterion 2
- Criterion 3
Technical Notes
Technical Notes
- Implementation details
- Dependencies
- Implementation details
- Dependencies
Definition of Done
Definition of Done
- Code complete
- Tests written
- Documentation updated
- Code reviewed ```
- Code complete
- Tests written
- Documentation updated
- Code reviewed
undefinedBug Template
Bug模板
```markdown
markdown
undefinedDescription
Description
Brief description of the bug
Brief description of the bug
Steps to Reproduce
Steps to Reproduce
- Step 1
- Step 2
- Step 3
- Step 1
- Step 2
- Step 3
Expected Behavior
Expected Behavior
What should happen
What should happen
Actual Behavior
Actual Behavior
What actually happens
What actually happens
Environment
Environment
- OS:
- Browser:
- Version:
- OS:
- Browser:
- Version:
Screenshots/Logs
Screenshots/Logs
Attach relevant screenshots or logs
```
Attach relevant screenshots or logs
undefinedWorkflow States
工作流状态
```
┌──────────┐ ┌─────────────┐ ┌────────────┐ ┌────────┐
│ To Do │ -> │ In Progress │ -> │ In Review │ -> │ Done │
└──────────┘ └─────────────┘ └────────────┘ └────────┘
^ │
└────────────────────────────────────┘
(Rejected)
```
┌──────────┐ ┌─────────────┐ ┌────────────┐ ┌────────┐
│ To Do │ -> │ In Progress │ -> │ In Review │ -> │ Done │
└──────────┘ └─────────────┘ └────────────┘ └────────┘
^ │
└────────────────────────────────────┘
(Rejected)Golden Armada Jira Commands
Golden Armada Jira 命令
```bash
bash
undefinedCreate issue from CLI
Create issue from CLI
/jira-create --type story --summary "Implement feature X" --priority high
/jira-create --type story --summary "Implement feature X" --priority high
Get sprint status
Get sprint status
/jira-status --sprint current
/jira-status --sprint current
Transition issue
Transition issue
/jira-transition GA-123 --status "In Progress"
/jira-transition GA-123 --status "In Progress"
Sync with development
Sync with development
/atlassian-sync --commits --branch main
```
/atlassian-sync --commits --branch main
undefined