← Back to Skills Marketplace
liuwei19820201

jira-auto-analyze

by liuwei19820201 · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
82
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install jira-auto-analyze
Description
此技能用于自动分析JIRA进项系统线上工单(filter=13123),检查工单内容是否包含四项必填信息,并根据工单内容自动分配给相应的经办人。当用户需要自动处理JIRA新工单、检查工单信息完整性、或根据规则自动分配任务时使用此技能。
README (SKILL.md)

📋 JIRA工单自动分析处理技能

概述

此技能实现JIRA进项系统线上工单的自动化处理流程,包括:

  1. 自动检查工单信息完整性:验证是否包含环境、通道类型、版本号、日志四项必填信息
  2. 智能分配工单:根据工单内容自动分配给相应负责人
  3. 自动回复处理:对处理结果进行自动回复

使用场景

自动触发场景

在WorkBuddy中输入以下关键词时自动加载:

  • "自动分析JIRA工单"
  • "检查工单信息完整性"
  • "JIRA工单自动处理"
  • "工单信息检查"
  • "自动分配工单"
  • "处理新工单"
  • "JIRA自动化处理"

具体应用场景

  1. 新工单自动处理:新创建的工单自动检查信息完整性并分配
  2. 信息验证:确保工单包含必要的技术信息
  3. 团队协作:根据业务规则自动分配给相应负责人
  4. 流程标准化:统一工单处理流程和回复标准

核心功能

1. 必填信息检查

自动检查工单是否包含以下四项信息:

  • 环境:星舰、飞船、云(三选一)
  • 通道类型:web连接器、rpa、乐企(三选一)
  • 项目版本号:版本号格式(如1.2.3、v2、版本5等)
    • 特殊规则:如果是"云"环境,则不需要版本号
  • 相关日志:日志、log、trace、error、stack等关键词

2. 自动处理规则

  • 信息不全的工单:自动打回给联系人,要求补充信息
  • 信息完整的工单:根据内容自动分配给相应负责人

3. 分配规则

  1. 星舰工单 → 崔征明(关键词:星舰,优先级最高)
  2. 认证相关工单 → 张献文(关键词:认证、勾选、授权等)
  3. 乐企相关工单 → 付强(关键词:乐企、leqi等)
  4. 综服通道相关工单 → 魏旭峰(关键词:综服、通道、银行等)
  5. 其他工单 → 刘巍(默认处理)

优先级说明

  • 星舰工单具有最高优先级,一旦发现"星舰"关键词立即分配给崔征明
  • 其他规则按关键词匹配分数排序
  • 如果工单信息不完整,自动退回给提单人并提示规范文档链接

使用方法

在WorkBuddy中使用

当用户提到相关关键词时,自动加载此技能并执行:

# 自动执行分析处理
python3 scripts/jira_auto_analyze.py

# 模拟运行(不实际修改JIRA)
python3 scripts/jira_auto_analyze.py --dry-run

命令行使用

# 进入技能目录
cd ~/.workbuddy/skills/jira-auto-analyze

# 安装依赖(首次使用)
python3 scripts/setup.py

# 执行自动分析处理
python3 scripts/jira_auto_analyze.py

# 模拟运行模式
python3 scripts/jira_auto_analyze.py --dry-run

# 使用自定义配置文件
python3 scripts/jira_auto_analyze.py --config /path/to/config.json

技术架构

文件结构

jira-auto-analyze/
├── SKILL.md                    # 技能文档(本文件)
├── scripts/
│   ├── jira_auto_analyze.py    # 核心分析处理脚本
│   ├── utils.py                # 工具函数库
│   └── setup.py                # 安装脚本
├── config/
│   └── config.json             # 配置文件
├── references/
│   ├── jira_structure.md       # JIRA页面结构参考
│   └── usage_guide.md          # 详细使用指南
└── logs/                       # 日志目录
    ├── jira_analyze.log        # 执行日志
    ├── operation_log.md        # 操作记录
    └── assignment_log.md       # 分配日志

