Token导航 LogoToken导航TokenDH.com
开发需要联网github未标认证来源可访问许可证需确认审计提醒

codearts-issue代码艺术问题

Agent Skill

用于围绕 GitHub 仓库、Issue、Pull Request、分支、提交和代码协作流程提供辅助能力。它适合让 Agent 查询项目状态、整理变更、辅助创建或检查协作事项,并把仓库中的信息转成可执行的下一步。使用时需要区分只读查询和写入操作;涉及创建 PR、修改 Issue、推送分支或访问私有仓库时,应确认 token 权限、目标仓库范围和用户授权。

总安装

326

周安装

14

GitHub Stars

2

下载量

114
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:codearts-issue(代码艺术问题)
来源仓库:https://github.com/lzhtommy/codearts-cli
仓库路径:skills/codearts-issue
安装命令:
npx skills add https://github.com/lzhtommy/codearts-cli --skill codearts-issue
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/lzhtommy/codearts-cli --skill codearts-issue

简介

用于华为云 CodeArts 项目工作项(IPD)管理。

  • 支持 Bug、Task 等工作项列表查询与筛选操作。
  • 需预先配置 projectId 与 IAM 认证信息方可使用。
  • 所有命令均依赖共享配置文件的认证状态。codearts-issue 属于开发类 Skill,可作为该场景下的辅助能力补充。
  • 安装方式:github,通过 npx skills add 命令添加指定仓库技能。

SKILL.md

codearts-issue (v1)

CRITICAL — 开始前 MUST 先用 Read 工具读取 ../codearts-shared/SKILL.md 了解配置与认证。

CodeArts ProjectMan 工作项(IPD)管理。所有命令均使用 config.json 中的 projectId——若未配置,先执行 codearts-cli config set projectId <uuid>

issue_type 取值

不同项目类型支持的 issue_type 不同:

项目类型支持的 issue_type
系统设备RR, SF, IR, SR, AR, Task, Bug
独立软件RR, SF, IR, US, Task, Bug
云服务RR, Epic, FE, US, Task, Bug

命令

issue list

查询项目工作项列表。--issue-type 必填。

# 最简
codearts-cli issue list --issue-type Bug

# 查"我名下的 Bug"(assignee = config 中的 userId)
codearts-cli issue list --issue-type Bug \
  --filter "[{\"assignee\":{\"values\":[\"$(codearts-cli config show | jq -r .userId)\"],\"operator\":\"||\"}}]"

# 多类型 + 分页 + 排序
codearts-cli issue list --issue-type US,Task \
  --page-no 1 --page-size 50 \
  --sort-field created_date --sort-asc

# 按自定义字段过滤(直接用 code 作字段名,例:Task 任务类型 = 设计)
codearts-cli issue list --issue-type Task \
  --filter '[{"c7447378174477062144":{"values":["1255457356664852481"],"operator":"||"}}]'

API 参考: ListIpdProjectIssues

filter 参数结构

[ { "<字段名>": { "values": ["..."], "operator": "||" } } ]

数组的每个元素是一个以字段名为 key 的 map;值是 ConditionVO

字段名示例含义
assignee处理人 user_id
status状态
priority优先级(中 / 高 / 低)
descendants.<field>同名字段的树形下钻版;一般场景用裸字段即可
c<19-digit-id>项目级自定义字段;直接用 code 作字段名(见「Task 任务类型字段」)

operator 取值:||(OR,默认)、!(NOT)、=(等于单值)、<> / < / >(日期/数字范围)。

Flag说明
--issue-type(必填)逗号分隔的类型列表
--filter / --filter-fileJSON 数组过滤条件(格式见上)
--filter-modeAND_OR(默认)/ OR_AND
--page-no / --page-size分页(0 = API 默认)
--sort-field / --sort-asc排序字段与方向
--dry-run预览请求

issue show

查询单个工作项详情。

codearts-cli issue show <issue_id> --issue-type US

API 参考: ShowIssueDetail

Flag说明
--issue-type(必填)工作项类型
--domain-id可选
--dry-run预览请求

issue create

创建工作项。

# 最简(assignee 从 config userId 自动填充)
codearts-cli issue create \
  --title "修复登录超时" \
  --description "用户反馈在弱网环境下登录超时" \
  --category Bug

# 显式指定 assignee
codearts-cli issue create \
  --title "接入 CodeArts CLI" \
  --description "完成 AK/SK 与 RunPipeline 接入" \
  --category US \
  --assignee <user_id_32char>

# 完整字段用 body-file(自定义字段如 Task 任务类型也走这条路径)
codearts-cli issue create --body-file task.json
# task.json 含 "custom_fields":[{"code":"c7447378174477062144","value":"<id>"}]

API 参考: CreateIpdProjectIssue

