notion-sync — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited notion-sync (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.
将 Claude 对话中的关键内容以结构化方式写入 Notion 数据库。自动区分用户输入和 AI 回答,原文直出不做加工。
config.jsonscripts/notion_client.py当检测到配置文件不存在时,执行以下流程:
告知用户需要提前准备两样东西:
1. Notion API Token(Internal Integration Secret) 引导用户前往 https://www.notion.so/my-integrations:
secret_ 开头)2. Database ID 用户在 Notion 中打开目标数据库页面,URL 格式为: https://www.notion.so/{ workspace }/{ page_id }?v=... 其中 page_id 的 32 位 UUID 即为 database_id。
运行辅助脚本的 init 命令:
python3 ./scripts/notion_client.py init此脚本会:
如果初始化时报 404 错误,提醒用户:
每次用户触发"同步到 Notion"时,执行以下步骤:
python3 ./scripts/notion_client.py show-config如果配置文件存在 → 继续主流程 如果配置文件不存在 → 转入初始化流程
从当前对话上下文中提取以下内容:
a) 用户原始输入 — 用户最近一次输入的全部内容,原文保留 b) AI 回答 — 我对该次输入的全部回答内容,原文保留,不做任何加工 c) 用户输入提炼总结 — 对用户输入进行结构化提炼,格式示例:
核心问题:xxx(一句话)
关键要点:
- 要点 1
- 要点 2d) 核心思想摘要 — 用150字以内总结本次对话的核心思想,作为 Summary 属性值 e) 标签 — 提炼 1~3 个标签(逗号分隔),作为 Tags 属性值 f) 生成标题 — 根据用户输入,生成 30 字以内的简洁标题
将内容直接组装为 JSON(不加工、不提炼),通过管道传给辅助脚本的 create-page 命令。AI 回答会被脚本解析为 Notion 原生 blocks(标题、段落、列表、表格、代码块等):
cat << 'JSONEOF' | python3 ./scripts/notion_client.py create-page
{
"title": "30字以内的标题",
"user_raw": "用户的原始输入内容(原文)",
"user_summary": "提炼后的用户核心需求\n- 要点1\n- 要点2",
"summary": "150字以内的核心思想摘要",
"tags": "标签1, 标签2, 标签3",
"ai_response": "AI 的回答内容(原文,完整保留原始 Markdown 格式)"
}
JSONEOF用户可以通过以下方式管理配置:
python3 .../notion_client.py show-config(或在对话中询问 "查看 notion 配置")python3 .../notion_client.py reset(或在对话中询问 "重置 notion 配置")2022-06-28~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.