| .codebase-memory/artifact.json | ●●●●● patch | view | raw | blame | history | |
| AGENTS.md | ●●●●● patch | view | raw | blame | history | |
| C1.source/TODO.md | ●●●●● patch | view | raw | blame | history | |
| CODEGRAPH.md | ●●●●● patch | view | raw | blame | history | |
| CODE_GOVERNANCE.md | ●●●●● patch | view | raw | blame | history | |
| K1.业务知识/成果地图.md | ●●●●● patch | view | raw | blame | history | |
| K2.项目管理/QA与发布入口地图.md | ●●●●● patch | view | raw | blame | history | |
| K2.项目管理/handoffs/2026-07-02-Taglauncher瘦身迁移.md | ●●●●● patch | view | raw | blame | history | |
| K2.项目管理/restore-notes.md | ●●●●● patch | view | raw | blame | history | |
| K2.项目管理/新窗口接手指南.md | ●●●●● patch | view | raw | blame | history | |
| K2.项目管理/迁移资产清单.md | ●●●●● patch | view | raw | blame | history | |
| readme.md | ●●●●● patch | view | raw | blame | history |
.codebase-memory/artifact.json
@@ -2,7 +2,7 @@ "schema_version": 1, "commit": "2309264ee94daca4b9abe3592d84602c98b77690", "indexed_at": "2026-07-02T09:00:28Z", "project": "Users-ar-Projects-Taglauncher2-03-O", "project": "Users-ar-Projects-Taglauncher-03-O", "nodes": 16612, "edges": 25581, "original_size": 16973824, AGENTS.md
@@ -5,13 +5,13 @@ 项目类型:研发项目 主要产物:macOS App / 桌面工具 这是 AI Agent 进入 `/Users/ar/Projects/Taglauncher2/03-O` 后应先读的入口文件。 这是 AI Agent 进入 `/Users/ar/Projects/Taglauncher/03-O` 后应先读的入口文件。 ## 代码治理入口 开始任何代码、Git、迁移、构建、发布或 QA 工作前,必须读取并遵守: `/Users/ar/Projects/Taglauncher2/03-O/CODE_GOVERNANCE.md` `/Users/ar/Projects/Taglauncher/03-O/CODE_GOVERNANCE.md` 本入口文件只保留高优先级硬约束;完整执行标准以 `CODE_GOVERNANCE.md` 为准。若两者冲突,以更严格、项目本地、更具体的规则为准。 @@ -20,17 +20,17 @@ TagLauncher 的非平凡 UI 改动必须先过 UI Preview Gate,不得直接进入 SwiftUI / AppKit 源码修改。 - 非平凡 UI 改动包括:布局、字体、间距、颜色、主题、material、窗口尺寸、Pro 状态、设置页、AppGrid、Quick Search、tips、hover、拖拽、点击热区、可访问性或任何用户可见视觉变化。 - 开工前必须先产出 UI 合约;推荐使用 `/Users/ar/Projects/Taglauncher2/03-O/K2.项目管理/KM2.项目管理-经验门禁/UI合约模板.md`,也可在当前 PRD / TODO / Round 文档中写入同等字段。 - 开工前必须先产出 UI 合约;推荐使用 `/Users/ar/Projects/Taglauncher/03-O/K2.项目管理/KM2.项目管理-经验门禁/UI合约模板.md`,也可在当前 PRD / TODO / Round 文档中写入同等字段。 - UI 合约必须包含目标界面、影响 surface、不做范围、状态矩阵、主题 / 语言长度矩阵、交互互斥关系、验收截图或录屏要求。 - 非纯调查任务必须先提供高保真预览来源,例如 baoyu-design HTML / 静态 screen、Penpot / Figma frame、用户标注图或等价可审阅截图;用户确认视觉目标后,才允许修改生产 UI 源码。 - 实现后必须提供真实 App 截图、录屏、AX 或真实点击证据;没有真实渲染或真实交互证据,不得写视觉 PASS。 ## 源码根目录 唯一源码根目录:`/Users/ar/Projects/Taglauncher2/03-O/C1.source` 唯一源码根目录:`/Users/ar/Projects/Taglauncher/03-O/C1.source` - App 源码、构建脚本、QA 脚本和 SmartStart/Apple catalog 资料在 `C1.source/` 下维护;发布证据进入 `K3.运营与发布资料/Release/`,当前迁入构建包进入 `C2.builds/`。 - 不允许再创建或继续使用 `/Users/ar/Projects/Taglauncher2/03-O-*source`、`/Users/ar/Projects/Apptag-*` 等外部源码工作目录。 - 不允许再创建或继续使用 `/Users/ar/Projects/Taglauncher/03-O-*source`、`/Users/ar/Projects/Apptag-*` 等外部源码工作目录。 - 如果需要多分支并行工作,必须使用当前仓库的正常 Git branch;如确需 worktree,必须先说明原因、限定生命周期,并在任务结束后用 `git worktree remove` 清理。 - 项目根目录只保留仓库入口文档、公开网站资料和非源码管理说明;不要在根目录新增 App 源码副本。 @@ -48,7 +48,7 @@ 本项目需要保存重要会话记忆,但不得为了普通会话记录频繁打断用户审批。会话记录不放在主源码工作区,避免造成脏状态和体积膨胀。 - 首选保存目录:`/Users/ar/Projects/Taglauncher2/.codex-sessionhistory/`。 - 首选保存目录:`/Users/ar/Projects/Taglauncher/.codex-sessionhistory/`。 - 只在发生以下情况时保存会话记录:关键决策、文件修改、发布 / 构建 / QA 结论、重大问题排查、用户明确要求保存、阶段性收尾。 - 纯询问、路径确认、状态查询、简单说明、无实质决策或无文件变更的对话,不强制保存。 - 文件名格式:`YYYY-MM-DD-主题.md`;主题必须概括本轮 session 的核心内容,控制在 20 个字符以内,优先使用中文短语,避免空格、`/`、`:` 等不适合作为文件名的字符。 C1.source/TODO.md
@@ -24,8 +24,8 @@ - 状态: 仅需求备忘,今天不开发。 - 目标: 未来通过官方 Raycast Extension,让用户在 Raycast 中搜索 TagLauncher 的 App、标签和备注,并回车启动目标 App。 - 当前决策: 推荐“TagLauncher 导出本地只读 JSON 索引 + Raycast Extension 读取索引”;不让 Raycast 直接读取 TagLauncher 主数据库。 - 计划: `/Users/ar/Projects/Taglauncher2/03-O/C1.source/.hermes/plans/2026-07-02-raycast-extension-search-backlog.md`。 - PRD: `/Users/ar/Projects/Taglauncher2/03-O/C1.source/Docs/Requirements/2026-07-02-raycast-extension-search-prd.md`。 - 计划: `/Users/ar/Projects/Taglauncher/03-O/C1.source/.hermes/plans/2026-07-02-raycast-extension-search-backlog.md`。 - PRD: `/Users/ar/Projects/Taglauncher/03-O/C1.source/Docs/Requirements/2026-07-02-raycast-extension-search-prd.md`。 - [发布后独立任务] 设置页 tab 容器 AppKit/自控化评估与实现。 - 决策: 当前发布前 No-Go;保留 SwiftUI `TabView`,不改 QA 脚本。 CODEGRAPH.md
@@ -6,8 +6,8 @@ ## 项目边界 - 仓库根目录:`/Users/ar/Projects/Taglauncher2/03-O` - 唯一源码根目录:`/Users/ar/Projects/Taglauncher2/03-O/C1.source` - 仓库根目录:`/Users/ar/Projects/Taglauncher/03-O` - 唯一源码根目录:`/Users/ar/Projects/Taglauncher/03-O/C1.source` - macOS App 源码:`C1.source/Apptag/` - 构建入口:`C1.source/build.sh` - DMG 打包入口:`C1.source/make_dmg.sh` CODE_GOVERNANCE.md
@@ -1,14 +1,14 @@ # Taglauncher 代码治理与 Git 规范 本文档是 `/Users/ar/Projects/Taglauncher2/03-O` 的代码管理、Git 使用、交付和 Agent 协作规范。根目录 `AGENTS.md` 是强制入口;本文件是完整执行标准。 本文档是 `/Users/ar/Projects/Taglauncher/03-O` 的代码管理、Git 使用、交付和 Agent 协作规范。根目录 `AGENTS.md` 是强制入口;本文件是完整执行标准。 ## 1. 项目边界 - 主仓库工作区固定为 `/Users/ar/Projects/Taglauncher2/03-O`。 - 唯一源码根目录固定为 `/Users/ar/Projects/Taglauncher2/03-O/C1.source`。 - 主仓库工作区固定为 `/Users/ar/Projects/Taglauncher/03-O`。 - 唯一源码根目录固定为 `/Users/ar/Projects/Taglauncher/03-O/C1.source`。 - App 源码、构建脚本、QA 脚本、SmartStart/Apple catalog 资料都必须在 `C1.source/` 下维护;发布证据进入 `K3.运营与发布资料/Release/`,当前迁入构建包进入 `C2.builds/`。 - 项目根目录只保留仓库入口文档、公开网站资料、治理规范和非源码管理说明。 - 不允许再创建或继续使用 `/Users/ar/Projects/Taglauncher2/03-O-*source`、`/Users/ar/Projects/Apptag-*` 等外部源码目录。 - 不允许再创建或继续使用 `/Users/ar/Projects/Taglauncher/03-O-*source`、`/Users/ar/Projects/Apptag-*` 等外部源码目录。 ## 2. Git 工作区规则 @@ -86,7 +86,7 @@ - 对应分支。 - 预计生命周期。 - 清理条件。 - worktree 不得放在 `/Users/ar/Projects/Taglauncher2/03-O-*source` 或 `/Users/ar/Projects/Apptag-*` 这类容易被误认为正式源码根目录的位置。 - worktree 不得放在 `/Users/ar/Projects/Taglauncher/03-O-*source` 或 `/Users/ar/Projects/Apptag-*` 这类容易被误认为正式源码根目录的位置。 - 任务完成后必须执行: ```bash @@ -136,7 +136,7 @@ TagLauncher 的 UI 工作必须先确认视觉目标,再修改生产 SwiftUI / AppKit 源码。经验复盘见: `/Users/ar/Projects/Taglauncher2/03-O/K2.项目管理/KM2.项目管理-经验门禁/关于TagLauncher所有UI类问题的经验与教训.md` `/Users/ar/Projects/Taglauncher/03-O/K2.项目管理/KM2.项目管理-经验门禁/关于TagLauncher所有UI类问题的经验与教训.md` ### 10.1 触发范围 @@ -152,7 +152,7 @@ 非平凡 UI 改动开工前必须先写 UI 合约。推荐模板: `/Users/ar/Projects/Taglauncher2/03-O/K2.项目管理/KM2.项目管理-经验门禁/UI合约模板.md` `/Users/ar/Projects/Taglauncher/03-O/K2.项目管理/KM2.项目管理-经验门禁/UI合约模板.md` 如果当前任务已有 PRD、TODO、Round 文档或 issue,也可以在该文档中写入同等字段,不强制复制模板。UI 合约至少包含: @@ -218,7 +218,7 @@ 从源码根目录运行 QA: ```bash cd /Users/ar/Projects/Taglauncher2/03-O/C1.source cd /Users/ar/Projects/Taglauncher/03-O/C1.source bash Scripts/apple_default_apps_resource_qa.sh 2>&1 | head -c 12000 bash Scripts/apple_default_note_policy_qa.sh 2>&1 | head -c 12000 bash Scripts/smartstart_catalog_resource_qa.sh 2>&1 | head -c 12000 K1.业务知识/成果地图.md
@@ -33,5 +33,5 @@ ## 当前缺口 - 已生成自动 `codebase-memory` 图谱:`../.codebase-memory/`,项目名 `Users-ar-Projects-Taglauncher2-03-O`。 - 已生成自动 `codebase-memory` 图谱:`../.codebase-memory/`,项目名 `Users-ar-Projects-Taglauncher-03-O`。 - 迁移后只运行了 macOS 14 availability typecheck;接收验证不等同完整 App 构建或发布 QA。 K2.项目管理/QA与发布入口地图.md
@@ -2,7 +2,7 @@ ## 迁移接收验证 - 记录文件:`/Users/ar/Projects/Taglauncher2/02-P/当前阶段/迁移接收验证.md` - 记录文件:`/Users/ar/Projects/Taglauncher/02-P/当前阶段/迁移接收验证.md` - 目标:确认迁移包可接手、路径可读、Git 状态可解释、基础静态检查可运行。 ## 源码 QA 入口 @@ -10,7 +10,7 @@ 从源码根运行: ```bash cd /Users/ar/Projects/Taglauncher2/03-O/C1.source cd /Users/ar/Projects/Taglauncher/03-O/C1.source bash Scripts/macos14_availability_typecheck_qa.sh bash Scripts/macos14_build_metadata_qa.sh bash Scripts/pro_custom_container_quota_qa.sh @@ -25,15 +25,15 @@ ## 构建入口 ```bash cd /Users/ar/Projects/Taglauncher2/03-O/C1.source cd /Users/ar/Projects/Taglauncher/03-O/C1.source bash build.sh bash make_dmg.sh ``` ## 最新迁入发布证据 - 发布资料:`/Users/ar/Projects/Taglauncher2/03-O/K3.运营与发布资料/Release/AppStore-8.3.5-20260702.1046/` - 构建包:`/Users/ar/Projects/Taglauncher2/03-O/C2.builds/AppStore-8.3.5-20260702.1046/` - 发布资料:`/Users/ar/Projects/Taglauncher/03-O/K3.运营与发布资料/Release/AppStore-8.3.5-20260702.1046/` - 构建包:`/Users/ar/Projects/Taglauncher/03-O/C2.builds/AppStore-8.3.5-20260702.1046/` ## 发布规则 K2.项目管理/handoffs/2026-07-02-Taglauncher瘦身迁移.md
@@ -2,7 +2,7 @@ ## 目标 把 `/Users/ar/Projects/Taglauncher` 迁移成 `/Users/ar/Projects/Taglauncher2`,并从 `/Users/ar/Projects/Taglauncher-doc` 选择重要 KM 迁入 K1/K2/K3。 将旧电脑原 TagLauncher 项目整理成可在新电脑 `/Users/ar/Projects/Taglauncher` 继续工作的轻量项目包,并从 `/Users/ar/Projects/Taglauncher-doc` 选择重要 KM 迁入 K1/K2/K3。 ## 已完成 @@ -19,7 +19,7 @@ ## 不可触碰 - 不修改 `/Users/ar/Projects/Taglauncher`。 - 不修改旧电脑原项目;新电脑接手后,`/Users/ar/Projects/Taglauncher` 是当前轻量项目包。 - 不把迁移接收验证写成正式发布 QA PASS。 - 不从 `.codex-sessionhistory/legacy/` 直接领取当前任务。 K2.项目管理/restore-notes.md
@@ -2,12 +2,12 @@ ## 恢复原则 本次迁移没有删除源项目材料。被排除或从目标源码树移除的材料,优先从源项目和体外文档恢复。 本次迁移没有删除旧电脑源项目材料。被排除或从目标源码树移除的材料,优先从旧电脑备份、外接盘、远端仓库或体外文档恢复。 ## 源路径 - 源项目:`/Users/ar/Projects/Taglauncher` - 源源码:`/Users/ar/Projects/Taglauncher/src` - 当前项目根:`/Users/ar/Projects/Taglauncher` - 旧项目恢复源:用 `OLD_TAGLAUNCHER_ROOT` 指向旧电脑备份或外接盘中的原项目根。 - 体外文档:`/Users/ar/Projects/Taglauncher-doc` - 源会话记忆:`/Users/ar/Projects/Taglauncher-doc/chat-history/codex-sessionhistory` @@ -16,19 +16,23 @@ 恢复某个历史 Release: ```bash rsync -a /Users/ar/Projects/Taglauncher/src/Release/<ReleaseName>/ /Users/ar/Projects/Taglauncher2/03-O/K3.运营与发布资料/Release/<ReleaseName>/ TAGLAUNCHER_HOME=/Users/ar/Projects/Taglauncher OLD_TAGLAUNCHER_ROOT=/path/to/old/Taglauncher rsync -a "$OLD_TAGLAUNCHER_ROOT/src/Release/<ReleaseName>/" "$TAGLAUNCHER_HOME/03-O/K3.运营与发布资料/Release/<ReleaseName>/" ``` 恢复旧帮助 PDF 副本: ```bash rsync -a /Users/ar/Projects/Taglauncher/src/Docs/Help/ /Users/ar/Projects/Taglauncher2/03-O/K3.运营与发布资料/Help/ TAGLAUNCHER_HOME=/Users/ar/Projects/Taglauncher OLD_TAGLAUNCHER_ROOT=/path/to/old/Taglauncher rsync -a "$OLD_TAGLAUNCHER_ROOT/src/Docs/Help/" "$TAGLAUNCHER_HOME/03-O/K3.运营与发布资料/Help/" ``` 恢复旧截图原图: ```bash rsync -a /Users/ar/Projects/Taglauncher-doc/RepoWorkspace/Docs/X-03Op资料/Screenshots/ /Users/ar/Projects/Taglauncher2/03-O/K3.运营与发布资料/Screenshots/ rsync -a /Users/ar/Projects/Taglauncher-doc/RepoWorkspace/Docs/X-03Op资料/Screenshots/ /Users/ar/Projects/Taglauncher/03-O/K3.运营与发布资料/Screenshots/ ``` ## 注意 K2.项目管理/新窗口接手指南.md
@@ -2,22 +2,22 @@ ## 接手目标 在不读取旧长线程的情况下,从 `Taglauncher2` 文件本身继续 TagLauncher 的开发、QA、发布准备或知识检索。 在不读取旧长线程的情况下,从当前轻量迁移包文件本身继续 TagLauncher 的开发、QA、发布准备或知识检索。 ## 必读顺序 1. `/Users/ar/Projects/Taglauncher2/AGENTS.md` 2. `/Users/ar/Projects/Taglauncher2/PROJECT.md` 3. `/Users/ar/Projects/Taglauncher2/INDEX.md` 4. `/Users/ar/Projects/Taglauncher2/02-P/进度地图.md` 5. `/Users/ar/Projects/Taglauncher2/03-O/CODEGRAPH.md` 6. `/Users/ar/Projects/Taglauncher2/03-O/CODE_GOVERNANCE.md` 7. `/Users/ar/Projects/Taglauncher2/.codex-sessionhistory/00-Topics.md` 1. `/Users/ar/Projects/Taglauncher/AGENTS.md` 2. `/Users/ar/Projects/Taglauncher/PROJECT.md` 3. `/Users/ar/Projects/Taglauncher/INDEX.md` 4. `/Users/ar/Projects/Taglauncher/02-P/进度地图.md` 5. `/Users/ar/Projects/Taglauncher/03-O/CODEGRAPH.md` 6. `/Users/ar/Projects/Taglauncher/03-O/CODE_GOVERNANCE.md` 7. `/Users/ar/Projects/Taglauncher/.codex-sessionhistory/00-Topics.md` ## 自检命令 ```bash cd /Users/ar/Projects/Taglauncher2/03-O cd /Users/ar/Projects/Taglauncher/03-O git status --short --branch git log --oneline --decorate --max-count=5 git diff --check @@ -26,7 +26,7 @@ 源码 QA 入口: ```bash cd /Users/ar/Projects/Taglauncher2/03-O/C1.source cd /Users/ar/Projects/Taglauncher/03-O/C1.source bash Scripts/macos14_availability_typecheck_qa.sh ``` K2.项目管理/迁移资产清单.md
@@ -2,9 +2,9 @@ ## 基线 - 源项目:`/Users/ar/Projects/Taglauncher` - 源项目:旧电脑原 `/Users/ar/Projects/Taglauncher` - 体外文档:`/Users/ar/Projects/Taglauncher-doc` - 新项目:`/Users/ar/Projects/Taglauncher2` - 新电脑接手路径:`/Users/ar/Projects/Taglauncher` - Git 策略:浅克隆当前 clean HEAD 到 `03-O`。 - 源 HEAD:`2309264` - 源 tag:`v8.3.5-build20260702.1046` @@ -31,7 +31,7 @@ | `Taglauncher-doc/RepoWorkspace/Docs/X-03Op资料/Screenshots` | `03-O/K3.运营与发布资料/Screenshots` | 只迁截图清单和渲染脚本,不迁原图。 | | `/Users/ar/Projects/Taglauncher/src/Release/AppStore-8.3.5-20260702.1046` | `03-O/K3.运营与发布资料/Release/AppStore-8.3.5-20260702.1046` | 最新 release 文档和 hash 证据。 | | 同上 | `03-O/C2.builds/AppStore-8.3.5-20260702.1046` | 最新 `.dmg/.pkg` 迁入包。 | | `codebase-memory-mcp` 生成 | `03-O/.codebase-memory` | 自动代码图谱共享产物,项目名 `Users-ar-Projects-Taglauncher2-03-O`。 | | `codebase-memory-mcp` 生成 | `03-O/.codebase-memory` | 自动代码图谱共享产物,项目名 `Users-ar-Projects-Taglauncher-03-O`。 | ## 明确排除 @@ -50,11 +50,11 @@ ## 验证记录 - `codebase-memory-mcp cli index_status '{"project":"Users-ar-Projects-Taglauncher2-03-O"}'`:ready,nodes 16612,edges 25581。 - `codebase-memory-mcp cli search_graph '{"project":"Users-ar-Projects-Taglauncher2-03-O","query":"Quick Search ProEntitlement AppGrid","limit":3}'`:返回 Quick Search / AppGrid 相关节点。 - `codebase-memory-mcp cli index_status '{"project":"Users-ar-Projects-Taglauncher-03-O"}'`:ready,nodes 16612,edges 25581。 - `codebase-memory-mcp cli search_graph '{"project":"Users-ar-Projects-Taglauncher-03-O","query":"Quick Search ProEntitlement AppGrid","limit":3}'`:返回 Quick Search / AppGrid 相关节点。 - `git diff --cached --check`:通过。 - `cd /Users/ar/Projects/Taglauncher2/03-O/C1.source && bash Scripts/macos14_availability_typecheck_qa.sh`:PASS macOS 14.0 availability typecheck: arm64。 - `cd /Users/ar/Projects/Taglauncher/03-O/C1.source && bash Scripts/macos14_availability_typecheck_qa.sh`:PASS macOS 14.0 availability typecheck: arm64。 ## 后续建议 - 若未来要正式切换到 TagLauncher2,应再做一次构建、签名、DMG、QA、manifest 和 tag 冻结。 - 若未来要正式以该轻量迁移包继续发布,应再做一次构建、签名、DMG、QA、manifest 和 tag 冻结。 readme.md
@@ -8,17 +8,17 @@ - Build from `C1.source/`, for example: ```bash cd /Users/ar/Projects/Taglauncher2/03-O/C1.source cd /Users/ar/Projects/Taglauncher/03-O/C1.source bash build.sh ``` - Do not create sibling source folders such as `/Users/ar/Projects/Taglauncher2/03-O-*-source`. - Do not create sibling source folders such as `/Users/ar/Projects/Taglauncher/03-O-*-source`. ## Project Knowledge - Non-source documents, website/archive material, canvases, and Codex session history are kept outside this source worktree under `/Users/ar/Projects/Taglauncher2/`. - Current repo-adjacent documents moved out of the source worktree are under `/Users/ar/Projects/Taglauncher2/03-O/`. - Codex session history is under `/Users/ar/Projects/Taglauncher2/.codex-sessionhistory/`. - Non-source documents, website/archive material, canvases, and Codex session history are kept outside this source worktree under `/Users/ar/Projects/Taglauncher/`. - Current repo-adjacent documents moved out of the source worktree are under `/Users/ar/Projects/Taglauncher/03-O/`. - Codex session history is under `/Users/ar/Projects/Taglauncher/.codex-sessionhistory/`. ## Website