# TagLauncher Raycast Extension Search - Backlog Plan 日期:2026-07-02 状态:Backlog,仅备忘,今天不开发 需求文档:`/Users/ar/Projects/Taglauncher/src/Docs/Requirements/2026-07-02-raycast-extension-search-prd.md` ## Goal 未来开发一个 Raycast Extension,让 Raycast 用户可以搜索 TagLauncher 中的应用、标签和备注,并回车启动目标 App。 ## Current Decision 采用“TagLauncher 导出本地只读 JSON 索引 + Raycast Extension 读取索引”的方案。 不建议 Raycast Extension 直接读取 TagLauncher 主数据库,避免隐私、半写入、schema 绑定和后续迁移风险。 ## Backlog Rule 本计划只作为未来需求备忘。今天不进入开发,不创建 Raycast Extension 项目,不修改 TagLauncher 生产代码,不改变现有 Pro 权益和 Quick Search 行为。 ## Future Implementation Phases ### Phase 1 - TagLauncher Index Export - 增加设置开关:允许 Raycast 搜索标签和备注。 - 默认关闭。 - 开启后生成本地只读 JSON 索引: - 建议路径:`~/Library/Application Support/TagLauncher/Raycast/index.json` - 标签、备注、App 扫描结果变化后刷新索引。 - 关闭后删除或清空索引。 ### Phase 2 - Raycast Extension Prototype - 使用 Raycast React + TypeScript Extension。 - 新增命令:`Search TagLauncher`。 - 读取 TagLauncher 导出的 JSON index。 - 支持按 App 名、标签名、备注、Bundle ID 搜索。 - 回车打开 App。 ### Phase 3 - QA And Privacy Review - 验证索引关闭态、开启态、损坏态、不存在态。 - 验证备注隐私提示。 - 验证标签和备注变更后的索引刷新。 - 验证 Raycast Extension 搜索与打开 App。 ### Phase 4 - Raycast Store Release - 准备扩展图标、metadata、README、截图。 - 检查 Raycast Store 发布要求: - `package.json` 的 author / MIT license / latest Raycast API / platforms。 - 使用 `npm` 和 `package-lock.json`。 - 至少一个 category。 - 512x512 PNG extension icon。 - 需要额外配置时提供 README。 - 本地执行: ```bash npm run lint npm run build npm run publish ``` - 通过 `npm run publish` 创建 Raycast 官方 `raycast/extensions` 仓库 PR。 - 等 Raycast 审核通过后进入 Raycast Store。 ## Out Of Scope For Now - 今天不写代码。 - 不接入 Raycast 根搜索。 - 不做云同步。 - 不改变 TagLauncher Quick Search。 - 不直接读取 TagLauncher 主数据库。 - 不在本计划中决定免费 / Pro 策略。 ## Open Questions - Raycast 搜索基础能力是否免费开放,还是部分高级能力纳入 Pro。 - 索引刷新采用即时写入还是 debounce / 批量写入。 - 是否需要导出标签颜色供 Raycast accessory 展示。 - Raycast Extension 是否随 TagLauncher 官网提供安装说明。