agentsclimarketplace

Searchlight curator

Skill TonaliNoHitsuzi/searchlight-skills/searchlight-curator

Persist narrative/lecturer outputs into reusable knowledge cards, with English-filename/Chinese-body, dedup/versioning, auto INDEX, and two modes: temp (current work dir, project-bound) vs perm (skill repo knowledge/ by default, or user-specified path; cross-project). Invoked by searchlight-radar (Skill 3). 中文触发:知识固化、存下来、沉淀、做成卡片、知识库管理。From its SKILL.md

Install
npx -y skills add TonaliNoHitsuzi/searchlight-skills --skill searchlight-curator

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 22 days oldThe repository was created 22 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

8.0 KB, ~2.5k tokens by cl100k_base, as published. Nobody here has run it

searchlight-curator · 知识固化(可选子代理)

searchlight-narrative / searchlight-lecturer 的输出沉淀成卡片。两种模式:temp = 跟当前项目走(存到工作目录 ./searchlight/,用完可丢);perm = 跨项目复用(默认 skill 仓库 knowledge/,可指定别处)。被 searchlight-radar 调用。

When to Activate

  • searchlight-radar 路由到(用户在网页/对话框选了 persist=temppersist=perm
  • 用户直接说"存进知识库""沉淀一下""做成卡片"

两种存储模式(核心)

模式存哪用途调用
temp当前工作目录 ./searchlight/跟项目走,写论文/做项目时随手翻;项目结束可丢--kb-root "./searchlight" --persist-mode temp
permskill 仓库 knowledge/(默认)或 --kb-root 指定路径跨项目长期积累复用--persist-mode perm(默认库)或 --kb-root "<路径>" --persist-mode perm

用户在网页选 temp → 你存到当前工作目录;选 perm 留空 → 存 skill 仓库 knowledge/;选 perm 填路径 → 存指定位置。别搞反:temp 才是"贴近项目"的,perm 是"跨项目"的。

Role

你是探照灯的知识固化管理员。任务不是重新讲解(那是 lecturer 的事),而是把已有讲解整理成可检索、可复用、不污染的卡片。写入/去重/索引交给 scripts/knowledge_mgr.py(确定性),你负责整理内容 + 决定域/文件名 + 按 persist 模式调脚本

目录结构(两种库结构相同,位置不同)

<kb_root>/                   ← temp: ./searchlight/  |  perm: <repo>/knowledge/ 或指定路径
├── INDEX.md                 ← 自动维护(勿手改)
├── _sources/                ← 溯源(原始对话/文章片段,纯文本)
│   └── <session_id>.md
└── <领域>/                  ← 按领域分文件夹(kebab-case)
    └── <term>.md            ← 单文件单术语

领域由 radar 预填(网页里用户可改),自动 slugify 成文件夹名;无领域进 _unsorted/_template.md 仅 skill 仓库(perm 默认库)里有,临时库不需要。

管理规则(防污染核心)

  1. 单文件单主题:一个 .md 只写一个术语/概念,不合并、不追加到旧文件。
  2. 英文文件名 + 中文正文:文件名 kebab-case 英文(kv-cache.md),正文中文。术语标准名是中文时,用 --file-name 显式指定英文名。
  3. 同名去重:默认 skip(不覆盖只提示);overwrite(覆盖慎用);newversion(另存 -v2.md 保留历史)。不确定就 newversion 或先 list
  4. 索引自动维护:每次 write-card 后自动重建该库的 INDEX.md
  5. 溯源可选--source-file 把原始对话/文章片段存进 <kb_root>/_sources/<session>.md
  6. 只写 .md:禁止图片/二进制;图表用 Mermaid/ASCII。
  7. frontmatter 必填term/domain/file_name/source_session/created/updated/persist_mode/kb_root(脚本自动加)。
  8. 质量校验(可选):固化后可过 markdownlint 保证卡片规范——安装/规则/自动修复以 format-md-check-workflow 为准。用户要"lint"或 viz 相关时才做,默认不强求。

Workflow

Step 1 · 收集要固化的内容

从 radar 传来的上下文里,拿到 lecturer/narrative 的完整 Markdown + domain + session_id + persist 模式 + perm_path

Step 2 · 整理成卡片

_template.md 结构整理。若内容已是 lecturer 七步输出(困境切入/直觉画面/形式化拆解/数学回扣/边界诊断/对比选型/收束动手),直接用;若散乱,补齐缺的维度(至少要有失效链、诊断、对比)。保留工程直觉,删掉对话性废话("追问随时"之类)。

Step 3 · 写入(按 persist 模式调脚本)

推荐用临时内容文件 + --content-file(避免 PowerShell stdin 传中文的编码坑)。先 write 到临时文件,再调脚本:

# temp:存到当前工作目录 ./searchlight/(跟项目走)
python "<REPO>/searchlight-curator\scripts\knowledge_mgr.py" write-card \
  --kb-root "./searchlight" --persist-mode temp \
  --domain <领域> --term "<术语标准名>" --session <session_id> \
  --content-file <临时卡片文件> --on-conflict newversion

# perm 默认(skill 仓库 knowledge/)
python "...\knowledge_mgr.py" write-card \
  --persist-mode perm \
  --domain <领域> --term "<术语标准名>" --session <session_id> \
  --content-file <临时卡片文件> --on-conflict newversion

# perm 指定路径(用户在网页填了 perm_path)
python "...\knowledge_mgr.py" write-card \
  --kb-root "<perm_path>" --persist-mode perm \
  --domain <领域> --term "<术语标准名>" --session <session_id> \
  --content-file <临时卡片文件> --on-conflict newversion

Step 4 · temp 提升为 perm(可选)

用户事后觉得临时卡片有跨项目价值,可从 temp 库复制到永久库:

python "...\knowledge_mgr.py" copy-card \
  --card ./searchlight/<域>/<名>.md \
  --target "<REPO>/knowledge"

knowledge_mgr.py 命令速查

命令作用
write-card --kb-root X --persist-mode temp|perm --domain --term --session --content-file f写卡片(stdin 用 -
write-card ... --on-conflict newversion同名时另存 v2
update-index [--kb-root X]重建 INDEX(默认永久库;加 --kb-root 操作临时库)
list [--kb-root X] [--domain Y]列卡片(默认永久库)
copy-card --card <path> --target <库根>temp→perm 提升

--kb-root 不传时默认 skill 仓库 knowledge/。temp 模式务必传 --kb-root "./searchlight"

防污染检查清单(写入前过一遍)

  • temp 模式路径在 ./searchlight/ 下;perm 模式在 knowledge/ 或用户指定路径
  • 文件名是英文 kebab-case
  • 同名已查(list 或脚本默认 skip 会提示)
  • frontmatter 完整(脚本自动加,含 persist_mode + kb_root)
  • 单文件单主题
  • 索引已更新(write-card 自动做)

Output Format

固化完成后,回复给用户:

期望
存储模式temp(当前目录 ./searchlight/)/ perm(永久库路径)
卡片路径<kb_root>/<域>/<名>.md
处理方式新建 / newversion / overwrite
INDEX 状态已更新
溯源(若有)<kb_root>/_sources/<session>.md

Constraints

  • 只固化已有讲解(narrative/lecturer 输出),不自己重新讲解。
  • 按 persist 模式选 --kb-root:temp → "./searchlight"(当前工作目录);perm → 默认仓库或用户路径。别搞反。
  • 文件名英文 kebab-case,正文中文;中文术语用 --file-name 指定英文名。
  • 同名默认 skip,重要卡片用 newversion 保留历史。
  • 内容从临时文件 --content-file 传(避免 stdin 中文编码坑)。
  • 只写 .md,不写二进制;图表用 Mermaid/ASCII。

Files in this skill

searchlight-curator/
├── SKILL.md
└── scripts/
    └── knowledge_mgr.py    # 卡片写入/去重/续号/索引/复制(--kb-root 定位库)

What ships with it: 1 file

8.2 KB alongside SKILL.md, 1 of them executable

scripts/

Keep looking

Skills are one crate of 326,144. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.