dingtalk-knowledge-search — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited dingtalk-knowledge-search (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
cd <the_skill_dir_path>/scripts
python3 cli.py config check
python3 cli.py search "关键词1 关键词2 关键词3"
python3 cli.py read "https://alidocs.dingtalk.com/i/nodes/<node_id>"
python3 cli.py read <node_id>先运行配置校验:
python3 cli.py config check需要这些配置:
| 配置 | 用途 | 获取方式 |
|---|---|---|
DINGTALK_APP_KEY | 调用钉钉开放平台 API | 钉钉开放平台 -> 应用管理 -> 企业内部应用 -> 凭证与基础信息 |
DINGTALK_APP_SECRET | 获取 API token | 同上,应用凭证信息中查看 |
DINGTALK_MY_USER_ID | 当前操作者身份 | 管理后台 -> 通讯录 -> 成员管理 -> 点击成员查看 userId |
DINGTALK_MY_OPERATOR_ID | 文档 API 的 operatorId/unionId | 有 DINGTALK_MY_USER_ID 后可自动转换 |
缺少 DINGTALK_MY_OPERATOR_ID 时执行:
python3 cli.py config to-unionidsearch:返回匹配文档列表;可用 --limit <n> 控制数量read:返回 Markdown;长内容会写到文件并返回路径;非 ALIDOC 文件会下载原文件read <pdf_node_or_url> --mode pdf2text 会先下载 PDF,再用系统 pdftotext -layout 输出 .txt;如果系统没有 pdftotext,会提示安装 poppler-utils,并退回返回 PDF 路径.skills-workspace/dingtalk-knowledge-search/outputs/--output-dir "$PWD/dingtalk-docs" --output-path 把结果写到当前项目modifiedTime 未变化时复用;默认用硬链接写入 --output-dir,用 --output-strategy copy 可复制隔离--with img-local,图片会下载到 Markdown 同目录 .assets/<文档名>/--with img,节约本地空间,但依赖代理服务和原链接有效期--with diagram 一起导出python3 cli.py search "项目背景 年假 晋升" --limit 10
python3 cli.py read "https://alidocs.dingtalk.com/i/nodes/<node_id>" --output-dir "$PWD/dingtalk-docs" --output-path
python3 cli.py read "https://alidocs.dingtalk.com/i/nodes/<node_id>" --with img-local --with diagram --output-dir "$PWD/dingtalk-docs" --output-path
python3 cli.py read "https://alidocs.dingtalk.com/i/nodes/<file_node_id>" --output-dir "$PWD/dingtalk-docs"
python3 cli.py read "https://alidocs.dingtalk.com/i/nodes/<pdf_node_id>" --mode pdf2text --output-dir "$PWD/dingtalk-docs"
python3 cli.py read "https://alidocs.dingtalk.com/i/nodes/<pdf_node_id>" --mode pdf2text --output-dir "$PWD/dingtalk-docs" --output-strategy copysearch 不缓存,每次直接查远端node、resolve-url、blocks 仍使用 SQLite API 缓存,受 --cache-ttl 影响modifiedTime 判断是否复用~/.dingtalk-skills/dingtalk-knowledge-search/output-cache/--output-strategy link:把全局缓存硬链接到当前 --output-dir,节省空间;编辑任一硬链接文件会影响同一份内容--output-strategy copy:复制到当前 --output-dir,和全局缓存隔离python3 cli.py cache clear --namespace output --yes 会删除输出缓存记录和关联本地文件loginRequired: true 和 screenshotPath~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.