依赖环境

  • Python 3.7+
  • Playwright (浏览器自动化框架)
  • Chromium浏览器

执行流程

1. 登录JIRA

2. 访问工单列表

  • 导航到 filter=13123 页面
  • 提取所有工单信息
  • 默认只处理"新建"状态的工单

3. 分析工单内容

对于每个工单:

  1. 提取工单标题和描述
  2. 检查四项必填信息
  3. 标记工单为有效或无效

4. 确定处理方式

  • 无效工单:准备打回评论
  • 有效工单:根据关键词匹配分配规则

5. 执行处理

  • 打回工单:添加评论要求补充信息
  • 分配工单:修改经办人字段并添加回复

6. 记录日志

  • 记录所有操作结果
  • 包含详细的操作信息

配置说明

JIRA配置

"config": {
  "jira_url": "http://jira.51baiwang.com",  // JIRA地址
  "filter_id": "13123",                     // 工单filter ID
  "username": "liuwei1",                    // 登录用户名
  "password": "Lw@123456",                  // 登录密码
  "rejection_message": "请提供相关环境、通道类型、版本号及日志信息",  // 打回消息
  "check_new_only": true                    // 只处理新工单
}

规则配置

每个规则包含:

  • rule_name: 规则名称
  • keywords: 匹配关键词列表
  • assignee: 负责人姓名
  • jira_username: JIRA用户名
  • reply_message: 回复消息

安全注意事项

  1. 密码安全: JIRA密码存储在配置文件中,请确保文件安全
  2. 操作权限: 需要JIRA账户有修改工单和添加评论的权限
  3. 操作确认: 默认会显示分析结果,需要确认后才执行实际操作
  4. 模拟运行: 首次使用时建议使用--dry-run参数进行测试

故障排除

常见问题

  1. Playwright安装失败: 检查Python版本,重新安装Playwright和Chromium
  2. JIRA登录失败: 检查用户名密码和网络连接
  3. 页面元素找不到: JIRA页面结构可能已更新,检查选择器
  4. 工单提取失败: 检查filter ID和工单表格结构

日志文件

  • logs/jira_analyze.log: 执行日志
  • logs/operation_log.md: 操作记录
  • logs/assignment_log.md: 分配日志

扩展与定制

添加新规则

编辑config/config.json文件,在rules数组中添加新规则:

{
  "rule_name": "新规则名称",
  "keywords": ["关键词1", "关键词2"],
  "assignee": "负责人姓名",
  "jira_username": "jira用户名",
  "reply_message": "回复消息内容"
}

修改必填信息检查规则

修改scripts/utils.py中的check_required_fields函数,调整关键词或正则表达式。

调整匹配算法

修改scripts/utils.py中的calculate_match_score函数,调整匹配分数计算逻辑。


创建时间: 2026年4月3日
适用系统: JIRA 51baiwang内部系统
技术依赖: Python + Playwright + Chromium
维护团队: 进项系统产研团队

