Install
openclaw skills install @glgeneral15/il-readerAI+信息素养备赛搜题工具。先比对本地题库(1017 题,命中即直接作答),未命中再按证据缺口检索:6 张稳定规则卡、252 个网站入口档案,用 playwright-cli 控制可见 Chrome 取证,输出答案、依据、来源与置信度,并附可人工复查的步骤与网站清单。
openclaw skills install @glgeneral15/il-reader面向 AI+信息素养大赛的备赛与答题工具。两级工作方式:
收到题目
├─ 比对题库(1017 题)── 命中 ──► 直接作答(不再复验)
└─ 未命中 ──► 按证据缺口检索
├─ 题内推导(查全率/查准率等)
├─ 6 张稳定规则卡
├─ 官网 / 官方 API(curl)
└─ playwright-cli 驱动可见 Chrome
路径约定:本技能目录记为 <SKILL>(SKILL.md 所在目录)。命令里请用绝对路径,不要依赖当前工作目录。
references/review.md。网站清单只写实际到达的 URL,受阻与报错的渠道同样要写。| 依赖 | 必需性 | 缺失时会发生什么 |
|---|---|---|
node ≥ 18(代码用到 ??、node: 前缀模块) | 必需(仅第 1 级) | 题库查询不可用;仍可手工按第 2 级取证 |
playwright-cli(npm i -g @playwright/cli)+ 本机 Chrome | 可选 | 需要浏览器的题(PDF、验证码、分面统计)做不了;静态页仍可用 curl 或 WebFetch |
联网工具 WebSearch / WebFetch | 未命中题库时必需 | 只能靠规则卡与题内推导,补证这一步断掉 |
自检两条:node "<SKILL>/lookup.cjs" --status 应返回 total 与 failures: [];playwright-cli --version 有输出就说明浏览器路径可用。
把题干与当前选项写成 JSON:
{
"id": "q1",
"type": "single",
"question": "完整题干(含空括号)",
"options": { "A": "选项文字A", "B": "选项文字B", "C": "...", "D": "..." }
}
type 取 single / multiple / judge(判断题选项写 {"A":"正确","B":"错误"})。
node "<SKILL>/lookup.cjs" "<题目JSON绝对路径>"
node "<SKILL>/lookup.cjs" --status # 题库计数,排障用
命中(status: "matched")就直接作答,不要再去核验。 用返回的 answer_labels 与 answer_texts。
匹配要求:同题型 + 题干一致 + 全部选项文字一致。以下变化不影响命中:选项换序(按文字重映射字母)、全角/半角括号差异、多余空格、末尾标点差异。
以下变化会导致不命中,此时按第 2 级检索:
single 写成 multiple 等)—— 精确匹配要求题型一致,题型错了只返回候选(candidates)题库命中时来源写"用户提供题库(entry_id=…)",不要声称刚访问官网或已独立核验;条目里的 referenced_urls 是题库作者的记录,本次并未访问,不得写进网站清单。
按顺序走,够用即停:
references/rules.json,6 张:查全/查准率、Boolean 语义、ISBN、ISSN、DOI、倒排索引。每张卡的 claims 是可用结论,卡里同时写明它不能证明什么curl 直接取字段,见 references/retrieval.md站点怎么查,先看档案:references/sites/<站点>.json 有入口、控件、已验证步骤与已记录的障碍。索引在 references/search-index.json,路径覆盖在 references/exam-scope.md。
专用会话名固定为 ilradar,加 --persistent 保留登录态:
playwright-cli -s=ilradar open https://example.com --persistent --browser=chrome
playwright-cli -s=ilradar snapshot # 取元素 refs(e1、e7…)
playwright-cli -s=ilradar fill e5 "检索词"
playwright-cli -s=ilradar click e3
playwright-cli -s=ilradar snapshot # 每次交互后必须重新观察
playwright-cli -s=ilradar screenshot --filename=out.png
playwright-cli -s=ilradar close
硬规则
snapshot 或 screenshot 验证结果,不要凭记忆推断页面状态。snapshot 默认把结果写进工作目录的 .playwright-cli/,需要读文件:cat .playwright-cli/page-*.yml。工作目录不确定时用 cat 的绝对路径。snapshot 再定位,不猜测选择器。~/ilradar-work/;Windows 可用 C:/Users/<你的用户名>/ilradar-work/)。curl 秒级返回,playwright-cli 要几十秒。以下用 curl:
curl -sL --max-time 20 -A "Mozilla/5.0" "https://example.com/" | head -c 4000
硬规则:curl 拿到验证页、空壳或非正文(例如知网会重定向到 verify/home?captchaType=),不要换 URL 反复重试,直接转 playwright-cli。
题目问"第 n 页""最后一个单词""文件大小""共几页"时,答案就在指定版本的全文字节里。违反以下任一条会直接答错,细节见 references/retrieval.md:
PDF 页数、正文可用 playwright-cli pdf 或让页面跳到目标页后 snapshot / screenshot。
结论四行恒在最前,不因复查单变长而后移:
答案:C。
依据:(题库命中写"题库命中·原题号";推导写"题内数据推导";检索写一句关键依据)
来源:(题库 / 具体原始页面 / 规则卡)
置信度:95%(高)
多选写 答案:A、C、D。,判断写 答案:正确。 / 答案:错误。。
复查单
S1 题库比对 输入 q1.json → lookup.cjs → miss [empty]
S4 取原文 curl 下载 <url> → 4.4 MB/17 页 [ok]
S5 可读性判定 文本提取仅 16 字符 → 判"无文本层" → 140dpi 渲染后图像识别 [ok]
…
网站
1 名称 URL(到达页) 用途 检索词 结果(ok/empty/blocked/error) 定位 时间
产物:绝对路径(无则写"—")
缺口:一句(无则写"无")
| 情形 | 复查单形态 |
|---|---|
| 题库命中 | 一行:复查单:题库命中(entry_id=…,未联网),不给任何外部 URL,整条答复 ≤ 6 行 |
| 规则卡/题内推导/单一官方 API,无受阻无产物,置信度 ≥ 80% | 2–5 行步骤 + 1–3 行网站,8–15 行 |
有下载产物、扫描件转图像、blocked/error 渠道、来源冲突、或置信度 < 80% | 全量步骤 + 网站表 + 产物 + 缺口,15–30 行 |
写复查单的硬规则:
blocked(登录/验证码/权限/IP)、error(报错/超时/429)都要进网站表,否则答复会显得比实际更有底。references/review.md。| 情形 | 置信度 |
|---|---|
| 答案与全部选项已依据实际捕获的来源核验 | 90–99% |
| 证据或逐项核验仍有缺口 | 60–79% |
| 只有记忆、摘要或未达要求的证据 | 30–49% |
| 访问或授权障碍使核验未完成 | 20–49% |
| 来源或结论存在未解决的冲突 | 40–59% |
证据不足时写"待核验"与一个会改变答案的关键缺口。置信度表示对证据完整性的估计,不是统计验证的正确率。 结论四行保持精炼(不写工具调用流水),过程信息一律放进复查单。
| 现象 | 处理 |
|---|---|
lookup.cjs 报"题库不可用" | 题库文件或其摘要被改动。先 --status 看计数,再核对 references/question-bank.json 是否完整 |
playwright-cli: command not found | 未安装。npm i -g @playwright/cli,或先用 --status 确认 §第 1 级 仍可用 |
node: command not found | Bash 的 PATH 可能被污染。用 command -v node / which -a node 找实际路径,再用该绝对路径调用(Windows 常见 C:/Program Files/nodejs/node.exe;用了 nvm 则在 nvm 的版本目录下) |
| snapshot 读不到结果 | 结果写在 .playwright-cli/ 目录,用 cat 读到文件;或建 playwright-cli.json 写 {"outputMode":"stdout"} |
| 浏览器连接失败 | playwright-cli -s=ilradar close 清掉坏会话后重开 |
| 站点被登录/验证码拦住 | 保留原页面,请用户在可见窗口完成后继续。不索取密码、不绕过验证 |
references/question-bank.md — 题库格式、匹配边界与贡献方式references/review.md — 复查单:步骤码、网站表字段、分档与完整样例、复查者三步操作references/retrieval.md — 证据分流、实测官方端点、全文与页面核对三条硬规则references/discovered-flows.md — 已实测发现的可复用检索路径references/browser-playwright-cli.md — playwright-cli 完整命令与浏览器工作流references/exam-scope.md — 命题范围与按题找来源references/sites/*.json — 252 个网站入口档案