AGENT

GitHub 仓群角色与收口清单

2026/04/21 26 min read AGENT GITHUB 仓群角色与收口清单

GitHub 仓群角色与收口清单

  • 更新时间:2026-04-21
  • 适用范围:emptyinkpot/* 当前 GitHub 仓群
  • 结论用途:回答“哪些仓是当前活仓”“哪些只是 mirror/backup/archive”“哪些已经明显过量,后续应合并或删除”

判定依据

  • 用户提供的当前仓列表
  • gh repo list emptyinkpot --limit 100 --json name,url,isPrivate,isFork,description
  • 本机 Git 顶层 / remote 审计
  • C:\Users\ASUS-KL\.codex\REPO-OWNERSHIP-MAP.md 当前口径

先说结论

  • 不是“一个仓就能拉回所有过去记录”。不同 repo 只覆盖各自跟踪边界,不能替代全局配置、外部镜像、历史冻结、公开发布镜像与未纳入同一 repo 的目录。
  • 但当前这批 backup-* / archive-* / mirror-* 也确实明显过多,已经超出“合理备份层”的数量。
  • 以后默认结构应该是:少量活仓 + 少量有明确职责的 mirror/backup + 极少量统一 archive,而不是每次迁移/兜底都长一个新 GitHub 仓。

当前建议分层

A. 明确应保留的长期活仓

这些仓当前仍然承担清晰边界,不属于“快照泛滥”问题:

仓库 当前角色 依据 默认动作
asus-kl-codex-home mirror/backup repo 本机 .codex 当前独立 git 顶层就是它 继续保留
my-project-root umbrella repo E:\My Project 当前独立 git 顶层就是它 继续保留
Atramenti-Console owning repo E:\My Project\Atramenti-Console 当前独立 git 顶层就是它 继续保留
emptyinkpot.github.io owning repo 当前 MyBlog 已明确收口到 GitHub 真源 + 服务器部署 继续保留
mortis-multica-source owning repo .codex / handoff 已把它列为 Mortis 真实源码真源 继续保留

B. 明确有当前职责、但不是第一开发真源的结构化仓

这些仓不是“活源码第一真源”,但当前仍有合理存在理由:

仓库 当前角色 依据 默认动作
my-project-qmd mirror/backup repo 当前 qmd 外置 gitdir/worktree 方案仍在使用 暂保留,后续若退役外置 gitdir 再收口
my-project-yt-dlp-mcp mirror/backup repo 当前视频 MCP 外置 gitdir/worktree 方案仍在使用 暂保留
my-project-video-audio-mcp mirror/backup repo 同上 暂保留
my-project-ffmpeg-mcp mirror/backup repo 同上 暂保留
mortis-napcat-control publish mirror 本机 .publish\mortis-napcat-control 独立指向该远端;editable source 在 Atramenti-Console 保留,但只当发布镜像
mortis-multica-watch public watch mirror GitHub 描述明确是 sanitized watch mirror 保留,但不要当源码真源
mirror-openai-skills-vendor-imports vendor/reference repo 本机 C:\Users\ASUS-KL\.codex\vendor_imports\skills 直接指向它,且保留 upstream=openai/skills 保留
golutra vendor/reference repo 本机 E:\My Project\Atramenti box\golutra 是独立 public fork 保留

C. 当前可视为独立专题仓,但缺少本机活边界证据

这些仓未表现出“快照泛滥”特征,但本轮也没有足够本机现场证据证明它们仍是当前活开发面:

仓库 当前建议角色 说明 默认动作
Lex-Universalis independent project repo 可能是独立项目,但本轮未发现本机活工作面 保留,后续按需补 ownership map
Roo-Kit independent project repo 看起来是独立公开项目,不属于 snapshot 仓 保留
DataSheet independent project repo 私有专题仓,但本轮未发现本机活工作面 保留,待核实

D. 当前存在边界冲突,后续必须二选一收口

这些仓的问题不是“纯快照”,而是“GitHub 上像独立 repo,但本机现场并没有与之对应的独立 owning repo 边界”:

仓库 当前现象 风险 推荐动作
cloude-app 本机 E:\My Project\Cloude App 仍落在 my-project-root umbrella 边界;GitHub emptyinkpot/cloude-app 已被降级归档 历史冲突边界若不落文档,仍会被误读成独立真源 当前按 umbrella 收口;只有后续补出本机独立 git 边界时才恢复独立 repo 口径
Parliamentary-Simulation GitHub 独立存在,但本机路径当前仍属于 E:\My Project 顶层 同上,但该项目已出现“远端独立 repo / 本机 umbrella 子目录 / 部署文档按独立项目 clone”三层分叉 不要直接原地硬切;先走 staged migration,再补本机独立 owning repo

执行状态(2026-04-21):

  • cloude-app
    • 本机目录 E:\My Project\Cloude App 当前 git rev-parse --show-toplevel 仍返回 E:\My Project
    • 仓内未发现直接引用 https://github.com/emptyinkpot/cloude-app
    • Startup-Hub 仍把它当作 root umbrella 内的普通一级目录看待
    • 当前建议:先正式回归 my-project-root umbrella 口径;GitHub 上的 cloude-app 暂不视为当前 owning repo,后续若真要独立开发,再补本机独立 repo 边界
    • 真实收口动作已执行:emptyinkpot/cloude-app 当前已改成 GitHub archived=true,不再继续冒充独立活仓;当前本机开发边界明确落在 umbrella 内
  • Parliamentary-Simulation
    • 本机目录 E:\My Project\Parliamentary-Simulation 当前也仍落在 my-project-root umbrella 边界
    • 但项目内部已有明确 GitHub/服务器部署口径:docs\SERVER_DEPLOYMENT_DEBUG.md 直接写了 git clone https://github.com/emptyinkpot/Parliamentary-Simulation.git
    • 项目本体也更像完整独立工程:根目录具备 deploy/server/src/pnpm-workspace.yaml、完整 README/CHANGELOG
    • 当前建议:后续应升格为独立 owning repo;也就是说,不是把 GitHub 仓降级掉,而是把本机工作边界补齐到与该 GitHub repo 对齐
    • 但当前不适合直接在 E:\My Project\Parliamentary-Simulation 原地硬切:本机目录与 GitHub 远端已经明显分叉,直接 git init / 直接改 remote 会把 root umbrella 的历史、忽略规则、本地私有载荷和远端项目历史混成一锅
    • 现场审计速记:
      • 本机顶层仍是 E:/My Project,root 仓当前仍跟踪 Parliamentary-Simulation302 个文件
      • 审计起点远端 HEAD 为 b6ca1c46533ae5dff972d3c510291d2b0063064e;当前 staged migration 已推进到 3beb49a
      • top-level local-only:08225aab32ca785bc4f300aece678b9b/assets/deploy/key/.env.local
      • top-level remote-only:.sourcery.yaml
      • 递归对比下,本机 304 个文件、远端 300 个文件、共通 299 个文件里有 291 个内容不同
    • 本轮收口结论应改为 staged migration:
      1. emptyinkpot/Parliamentary-Simulation 远端仓作为目标边界真源,先拉出一次干净 working copy
      2. 盘点本机目录相对远端的本地特有内容,区分“应进入独立 repo”“仅本地保留/忽略”“应继续留在 umbrella”
      3. 对齐 .gitignore、部署脚本、环境样例与目录结构后,再决定何时把本机工作路径切成真正独立 git 边界
      4. 在 staged migration 完成前,继续把 E:\My Project\Parliamentary-Simulation 视为 my-project-root umbrella 内的特殊待迁目录,而不是已经完成切换的独立 repo
    • 当前已知的第一轮分桶建议:
      • 应进入独立 repo:docs/SERVER_DEPLOYMENT_DEBUG.mddeploy/systemd/parliamentary-server.serviceserver/.env.example 及相关 README / 部署脚本修正
      • 仅本地保留/忽略:.env.localserver/.envkey/、异常空目录或缓存残留
      • 远端既有基线需保留:.sourcery.yaml
    • staged migration 第一条真实动作已完成:已在干净 working copy 中把 docs/SERVER_DEPLOYMENT_DEBUG.mddeploy/systemd/parliamentary-server.serviceserver/.env.example 与 README 导航入口吸收到 GitHub 独立仓,并推送提交 747d4d2docs: add server deployment baseline
    • staged migration 第二条真实动作也已完成:已继续在干净 working copy 中把 README.mddocs/SERVER_DEPLOYMENT_DEBUG.mdserver/package.json 的生产入口口径对齐到 dist/server/src/main.js,并推送提交 3beb49adocs: align server deployment entrypoints

E. 当前更像实验 / fork / mirror 仓,而不是需要立即处理的 snapshot 仓

这些仓默认应理解为 vendor/reference 或实验仓,而不是当前主问题:

仓库 当前建议角色 默认动作
ai-town vendor/reference repo 如仍有实验用途可保留;否则后续再归档
ai-office vendor/reference repo 同上
agent-office vendor/reference repo 同上
auto-coding-agent-demo vendor/reference repo 同上

F. 优先收口删除的“过量快照 / 临时镜像”仓

这批仓就是当前“为什么这么多快照”的主要来源。它们默认不该继续增长,也不该再被当成日常工作面。

F1. 同类历史快照批量仓

  • backup-gemini-history-8b7b18af0509
  • backup-gemini-history-e9f140ed02c7
  • backup-gemini-history-b4c9cd0272f3
  • backup-trae-snapshot-69c645ff1881
  • backup-trae-snapshot-69c4cc2c71ed41
  • backup-trae-snapshot-69c4cc2c71ed40
  • backup-trae-snapshot-69c4bff6be56
  • backup-trae-snapshot-69c4bb043467
  • backup-trae-snapshot-69c4bacea33e
  • backup-trae-snapshot-69c4b4c289c1
  • backup-trae-snapshot-69c4afed89c1
  • backup-trae-snapshot-69c4adc489c1

建议:

  1. 不再新增同模式新仓。
  2. 若确需保留历史,合并成一到两个统一 archive 容器,或直接导出为离线压缩包/冷备。
  3. 合并完成后,逐个删除这些分散 snapshot repo。

执行状态(2026-04-21):

  • 上述 backup-gemini-history-*backup-trae-snapshot-* 已先完成一次 archived=true 可逆收口,随后又在用户确认后执行 GitHub 真删除。
  • 当前状态:这些分散的历史快照仓已不再存在于 GitHub,可通过 gh repo view emptyinkpot/<repo> 返回 repository 不存在来复核。

F2. 一次性 workspace / 项目切面归档仓

  • backup-openclaw-workspace
  • archive-my-project-openclaw-20260418
  • archive-my-project-atramenti-console-20260418

建议:

  1. 这类仓不应继续作为“可继续开发的备用真源”。
  2. 最终目标是:保留一个统一 archive 落点即可,不再按项目切面继续新长 archive repo。

执行状态(2026-04-21):

  • backup-openclaw-workspace
  • archive-my-project-openclaw-20260418
  • archive-my-project-atramenti-console-20260418

以上 3 个仓也已先进入 archived=true,随后在用户确认后执行 GitHub 真删除;当前不再作为可见 GitHub 仓保留。

F3. 明显带有临时镜像味道、且当前未见本机活边界证据的 mirror 仓

  • mirror-claude-code-full
  • mirror-multica-style-audit
  • mirror-andrej-karpathy-skills-temp
  • mirror-markitdown-local

建议:

  1. 若本机已无对应独立 repo/worktree/长期消费链路,默认进入候选退役清单。
  2. 真有少数仍需保留者,也必须补清楚“本机路径 + 角色 + upstream/consumer 关系”。

执行状态(2026-04-21):

  • mirror-claude-code-full 已确认本机无活引用;先归档后,已在用户确认后执行 GitHub 真删除。
  • mirror-multica-style-audit 已复核本机无目录、无活引用、无消费链路证据;当前已执行 GitHub 真删除。
  • mirror-andrej-karpathy-skills-temp 已复核本机无目录、无活引用、无消费链路证据;当前已执行 GitHub 真删除。
  • mirror-markitdown-local 已完成单独复核:当前真正活用的是 markitdown-mcp 集成路径(.codex\config.toml -> E:\My Project\Atramenti-Console\codex\mcps\markitdown-mcp\server.mjs),本机未发现独立 markitdown worktree;因此也已在先归档后执行 GitHub 真删除。

默认收口目标

后续 GitHub 仓群应尽量收敛到下面 4 层:

  1. 长期活仓
    • asus-kl-codex-home
    • my-project-root
    • Atramenti-Console
    • emptyinkpot.github.io
    • mortis-multica-source
    • 仍然有真实独立边界的专题仓
  2. 有明确职责的少量 mirror/backup
    • 外置 gitdir 仍依赖的备份仓
    • 明确公开发布镜像
    • 明确 vendor/reference mirror
  3. 统一 archive
    • 少量、稳定命名、明确只读
  4. 不再保留的分散 snapshot repo
    • 同类 hash/timestamp 仓批量清理

后续执行顺序

  1. 先冻结新增:停止继续创建新的 backup-* / archive-* / mirror-* 临时仓。
  2. 再补边界:把仍然有用途的 mirror/vendor 仓补进 ownership map。
  3. 再做归并:把仍需保留的少量 snapshot/history 收敛到统一 archive 落点。
  4. 最后删除:对已确认无保留必要的分散 snapshot repo,直接做 GitHub 真删除,并把删除结果回写 canonical 文档。

本轮最重要的治理结论

  • 当前真正“太多”的不是所有 GitHub repo,而是 backup-* / archive-* / mirror-* 这一层。
  • my-project-qmd / my-project-ffmpeg-mcp / my-project-video-audio-mcp / my-project-yt-dlp-mcp 这类虽然看起来也多,但它们当前仍是外置 gitdir/worktree 方案的一部分,不应和纯 snapshot 仓混为一谈。
  • cloude-appParliamentary-Simulation 目前最需要处理的是“边界冲突”,不是立刻删除 GitHub 仓。
  • cloude-app 的真实边界收口已开始:当前 GitHub 冲突仓已 archive,本机路径明确继续归 my-project-root umbrella。
  • Parliamentary-Simulation 的真实 staged migration 已开始:公共部署资产已吸收到独立 GitHub 仓提交 747d4d2,随后又完成第二步公共入口对齐提交 3beb49a;后续再继续处理本机目录从 umbrella 迁出的动作。
  • 本轮已完成第一批真实删除:backup-gemini-history-*backup-trae-snapshot-*backup-openclaw-workspace、两份 archive-my-project-*mirror-claude-code-fullmirror-markitdown-local 已全部从 GitHub 删除。
  • 本轮又完成第二批 mirror 候选真实删除:mirror-multica-style-auditmirror-andrej-karpathy-skills-temp 已全部从 GitHub 删除。
  • 这批仓的处理顺序是“先 archive,再 delete”;当前下一轮不应重复盯住它们,而应转去处理剩余仍在 GitHub 上的边界冲突仓或仍需归并的 archive 结构。