Flag说明
--title(必填*)标题,最长 256 字符
--description(必填*)描述,最长 500000 字符
--category(必填*)类型:RR/SF/IR/SR/AR/Task/Bug/US/Epic/FE
--assigneeuser_id UUID;省略时从 config userId
--status可选。合法值:Committed / Analyse / ToBeConfirmed / Plan / Doing / Delivered / Checking
--priority可选。合法值通常为 / / (项目自定义)
--body / --body-file完整 JSON(覆盖上面所有 flag)
--dry-run预览请求

*使用 --body / --body-file 时不需要这些 flag。

Task 任务类型字段

Task 的「任务类型」是项目级单选枚举自定义字段。code 与 value id 项目级(换项目用 issue show 重取),创建/修改走 custom_fields:[{code,value}],过滤走 list --filtercode 作字段名——示例分别见 issue create / issue batch-update / issue list

字段 codec7447378174477062144

任务类型value
需求1255457356664852480
设计1255457356664852481
测试1255457356664852482
⚠️ 写错格式时服务端静默返 status:"success" 但不更新,必须 issue show <id> --issue-type Task 回查 .result[0].c7447378174477062144.display_value 确认。

issue batch-update

批量更新工作项。

# 更新多个 issue 的 priority
codearts-cli issue batch-update \
  --id 111,222 --id 333 \
  --category Bug \
  --attribute '{"priority":"中"}'

API 参考: BatchUpdateIpdIssues

Flag说明
--id(必填)issue ID,可重复或逗号分隔
--category(必填*)目标工作项类型
--attribute / --attribute-fileJSON 对象:要更新的属性
--dry-run预览请求

*category 也可在 --attribute JSON 中提供。

attribute 常用字段(完整列表见 API 参考,仅 category 必填,其余按需传):

