Excel 交付体检 Pro(xlsx 结构深度审计)
站在「生成」的下游:AI 帮你生成 Excel,我帮你确认它能交付。
免费版(xlsx-delivery-audit)管单文件轻量体检;Pro 管深度检查、批量、可存档的交付报告。
何时使用
- 要把一批
.xlsx正式交付给甲方/领导/客户/审计,需要一份可存档的检查报告 - 要批量体检一个目录,一眼看出哪个文件能发、哪个不能发
- 关心敏感信息泄漏:表格里藏着手机号、身份证号、银行卡号
- 表格要进 CI/流水线,坏了要自动拦截(退出码语义)
- 之前体检过、确认过的误报,不想每次都报(基线)
不做什么
- 只查不改:绝不修改源文件,只输出报告
- 只支持
.xlsx(.xls提示用户先另存为 .xlsx) - 文件内容不上传服务器:唯一联网动作是向授权服务换取凭证
- 不做公式生成、数据清洗、图表美化
怎么用
核心脚本 scripts/audit_pro.py,纯 Python 标准库、零第三方依赖:
python scripts/audit_pro.py <文件.xlsx> # Markdown 报告
python scripts/audit_pro.py <文件.xlsx> --html 交付报告.html # HTML 交付报告(带 SHA-256、结论章)
python scripts/audit_pro.py <文件.xlsx> --json # JSON(给 Agent/CI)
python scripts/audit_pro.py <目录> --batch --html 总表.html # 批量体检 + 汇总判定
python scripts/audit_pro.py <文件.xlsx> --fail-on red # CI:有红即退出码 1
python scripts/audit_pro.py <文件.xlsx> --baseline known.txt # 忽略已确认误报
退出码:0 通过 | 1 触发 --fail-on | 2 用法/文件错误 | 3 需要支付
检查项(免费档 14 项 + Pro 深度 11 项)
Pro 深度项(P 系列)
| 代码 | 检查项 | 级别 |
|---|---|---|
| P01 | 敏感信息扫描(手机号/身份证/银行卡/邮箱,报告脱敏显示) | 🔴 |
| P02 | 全簿未设置打印区域(需打印交付时排版会乱) | 🟡 |
| P03 | 失效条件格式(dxfId 指向不存在的样式,模板残留) | 🟡 |
| P04 | 数据验证失效(下拉来源指向已删除的工作表) | 🟡 |
| P05 | 公式硬编码数字(税率/系数写死,改口径要逐格改) | 🟡 |
| P06 | 重复工作表(值多重集一致,复制页忘删) | 🟡 |
| P07 | 浮点精度残留(0.1+0.2 类尾差,金额对不上常见根因) | 🟡 |
| P08 | 非常用字体(接收方没装会变样) | 🔵 |
| P09 | 跨表依赖图(删表/改名前先看引用关系) | 🔵 |
| P10 | 全列引用量化(整列引用 × 大数据量,给出性能影响) | 🟡 |
免费档 14 项(E01-E05 阻断 / W01-W07 交付 / B01-B02 建议)全部包含,见免费版 xlsx-delivery-audit。
支付与授权(支付宝 AI 按量付费,一次付费 7 天内不限次)
- 未付费时运行会输出
billing_requiredJSON(退出码 3)并附账单与challenge_file(402 账单文件) - 第一步:安装官方买家支付工具(alipay-bot 是二进制工具,不在 npm 上,用安装器获取):
bash npx -y @alipay/agent-payment@latest install
Windows 提示输入路径时填%USERPROFILE%\.alipay-agent-payment;装完二进制在
%USERPROFILE%\.openclaw-autoclaw\alipay-bot-cli\bin\alipay-bot.exe。
首次使用先开通买家钱包:alipay-bot apply-wallet(按提示用买家支付宝扫码开通),
alipay-bot check-wallet确认 status=bound。 - 第二步:按账单付款:
bash alipay-bot 402-buyer-pay \ -f <challenge_file路径,见账单JSON> \ -r https://license.trytagcraft.com/license \ -m POST \ -d '{"client_id":"<凭证缓存中的client_id>","skill":"xlsx-delivery-audit-pro"}' \ -H "Content-Type: application/json" \ -i "购买 Excel 交付体检 Pro 7天授权"
alipay-bot 唤起支付宝付款(用户扫码/确认),付款成功后用
alipay-bot 402-query-payment-status --out-shake-no <tradeNo> -r <同上URL> ...
自动取回凭证并完成履约确认 - 凭证缓存在本机(
~/.xlsxaudit/license.json),7 天内不限次使用,期内不再扣费 - 授权服务不可达时自动降级为免费档 14 项检查,并在报告头部注明,绝不会卡死
- 纯本地检查:文件内容不上传,只有一次授权握手走网络
输出样例
# Excel 交付体检报告
源文件:XX月对账表.xlsx(3 个工作表,128 个单元格)
体检结果:🔴 2 个阻断问题,🟡 3 个交付问题,🔵 1 个建议
🔴 [E02] 跨表引用指向不存在的工作表(对账!E2)
公式引用了 Sheet99,但工作簿里没有这个表
🔴 [P01] 敏感信息残留(手机号)
发现疑似手机号 2 处(如 138****5678)。交付前必须删除或脱敏
边界与安全
- 只读:全程不写源文件,报告独立输出
- 隐私:文件不出本机;P01 报告只显示打码值(138****5678)
- 文件大小:建议单文件 < 50MB;批量目录建议 < 200 个文件
常见问题(FAQ)
Q:付费后 7 天内重复使用还扣费吗?
A:不扣。凭证缓存本机,期内不限次。
Q:我的表格会被上传吗?
A:不会。文件不出本机,唯一网络请求是授权握手;报告在本地生成。
Q:和免费版什么关系?
A:免费版 14 项全包含;Pro 是深度项 + 批量 + 交付报告 + CI 集成 + 基线。
Q:重装系统或删除了 ~/.xlsxaudit 目录会怎样?
A:7 天凭证保存在本机缓存(~/.xlsxaudit/license.json),删除后需要重新付费才能继续用 Pro。请在付费周期内保留该目录。
Q:检查结果一定准确吗?
A:不是。启发式检查存在误报漏报,报告中标注「疑似」的条目需人工确认;确认过的误报可用 --baseline 存档忽略。
Q:会修改我的文件吗?
A:不会。全程只读,报告独立输出,绝不写源文件。