360 Secure SkillHub
360 安全技能中心

agent-bom ingest

面向操作方已产出规范资产清单 JSON 的场景:先用打包的 inventory.schema.json 校验,再本地运行 agent-bom 完成扫描、图谱与导出,可产出 JSON、SARIF、HTML/Markdown 或 CycloneDX/SPDX。可选向操作方自有控制面推送并按脱敏契约处理凭据,默认不直连云凭据、不打印令牌。

msaad00
msaad00
热度 68.35
最近更新 2026-10-10 10:43:48
分类:安全依赖:代码执行 / 读写文件 / 第三方 API应用场景:数据处理 / 工作流 / 报告撰写 / DevOps

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add agent-bom-ingest
Metadata
name
agent-bom-ingest
description
Validate and ingest operator-pushed agent-bom inventory JSON from AWS, Azure, GCP, Snowflake, CMDB, or endpoint collectors. Use when a user has canonical inventory JSON and wants local findings, graph, policy, provenance, or auditor-ready exports without giving agent-bom direct cloud credentials.
version
0.108.4
license
Apache-2.0
compatibility
Requires Python 3.11+ and agent-bom 0.84.4+. Inventory must conform to the packaged inventory.schema.json contract.
metadata
{"author":"msaad00","homepage":"https://github.com/msaad00/agent-bom","source":"https://github.com/msaad00/agent-bom","pypi":"https://pypi.org/project/agent-bom/","openclaw":{"requires":{"bins":["agent-bom"],"env":[],"credentials":"none"},"credential_policy":"No cloud credentials are required. Optional control-plane push uses an operator-provided agent-bom API token; never ask users to paste that token into chat and never print it.","optional_env":["AGENT_BOM_API_KEY","AGENT_BOM_PUSH_URL"],"optional_bins":[],"emoji":"inbox","homepage":"https://github.com/msaad00/agent-bom","source":"https://github.com/msaad00/agent-bom","license":"Apache-2.0","os":["darwin","linux","windows"],"credential_handling":"Inventory is schema-validated before it is trusted. Env var values, URL credentials, launch arguments, discovery_provenance, permissions_used, and security intelligence pass through the sanitizer/redaction contract before display/export.","data_flow":"Operator-generated inventory JSON -> packaged inventory.schema.json validation -> local agent-bom scan/graph/export. Optional push to an operator-owned control plane goes only to the URL the operator provided.","file_reads":["operator-selected inventory JSON file","packaged agent_bom/data/inventory.schema.json"],"file_writes":["operator-selected JSON/SARIF/HTML/Markdown export path"],"network_endpoints":[{"url":"operator-provided AGENT_BOM_PUSH_URL","purpose":"Optional push into the operator-owned agent-bom control plane","auth":true,"optional":true},{"url":"https://api.osv.dev/v1","purpose":"Optional package vulnerability lookup during local scan","auth":false,"optional":true},{"url":"https://api.github.com/advisories","purpose":"Optional GitHub Advisory enrichment during local scan","auth":false,"optional":true}],"telemetry":false,"persistence":false,"privilege_escalation":false,"always":false,"autonomous_invocation":"restricted"}}

agent-bom-ingest

Use this skill when the operator already produced canonical inventory JSON with an operator-pull adapter, endpoint collector, CMDB export, or AI-agent workflow. The default path is local validation plus local scan/export.

Guardrails

  • Validate inventory with the packaged schema before treating it as evidence.
  • Require discovery_provenance and permissions_used where the source claims cloud/operator-pushed discovery.
  • Require a trustworthy discovery_provenance.source_type such as operator_pushed_inventory or skill_invoked_pull; do not infer it from prose.
  • Do not invent provenance, permissions, cloud scopes, or credential posture.
  • Do not push to a control plane unless the operator provides the destination URL and auth method explicitly.
  • Do not print raw tokens, URL credentials, private keys, or env var values.

Workflow

Validate first:

agent-bom mcp validate inventory.json

Scan locally:

agent-bom scan --inventory inventory.json --format json --output agent-bom-findings.json

Choose output by consumer:

  • SARIF for CI/code-scanning gates
  • JSON for graph, API, and automation
  • HTML or Markdown for human review
  • CycloneDX/SPDX for SBOM consumers

Evidence Contract

Valid inventory preserves discovery_provenance, permissions_used, cloud_origin, redaction state, package identity, server identity, tools, and security intelligence. If the inventory is malformed or missing required trust fields, stop and ask the operator to regenerate it rather than scanning a best-effort summary.