DEEPBOM

io.github.JunHwan-Kwon由 GitHub 账号 JunHwan-Kwon 发布v2.5.0更新于 Oct 24, 2026

Browser-local and CLI static evidence for deployed AI model artifacts.

已验证Streamable HTTP可网页运行开发者工具安全与监控AI 与机器学习

概览

AI 生成的概览

DEEPBOM 对已部署的 AI 模型产物(如 ONNX、TFLite、GGUF、SafeTensors)做静态审计,在不上传模型字节的前提下生成证据、差异与 BOM 报告。

可以做什么
DEEPBOM 是面向序列化 AI 模型产物的本地静态分析器。它提供 deepbom_capabilities、deepbom_audit、deepbom_diff 和 deepbom_explain_rule,覆盖图结构、张量、量化、内存、兼容性与 ML-BOM 证据。输出包括人类可读摘要、JSON、CycloneDX 1.7 与 SARIF 投影,以及图和模型摘要视图。结论会区分已观测的产物事实、预测的兼容性以及导入的运行时证据。
适用场景
适合在模型变更评审、按声明的生产接口校验产物、将 BOM 与产物对账,或在发布前检查量化、存储与内存事实时使用。也适用于导出流水线、实验跟踪和需要可重复静态检查的发布门禁。
运行要求
可作为本地进程通过 npm(Node.js 20 或更高版本)以 stdio 运行,也可连接远程 Streamable HTTP 端点。未声明认证、环境变量或请求头。除非设置 DEEPBOM_MCP_ALLOWED_ROOTS,本地路径仅限启动目录。源码构建需要 Rust,Python 通道需要 Python 3.9 或更高版本。
安装前请注意
deepbom.org/mcp 与 deepbom.org/mcp/claude 远程端点被描述为有界且不保留模型字节,但机密或大型产物应使用本地 CLI 或 stdio 服务。除非显式提供 --allow-download,校验器不会访问 npm。静态结果不能证明运行时行为、准确率或合规性,元数据连接只是声明而非经过认证的溯源。

安装

在 SourceWeft 中

  1. 打开 控制台中的 DEEPBOM,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.JunHwan-Kwon%2Fdeepbom/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。

{
  "mcpServers": {
    "deepbom": {
      "type": "http",
      "url": "https://deepbom.org/mcp"
    }
  }
}

README

DEEPBOM

DEEPBOM is a local static analyzer for deployed AI model artifacts. It audits serialized graph, tensor, quantization, memory, compatibility, and ML-BOM evidence without uploading model bytes.

It is a multi-format artifact-evidence producer, an external-interface contract verifier, and a bounded BOM-to-artifact reconciliation tool. It is not an official reference implementation, a complete BOM validator, or a regulatory compliance verifier.

The public source distribution covers TFLite, ONNX, GGUF, SafeTensors, Core ML, and bounded ExecuTorch artifacts. Findings distinguish observed and derived artifact facts from predicted compatibility, imported runtime evidence, and values that cannot be assessed statically.

Evidence IR

DEEPBOM Evidence IR is the common representation family: Artifact IR, Model IR, optional Weight IR, Activation IR, Training IR, Snapshot IR and Provenance IR. The draft specification includes a generated schema catalog, compatibility checks and public maintenance rules.

Search input → IR → output mappings or inspect the same versioned catalog on GitHub. It is a DEEPBOM-maintained specification, not an endorsed external standard. The artifact metadata route retains deepbom.provenance_ir.v1 and its provenance_ir selector. The additive Snapshot workflow uses typed deepbom.provenance_ir.v2 references for native states, dataset releases and configurations. Existing document hashes are preserved; retired names remain unsupported. See the migration rules.

For model-change reviews, use the synthetic two-population example and browser evidence review. Web, CLI, Node/Python SDK and local MCP use the same checks. External measurements remain external evidence; criteria satisfaction does not establish clinical suitability.

Quick start

For export pipelines, experiment tracking and release checks, see the new Node/TypeScript and Python SDK contract and three executable integration examples. The supported SDK begins with DEEPBOM 2.1.0; earlier npm 2.0.0 packages do not include this entry point. Install it with npm install [email protected].