Usage Guidance
Before installing or running this skill: 1) Do NOT use the sample credentials—remove or rotate any default username/password in config/config.json. Replace with environment variables or a secrets manager; the code offers an env-var suggestion but the default config stores plaintext. 2) Inspect config/config.json and scripts for any hardcoded URLs/usernames and update them to your environment. The repo contains an internal JIRA URL (jira.51baiwang.com) and developer-looking defaults. 3) Run the skill first in --dry-run mode and review the logs (logs/jira_analyze.log) to confirm parsing and rule matching before enabling real writes. 4) Restrict the JIRA account used: give it only the minimal permissions required (ability to view the filter and edit assignee/comment) and do not use an admin account. 5) Consider running the code in an isolated environment or sandbox and review scripts for any unexpected network calls (search for requests or external endpoints). 6) Fix the coherence issue: update documentation or registry metadata to declare that the skill requires JIRA credentials (env vars or config) so users are aware prior to install. If you want, I can point out the exact files/lines that store defaults or show where to change the code to use JIRA credentials from environment variables instead of config.json.
Capability Analysis
Type: OpenClaw Skill Name: jira-auto-analyze Version: 1.0.0 The skill bundle contains hardcoded plaintext credentials (username 'liuwei1' and password 'Lw@123456') for an internal JIRA system (http://jira.51baiwang.com) within 'config/config.json' and 'scripts/debug_jira_login.py'. While the tool's logic for automating JIRA ticket analysis and assignment using Playwright appears legitimate and matches the documentation in 'SKILL.md', the inclusion of active credentials in the source code is a significant security vulnerability. No evidence of intentional malicious behavior or data exfiltration to external domains was detected.
Capability Assessment
Purpose & Capability
The skill's name/description (automatically checking and assigning JIRA issues) aligns with the included code (Playwright-based browser automation, parsing, rule-matchers). However the registry metadata declares no required credentials/env vars while the packaged config and scripts require a JIRA username/password (stored in config/config.json). That mismatch (no declared credential needs vs. obvious need for JIRA credentials) is unexpected and worth attention.
Instruction Scope
SKILL.md and scripts instruct the agent to log into an internal JIRA (http://jira.51baiwang.com), navigate a filter, extract issues, modify assignee fields and post comments. Those actions are within the stated purpose, but the instructions also encourage storing plaintext credentials in config/config.json and running browser automation with options to evade detection ('--disable-blink-features=AutomationControlled'). The skill will perform write operations (assign, comment) when run (except when --dry-run is used).
Install Mechanism
There is no external binary download beyond installing Playwright/Chromium via pip/playwright installer. setup.py runs pip install and playwright install chromium — a standard mechanism. No arbitrary remote archive downloads or obscure URLs were observed in the provided files.
Credentials
The skill does not declare required environment variables, yet the code expects JIRA credentials (username/password) in config/config.json and creates a default config containing a sample password (Lw@123456). Storing credentials in a repo/config file is insecure and disproportionate unless the user intends to provide a dedicated JIRA account. There are also hardcoded-looking defaults (jira URL and usernames) that reveal internal targets and a sample credential—this increases risk of accidental credential reuse or leakage.
Persistence & Privilege
The skill is not marked always:true and does not request system-wide privileges. It creates local logs and config files under the skill directory, which is normal. The agent-autonomy default applies but is not by itself a red flag; combined with credentials stored locally it means an autonomously-invoked skill could perform write operations in JIRA if configured.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install jira-auto-analyze
  3. After installation, invoke the skill by name or use /jira-auto-analyze
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
jira-auto-analyze 1.0.0 - 首次发布,提供JIRA工单自动分析与分配功能。 - 自动检查工单四项必填信息(环境、通道类型、版本号、日志)。 - 根据关键词智能分配工单给负责人,并自动回复处理结果。 - 支持信息不全工单自动打回、信息完整工单自动分配。 - 提供命令行与WorkBuddy关键词触发两种使用方式。 - 详细日志记录,每步操作均可追踪。
Metadata
Slug jira-auto-analyze
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is jira-auto-analyze?

此技能用于自动分析JIRA进项系统线上工单(filter=13123),检查工单内容是否包含四项必填信息,并根据工单内容自动分配给相应的经办人。当用户需要自动处理JIRA新工单、检查工单信息完整性、或根据规则自动分配任务时使用此技能。 It is an AI Agent Skill for Claude Code / OpenClaw, with 82 downloads so far.

How do I install jira-auto-analyze?

Run "/install jira-auto-analyze" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is jira-auto-analyze free?

Yes, jira-auto-analyze is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does jira-auto-analyze support?

jira-auto-analyze is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created jira-auto-analyze?

It is built and maintained by liuwei19820201 (@liuwei19820201); the current version is v1.0.0.

💬 Comments