🔄 卡若AI 同步 2026-03-20 12:45 | 更新:多目录更新 | 排除 >20MB: 11 个

This commit is contained in:
2026-03-20 12:45:56 +08:00
parent fcea652316
commit 63c5618b11
3 changed files with 571 additions and 0 deletions

View File

@@ -0,0 +1,124 @@
#!/bin/bash
# 远程在阿猫 Mac 上执行卡若AI测试通过SSH
# 用法:在卡若 Mac 上执行bash remote_test_amiao.sh
SSH_HOST="kr@macbook.quwanzhi.com"
SSH_PORT="22203"
REMOTE_SCRIPT='bash -s <<'\''REMOTE_EOF'\''
set -euo pipefail
echo "=========================================="
echo "卡若AI 远程测试(阿猫 Mac"
echo "=========================================="
echo "测试时间: $(date '\''+%Y-%m-%d %H:%M:%S'\'')"
echo ""
# 检测卡若AI路径
KAI_PATHS=(
"$HOME/Library/Mobile Documents/com~apple~CloudDocs/Documents/婼瑄/卡若AI"
"$HOME/Library/Mobile Documents/com~apple~CloudDocs/婼瑄/卡若AI"
"$HOME/Documents/个人/卡若AI"
)
KAI=""
for p in "${KAI_PATHS[@]}"; do
if [[ -d "$p" ]]; then
KAI="$p"
break
fi
done
if [[ -z "$KAI" ]]; then
echo "❌ 未找到卡若AI目录"
exit 1
fi
echo "✅ 卡若AI路径: $KAI"
cd "$KAI"
# 检查核心文件
echo ""
echo "【核心文件检查】"
for f in "BOOTSTRAP.md" "SKILL_REGISTRY.md" ".cursor/rules/karuo-ai.mdc"; do
[[ -f "$f" ]] && echo " ✅ $f" || echo " ❌ $f"
done
# 检查 Skills
echo ""
echo "【Agent Skills】"
if [[ -d ".cursor/skills" ]]; then
COUNT=$(find .cursor/skills -name "SKILL.md" 2>/dev/null | wc -l | tr -d ' ')
echo " ✅ 找到 $COUNT 个 Skills"
find .cursor/skills -name "SKILL.md" 2>/dev/null | while read f; do
echo " - $(dirname "$f" | sed "s|.cursor/skills/||")"
done
else
echo " ❌ .cursor/skills 不存在"
fi
# 检查飞书功能
echo ""
echo "【飞书功能】"
FEISHU_SKILLS=(
"02_卡人/水桥_平台对接/飞书管理/SKILL.md"
"02_卡人/水桥_平台对接/飞书管理/运营报表_SKILL.md"
)
for f in "${FEISHU_SKILLS[@]}"; do
[[ -f "$f" ]] && echo " ✅ $(basename "$f")" || echo " ⚠️ $f"
done
# Python环境
echo ""
echo "【Python环境】"
if command -v python3 &>/dev/null; then
echo " ✅ $(python3 --version 2>&1)"
for mod in "requests" "openpyxl"; do
python3 -c "import $mod" 2>/dev/null && echo " ✅ $mod" || echo " ⚠️ $mod"
done
else
echo " ❌ Python3 未安装"
fi
# Cursor
echo ""
echo "【Cursor IDE】"
if [[ -d "/Applications/Cursor.app" ]] || command -v cursor &>/dev/null; then
echo " ✅ Cursor 已安装"
else
echo " ⚠️ Cursor 未检测到"
fi
# 模型检测
echo ""
echo "【Cursor 模型配置】"
CONFIG="$HOME/.cursor/User/settings.json"
if [[ -f "$CONFIG" ]]; then
if grep -q "cursor.general.model" "$CONFIG" 2>/dev/null; then
MODEL=$(grep "cursor.general.model" "$CONFIG" | head -1 | sed '\''s/.*"cursor.general.model"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/'\'' || echo "默认")
echo " 模型: $MODEL"
else
echo " 模型: Cursor 默认Claude Sonnet 或 GPT-4"
fi
else
echo " 模型: 使用 Cursor 默认设置"
fi
# 测试文件写入
echo ""
echo "【自主对话测试】"
TEST_FILE="$KAI/_test_remote_$(date +%Y%m%d_%H%M%S).txt"
echo "测试消息" > "$TEST_FILE" 2>/dev/null && echo " ✅ 文件写入正常" && rm -f "$TEST_FILE" || echo " ⚠️ 文件写入可能受限"
echo ""
echo "=========================================="
echo "测试完成"
echo "=========================================="
REMOTE_EOF'
echo "正在通过 SSH 在阿猫 Mac 上执行测试..."
ssh -o ConnectTimeout=25 -o ServerAliveInterval=10 -p "$SSH_PORT" "$SSH_HOST" "$REMOTE_SCRIPT" 2>&1 || {
echo ""
echo "❌ SSH 连接失败,请使用本地测试脚本:"
echo " 在阿猫 Mac 上执行:"
echo " bash '$HOME/Library/Mobile Documents/com~apple~CloudDocs/Documents/婼瑄/卡若AI/_Soul运营技能包导出/test_karuo_ai_on_amiao.sh'"
echo " 或通过 iCloud 同步后运行"
}