Run the published CLI without cloning the repository (Node.js 20 or newer):

bash
npx deepbom audit "https://raw.githubusercontent.com/JunHwan-Kwon/deepbom/main/web/samples/gpu_partition_probe.onnx#sha256=82a2feef00eb6ab03d82f2b30cd17f4d826e2d8307cb059eccd6a0f3120059b2"

The pinned expected values and independent verifier are in examples/expected-output. Source builds require Rust and, for the Python channel, Python 3.9 or newer; maintainer setup is documented separately below.

Assistant integration

Install the repository-local Agent Skill after previewing the managed files:

bash
npx -y [email protected] integrate codexnpx -y [email protected] integrate codex --applynpx -y [email protected] integrate claude-codenpx -y [email protected] integrate claude-code --apply

The Skill lets a local agent select a contract-compatible analyzer for a supported deployment-artifact question. It does not create or call a hosted analysis server. See the agent setup guide, the machine-readable capability contract, and the independent engine/Agent/evidence version policy.

The installed Skill first checks DEEPBOM_BIN, its package-bundled analyzer, and a deepbom already on PATH. It accepts a runtime only after the declared deepbom.agent_contract.v2 and evidence contract match and its self-test binds the exact observed engine version. The verifier does not contact npm unless --allow-download is explicitly supplied. This keeps a blocked registry lookup from being mistaken for a failed artifact analysis.

For persistent tool-call access, run the same local analyzer as an MCP server over stdio:

bash

It exposes deepbom_capabilities, deepbom_audit, deepbom_diff, and deepbom_explain_rule without uploading artifact bytes or using a hosted analysis endpoint. Audit calls default to a bounded human summary; detailed formats and large-model scan depth are explicit. Local paths are restricted to the launch directory unless DEEPBOM_MCP_ALLOWED_ROOTS is configured. Agent-facing usage guidance is in the DEEPBOM skill. Claude Desktop users can instead install the version-matched deepbom-2.5.0.mcpb asset from the corresponding GitHub Release. The bundle contains the same CLI and WASM bytes as the npm channel and asks the user to select the only local directory it may read.

For a single attachment in ChatGPT, connect the separately bounded Streamable HTTP endpoint at https://deepbom.org/mcp. Its browser component performs the analysis in the ChatGPT sandbox and returns a bounded, hash-bound result; the DEEPBOM service does not fetch or retain model bytes. This path is ready for developer-mode review, while public ChatGPT discovery remains subject to OpenAI review. See the ChatGPT integration guide. Use the local CLI or stdio MCP for confidential or large artifacts, package and sidecar closure, complete exports, and repeated automation.

For private testing on a Claude host that supports remote MCP Apps, add the separate https://deepbom.org/mcp/claude connector. It opens an explicit file picker inside the MCP App; it does not automatically read Claude attachments. The selected bytes remain in the browser sandbox while a bounded result is returned to the conversation. Public Claude discovery remains subject to Anthropic review. See the Claude integration guide and use the local MCPB or CLI when derived model facts must also remain local.

The repository root is also a portable Agent Plugins package: plugin.json identifies the Skill and mcp.json declares the bounded ChatGPT attachment endpoint. The compatibility manifest under .codex-plugin/ carries the same identity for clients that have not moved to the portable format. These files prepare installation and review; they do not imply a public directory listing or platform approval.

Account-owned ChatGPT, Claude, Codex, and search-indexing steps are kept in the agent distribution operations checklist.

For code-first model development, start with the Python candidate loop. It uses the shipped native APIs and distinguishes trainable-model workflows from the browser Structure IDE's source-bound graph proposals.

Verified 2.4.0 release channels expose the same analysis implementation. npm and the Linux x86-64 release wheel below are published; other native platforms and registry channels require their own release verification.

