Skip to main content

qiaomu-obsidian-dev

Develop, debug, review, test and release any Obsidian plugin with current native APIs and evidence-based engineering. Use for commands, editor extensions, custom views, search/indexing, import/export, sync/network integrations, media/reading, AI tools, settings, mobile compatibility and official releases. Also use for lifecycle, data, performance, race-condition and release failures. Exclude ordinary vault note writing, generic Markdown formatting, plugin recommendations, non-Obsidian app development, and skill authoring itself.

跳到安装

来源信息

仓库
joeseesun/qiaomu-obsidian-dev
最近来源活动
2026年9月27日 14:22
检测到的 SKILL.md 语言
中文
星标
27
分支
2

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
qiaomu-obsidian-dev
description
Develop, debug, review, test and release any Obsidian plugin with current native APIs and evidence-based engineering. Use for commands, editor extensions, custom views, search/indexing, import/export, sync/network integrations, media/reading, AI tools, settings, mobile compatibility and official releases. Also use for lifecycle, data, performance, race-condition and release failures. Exclude ordinary vault note writing, generic Markdown formatting, plugin recommendations, non-Obsidian app development, and skill authoring itself.
metadata
{"author":"向阳乔木","version":"1.10.0"}
# Qiaomu Obsidian Dev 把插件做成可持续使用、可验证发布的产品。用户当前指令和项目 AGENTS 优先于本技能;本技能不等于 Obsidian 官方政策。 ## 路由与边界 - 审查/诊断请求默认只读;开发请求完成实现与验证;只有授权发布时才推送、合并、修改社区页面。不得把「修好」擅自扩大为公开发布。 - 先检查实际仓库、分支、dirty 状态、目标测试库、已安装版本、项目脚本和当前 SDK 类型。不要把另一个库、旧截图或缓存中的版本当当前证据。 - 原生 API 优先;插件运行时不依赖开发机器路径或调试全局 app。面向移动端时不打包 Node/Electron;声明兼容不等于真机验证。 - 原创项目保留已选许可证;fork 保留来源和许可,核实目录提交的额外授权要求。重命名不能消除来源义务。 ## 最小工作流 1. 将本轮及仍未完成的要求逐项对应到用户动作和验收结果;新纠正覆盖同一行为的旧决定,不丢掉其他待办。读取 [插件类型与通用架构](references/plugin-architecture.md),判断插件主类型、宿主触点、状态所有者、外部副作用、平台范围和主要风险,再只加载相关专项参考。 2. 新插件或重大新能力在写实现前读取 [前置调研与评估](references/prior-art-evaluation.md):先核对当前官方文档/API/示例,再检查功能最接近且许可明确的开源插件源码,交付可追溯的评估方案。默认等用户确认推荐方向后再进入大规模实现;用户已明确“直接开发/按推荐方案做”时,可在同一轮给出精简评估后继续。局部修复、回归、文档与发布工作不强制重做完整调研。 3. 修复前复现问题,沿“用户动作 → 命令/事件 → 状态转换 → 宿主/网络/文件副作用 → UI反馈 → 清理/恢复”定位根因;不能从某个历史案例直接猜当前插件也有同一问题。 4. 在现有架构内做最小实现。明确单一数据源、请求/任务身份、持久化时机、失败恢复、卸载清理与兼容边界;保持用户当前任务、焦点、选区、编辑内容或其他插件相关状态不被意外覆盖。 5. 按改动运行 lint/typecheck/测试/build,再安装到指定测试库并重载,用 `scripts/host_eval.py` 脚本化真实用户操作。模拟测试和实机结果分开写。批量修复与发版提速见 [提速手册](references/speed-playbook.md)。 6. 授权发布时按 [发布门禁](references/release.md) 走 feature branch/PR → checks → 最终候选 SHA 官方 Preview Scan → Draft Release 与安装验收 → **先公开同版本 Release 并确认匿名资产 200/摘要匹配,再让默认分支 manifest 暴露新版本** → 正式审核与目录/客户端核验。预扫描 Error 或缺证时不得公开发布;扫描后修改代码/依赖/配置须重扫。CI 默认只产草稿,不因推 tag 直接公开。已登录的 `gh release download` 可读草稿,不能代替匿名安装链路检查。 7. 交付改动、测试结果、未覆盖平台、实际发布阶段和可点击产物。无法验证的部分直接标记,禁止声称「自动上架成功」。 ## 按任务加载 | 任务 | 参考 | | --- | --- | | 所有插件:类型识别、状态/副作用/生命周期与验收设计 | [插件类型与通用架构](references/plugin-architecture.md) | | 新插件、重大新能力、竞品重叠与技术路线判断 | [前置调研与评估](references/prior-art-evaluation.md) | | 设置页重构、黑灰配色、卡片留白、图标对齐、渐进配置与关于 | [设置 GUI](references/settings-gui.md) | | 视图、工具栏、列表、设置、空态、移动交互 | [产品界面与设置](references/product-ux.md) | | 书库、选文 popup/右键、划线回跳、AI 助读 | [学习型阅读器](references/reader-workflows.md) | | 字体大小、离线字库、缓存图片、拖拽附件 | [字体与媒体](references/fonts-media.md) | | 日记、当前笔记、选区、内部回跳、本地 Markdown | [摘录与来源](references/capture-navigation.md) | | 生命周期、Vault API、异步安全、多窗口 | [工程模式](references/engineering.md) | | 新设置 API、延迟视图、编辑器扩展、启动性能 | [宿主与性能](references/platform-patterns.md) | | 大数据集/长文/媒体、内存增长、虚拟化与资源回收 | [规模与资源性能](references/performance-large-files.md) | | 配置迁移、并发写入、同步、密钥、索引 | [数据可靠性](references/data-reliability.md) | | 网络服务、跨插件协议、AI、MCP/Skill 与外部能力 | [外部集成与能力](references/ai-integrations.md) | | 乔木系列插件(`qiaomu-*`):接入乔木Home 起点页、乔木 Agent 上下文,起点页/新标签接管 | [乔木插件家族协议](references/qiaomu-family.md) | | Markdown 组件、CM6 装饰、资源释放 | [编辑器与生命周期](references/editor-lifecycle.md) | | 回归测试、真实宿主测试、常见故障定位 | [测试与诊断](references/testing-troubleshooting.md) | | 批量打磨/修复、减少补丁版本、宿主脚本验收、发版人工步骤 | [提速手册](references/speed-playbook.md) | | 插件商店搜不到、审核、Release、安装 | [发布门禁](references/release.md) | | manifest/Release/Tag 不一致、构建验证、CSS Lint、扫描 Pending | [提交故障手册](references/submission-failures.md) | | 经验来源、偏好变化、哪些不是通则 | [经验与依据](references/lessons.md) | ## 默认产品判断 乔木插件新 UI 默认使用作用域内的黑白灰语义色、Lucide 图标、明确内边距与渐进配置;优先任务和可见状态,少说明,不堆控件。设置页细则和实机检查见 [设置 GUI](references/settings-gui.md)。用户当前偏好优先,纯图标 tooltip 等项目例外不得被默认值覆盖。 以用户的主任务而不是数据表或技术模块组织界面:命令型插件缩短执行路径,编辑器插件保持写作流,管理/索引插件突出查找与批处理,集成插件清楚显示连接与同步状态。默认选择即可开始,复杂配置渐进展开;减少常驻说明和无明确用途的控件。阅读型插件再应用“继续读 → 划线/思考 → 笔记 → 回到原文”的专项流程。 默认禁止无明确需求的 hover tooltip、`title`、`setTooltip` 和悬浮解释。Obsidian 会把部分 `aria-label` 映射为提示气泡时,图标按钮必须改用 visually-hidden 文本或 `aria-labelledby`,输入框使用原生 `label`;不能以无障碍为由重新引入 tips。只有用户明确要求,或控件含义无法通过可见文本与标准图标表达时,才逐个加入 tooltip。发布前搜索并审查相关属性。字体调整即时保存。 遵守用户“不使用左侧装饰竖线”的视觉偏好,包括选中态;具体范围与替代方式见 [阅读与设置](references/product-ux.md#设计判断与宿主边界)。 优先复用 Obsidian 已有命令、Editor、Vault/FileManager、MetadataCache、菜单、设置、工作区与附件能力。不要把内部识别码、HTML 注释、服务地址或调试选项暴露到普通用户流程。 ## 验证入口 ```bash python3 scripts/audit_release.py /path/to/plugin --tag 1.2.3 --max-asset-bytes 5000000 --scan-tips python3 scripts/check_public_release.py /path/to/plugin --repo owner/repo --version 1.2.3 --attempts 6 python3 scripts/host_eval.py --vault <qa-vault> --reload <plugin-id> --file check.js --screenshot /tmp/shot.png python3 -m unittest discover -s tests -p 'test_*.py' rg -n 'setTooltip|setAttribute\(["'"']title|\btitle\s*:|aria-label' plugin-src src styles.css ``` 本地审计脚本只读,输出 JSON 与非零失败码;它检查本地产物、版本、大小与摘要。`check_public_release.py` 不使用 GitHub 登录或 API token,通过安装器使用的精确 Release URL 匿名下载根级资产,并与本地最终产物逐字节比较;它只证明当次公开下载,不证明目录同步或真机运行。`--scan-tips` 按插件入口(`esbuild.plugin.mjs`、`tsconfig.plugin.json`,否则退回 `plugin-src`/`src`)只扫真正进入插件的源码与 `main.js`、`styles.css`:源码查 `aria-label`、`title=`、`setTooltip`、`data-tooltip`,构建产物只查 `setTooltip(` 与 `data-tooltip`,跳过测试文件。审计与公开回读脚本不执行目标项目代码,不证明官方审核、依赖安全或移动兼容。`host_eval.py` 相反:它在指定库的 Obsidian 里以完整权限执行你写的检查脚本,只对 QA 库使用;它证明的是该桌面库、该版本上的这次操作。5 MB 是本项目经验的可配置预算,不声称永久官方限制。 ## 输出合同 - Research:问题边界、官方依据、候选仓库及固定 commit、许可/维护状态、可借鉴与拒绝项、证据缺口和检索日期。 - Assessment:差异化价值、复用矩阵、推荐架构与 MVP、风险/验证计划,以及 Go / Revise / Stop 结论;默认先交付此项再开发。 - Diagnosis:触发条件、根因、影响、拟修复范围。 - Implementation:实际文件与用户可见行为,避免只报实现术语。 - Verification:命令/结果、测试库与版本、桌面/真机/模拟覆盖,失败或缺证。 - Distribution:local / PR / merged / GitHub release / review queued / review passed / public installable 分开记录。 - Feedback:可复用规则只在用户要求时写入外部长期记忆;无需把私有库路径、订阅令牌或原始聊天发布。 Copyright (c) 向阳乔木 · X https://x.com/vista8 · GitHub https://github.com/joeseesun/
在 GitHub 查看