edit | blame | history | raw

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。
  • 使用 npmpackage-lock.json
  • 至少一个 category。
  • 512x512 PNG extension icon。
  • 需要额外配置时提供 README。
  • 本地执行:
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 官网提供安装说明。