bash
npx [email protected] audit model.onnx --format cyclonedxnpx [email protected] audit model.onnx --format sarif --output deepbom.sarif --gate defectsdeepbom capabilities --compactdeepbom self-testdeepbom audit model.onnx --list-sections --compactdeepbom audit model.onnx --section quantization,memory --compactdeepbom explain-rule onnx.conv.output-shapepython -m pip install 'deepbom @ https://github.com/JunHwan-Kwon/deepbom/releases/download/channels-v2.4.0/deepbom-2.4.0-py3-none-linux_x86_64.whl'deepbom audit model.gguf --compactdeepbom verify model.tflite --contract production-interface.jsondeepbom verify model.onnx --bom supplied.cdx.json --render markdowndeepbom contract capture model.onnx -o baseline.interface-contract.jsondeepbom diff baseline.gguf candidate.gguf --tensors --render markdowndeepbom capabilities --format agent-textdeepbom explore model.tflitedeepbom placement model.tflite --profiles xnnpack_cpu,tflite_coreml_delegate,litert_qualcomm_qnndeepbom graph model.onnx --format json --output artifact-graph.jsondeepbom audit model.onnx --section model_ir --compactdeepbom visualize model.onnx --view all --orientation portrait -o model-views.zipdeepbom model-summary model.onnx --format tabledeepbom model-summary model.gguf --level storage --format markdowndeepbom audit model.onnx --conversion-receipt conversion-receipt.json --format cyclonedx

The default is a terminal-sized evidence summary. --json and --compact expose complete format evidence; --format envelope provides the canonical cross-format contract; CycloneDX 1.7 and OASIS SARIF 2.1.0 are standard projections. --policy-output records a hash-bound gate result when --fail-on is selected. --review-policy adds identity-scoped, expiring exceptions and keeps execution, coverage, and finding-policy states independent. See docs/CLI_AUTOMATION.md. The complete option inventory is generated from the executable in docs/CLI_REFERENCE.md.

CycloneDX 1.7 consumers should read the analyzed model from metadata.component and additional inventory members from components[]. DEEPBOM does not duplicate the BOM root into the additional-components array.

The graph JSON output includes the evidence-preserving deepbom.artifact_ir.v2 ledger and a deterministic deepbom.graph_ir.v1 visualization compatibility projection. Serialized graph, storage topology, architecture grouping, scoped quantization, static placement, and imported runtime evidence remain separate. Method 2.2.0 also preserves an optional, output-bound conversion receipt without promoting declared converter execution to observed evidence. It materializes exactly decoded TFLite subgraphs, ONNX nested graphs/local functions, and ExecuTorch primary plans without flattening conditional scopes. Runtime-node fusion is reconciled only from artifact-bound subject references or primary native op indices; names are never guessed. graph_ir.v1 remains primary-scope-only for legacy consumers. The v2 JSON Schema is published at docs/schemas/deepbom-artifact-ir-v2.schema.json and at https://deepbom.org/schemas/deepbom-artifact-ir-v2.schema.json. The conversion receipt schema is published at docs/schemas/deepbom-conversion-receipt-v1.schema.json.

The additive preview deepbom.model_ir.v1 projects those frozen artifact facts into a format-neutral program, logical-value, storage, binding, quantization, architecture, and static/runtime evidence vocabulary. It preserves source, dependency, deterministic display, and observed runtime order as different fields. visualize consumes only this IR and creates deterministic monochrome ISO A4 SVG pages, 300-DPI black-and-white PNG derivatives, caption sidecars, and a Word insertion manifest. These are traceable engineering documents, not standard-conformance or regulatory-approval determinations. See docs/MODEL_IR_V1.md.

model-summary is the shared Keras-summary-like projection for every supported adapter. It emits operation rows when a serialized program exists, storage rows for graphless weight containers, and an explicit identity-only result for safe envelopes. It never relabels serialized constants as trainable parameters or a deterministic display order as observed runtime. JSON consumers can use deepbom.model_summary.v1, published in docs/schemas/deepbom-model-summary-v1.schema.json.

Public product output uses CycloneDX 1.7.

verify compares the serialized external tensor ABI with a supplied, artifact-bound production declaration. diff uses the canonical deterministic multi-target TFLite deployment-delta ledger, and explore exposes the existing WASM redesign Pareto search without claiming trained-model accuracy. A strict custom TFLite target can be bound with --target-profile profile.json; the CLI records both the source-file SHA-256 and the resolved Rust profile SHA-256. Accelerator evidence is separate from that CPU cost profile. Source-pinned TFLite Core ML and LiteRT Qualcomm QNN profiles, Core ML MLComputePlan, Edge TPU and Qualcomm compiler reports, TensorRT parser/engine evidence, and NVIDIA host profiles use a shared staged binding without promoting static or compiled evidence to observed execution. placement compares any available profiles over one conserved graph ledger without inventing backend priority.