字段类型说明
categorystring必填。目标工作项类型(RR/SF/IR/SR/AR/Task/Bug/US/Epic/FE)
statusstring状态码(取值随项目配置,见 issue statuses
prioritystring优先级(通常 / /
titlestring标题(≤256)
descriptionstring描述(≤50000)
assigneeobject处理人 {"user_id":"..."}
parent_idstring父工作项 ID(层级挂接)
linkstring关联工作项 ID,英文逗号分隔(≤2048)
plan_end_datestring计划结束日期(毫秒时间戳字符串)
workloadstring计划工时(0–999999999.9)
plan_pi / plan_iterationstring发布计划 / 迭代计划 ID
labelsarray标签数组
custom_fieldsarray自定义字段 [{code, value}](注意 key 是 codevalue 为字符串,多选用英文逗号分隔)
close_typestring关闭类型(关闭时配合 status
fixed_owner / reason_analysis / repair_solution / expected_repair_dateBug 专用字段

示例:

# 挂到父工作项 + 关联其它工作项
codearts-cli issue batch-update --id 111,222 --category US \
  --attribute '{"parent_id":"1001","link":"2001,2002"}'

# 批量改状态
codearts-cli issue batch-update --id 111,222 --category Bug \
  --attribute '{"status":"Delivered"}'

# 改自定义字段(例:Task 任务类型 -> 测试,详见「Task 任务类型字段」)
codearts-cli issue batch-update --id <task_id> --category Task \
  --attribute '{"custom_fields":[{"code":"c7447378174477062144","value":"1255457356664852482"}]}'

issue relations

查询工作项的端到端追溯关系(E2E 图)——父/子工作项、关联提交 / MR / 分支 / 测试用例 / 测试计划 / 文档。

# 查询一个 US 的追溯图
codearts-cli issue relations <issue_id> --category US

# 跨项目(上游 / 下游)
codearts-cli issue relations <issue_id> --category Bug --is-src true

API 参考: ListE2EGraphsOpenAPI

Flag说明
<issue_id>(位置参数)18–19 位数字 ID(不是控制台看到的 number 短号,是 API 返回的 id 字段)
--category(必填)RR/SF/IR/SR/AR/Task/Bug/US/Epic/FE
--is-srctrue / false,跨项目查询方向;省略则按 API 默认
--dry-run预览请求

返回值idproject_iddomain_idcategorynumberstatus(初始/分析/测试/开发/完成)、title,以及 trace_list 数组 —— 元素包含:

  • parent_issues / child_issues — 父/子工作项
  • associate_workitems — 关联的其它工作项
  • associate_commits / associate_branches / associate_mergerequest — 关联的代码资产
  • associate_testcases / associate_testplans — 关联的测试资产
  • associate_documents — 关联的文档

issue members

查询当前 projectId 下的所有项目成员。

codearts-cli issue members

API 参考: ListProjectUsers

Flag说明
--dry-run预览请求

返回值result 数组,每条 UserVO 包含:

  • user_id32 位 UUID,用于 issue create --assigneeissue list --filter 的 assignee 字段)
  • user_num_id(整数短 ID)
  • user_namenick_namedomain_iddomain_name(租户名)
  • role_id / role_name(多个角色逗号分隔)
典型用法:给 issue create--assignee 时,先跑 issue members | jq '.result[] | {user_id, user_name, nick_name}' 拿到真实的 user_id —— 不要把 tenant_id 当 user_id 传(格式都是 32 位 UUID 但含义不同,会触发 PM.02177003 非目标项目成员)。

issue statuses

查询某个工作项类型(category_id)在项目里配置的状态定义。

codearts-cli issue statuses <category_id>

API 参考: ListIssueStatues

参数说明
<category_id>(位置参数)5 位纯数字工作项类型 ID,不是 RR/Bug/Task 字符串
--dry-run预览请求

有效 category_id 取值(API 文档枚举):10001 / 10020 / 10021 / 10022 / 10023 / 10027 / 10028 / 10029 / 10033 / 10065

注意:字符串分类名(Bug/Task/US/…)与 category_id 的映射是项目级配置,不同项目不同 —— 不要硬编码。在 CodeArts Req 控制台 工作项类型 设置页或其它接口的返回里查一次,本地记下来。

返回值result 数组,每条含 name(状态名,如 "新建"/"开发中"/"已关闭")与 belonging(生命周期分桶:START / IN_PROGRESS / END)。

issue comment list

查询某个工作项的评论 / 回复 / 操作日志列表。

# 默认拉评论 + 回复 + 操作日志
codearts-cli issue comment list <issue_id>

# 只看用户评论,倒序,每页 50
codearts-cli issue comment list <issue_id> \
  --category comment --date-desc true --page-size 50

# 跨项目查询
codearts-cli issue comment list <issue_id> --target-project-id <other-project-uuid>

APIGET /v1/ipdprojectservice/projects/{project_id}/issues/{issue_id}/comments无公开文档,从 UI 反推并验证)

Flag说明
<issue_id>(位置参数)18–19 位数字 ID(API 返回的 id,非控制台 number 短号)
--category必填项,CLI 默认 comment,reply,operation;可子集逗号分隔
--page-no / --page-size分页(0 = API 默认)
--date-desctrue / false 倒/正序;省略则按 API 默认
--target-project-id跨项目查询时填来源项目 ID;省略则用当前项目
--dry-run预览请求
⚠️ 上游对 category必填校验,缺失会返回 200 但 status:"failed" —— CLI 默认值已覆盖 UI 的合集,无需手填。

category 取值

含义
comment用户评论
reply评论回复
operation系统生成的操作日志(状态变更、字段编辑等)

返回值result.comment_list[],每条含:

  • idissue_idtypecomment / reply / operation)、categoryComment / Reply / Operation,首字母大写)
  • description —— HTML 体
  • creator_info —— {user_id, user_name, nick_name, domain_id, domain_name,...}
  • created_date —— 毫秒时间戳字符串
  • top / top_flag —— 是否置顶
  • extend_attribute / extend_attribute_obj —— 仅 Operation 类型有,记录字段变更详情(如状态从 _Start_ 改为 Start

issue comment add

给某个工作项发评论。

codearts-cli issue comment add <issue_id> \
  --issue-category Task \
  --description "<p>评审通过</p>"

# 长文本走文件
codearts-cli issue comment add <issue_id> --issue-category Task --description-file note.html

# 完整 JSON
codearts-cli issue comment add <issue_id> --body-file comment.json

APIPOST /v1/ipdprojectservice/projects/{project_id}/issues/{issue_id}/comments无公开文档,从 UI 反推并验证)

Flag说明
<issue_id>(位置参数)18–19 位数字 ID(API 返回的 id,非控制台 number 短号)
--issue-category(必填)工作项类型:Task / Bug / US / RR / SF / IR / SR / AR / Epic / FE
--description(必填*)评论 HTML 体;纯文本要包 <p>...</p>
--description-file描述内容从文件读
--body / --body-file完整 JSON(覆盖上述 flag)
--dry-run预览请求
  • --body / --body-file 时不需要这两个 flag。

body 字段(直接给 --body-file 用):

{ "category": "comment", "issue_category": "Task", "description": "<p>...</p>" }
字段说明
category固定 "comment"(实体类型判别符;CLI 会自动补)
issue_category工作项类型字符串,与上面 --issue-category
descriptionHTML 评论体

返回值result 是单个对象,含 id(新评论 ID)、issue_iddescriptioncreated_bycreator_info 等。

常见错误

  • PM.02177003 非目标项目成员:assignee 的 user_id 不是项目成员。注意不要把 tenant_id 当 user_id(格式相同但含义不同)。
  • issue_type 不支持:检查项目类型(系统设备 / 独立软件 / 云服务)是否支持该 issue_type。

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.15%
按下载量换算39

Claude

32.08%
按下载量换算37

Cursor

20.69%
按下载量换算24

Gemini CLI

10.15%
按下载量换算12

安全审计

Gen Agent Trust Hub

通过

Socket

可疑

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills