validate-md-ref
SkillDocs & knowledgeChecks whether references in Markdown documents are locatable and whether URLs or anchors are accessible, and organizes structured evidence for later assessment of reference authenticity and appropriateness. Use when the user asks to verify references, check document links, or confirm whether citati
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the validate-md-ref skill
What this skill tells your AI
The instructions your AI receives, as published by huangwb8/skills in skills/beta/validate-md-ref/SKILL.md and read by ahel’s review.
目标
检查 Markdown 文档中的引用是否可定位、URL 或锚点是否可访问,并整理供后续判断引用真实性与适切性的结构化证据。当用户要求核查引用、检查文档链接,或确认引用是否支持正文论断时使用。
流程
输入
范围与边界
- 输入:一个 Markdown 文件,可选一个 YAML 配置文件。
- 检查:Markdown 行内链接、HTML
<a href>链接、当前文档内的#anchor,以及外部 HTTP(S) 链接的可达性。 - 输出:结构化 JSON,逐条保留引用位置、验证状态和失败或跳过原因。
- 不做:不修改原文;URL 可达性不等于来源支持论断;不代替用户决定修复方式。
- 运行时能力:使用
bensz.document.markdown-link-integrity检查链接事实,并保留bensz.evidence.citation-truth-fit的语义复核状态;两者版本独立记录,旧 ID 仅作兼容 alias。
执行步骤
强制运行门禁
每次执行必须经过 Bensz Skill Kernel 状态机并调用指定版本的链接完整性 Verifier。任一环节不可用或失败,任务即未完成并须说明原因;不得降级为普通脚本或手工检查。
状态机使用 bensz.workspace.ready 作为系统入口,并依次进入 bensz.validate-md-ref.input-ready、bensz.validate-md-ref.checking 和 bensz.validate-md-ref.reported;旧 State ID 仅作兼容 alias。
AI 应使用本 Skill 的执行器或封装入口,不得手工模拟状态转移、拼接事件账本或复制 Verifier 规则。命令、上下文和事件契约见:
流程
- 确认 Markdown 存在并只读处理;需限制网络请求时加载默认或指定 YAML。
- 提取并分类检查:站内锚点在当前文档定位;HTTP(S) 按安全策略验证可达性;白/黑名单命中则跳过。
- 保留链接 Verifier 标准结果;真实性或适切性仅保留语义 Verifier 的
unchecked/manual_review,无证据不得判通过。 - 汇总总数、有效、无效、跳过项,逐条披露位置、状态、失败原因和语义边界。
网络 DNS、连接失败和超时属于 unresolved/timed_out 观测不确定性,不得当作确定性链接失效;只有 HTTP 明确错误、本地 anchor 缺失或越界文件才计入 invalid。
命令行入口以 kernel bensz.document.markdown-link-integrity Pack 返回的
facts.summary 与 facts.references 为唯一链接事实来源;不要将旧兼容函数的本地
探测结果与 Verifier 结果合并或互相覆盖。
工具
scripts/validate_links.py:读取 Markdown 及可选 YAML,输出结构化结果。config.yaml:提供默认超时、域名白名单和黑名单,并在runtime节声明状态包与 Verifier 选择。
从 Skill 目录调用脚本;工作目录不同则使用绝对路径或先切换目录。运行入口负责状态机和 Verifier 门禁,不得绕过门禁解释脚本结果。
常用业务调用形式:
python3 scripts/validate_links.py DOCUMENT.md
python3 scripts/validate_links.py DOCUMENT.md CONFIG.yaml
输出字段和配置字段的完整说明见 references/formats.md 与 references/tools.md。
输出
输出结构化引用检查结果、可定位证据和报告:记录每条引用的来源、URL/锚点状态、错误或不确定原因,以及供后续真实性/适切性判断使用的 Evidence 快照;不修改源 Markdown。
输出管理
文件边界
需落盘时,将本 Skill 的输入、临时结果和日志写入当前会话声明的 ./.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/validate-md-ref/{input,output,log}/;多 Skill 共享材料放任务根目录 shared/。正式交付物、用户指定文件和源 Markdown 留在项目约定位置。不得写入密钥、令牌、Cookie、私有指令、隐私或不必要的大体积原始数据;纯文本答复无需建目录。
校验
校验输入路径位于允许的 base_dir、拒绝越界/symlink 逃逸和敏感路径,按配置检查 URL/锚点、重定向、域名白黑名单和超时;required 链接完整性通过后才可放行,advisory 真实性判断仅作提示并保留人工复核。
失败与恢复
文件不可读、路径越界、URL/锚点检查超时或外部站点不可用时,保留已收集的 Evidence、错误分类和日志,按 required/advisory 规则阻断或标记 uncertain/unchecked;修复输入或网络后可在同一任务工作区重试,不把缺失证据视为通过。
控制
运行时由 bensz-skill-kernel 按 config.yaml.runtime 管理 State、Verifier 与 Gate;链接完整性为 required,语义真实性为 advisory,失败或不确定时保留证据并转人工复核。
约束
公共硬约束
本块由 docs/templates/skill-common-constraints.md 统一维护;每个 SKILL.md 的 ## 约束 必须逐字同步本块,不得在副本中改写公共规则。
- 任务需要落盘时,使用唯一的
./.bensz-api/task-{yyyymmdd-hhmm}-{简短描述}/根目录;共享材料放入shared/,Skill 专属材料放入该 Skill 的input/、output/、log/。 - 正式交付物、源代码和正式计划按项目约定保存,不写入任务工作区;未经授权不覆盖、删除、迁移或远程写入。
- 项目维护变更检查 BAC 可用性并记录需求、AI 产出、工具结果、文件改动和验证摘要;BAC 只做过程审计,不替代署名、责任或合规判断。
- 不记录 API Key、访问令牌、密码、Cookie、环境/凭据文件、私有 Prompt、身份信息、本地用户名、主机名或不必要的大体积原始数据。
- 文件路径必须规范化并限制在授权项目范围内;外部 URL、子进程和网络访问遵循最小权限,防止路径遍历、SSRF 和命令注入。
- Skill 版本唯一记录在自身
config.yaml:skill_info.version;公开 API、协议、目录或配置变更同步文档与CHANGELOG.md。 bensz-collect-bugs是一个 Agent Skill;仅将 Bensz Agent Skill 或 Bensz 基础设施本身的设计缺陷交给它。先脱敏写入~/.bensz-skills/bugs/,当前任务不中断,只有用户明确要求才公开上报,禁止直接修改用户已安装的 Skill 源码。
Skill 专属约束
疑似 Skill 设计问题
- 适用范围:仅记录流程漏判、输入约定不完整、环境假设错误等 Skill 设计缺陷;用户数据错误、第三方波动和偶发模型输出除外。
- 隐私保护:不得记录密钥、密码、身份信息、邮箱、私密路径、用户名、主机名或工作目录;公开前须脱敏。
- 本地优先:先写入
~/.bensz-skills/bugs/,不打断任务;仅用户明确要求时用本机gh api上报。 - 禁止就地修 bug:不要直接修改用户本地已安装 Skill 源码;先记录,再继续任务。
Signals
- GitHub stars
- 48
- Forks
- 7
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
validate-md-ref- Source
- github.com/huangwb8/skills