Borrowing it
Nothing to install: this file belongs to DavidLam-oss/obsidian-wechat-converter. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/DavidLam-oss/obsidian-wechat-converter/main/.agents/skills/qiaomu-obsidian-dev/SKILL.mdgit clone --depth 1 https://github.com/DavidLam-oss/obsidian-wechat-converterWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/davidlam-oss/obsidian-wechat-converter/qiaomu-obsidian-dev)<a href="https://agentmods.dev/skills/davidlam-oss/obsidian-wechat-converter/qiaomu-obsidian-dev"><img src="https://agentmods.dev/badge/skills/davidlam-oss/obsidian-wechat-converter/qiaomu-obsidian-dev/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/davidlam-oss/obsidian-wechat-converter/qiaomu-obsidian-dev"><img src="https://agentmods.dev/badge/skills/davidlam-oss/obsidian-wechat-converter/qiaomu-obsidian-dev.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00110 | $0.02733 |
| Opus 5.5 | $0.00044 | $0.01093 |
| Sonnet 5.5 | $0.00022 | $0.00547 |
| Haiku 4.5 | $0.00011 | $0.00273 |
Grade A, and why
qiaomu-obsidian-dev scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 90 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Qiaomu Obsidian Dev
把插件做成可持续使用、可验证发布的产品。用户当前指令和项目 AGENTS 优先于本技能;本技能不等于 Obsidian 官方政策。
路由与边界
- 审查/诊断请求默认只读;开发请求完成实现与验证;只有授权发布时才推送、合并、修改社区页面。不得把「修好」擅自扩大为公开发布。
- 先检查实际仓库、分支、dirty 状态、目标测试库、已安装版本、项目脚本和当前 SDK 类型。不要把另一个库、旧截图或缓存中的版本当当前证据。
- 原生 API 优先;插件运行时不依赖开发机器路径或调试全局 app。面向移动端时不打包 Node/Electron;声明兼容不等于真机验证。
- 原创项目保留已选许可证;fork 保留来源和许可,核实目录提交的额外授权要求。重命名不能消除来源义务。
最小工作流
- 将本轮及仍未完成的要求逐项对应到用户动作和验收结果;新纠正覆盖同一行为的旧决定,不丢掉其他待办。读取 插件类型与通用架构,判断插件主类型、宿主触点、状态所有者、外部副作用、平台范围和主要风险,再只加载相关专项参考。
- 新插件或重大新能力在写实现前读取 前置调研与评估:先核对当前官方文档/API/示例,再检查功能最接近且许可明确的开源插件源码,交付可追溯的评估方案。默认等用户确认推荐方向后再进入大规模实现;用户已明确“直接开发/按推荐方案做”时,可在同一轮给出精简评估后继续。局部修复、回归、文档与发布工作不强制重做完整调研。
- 修复前复现问题,沿“用户动作 → 命令/事件 → 状态转换 → 宿主/网络/文件副作用 → UI反馈 → 清理/恢复”定位根因;不能从某个历史案例直接猜当前插件也有同一问题。
- 在现有架构内做最小实现。明确单一数据源、请求/任务身份、持久化时机、失败恢复、卸载清理与兼容边界;保持用户当前任务、焦点、选区、编辑内容或其他插件相关状态不被意外覆盖。
- 按改动运行 lint/typecheck/测试/build,再安装到指定测试库并重载,用
scripts/host_eval.py脚本化真实用户操作。模拟测试和实机结果分开写。批量修复与发版提速见 提速手册。 - 授权发布时按 发布门禁 走 feature branch/PR → checks → 最终候选 SHA 官方 Preview Scan → Draft Release 与安装验收 → 先公开同版本 Release 并确认匿名资产 200/摘要匹配,再让默认分支 manifest 暴露新版本 → 正式审核与目录/客户端核验。预扫描 Error 或缺证时不得公开发布;扫描后修改代码/依赖/配置须重扫。CI 默认只产草稿,不因推 tag 直接公开。已登录的
gh release download可读草稿,不能代替匿名安装链路检查。 - 交付改动、测试结果、未覆盖平台、实际发布阶段和可点击产物。无法验证的部分直接标记,禁止声称「自动上架成功」。
按任务加载
| 任务 | 参考 |
|---|---|
| 所有插件:类型识别、状态/副作用/生命周期与验收设计 | 插件类型与通用架构 |
| 新插件、重大新能力、竞品重叠与技术路线判断 | 前置调研与评估 |
| 设置页重构、黑灰配色、卡片留白、图标对齐、渐进配置与关于 | 设置 GUI |
| 视图、工具栏、列表、设置、空态、移动交互 | 产品界面与设置 |
| 书库、选文 popup/右键、划线回跳、AI 助读 | 学习型阅读器 |
| 字体大小、离线字库、缓存图片、拖拽附件 | 字体与媒体 |
| 日记、当前笔记、选区、内部回跳、本地 Markdown | 摘录与来源 |
| 生命周期、Vault API、异步安全、多窗口 | 工程模式 |
| 新设置 API、延迟视图、编辑器扩展、启动性能 | 宿主与性能 |
| 大数据集/长文/媒体、内存增长、虚拟化与资源回收 | 规模与资源性能 |
| 配置迁移、并发写入、同步、密钥、索引 | 数据可靠性 |
| 网络服务、跨插件协议、AI、MCP/Skill 与外部能力 | 外部集成与能力 |
乔木系列插件(qiaomu-*):接入乔木Home 起点页、乔木 Agent 上下文,起点页/新标签接管 |
乔木插件家族协议 |
| Markdown 组件、CM6 装饰、资源释放 | 编辑器与生命周期 |
| 回归测试、真实宿主测试、常见故障定位 | 测试与诊断 |
| 批量打磨/修复、减少补丁版本、宿主脚本验收、发版人工步骤 | 提速手册 |
| 插件商店搜不到、审核、Release、安装 | 发布门禁 |
| manifest/Release/Tag 不一致、构建验证、CSS Lint、扫描 Pending | 提交故障手册 |
| 经验来源、偏好变化、哪些不是通则 | 经验与依据 |
What ships with it
56 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- agents/interface.yaml 717 B
- assets/cases/qiaomu-ai-rss-reader.png 472 KB
- assets/cases/qiaomu-plugins-in-obsidian.png 411 KB
- assets/cases/qiaomu-reader-ai.jpg 498 KB
- assets/cases/qiaomu-reader-library.jpg 397 KB
- assets/qiaomu-profile/qiaomu_avatar.jpeg 5767 KB
- assets/qiaomu-profile/qiaomu_reward_qr.png 516 KB
- assets/qiaomu-profile/qiaomu_wechat_public_account_qr.jpg 8.3 KB
- assets/qiaomu-protocols/qiaomu-context.ts 5.2 KB runs code
- assets/qiaomu-protocols/qiaomu-home.js 2.1 KB runs code
- assets/qiaomu-protocols/qiaomu-home.ts 5.1 KB runs code
- evals/output-cases.md 11 KB
- evals/trigger_cases.json 1.7 KB
- LICENSE 34 KB
- LICENSES/meta-skill-MIT.txt 1.0 KB
- manifest.json 364 B
- README.md 12 KB
- references/ai-integrations.md 4.4 KB
- references/capture-navigation.md 3.2 KB
- references/data-reliability.md 5.9 KB
- references/editor-lifecycle.md 3.8 KB
- references/engineering.md 3.9 KB
- references/fonts-media.md 2.2 KB
- references/lessons.md 6.0 KB
- references/performance-large-files.md 3.3 KB
- references/platform-patterns.md 3.8 KB
- references/plugin-architecture.md 4.8 KB
- references/prior-art-evaluation.md 4.6 KB
- references/product-ux.md 7.4 KB
- references/qiaomu-family.md 4.4 KB
- references/reader-workflows.md 4.7 KB
- references/release.md 8.0 KB
- references/settings-gui.md 6.4 KB
- references/speed-playbook.md 5.8 KB
- references/submission-failures.md 9.2 KB
- references/testing-troubleshooting.md 5.8 KB
- reports/creation-handoff.md 8.7 KB
- reports/prior-art-candidates.json 26 KB
- reports/prior-art-research.md 2.2 KB
- reports/research-2026-09-08.md 2.3 KB
- reports/research-v1.2.0.md 2.4 KB
- reports/retrospective-2026-09-08-to-15.md 6.5 KB
- reports/retrospective-2026-09-16-to-27.md 7.1 KB
- reports/retrospective-2026-09-27-speed.md 2.3 KB
- reports/skill-ir.json 5.0 KB
- reports/trigger-eval.json 7.9 KB
- reports/validation-2026-09-27.md 827 B
- reports/validation.md 6.3 KB
- scripts/audit_release.py 8.1 KB runs code
- scripts/check_public_release.py 5.8 KB runs code
- scripts/host_eval.py 5.5 KB runs code
- scripts/validate_skill.py 12 KB runs code
- tests/test_audit.py 8.2 KB runs code
- tests/test_host_eval.py 2.0 KB runs code
- tests/test_public_release.py 3.1 KB runs code
- THIRD_PARTY_NOTICES.md 153 B
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 90 lines · 110 tokens per session scan A 167e30120db7
qiaomu-obsidian-dev is a skill published in the GitHub repository DavidLam-oss/obsidian-wechat-converter (348 stars, last pushed yesterday), licensed MIT. It adds 110 tokens to every session and 2,733 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-18.
Other skills, from other repositories
systematic-debugging
4-phase root cause debugging: understand bugs before fixing.
langsmith-observability
LLM observability platform for tracing, evaluation, and monitoring. Use when debugging LLM applications, evaluating model outputs against datasets, monitoring production systems, or building systematic testing pipelines for AI applications.
experimental-code-coverage-local-debugger
Runs code coverage locally via Universal Test Runner (UTR) or helper scripts, mimicking LUCI trybots. Activate when CQ tryjobs fail or underreport coverage, to test local GN/recipe repairs before uploading, or to debug hermetic crashes.
verify-omnigent
Drive Omnigent the way a user does and prove a behavior with recorded evidence, using an isolated server, runner, and mock model plus a feature map of every user entry point. Load before reproducing a user-facing bug, before claiming a fix works, or when reviewing whether a change covered every surface (session vs.…
cli-e2e
Write, modify, or debug Docker-based Composio CLI end-to-end tests under ts/e2e-tests/cli, including binary invocation, fixture isolation, output assertions, and package manifests. Use for CLI E2E test suites only; use cli-command for CLI source implementation.
adversarial-reviewer
Stress-test a code change for concrete correctness defects, unsafe assumptions, and failure modes. Use when the user explicitly asks for an adversarial review, a deep bug hunt, or to tear a change apart, or to check your own change before submitting it. Do not use for ordinary review, style feedback, or general…