refactor: ~/skills → ~/Code/skills,sync.sh 支持 cursor rules 同步

- 所有引用从 ~/skills 改为 ~/Code/skills(遵循 ~/Code/ 约定)
- sync.sh 新增 cursor/*.mdc → ~/.cursor/rules/ 自动同步
- cfg HERMES_AGENT_CONVENTIONS 同步更新

[小糯]
This commit is contained in:
小糯 (Xiaonuo) 2026-04-23 20:12:27 +08:00
parent 5a08fe9308
commit 281dc7a725
4 changed files with 53 additions and 28 deletions

View File

@ -98,7 +98,7 @@ hermes-har personality switch <name> --tg
## 家族共识 ## 家族共识
- 代码仓库统一 clone 到 `~/Code/` - 代码仓库统一 clone 到 `~/Code/`
- Skills repo 在 `~/skills/` - Skills repo 在 `~/Code/skills/`
- Node.js 用 nvm 管理,非交互 shell 需先 `export NVM_DIR="$HOME/.nvm" && . "$NVM_DIR/nvm.sh"` - Node.js 用 nvm 管理,非交互 shell 需先 `export NVM_DIR="$HOME/.nvm" && . "$NVM_DIR/nvm.sh"`
- 配置管理用 cfg CLI,`eval "$(cfg env)"` 加载环境变量 - 配置管理用 cfg CLI,`eval "$(cfg env)"` 加载环境变量
- 代码托管在 git.shazhou.work(Gitea),Git 提交末尾署名 `[你的名字]` - 代码托管在 git.shazhou.work(Gitea),Git 提交末尾署名 `[你的名字]`

View File

@ -4,13 +4,13 @@
确认 skills repo 已克隆: 确认 skills repo 已克隆:
ls ~/skills/sync.sh ls ~/Code/skills/sync.sh
确认 skills 已同步到 Hermes: 确认 skills 已同步到 Hermes:
ls ~/.hermes/skills/ ls ~/.hermes/skills/
✅ 达标:`~/skills` 存在,`~/.hermes/skills/` 下有从 repo 同步过来的 skill 目录 ✅ 达标:`~/Code/skills` 存在,`~/.hermes/skills/` 下有从 repo 同步过来的 skill 目录
## 安装 ## 安装
@ -21,13 +21,13 @@
### 同步到 Hermes ### 同步到 Hermes
cd ~/skills cd ~/Code/skills
bash sync.sh bash sync.sh
### 目录结构 ### 目录结构
``` ```
~/skills/ ~/Code/skills/
├── hermes/ # Hermes Agent skills ├── hermes/ # Hermes Agent skills
├── cursor/ # Cursor rules ├── cursor/ # Cursor rules
├── sync.sh # 同步脚本:hermes skills → ~/.hermes/skills/ ├── sync.sh # 同步脚本:hermes skills → ~/.hermes/skills/
@ -43,4 +43,4 @@
有新 skill 更新时: 有新 skill 更新时:
cd ~/skills && git pull && bash sync.sh cd ~/Code/skills && git pull && bash sync.sh

View File

@ -73,7 +73,7 @@ check "cursor-agent 已安装" "command -v cursor-agent"
check "CURSOR_API_KEY 可用" "test -n \"\$CURSOR_API_KEY\"" check "CURSOR_API_KEY 可用" "test -n \"\$CURSOR_API_KEY\""
echo "11. Skills" echo "11. Skills"
check "skills repo 已克隆" "test -d ~/skills/.git" check "skills repo 已克隆" "test -d ~/Code/skills/.git"
check "skills 已同步" "ls ~/.hermes/skills/ | grep -qv '^$'" check "skills 已同步" "ls ~/.hermes/skills/ | grep -qv '^$'"

67
sync.sh
View File

@ -1,37 +1,62 @@
#!/bin/bash #!/bin/bash
# 同步 shazhou/skills 到各目标 # 同步 shazhou/skills 到各目标
# - hermes/ → ~/.hermes/skills/ # - hermes/ → ~/.hermes/skills/
# - CONVENTIONS.md → ~/.hermes/CONVENTIONS.md # - cursor/ → ~/.cursor/rules/
# - cursor/ → 不自动同步(手动复制到各项目 .cursor/rules/)
# 用法:bash sync.sh # 用法:bash sync.sh
set -euo pipefail set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
SOURCE="$SCRIPT_DIR/hermes"
HERMES_HOME="${HERMES_HOME:-$HOME/.hermes}" HERMES_HOME="${HERMES_HOME:-$HOME/.hermes}"
TARGET="$HERMES_HOME/skills"
if [ ! -d "$SOURCE" ]; then echo "🔄 沙洲家族 Skills 同步"
echo "❌ 找不到 $SOURCE" echo "========================"
exit 1 echo ""
# --- Hermes skills ---
HERMES_SOURCE="$SCRIPT_DIR/hermes"
HERMES_TARGET="$HERMES_HOME/skills"
if [ -d "$HERMES_SOURCE" ]; then
mkdir -p "$HERMES_TARGET"
count=0
for skill_dir in "$HERMES_SOURCE"/*/; do
[ -d "$skill_dir" ] || continue
skill_name=$(basename "$skill_dir")
rsync -a --delete "$skill_dir" "$HERMES_TARGET/$skill_name/"
echo " ✅ hermes: $skill_name"
count=$((count + 1))
done
echo ""
echo "Hermes skills: $count$HERMES_TARGET"
else
echo "⚠️ hermes/ 目录不存在,跳过"
fi fi
mkdir -p "$TARGET" echo ""
# 同步 hermes skills # --- Cursor rules ---
count=0 CURSOR_SOURCE="$SCRIPT_DIR/cursor"
for skill_dir in "$SOURCE"/*/; do CURSOR_TARGET="$HOME/.cursor/rules"
skill_name=$(basename "$skill_dir")
target_dir="$TARGET/$skill_name" if [ -d "$CURSOR_SOURCE" ]; then
rsync -a --delete "$skill_dir" "$target_dir/" mkdir -p "$CURSOR_TARGET"
echo "$skill_name" count=0
count=$((count + 1)) for rule_file in "$CURSOR_SOURCE"/*.mdc; do
done [ -f "$rule_file" ] || continue
cp "$rule_file" "$CURSOR_TARGET/"
echo " ✅ cursor rule: $(basename "$rule_file")"
count=$((count + 1))
done
echo ""
echo "Cursor rules: $count$CURSOR_TARGET"
else
echo "⚠️ cursor/ 目录不存在,跳过"
fi
echo "" echo ""
echo "同步完成!共 $count 个 hermes skills → $TARGET" echo "========================"
echo "✅ 同步完成"
echo "" echo ""
echo "💡 cursor/ 下的 .mdc 文件请手动复制到项目的 .cursor/rules/" echo "💡 家族共识通过 cfg (HERMES_AGENT_CONVENTIONS) 管理"
echo "💡 家族共识通过 cfg (FAMILY_CONVENTIONS) 管理,hermes-har personality switch 时自动 append 到 SOUL.md" echo "💡 hermes-har personality switch 时自动 append 到 SOUL.md"