servicenow-agent

🧾 ServiceNow 只读数据查询助手

🥥34总安装量 10评分人数 10
100% 的用户推荐

基于 ServiceNow 官方 API 的只读 CLI 工具,支持安全查询事件记录、附件下载与统计分析,零风险获取 ITSM 关键业务数据。

A

基本安全,请在特定环境下使用

  • 来自社区或个人来源,建议先隔离验证
  • ✅ 通过 BSS A 级安全认证,采用严格的只读架构设计,明确禁止所有数据修改操作
  • ✅ 代码层无 eval/exec/system/child_process 等危险函数,仅使用 Node.js 内置模块,零外部依赖
  • ⚠️ 需要用户提供 ServiceNow 域名及账号密码认证信息,请使用专用只读账号并妥善保管凭证
  • ✅ 所有 API 调用均为 GET 请求,与文档声明一致,无动态代码加载或远程脚本执行能力
  • ✅ URL 参数使用 encodeURIComponent 编码处理,有效防止 SQL 注入和路径遍历攻击

使用说明

核心用法

servicenow-agent 是一个专为 ServiceNow 平台设计的只读型 Node.js CLI 工具,通过封装 ServiceNow Table API、Attachment API、Aggregate API 和 Service Catalog API,为用户提供安全的数据查询能力。用户只需配置 SERVICENOW_DOMAIN、SERVICENOW_USERNAME 和 SERVICENOW_PASSWORD 环境变量,即可通过简单的命令行指令执行复杂查询。

该工具支持七种核心操作模式:list 用于分页查询表记录并支持 sysparm_query 过滤;get 通过 sys_id 精确获取单条记录;attach 读取附件元数据并支持二进制文件下载;stats 执行聚合统计计算;schema 自动检查表结构字段避免猜测;history 读取工单完整的评论和工作记录时间线;sc 专门用于服务目录查询。此外,通过 batch 命令可加载 specialists/ 目录下的 JSON 预设文件,实现多维度数据的一次性批量采集,显著提升自动化效率。

显著优点

安全性是该 Skill 最突出的设计理念。通过严格的只读架构设计,明确禁用 POST、PUT、PATCH、DELETE 等修改操作,从根本上杜绝了误操作导致数据损坏的风险。代码实现上零外部依赖,仅使用 Node.js 内置模块(fs、path、node:url),消除了第三方 npm 包引入供应链攻击的隐患。

功能层面,该工具提供企业级的查询灵活性:支持复杂的 sysparm_query 编码查询、字段投影(sysparm_fields)、显示值转换(sysparm_display_value)以及智能分页控制。Schema 检查功能解决了 ServiceNow 表字段难以记忆的问题,而 History 时间线读取能力让运维人员能够完整复盘工单处理过程。所有输出默认为标准 JSON 格式,配合 --pretty 参数可直接生成可读性强的报告。

潜在缺点与局限性

作为只读工具,其最大局限性在于无法执行任何数据写入操作。对于需要创建 Incident、更新 CMDB 配置项或审批服务请求的场景,用户必须寻求其他解决方案或官方接口。此外,该工具依赖 Node.js 运行环境,在纯容器或受限环境中可能需要额外配置运行时。

在功能性限制方面,Service Catalog 端点对搜索关键词较为敏感,可能因目录内容配置问题返回空数组,需要用户尝试更精确的 sysparm_text 参数。附件下载功能虽然便利,但需要用户手动指定安全的本地输出路径,存在意外覆盖本地文件的理论风险。对于超大规模数据集(百万级记录),受限于 ServiceNow API 的速率限制和超时机制,不适合作为数据迁移工具使用。

适合的目标群体

该 Skill 主要面向三类专业人群:首先是企业 IT 运维工程师和 ServiceNow 平台管理员,他们需要频繁查询事件(Incident)、问题(Problem)、变更(Change)记录并进行根因分析;其次是数据分析师和业务智能开发者,可通过 Aggregate API 获取统计指标,结合 Batch 预设构建自动化数据管道;最后是需要将 ServiceNow 集成到内部系统的开发者,可利用该工具作为安全的只读网关,避免直接暴露 ServiceNow 实例的写权限。

对于遵循 DevOps 实践的团队,该工具特别适合集成到 CI/CD 流水线中进行配置审计,或作为 ChatOps 机器人后端提供安全的只读查询服务。教育机构和培训环境也可利用其只读特性,让学员安全地学习 ServiceNow 数据结构而无需担心破坏生产环境。

使用风险与注意事项

尽管代码本身通过 BSS A 级安全认证,但用户仍需注意运营安全风险。首要风险是认证信息管理:虽然 Skill 不硬编码凭证,但用户通过 .env 文件或环境变量提供的域名、用户名和密码若被泄露,可能导致 ServiceNow 实例被未授权访问。建议为 Skill 单独创建只读专用账号,并定期轮换密码。

性能风险方面,不当的查询(如过大的 sysparm_limit 或过于宽泛的查询条件)可能导致 ServiceNow 实例 API 响应缓慢,影响生产系统正常使用。建议始终设置合理的 limit 值,对大数据量需求使用 stats 聚合而非全量下载。附件下载时务必验证 --out 参数指向的路径,避免写入系统关键目录。最后,作为 T3 来源(个人/社区项目),虽然当前代码安全,但建议在生产环境部署前进行充分的集成测试,并关注上游仓库的更新维护状态。

servicenow-agent 内容

references文件夹
specialists文件夹
手动下载zip · 13.7 kB
aggregate-api.yamltext/plain
请选择文件