The Cargo launcher downloads only the engine matching its exact package version and platform from the corresponding immutable GitHub Release. It validates the release matrix, byte lengths, and SHA-256 digests before caching or execution.

Build the npm, standalone, Python, and Cargo launcher channels:

bash
npm run build:channelsnpm run check:public-package-boundarynpm run check:channels -- --no-build

Run the public correctness gates:

bash
npm run check:clinpm run check:cli-docsnpm run check:cli-automationnpm run check:formatsnpm run check:rust

The browser workbench is available at deepbom.org.

Evidence scope

Format maturity

Accepted extensions do not imply equal analytical depth. TFLite and ONNX have stable executable-graph contracts. GGUF and SafeTensors have stable container, storage, and architecture contracts but do not serialize an executable graph. Core ML and ExecuTorch analysis remains preview and fixture-bounded. The exact parser, graph, quantization, and placement status for every format is available from deepbom capabilities --compact under public_product_contracts.

FormatPublic static evidence
TFLiteFlatBuffer graph and tensor contracts, quantization arithmetic, weight integrity, memory projections, accumulator proofs, redesign candidates, and source-bounded delegation predictions
ONNXProtobuf graph, initializer and external-data contracts, symbolic shape inference, operation cost, Q/DQ and affine quantization, and provider-compatible evidence envelopes
GGUFContainer and tensor-directory integrity, quantization encoding inventory, architecture metadata, and bounded LLM memory scenarios
SafeTensorsTensor-directory and sharding integrity, configuration-bound architecture contracts, AWQ/GPTQ/HQQ/compressed-tensors metadata, and bounded LLM memory scenarios
Core MLNeuralNetwork and ML Program serialized graphs, tensor/weight encodings, deployment floor, and imported compute-plan evidence boundaries
ExecuTorchBounded ET12/FT01 plans, source-bound portable calls and processed payload identities, plus optional selected-build/backend/operator/binary attestation; execution remains external
GraphDef / SavedModelBounded serialized nodes, data/control dependencies, first-MetaGraph SignatureDef tensor contracts, and hash-bound package membership; no graph execution
Keras / PT2Bounded declarative config/JSON dependency graphs without object construction, pickle loading, lowering, native code, or runtime-order claims
HDF5 / PyTorch checkpointSafe-envelope, archive, storage-member, and pickle-risk inventory only; no object graph or executable-model claim

Static compatibility does not establish observed execution-provider assignment, device latency, task accuracy, clinical validity, or release readiness. Runtime claims require an identity-bound runtime capture.

The detailed format and accelerator boundary is maintained in docs/SUPPORT_MATRIX.md. Bugs can be reported without sharing model bytes using docs/MODEL_FREE_BUG_REPORTING.md.

Distribution boundary

This repository is generated from an exact reviewed allowlist. Private rulepack generators, hosted-service infrastructure, and unreleased research modules are not included. The enforceable boundary and export verification method are documented in docs/PUBLIC_PRIVATE_BOUNDARY.md.

License and citation

The public source and release-channel packages are licensed under the Apache License 2.0. Third-party model artifacts retain their declared licenses.

Please cite:

Kwon, J. (2026). DEEPBOM: Browser-Native Static Analysis of On-Device Neural Network Deployment Artifacts [Computer software]. Zenodo. https://doi.org/10.5281/zenodo.21834508

Optional metadata and OMOP connections

After inspecting a model, create a model-bound input with deepbom audit model.onnx --metadata-template omop -o metadata.json. Fill the selected OMOP 5.4/5.5 CDM_SOURCE row and institution/release identifiers, then use --metadata metadata.json --evidence-files ./evidence --section provenance_ir --json. A generic template connects non-OMOP datasets, cohorts, code, runs and reports through the same IR.

