Nagi 的 Claude Code 个人配置仓库:全局 CLAUDE.md + 三个科研/教学 skills,通过 git 同步到所有机器。
⚠️ 建议设为 私有仓库(CLAUDE.md 里含个人研究信息与 Notion 数据库 ID)。
claude-config/
├── install.sh # 软链接安装脚本(幂等,可重复执行)
├── claude/CLAUDE.md # 全局记忆:研究背景 + 教学式编程约定(v2)
└── skills/
├── coding-mentor/ # 教学式结对编程与调试导师(v2,基于技能形成实证研究)
├── llm-training-tutor/ # LLM 训练边做边学导师
├── paper-finder/ # 论文检索与文献地图(v2,整合社区高分 skills 方法论)
└── paper-reading-notion/ # 论文三遍精读 → Notion 入库
版本对应:本仓库内容与 claude.ai 账户里上传的 .skill 保持一致(2026-07-22 同步)。以本仓库为唯一真源,改动后记得在 chat 端重传对应 .skill。
Claude Code 每次新开会话时,会自动读取 ~/.claude/CLAUDE.md(全局记忆)和 ~/.claude/skills/ 下的各个 skill。本仓库利用这一点,用软链接把这些位置指向仓库内的文件:
~/.claude/CLAUDE.md ──软链接──▶ ~/claude-config/claude/CLAUDE.md
~/.claude/skills/<skill名>/ ──软链接──▶ ~/claude-config/skills/<skill名>/
▲
└── git pull / push 同步的就是这里
三个环节各司其职:
- GitHub 私有仓库 = 唯一真源。所有配置修改最终都以 commit 形式存在这里,天然带版本历史,改坏了可以回滚。
install.sh= 每台机器的一次性接线。它只做一件事:在~/.claude/里创建指向仓库文件的软链接。如果发现已有真实文件(非链接),会先备份为*.backup.<时间戳>再链接,不会吃掉本机原有配置。脚本幂等,重复执行无副作用。git pull= 日常同步。因为 Claude Code 读到的"文件"其实是指向仓库的链接,pull 更新仓库内容后,下一个新会话立即读到新版本——不存在"改了仓库但忘了重装"的漂移。
唯一需要重跑 install.sh 的情况:仓库里新增或删除了 skill 目录(链接本身要增减);只改文件内容时永远不用重跑。
git clone https://github.com/<你的用户名>/claude-config.git ~/claude-config
cd ~/claude-config && ./install.sh脚本会把文件软链接到 ~/.claude/(已有同名文件会先备份,不会丢)。新开的 Claude Code 会话自动生效。
- 改配置:在任意机器上编辑仓库里的文件 →
git commit && git push - 其他机器:
git -C ~/claude-config pull—— 因为是软链接,pull 完立即生效,不需要重跑 install.sh(只有新增/删除 skill 目录时才需要重跑一次) - 懒人自动拉取(可选):在
~/.zshrc或~/.bashrc加一行,每次开终端后台静默同步:(git -C ~/claude-config pull --ff-only -q 2>/dev/null &)
- claude.ai / Cowork 端与本仓库无关:官方文档确认 chat 端读的是账户级 skills(Settings → Capabilities 里保存的 .skill),自动跨设备同步,无需 git。同一个 skill 想两端都用,就两边各放一份(chat 端传 .skill,Code 端走本仓库)。改动时记得两边都更新,或以本仓库为唯一真源、chat 端定期重传。
- Windows 机器:
ln -s需要开发者模式或管理员权限;最简单的替代是用git pull后手动复制,或在 WSL 里跑 Claude Code。 - paper-reading-notion 在 Code 端的前提:需要 Notion MCP:
claude mcp add --transport http notion https://mcp.notion.com/mcp
- 机器专属、不想同步的内容(如某台机器的 API key、本机路径)放
~/.claude/settings.json或项目级.claude/,不要提交进本仓库。
把 skills 打包成 Claude Code plugin marketplace(本仓库加一个 .claude-plugin/marketplace.json 即可),对方一行安装、一行更新:
claude plugin marketplace add <你的用户名>/claude-config
claude plugin install <plugin名>
claude plugin update <plugin名> # 获取你 push 的新版本(注意:plugin 只能承载 skills/hooks/MCP 配置,CLAUDE.md 不在 plugin 范围内,所以自用同步仍以本仓库的软链接方式为主。)