SuperAPI AI 工具集

data-processing

数据与分析

查看项目

更新于 10-13 16:40

技能介绍

用途

data-processing 用于在命令行中高效地查询、过滤和转换结构化数据,覆盖 JSON、YAML、TOML 三类常见格式。它面向需要频繁读取或修改配置与数据文件的场景,例如查看依赖声明、解析容器编排配置、分析集群清单、处理自动化工作流文件,以及从接口返回的数据中提取字段。

主要能力

该技能以两个命令行工具为核心:jq 用于 JSON 处理,yq 用于 YAML/TOML 处理。

jq 相关能力包括:提取单个字段,如 jq '.name' package.json;提取嵌套字段,如 jq '.scripts.build' package.json;从数组中取元素,如 jq '.dependencies[0]' package.json;同时提取多个字段,如 jq '{name, version}' package.json;访问深层嵌套路径,如 jq '.data.users[0].profile.email' response.json;按条件过滤,如 jq '.users[] | select(.active == true)' data.json;对每个元素做映射转换,如 jq '.users | map({id, name})' data.json;统计元素数量,如 jq '.users | length' data.json;以及输出原始字符串,如 jq -r '.name' package.json。

yq 相关能力包括:提取字段,如 yq '.name' config.yaml;提取嵌套字段,如 yq '.services.web.image' docker-compose.yml;列出所有键,如 yq 'keys' config.yaml;列出 Docker Compose 中所有服务名,如 yq '.services | keys' docker-compose.yml;获取 Kubernetes 部署中各容器镜像,如 yq '.spec.template.spec.containers[].image' deployment.yaml;就地更新值,如 yq -i '.version = "2.0.0"' config.yaml;以及格式转换,如 yq -p toml -o json '.' config.toml。

使用方式

文档以命令示例和速查表的方式组织。速查表按任务列出 jq 与 yq 两列写法,覆盖取字段(jq '.key' / yq '.key')、取数组元素(jq '.[0]' / yq '.[0]')、过滤数组(jq '.[] | select(.x)' / yq '.[] | select(.x)')、转换(jq 'map(.x)' / yq 'map(.x)')、计数(jq 'length' / yq 'length')、列键(jq 'keys' / yq 'keys')、美化输出(jq '.' / yq '.')、紧凑输出(jq -c / yq -o json -I0)、原始输出(jq -r / yq -r)以及就地编辑(jq 无对应项,yq -i)。

此外还提供可加载的参考资源:./references/jq-patterns.md 覆盖数组、过滤、转换、聚合与输出格式化;./references/yq-patterns.md 覆盖 Docker Compose、Kubernetes、GitHub Actions、TOML 与 YAML 修改;./references/config-files.md 覆盖 package.json、tsconfig、eslint/prettier 等配置模式。

触发条件包括:解析 JSON、从 YAML 提取、查询配置等。

适用场景

文档列出的适用场景包括:读取 package.json 依赖;解析 Docker Compose 配置;分析 Kubernetes 清单;处理 GitHub Actions 工作流;从 API 响应中提取数据;过滤大型 JSON 数据集;操作配置文件;进行数据格式转换。

限制

现有资料未提供该技能的安装步骤、运行环境要求、支持平台、收费方式或性能限制等信息,暂未提供。