The Web Metadata workspace provides import, record creation, an interactive relationship diagram and JSON/CycloneDX downloads. Local MCP deepbom_audit accepts metadata_template, metadata and evidence_files; ChatGPT/Claude widgets share only explicitly requested counts and digests. Connections remain declarations: file hashes and reference consistency do not authenticate lineage or clinical suitability. See the OMOP guide and common IR contract.

来源:README.md,提交 e5cacd5

工具

7

deepbom_analyze_file

Analyze an AI model artifact

Use when the user asks to inspect, summarize, or visualize an attached TFLite, ONNX, GGUF, SafeTensors, Core ML, or ExecuTorch deployment artifact. Opens a browser-local analyzer, returns a hash-bound format-neutral Model IR table and static evidence summary, and provides deterministic document views without executing model code. Do not use for training checkpoints, measured latency, task accuracy, clinical validity, regulatory compliance, or actual runtime placement.

输入参数file必填analysis_depth

deepbom_capabilities

Check DEEPBOM capabilities

Use before analysis when format support, privacy boundaries, or the difference between the ChatGPT and local DEEPBOM paths is unclear. Returns capability metadata only and does not inspect a file.

无需输入参数。

deepbom_publish_analysis

Return a DEEPBOM analysis to chat

Receives one bounded browser-produced DEEPBOM result, validates its structure, and returns it to the conversation. This tool accepts analysis results, never model bytes.

输入参数result必填

deepbom_publish_error

Return a DEEPBOM analysis error to chat

Receives one bounded browser-produced DEEPBOM error and returns a recovery action to the conversation. This tool accepts diagnostic text, never model bytes.

输入参数error必填

deepbom_query_file

Inspect specific model evidence

Use for follow-up questions about an already identified attachment: inspect a layer by subject_ref, search or page through all operations, inspect findings, rank improvement investigations, inspect encoded activation fusion, compare source-pinned static delegate eligibility, or explicitly analyze weight distributions, channels, similarity, singular spectra, sparsity and quantization with section=weights and optional weight_view. Weight analysis reads payloads on demand with explicit decoder/budget coverage (128 MiB widget limit). Reuse the ChatGPT-authorized file and the exact SHA-256 from its previous DEEPBOM result. section=profiles lists available backend profiles; query.target selects only a TFLite CPU planning profile from capabilities. The browser computes the query from the shared Evidence IR and returns a bounded result; model bytes are not sent to DEEPBOM. Static candidate eligibility is not observed placement, speed, accuracy, or runtime fusion. Do not invent findings while browser_query_started is pending.

输入参数file必填query必填analysis_depthexpected_sha256必填

deepbom_publish_query

Return requested model evidence to chat

Component-only: validates and returns a bounded Evidence IR query projection for the same attachment. No model bytes, state persistence, or runtime execution. Result digests establish consistency, not independent server attestation.

输入参数result必填

deepbom_workflow_guide

Choose a DEEPBOM analysis workflow

Use to discover how to answer a model-analysis question across ChatGPT, the interactive deepbom.org workspace and the local CLI. Returns real query sections, visualization/export actions, explicit web continuation links, required inputs, CLI argument templates and evidence limits for weights, pruning investigation, comparison, BOM verification, metadata/OMOP, activation evidence, runtime, batch/CI and integrations. No attachment is required. This is guidance, not a completed analysis or local command execution. Prefer answering from existing evidence; inspect supported follow-ups with deepbom_query_file before offering web continuation for richer interaction. Website links transfer only a workflow ID, never model data.

输入参数formatworkflow

版本历史

12
  1. v2.5.0最新Oct 20, 2026
  2. v2.4.0Oct 12, 2026
  3. v2.3.0Oct 11, 2026
  4. v2.2.0Oct 9, 2026
  5. v2.1.0Oct 7, 2026
  6. v2.0.0Sep 29, 2026
  7. v1.109.0Sep 28, 2026
  8. v1.106.0Sep 22, 2026
  9. v1.105.0Sep 22, 2026
  10. v1.103.0Sep 17, 2026
  11. v1.102.0Sep 17, 2026
  12. v1.101.0Sep 16, 2026

评分

已满足适用检查项的 100%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分