View File

@@ -0,0 +1,216 @@
#!/bin/bash
# 卡若AI 在阿猫 Mac 上的完整功能测试脚本
# 用法:在阿猫 Mac 终端执行bash test_karuo_ai_on_amiao.sh
set -euo pipefail
echo "=========================================="
echo "卡若AI 完整功能测试(阿猫 Mac"
echo "=========================================="
echo ""
# 1. 检测卡若AI路径
KAI_PATHS=(
"$HOME/Library/Mobile Documents/com~apple~CloudDocs/Documents/婼瑄/卡若AI"
"$HOME/Library/Mobile Documents/com~apple~CloudDocs/婼瑄/卡若AI"
"$HOME/Documents/个人/卡若AI"
"$HOME/Documents/卡若AI"
)
KAI=""
for p in "${KAI_PATHS[@]}"; do
if [[ -d "$p" ]]; then
KAI="$p"
break
fi
done
if [[ -z "$KAI" ]]; then
echo "❌ 未找到卡若AI目录"
echo "已尝试路径:"
for p in "${KAI_PATHS[@]}"; do
echo " - $p"
done
exit 1
fi
echo "✅ 找到卡若AI: $KAI"
cd "$KAI"
# 2. 检查核心文件
echo ""
echo "【2/8】检查核心文件..."
MISSING=0
for f in "BOOTSTRAP.md" "SKILL_REGISTRY.md" ".cursor/rules/karuo-ai.mdc"; do
if [[ -f "$f" ]]; then
echo "$f"
else
echo " ❌ 缺失: $f"
MISSING=$((MISSING + 1))
fi
done
# 3. 检查 Cursor Skills
echo ""
echo "【3/8】检查 Cursor Agent Skills..."
SKILLS_DIR=".cursor/skills"
if [[ -d "$SKILLS_DIR" ]]; then
SKILL_COUNT=$(find "$SKILLS_DIR" -name "SKILL.md" | wc -l | tr -d ' ')
echo " ✅ 找到 $SKILL_COUNT 个 Agent Skills"
find "$SKILLS_DIR" -name "SKILL.md" | while read f; do
echo " - $(dirname "$f" | sed "s|$SKILLS_DIR/||")"
done
else
echo " ❌ .cursor/skills 目录不存在"
MISSING=$((MISSING + 1))
fi
# 4. 检查飞书相关技能
echo ""
echo "【4/8】检查飞书相关功能..."
FEISHU_SKILLS=(
"02_卡人/水桥_平台对接/飞书管理/SKILL.md"
"02_卡人/水桥_平台对接/飞书管理/运营报表_SKILL.md"
"02_卡人/水桥_平台对接/智能纪要/SKILL.md"
)
FEISHU_OK=0
for f in "${FEISHU_SKILLS[@]}"; do
if [[ -f "$f" ]]; then
echo "$(basename "$f")"
FEISHU_OK=$((FEISHU_OK + 1))
else
echo " ⚠️ 缺失: $f"
fi
done
# 5. 检查飞书脚本
echo ""
echo "【5/8】检查飞书脚本..."
FEISHU_SCRIPTS=(
"02_卡人/水桥_平台对接/飞书管理/脚本/write_today_three_focus.py"
"02_卡人/水桥_平台对接/飞书管理/脚本/send_review_to_feishu_webhook.py"
)
for s in "${FEISHU_SCRIPTS[@]}"; do
if [[ -f "$s" ]]; then
if python3 -c "import sys; sys.path.insert(0, '$(dirname "$s")'); import os; os.chdir('$(dirname "$s")'); exec(open('$(basename "$s")').read())" --help 2>/dev/null || python3 "$s" --help 2>/dev/null || true; then
echo "$(basename "$s") 可执行"
else
echo " ⚠️ $(basename "$s") 存在但可能缺少依赖"
fi
else
echo " ❌ 缺失: $s"
fi
done
# 6. 测试 Python 环境
echo ""
echo "【6/8】检查 Python 环境..."
if command -v python3 &>/dev/null; then
PY_VER=$(python3 --version 2>&1 | awk '{print $2}')
echo " ✅ Python $PY_VER"
# 检查关键依赖
for mod in "requests" "paramiko" "openpyxl"; do
if python3 -c "import $mod" 2>/dev/null; then
echo "$mod"
else
echo " ⚠️ $mod 未安装(部分功能可能不可用)"
fi
done
else
echo " ❌ Python3 未安装"
MISSING=$((MISSING + 1))
fi
# 7. 检查 Cursor 安装
echo ""
echo "【7/8】检查 Cursor IDE..."
if [[ -d "/Applications/Cursor.app" ]] || command -v cursor &>/dev/null; then
echo " ✅ Cursor 已安装"
if command -v cursor &>/dev/null; then
CURSOR_VER=$(cursor --version 2>&1 | head -1 || echo "未知版本")
echo " 版本: $CURSOR_VER"
fi
else
echo " ⚠️ Cursor 未检测到(可能未在 PATH 或未安装)"
fi
# 8. 测试自主对话能力(模拟)
echo ""
echo "【8/8】测试自主对话能力..."
echo " 创建测试对话文件..."
TEST_MSG="测试卡若AI在阿猫Mac上的功能"
TEST_FILE="$KAI/_test_amiao_dialog_$(date +%Y%m%d_%H%M%S).txt"
cat > "$TEST_FILE" <<EOF
【测试对话】$(date '+%Y-%m-%d %H:%M:%S')
用户: $TEST_MSG
卡若AI: 收到测试消息。卡若AI在阿猫Mac上运行正常。
EOF
if [[ -f "$TEST_FILE" ]]; then
echo " ✅ 测试文件创建成功: $(basename "$TEST_FILE")"
rm -f "$TEST_FILE"
else
echo " ❌ 无法创建测试文件"
fi
# 9. 检测使用的模型/模式
echo ""
echo "【9/9】检测 Cursor 模型配置..."
CURSOR_CONFIG="$HOME/.cursor/User/settings.json"
if [[ -f "$CURSOR_CONFIG" ]]; then
echo " ✅ 找到 Cursor 配置"
if grep -q "cursor.general.model" "$CURSOR_CONFIG" 2>/dev/null; then
MODEL=$(grep "cursor.general.model" "$CURSOR_CONFIG" | head -1 | sed 's/.*"cursor.general.model"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/' || echo "未明确指定")
echo " 模型: $MODEL"
else
echo " 模型: 使用默认模型Cursor 自动选择)"
fi
# 检查 Agent 模式
if grep -q "cursor.agent" "$CURSOR_CONFIG" 2>/dev/null; then
AGENT_MODE=$(grep -i "cursor.agent" "$CURSOR_CONFIG" | head -1 || echo "默认")
echo " Agent 模式: $AGENT_MODE"
fi
else
echo " ⚠️ 未找到 Cursor 用户配置(可能使用默认设置)"
fi
# 总结
echo ""
echo "=========================================="
echo "测试总结"
echo "=========================================="
echo "卡若AI路径: $KAI"
echo "核心文件: $((3 - MISSING))/3"
echo "Agent Skills: $SKILL_COUNT"
echo "飞书技能: $FEISHU_OK/${#FEISHU_SKILLS[@]}"
echo ""
if [[ $MISSING -eq 0 ]] && [[ $FEISHU_OK -ge 2 ]]; then
echo "✅ 卡若AI 在阿猫 Mac 上配置完整,可以正常使用"
echo ""
echo "【使用方式】"
echo "1. 打开 Cursor IDE"
echo "2. 打开文件夹: $KAI"
echo "3. 在 Cursor 中与卡若AI对话触发词见 SKILL_REGISTRY.md"
echo "4. 飞书相关:"
echo " - 运营报表: '运营报表' 或 '派对填表'"
echo " - 飞书日志: '写飞书日志' 或 '飞书日志'"
echo " - 智能纪要: '会议纪要' 或 '飞书妙记'"
else
echo "⚠️ 部分功能可能缺失,请检查上述 ❌ 项"
fi
echo ""
echo "【模型信息】"
if [[ -f "$CURSOR_CONFIG" ]] && grep -q "cursor.general.model" "$CURSOR_CONFIG" 2>/dev/null; then
echo " 使用模型: $(grep "cursor.general.model" "$CURSOR_CONFIG" | head -1 | sed 's/.*"cursor.general.model"[[:space:]]*:[[:space:]]*"\([^"]*\)".*/\1/')"
else
echo " 使用模型: Cursor 默认模型(通常为 Claude Sonnet 或 GPT-4"
echo " 提示: 可在 Cursor Settings → Models 查看当前使用的模型"
fi
echo ""
echo "测试完成时间: $(date '+%Y-%m-%d %H:%M:%S')"

View File

@@ -0,0 +1,231 @@
# 卡若AI 在阿猫 Mac 上的完整测试说明
> 测试时间2026-03-20
> 目标验证卡若AICursor完整功能、飞书操作、自主对话能力
---
## 一、快速测试(推荐)
### 方法1通过 iCloud 同步的测试脚本
1. **等待 iCloud 同步完成**(卡若已把测试脚本放入 `_Soul运营技能包导出/`
2. **在阿猫 Mac 上打开终端**,执行:
```bash
# 自动检测路径并运行测试
bash "$HOME/Library/Mobile Documents/com~apple~CloudDocs/Documents/婼瑄/卡若AI/_Soul运营技能包导出/test_karuo_ai_on_amiao.sh"
```
或如果路径是 `CloudDocs/婼瑄/卡若AI`(无 Documents
```bash
bash "$HOME/Library/Mobile Documents/com~apple~CloudDocs/婼瑄/卡若AI/_Soul运营技能包导出/test_karuo_ai_on_amiao.sh"
```
### 方法2手动检查如果脚本不可用
在终端执行以下命令检查:
```bash
# 1. 找到卡若AI路径
KAI="$HOME/Library/Mobile Documents/com~apple~CloudDocs/Documents/婼瑄/卡若AI"
# 或
KAI="$HOME/Library/Mobile Documents/com~apple~CloudDocs/婼瑄/卡若AI"
# 2. 检查核心文件
cd "$KAI"
ls -la BOOTSTRAP.md SKILL_REGISTRY.md .cursor/rules/karuo-ai.mdc
# 3. 检查 Agent Skills
ls -la .cursor/skills/
# 4. 检查飞书功能
ls -la "02_卡人/水桥_平台对接/飞书管理/SKILL.md"
ls -la "02_卡人/水桥_平台对接/飞书管理/脚本/"
# 5. 检查 Python
python3 --version
python3 -c "import requests; print('requests OK')"
# 6. 检查 Cursor
ls -la /Applications/Cursor.app 2>/dev/null || echo "Cursor 未在 /Applications"
```
---
## 二、功能测试清单
### ✅ 核心功能
- [ ] **卡若AI 目录存在**`Library/Mobile Documents/.../婼瑄/卡若AI`
- [ ] **BOOTSTRAP.md**:启动文件存在
- [ ] **SKILL_REGISTRY.md**:技能注册表存在
- [ ] **.cursor/rules/karuo-ai.mdc**Cursor 规则存在
### ✅ Agent SkillsCursor 入口)
- [ ] **soul-operation-report**Soul 运营报表技能
- [ ] **soul-party-project**Soul 项目管理技能
### ✅ 飞书功能
- [ ] **飞书管理 SKILL.md**`02_卡人/水桥_平台对接/飞书管理/SKILL.md`
- [ ] **运营报表 SKILL**`运营报表_SKILL.md`
- [ ] **飞书脚本**
- `write_today_three_focus.py`(写飞书日志)
- `send_review_to_feishu_webhook.py`(复盘发群)
### ✅ 自主对话能力
**Cursor IDE** 中:
1. **打开卡若AI 文件夹**(上述 KAI 路径)
2. **在 Cursor 聊天窗口输入**
```
写飞书日志
```
```
运营报表
```
3. **验证**卡若AI 应能识别触发词并执行对应技能
### ✅ Python 环境
```bash
python3 --version # 应显示 Python 3.x
python3 -c "import requests, openpyxl; print('依赖OK')"
```
---
## 三、查看使用的模型/模式
### 方法1Cursor Settings
1. 打开 **Cursor IDE**
2. 按 `Cmd + ,` 打开设置
3. 搜索 **"model"** 或 **"Models"**
4. 查看当前使用的模型(通常是 **Claude Sonnet** 或 **GPT-4**
### 方法2查看配置文件
在终端执行:
```bash
cat "$HOME/.cursor/User/settings.json" | grep -i "model" | head -5
```
### 方法3在 Cursor 中询问
在 Cursor 聊天窗口输入:
```
你使用的是什么模型?
```
---
## 四、完整测试流程
### 步骤1环境检查
```bash
# 运行测试脚本见方法1
bash test_karuo_ai_on_amiao.sh
```
### 步骤2打开 Cursor 测试
1. **打开 Cursor IDE**
2. **File → Open Folder** → 选择卡若AI 目录
3. **在聊天窗口测试**
```
测试1: 写飞书日志
测试2: 运营报表
测试3: 会议纪要
```
### 步骤3验证飞书操作
```bash
# 测试飞书日志脚本
cd "$KAI/02_卡人/水桥_平台对接/飞书管理/脚本"
python3 write_today_three_focus.py
```
### 步骤4查看模型信息
在 Cursor 中询问或查看 Settings → Models
---
## 五、预期结果
### ✅ 成功标志
1. **测试脚本输出**
- ✅ 找到卡若AI路径
- ✅ 核心文件完整
- ✅ Agent Skills 数量 ≥ 2
- ✅ 飞书功能可用
- ✅ Python 环境正常
2. **Cursor 中**
- 能识别触发词(如"写飞书日志"
- 能执行对应技能
- 能自主对话
3. **模型信息**
- 显示具体模型名称(如 `claude-sonnet-4` 或 `gpt-4`
---
## 六、问题排查
### ❌ 找不到卡若AI目录
**解决**:检查 iCloud 同步状态
```bash
# 查看 iCloud 路径
ls -la "$HOME/Library/Mobile Documents/com~apple~CloudDocs/Documents/婼瑄/"
ls -la "$HOME/Library/Mobile Documents/com~apple~CloudDocs/婼瑄/"
```
### ❌ Cursor 未安装
**解决**:下载安装 Cursor
- 官网https://cursor.sh
- 或从已挂载的 DMG 安装
### ❌ Python 依赖缺失
**解决**
```bash
pip3 install requests openpyxl paramiko
```
### ❌ 飞书功能不可用
**检查**
1. 飞书 Token 是否配置(见 `运营中枢/工作台/00_账号与API索引.md`
2. 脚本权限:`chmod +x *.py`
---
## 七、测试完成后
请将以下信息反馈给卡若:
1. **测试脚本输出**(完整)
2. **使用的模型**(从 Cursor Settings 或测试脚本输出)
3. **功能可用性**
- [ ] 核心文件完整
- [ ] Agent Skills 可用
- [ ] 飞书功能可用
- [ ] 自主对话正常
---
**测试脚本位置**`卡若AI/_Soul运营技能包导出/test_karuo_ai_on_amiao.sh`