🔄 卡若AI 同步 2026-03-12 20:17 | 更新:水桥平台对接、运营中枢参考资料、运营中枢工作台 | 排除 >20MB: 11 个

This commit is contained in:
2026-03-12 20:17:23 +08:00
parent 8146b8f747
commit 920372abfb
7 changed files with 323 additions and 7 deletions

View File

@@ -57,6 +57,7 @@ updated: "2026-03-12"
| `SKILL.md` | 本文件,仅触发与子类导航 | | `SKILL.md` | 本文件,仅触发与子类导航 |
| `写作/写作规范.md` | 写作唯一规范(人称、结构、格式、隐晦植入) | | `写作/写作规范.md` | 写作唯一规范(人称、结构、格式、隐晦植入) |
| `上传/README.md` | 上传唯一说明(路径、命令、推送步骤) | | `上传/README.md` | 上传唯一说明(路径、命令、推送步骤) |
| `上传/环境与TOKEN配置.md` | 在新电脑上跑通上传/推送所需的仓库、依赖、`.env.feishu`、DB_CONFIG 说明与完整步骤 |
| `上传/推送逻辑.md` | 飞书群推送:前 6% + 海报图、不发链接、脚本与链路 | | `上传/推送逻辑.md` | 飞书群推送:前 6% + 海报图、不发链接、脚本与链路 |
| `上传/飞书妙记转文章并发布.md` | 飞书妙记链接 → 下载文本/视频 → 写成第 X 场文章 → 发飞书群 + 小程序(一句话指令 + 步骤) | | `上传/飞书妙记转文章并发布.md` | 飞书妙记链接 → 下载文本/视频 → 写成第 X 场文章 → 发飞书群 + 小程序(一句话指令 + 步骤) |

View File

@@ -0,0 +1,142 @@
# Soul 文章上传 · 环境与 TOKEN 配置
> 目标:在**新电脑**上,只要拉下两个仓库 + 配好 TOKEN就能把文章上传到小程序、推送到飞书群。
---
## 一、需要的两个仓库
1. **书稿仓库Mycontent / 书)**
- 路径:`/Users/karuo/Documents/个人/2、我写的书/《一场soul的创业实验》`
- 作用:存放所有 md 文章,含 `2026每日派对干货/`
- Git 远端:`fnvtk/Mycontent`origin + gitea同步脚本`scripts/gitea_sync.sh`
2. **永平项目仓库(内容上传 + 飞书推送)**
- 路径示例:`/Users/karuo/Documents/开发/3、自营项目/一场soul的创业实验-永平`
- 根目录下有:
- `content_upload.py`(上传到小程序 / DB
- `scripts/send_chapter_poster_to_feishu.py`(生成海报 + 发飞书)
- `scripts/.env.feishu.example`(飞书 TOKEN 模板)
在新电脑上:
```bash
cd "/Users/karuo/Documents/个人"
git clone https://github.com/fnvtk/Mycontent.git "2、我写的书/《一场soul的创业实验》"
cd "/Users/karuo/Documents/开发/3、自营项目"
git clone https://github.com/fnvtk/Mycontent.git "一场soul的创业实验-永平" # 或从 gitea 克隆同名仓库
```
---
## 二、Python 依赖
在永平项目目录安装依赖(全局或虚拟环境均可):
```bash
cd "/Users/karuo/Documents/开发/3、自营项目/一场soul的创业实验-永平"
pip install pymysql requests Pillow
```
- `pymysql``content_upload.py` 连接腾讯云 MySQL `soul_miniprogram.chapters`
- `requests``Pillow``scripts/send_chapter_poster_to_feishu.py` 生成海报并调用飞书 webhook。
> **说明**:数据库连接配置(`DB_CONFIG`)在 `content_upload.py` 内部已写好,如需更换 DB 或密码,请在该脚本中修改。
---
## 三、飞书 TOKEN 配置(.env.feishu
飞书推送脚本会从 `scripts/.env.feishu` 读取 AppID / AppSecret 等环境变量:
1. 进入脚本目录:
```bash
cd "/Users/karuo/Documents/开发/3、自营项目/一场soul的创业实验-永平/scripts"
```
2. 基于示例创建实际配置:
```bash
cp .env.feishu.example .env.feishu
```
3. 编辑 `.env.feishu`,填入真实值:
```env
FEISHU_APP_ID=你的飞书应用AppID
FEISHU_APP_SECRET=你的飞书应用AppSecret
FEISHU_WIKI_NODE_TOKEN=FNP6wdvNKij7yMkb3xCce0CYnpd # 如需用到知识库,可保留或按实际修改
# 可选:书稿根目录
# SOUL_BOOK_ROOT=/Users/karuo/Documents/个人/2、我写的书/《一场soul的创业实验》
```
- 飞书 App 配置参考:`02_卡人/水桥_平台对接/飞书管理/运营报表_SKILL.md` 中的应用说明。
- `send_chapter_poster_to_feishu.py` 脚本内部已经写好默认的章节推送 webhook**Soul 彩民团队** 群),一般无需修改。
---
## 四、小程序上传接口content_upload.py
- 文件:`/Users/karuo/Documents/开发/3、自营项目/一场soul的创业实验-永平/content_upload.py`
- 关键配置:
```python
DB_CONFIG = {
"host": "56b4c23f6853c.gz.cdb.myqcloud.com",
"port": 14413,
"user": "cdb_outerroot",
"password": "Zhiqun1984",
"database": "soul_miniprogram",
"charset": "utf8mb4",
}
```
- 若你在新环境中使用同一数据库,**无需额外 TOKEN**,只要网络能连通腾讯云 MySQL 即可。
- 若更换为新的 DB 或账号密码,请修改 `DB_CONFIG`,保持字段名一致。
上传命令与参数见本目录下 `README.md`
- 2026 场次(`part-2026-daily` / `chapter-2026-daily`id 10.xx
- 第 9 章(`part-4` / `chapter-9`id 9.xx
---
## 五、新电脑上的完整操作步骤小抄
1. **拉代码**
- 克隆书稿仓库到:`/Users/karuo/Documents/个人/2、我写的书/《一场soul的创业实验》`
- 克隆永平项目到:`/Users/karuo/Documents/开发/3、自营项目/一场soul的创业实验-永平`
2. **装依赖**
```bash
cd "/Users/karuo/Documents/开发/3、自营项目/一场soul的创业实验-永平"
pip install pymysql requests Pillow
```
3. **配置飞书 TOKEN**
```bash
cd scripts
cp .env.feishu.example .env.feishu
# 编辑 .env.feishu 填 FEISHU_APP_ID / FEISHU_APP_SECRET
```
4. **写文章**
- 按 `写作/写作规范.md` 写第 X 场保存到指定目录第9章或 `2026每日派对干货/`)。
5. **同步书稿到 Gitea实时**
```bash
cd "/Users/karuo/Documents/个人/2、我写的书/《一场soul的创业实验》"
bash scripts/gitea_sync.sh
```
6. **按需上传小程序 / 推送飞书**
- 上传小程序:按 `上传/README.md` 中的 `content_upload.py` 命令执行。
- 推送飞书:按 `上传/README.md` 中的 `send_chapter_poster_to_feishu.py` 命令执行(仅在你说要推送时)。
> 如需在别的电脑继承整套能力:拉 KaruoAI 仓库(含本 Skill 的基因胶囊)、书稿仓库、永平项目仓库,按本文件配置环境与 TOKEN 即可。

View File

@@ -87,3 +87,67 @@
- **本机状态**Codebase Indexing 已关、硬件加速保留;`workspaceStorage` 约 2.7G、`CachedData` 约 413M定期清理 GPUCache + Cache 有助于缓解。 - **本机状态**Codebase Indexing 已关、硬件加速保留;`workspaceStorage` 约 2.7G、`CachedData` 约 413M定期清理 GPUCache + Cache 有助于缓解。
- **已做**:① 在文档中补充弹窗操作说明与「Don't restore editors」建议② 新增一键清理脚本(见四、方式一),便于退出 Cursor 后执行。 - **已做**:① 在文档中补充弹窗操作说明与「Don't restore editors」建议② 新增一键清理脚本(见四、方式一),便于退出 Cursor 后执行。
- **你可立即做的**下次弹窗时勾选「Don't restore editors」再点 Reopen在方便时 Cmd+Q 退出 Cursor执行上述清理脚本或命令后重开。 - **你可立即做的**下次弹窗时勾选「Don't restore editors」再点 Reopen在方便时 Cmd+Q 退出 Cursor执行上述清理脚本或命令后重开。
---
## 七、3/12 深度修复(终极解决 code 5 反复崩溃)
### 诊断数据
| 指标 | 数值 | 严重程度 |
|------|------|----------|
| 当日崩溃次数 | 3 次4 个会话) | 🔴 严重 |
| SQLite 嵌套事务错误 | 99 次/天 | 🔴 严重 |
| **state.vscdb 大小** | **15GB正常 <100MB** | 🔴 **根因** |
| state.vscdb.backup | 14GB | 🔴 浪费空间 |
| workspaceStorage | 2.8GB / 110 条目78 条过期) | 🟡 |
| CachedData | 583MB | 🟡 |
| 日志 | 503MB | 🟡 |
| JS 堆上限 | 未设置(默认 ~1.5GB | 🟡 |
| 同窗口工作区 | 7 个根目录 | 🟡 加重负担 |
### 根因定位
**`state.vscdb`Cursor 全局状态数据库)膨胀到 15GB 是崩溃的终极元凶。**
- `cursorDiskKV` 表积累了 103 万行 / 13.7GB 数据(正常应 <50MB
- 该数据库大到连查询都报 `database or disk is full`
- 每次 Cursor 读写此库都极度吃力引发V8 OOM → renderer crash code 5 → 窗口无响应 → Reopen 弹窗
- AgentAnalytics 的 SQLite 嵌套事务错误也与此膨胀数据库有关
### 已执行修复
| # | 修复项 | 效果 |
|---|--------|------|
| 1 | `argv.json` 加 `--max-old-space-size=8192` | V8 堆上限从 ~1.5GB → 8GB防 OOM |
| 2 | 清理 78 个过期 workspaceStorage | 释放 1084MB |
| 3 | 创建深度修复脚本 `cursor_deep_fix.sh` | 一键重置 state.vscdb + 全面清理 |
### 待用户执行(需关闭 Cursor
**Cmd+Q 退出 Cursor → 终端执行:**
```bash
bash "/Users/karuo/Documents/个人/卡若AI/运营中枢/参考资料/scripts/cursor_deep_fix.sh"
```
此脚本会:
1. 将 15GB 的 state.vscdb 移到废纸篓备份Cursor 重启自动重建干净数据库)
2. 清理 GPUCache / Cache / CachedData
3. 清理 >7 天旧日志 + >30 天过期工作区
4. 清理 Crash Reports
预计释放 **~30GB**15GB state.vscdb + 14GB backup + 583MB CachedData + 其余缓存)。
### 脚本位置
| 脚本 | 路径 | 用途 |
|------|------|------|
| 深度修复(推荐) | `运营中枢/参考资料/scripts/cursor_deep_fix.sh` | 重置膨胀数据库 + 全面清理 |
| 轻量清理 | `运营中枢/参考资料/scripts/clear_cursor_cache.sh` | 仅清 GPUCache/Cache/CachedData |
### 预防措施
- `argv.json` 已设 `--max-old-space-size=8192`(重启生效),防止 V8 堆溢出
- 建议每 2 周执行一次轻量清理脚本;若出现崩溃则执行深度修复脚本
- 尽量减少同窗口工作区数量(当前 7 个,建议控制在 3 个以内)

View File

@@ -1,17 +1,18 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# Cursor 缓存清理脚本(缓解窗口无响应/崩溃) # Cursor 缓存清理(轻量版)—— 深度修复请用 cursor_deep_fix.sh
# 使用:完全退出 Cursor 后执行本脚本;若 Cursor 在运行会提示先退出再执行。 # 使用:完全退出 Cursor 后执行
# 说明见:运营中枢/参考资料/Cursor闪退排查_20260304.md
set -e set -e
CURSOR_SUPPORT="$HOME/Library/Application Support/Cursor" CURSOR_SUPPORT="$HOME/Library/Application Support/Cursor"
if pgrep -f "Cursor.app" >/dev/null 2>&1; then if pgrep -f "Cursor.app" >/dev/null 2>&1; then
echo "⚠️ Cursor 正在运行,请先 Cmd+Q 完全退出后再执行本脚本。" echo "⚠️ Cursor 正在运行,请先 Cmd+Q 完全退出后再执行。"
echo " 执行bash \"$(dirname "$0")/clear_cursor_cache.sh\""
exit 1 exit 1
fi fi
echo "🧹 正在清理 Cursor GPUCache Cache..." echo "🧹 清理 Cursor GPUCache / Cache / CachedData..."
rm -rf "$CURSOR_SUPPORT/GPUCache" "$CURSOR_SUPPORT/Cache" rm -rf "$CURSOR_SUPPORT/GPUCache" "$CURSOR_SUPPORT/Cache" "$CURSOR_SUPPORT/CachedData"
echo "✅ 清理完成。可重新打开 Cursor。" echo "✅ 清理完成。可重新打开 Cursor。"
echo ""
echo "💡 如果仍频繁崩溃,请执行深度修复脚本:"
echo " bash \"$(dirname "$0")/cursor_deep_fix.sh\""

View File

@@ -0,0 +1,106 @@
#!/usr/bin/env bash
# Cursor 深度修复脚本(解决反复崩溃 / code 5 / Reopen 弹窗)
# 使用Cmd+Q 完全退出 Cursor → 执行本脚本 → 重新打开 Cursor
# 说明见:运营中枢/参考资料/Cursor闪退排查_20260304.md
set -euo pipefail
CURSOR_SUPPORT="$HOME/Library/Application Support/Cursor"
TRASH_DIR="$HOME/.Trash/cursor_cleanup_$(date +%Y%m%d_%H%M%S)"
# ── 检查 Cursor 是否在运行 ──
if pgrep -f "Cursor.app" >/dev/null 2>&1; then
echo "⚠️ Cursor 正在运行!请先 Cmd+Q 完全退出后再执行。"
exit 1
fi
echo "🔧 Cursor 深度修复开始..."
echo " 备份目录: $TRASH_DIR"
mkdir -p "$TRASH_DIR"
freed_mb=0
# ── 1. 重置膨胀的 state.vscdb核心修复 ──
STATE_DB="$CURSOR_SUPPORT/User/globalStorage/state.vscdb"
if [ -f "$STATE_DB" ]; then
size_mb=$(du -m "$STATE_DB" | python3 -c "import sys; print(sys.stdin.read().split()[0])")
if [ "$size_mb" -gt 200 ]; then
echo "🗄️ state.vscdb 已膨胀到 ${size_mb}MB正常 <100MB正在重置..."
mv "$STATE_DB" "$TRASH_DIR/state.vscdb"
[ -f "${STATE_DB}-shm" ] && mv "${STATE_DB}-shm" "$TRASH_DIR/"
[ -f "${STATE_DB}-wal" ] && mv "${STATE_DB}-wal" "$TRASH_DIR/"
[ -f "${STATE_DB}.backup" ] && mv "${STATE_DB}.backup" "$TRASH_DIR/"
freed_mb=$((freed_mb + size_mb))
echo " ✅ 已移到废纸篓备份Cursor 重启会自动重建干净的数据库)"
else
echo "🗄️ state.vscdb ${size_mb}MB大小正常跳过"
fi
fi
# ── 2. 清理 GPUCache + Cache ──
for cache_dir in GPUCache Cache; do
target="$CURSOR_SUPPORT/$cache_dir"
if [ -d "$target" ]; then
size=$(du -sm "$target" 2>/dev/null | python3 -c "import sys; print(sys.stdin.read().split()[0])" 2>/dev/null || echo 0)
rm -rf "$target"
freed_mb=$((freed_mb + size))
echo "🧹 清理 $cache_dir${size}MB"
fi
done
# ── 3. 清理 CachedData ──
CACHED="$CURSOR_SUPPORT/CachedData"
if [ -d "$CACHED" ]; then
size=$(du -sm "$CACHED" 2>/dev/null | python3 -c "import sys; print(sys.stdin.read().split()[0])" 2>/dev/null || echo 0)
rm -rf "$CACHED"
freed_mb=$((freed_mb + size))
echo "🧹 清理 CachedData${size}MB"
fi
# ── 4. 清理 >7天的旧日志 ──
LOGS_DIR="$CURSOR_SUPPORT/logs"
if [ -d "$LOGS_DIR" ]; then
log_freed=0
find "$LOGS_DIR" -mindepth 1 -maxdepth 1 -type d -mtime +7 | while read -r d; do
rm -rf "$d"
done
remaining=$(du -sm "$LOGS_DIR" 2>/dev/null | python3 -c "import sys; print(sys.stdin.read().split()[0])" 2>/dev/null || echo 0)
echo "🧹 清理 >7天旧日志剩余 ${remaining}MB"
fi
# ── 5. 清理 >30天的过期 workspaceStorage ──
WS_DIR="$CURSOR_SUPPORT/User/workspaceStorage"
if [ -d "$WS_DIR" ]; then
ws_count=0
find "$WS_DIR" -mindepth 1 -maxdepth 1 -type d -mtime +30 | while read -r d; do
rm -rf "$d"
ws_count=$((ws_count + 1))
done
remaining_ws=$(ls -1 "$WS_DIR" 2>/dev/null | wc -l | tr -d ' ')
echo "🧹 清理过期工作区存储(保留 ${remaining_ws} 个活跃条目)"
fi
# ── 6. 清理 Crash Reports ──
CRASH_DIR="$CURSOR_SUPPORT/Crashpad"
if [ -d "$CRASH_DIR" ]; then
size=$(du -sm "$CRASH_DIR" 2>/dev/null | python3 -c "import sys; print(sys.stdin.read().split()[0])" 2>/dev/null || echo 0)
rm -rf "$CRASH_DIR"
freed_mb=$((freed_mb + size))
echo "🧹 清理 Crashpad${size}MB"
fi
echo ""
echo "═══════════════════════════════════════"
echo "✅ 深度修复完成!预计释放 ≥${freed_mb}MB"
echo " 备份已放入: $TRASH_DIR"
echo " (确认无问题后可清空废纸篓)"
echo ""
echo "📋 修复内容:"
echo " 1. state.vscdb 膨胀数据库 → 已重置(重启自动重建)"
echo " 2. GPUCache / Cache / CachedData → 已清理"
echo " 3. 旧日志 / 过期工作区 → 已清理"
echo " 4. Crash Reports → 已清理"
echo ""
echo "🔑 下一步: 直接打开 Cursor 即可"
echo " (首次启动会稍慢 10-20 秒,因为在重建状态数据库)"
echo "═══════════════════════════════════════"

View File

@@ -306,3 +306,4 @@
| 2026-03-11 21:09:46 | 🔄 卡若AI 同步 2026-03-11 21:09 | 更新:运营中枢工作台 | 排除 >20MB: 11 个 | | 2026-03-11 21:09:46 | 🔄 卡若AI 同步 2026-03-11 21:09 | 更新:运营中枢工作台 | 排除 >20MB: 11 个 |
| 2026-03-12 12:20:59 | 🔄 卡若AI 同步 2026-03-12 12:20 | 更新:水桥平台对接、卡木、火炬、运营中枢参考资料、运营中枢工作台 | 排除 >20MB: 11 个 | | 2026-03-12 12:20:59 | 🔄 卡若AI 同步 2026-03-12 12:20 | 更新:水桥平台对接、卡木、火炬、运营中枢参考资料、运营中枢工作台 | 排除 >20MB: 11 个 |
| 2026-03-12 12:26:12 | 🔄 卡若AI 同步 2026-03-12 12:26 | 更新:水桥平台对接、运营中枢工作台 | 排除 >20MB: 11 个 | | 2026-03-12 12:26:12 | 🔄 卡若AI 同步 2026-03-12 12:26 | 更新:水桥平台对接、运营中枢工作台 | 排除 >20MB: 11 个 |
| 2026-03-12 16:42:12 | 🔄 卡若AI 同步 2026-03-12 16:42 | 更新Cursor规则、水桥平台对接、水溪整理归档、卡木、总索引与入口、运营中枢工作台 | 排除 >20MB: 11 个 |

View File

@@ -309,3 +309,4 @@
| 2026-03-11 21:09:46 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-11 21:09 | 更新:运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) | | 2026-03-11 21:09:46 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-11 21:09 | 更新:运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |
| 2026-03-12 12:20:59 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-12 12:20 | 更新:水桥平台对接、卡木、火炬、运营中枢参考资料、运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) | | 2026-03-12 12:20:59 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-12 12:20 | 更新:水桥平台对接、卡木、火炬、运营中枢参考资料、运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |
| 2026-03-12 12:26:12 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-12 12:26 | 更新:水桥平台对接、运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) | | 2026-03-12 12:26:12 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-12 12:26 | 更新:水桥平台对接、运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |
| 2026-03-12 16:42:12 | 成功 | 成功 | 🔄 卡若AI 同步 2026-03-12 16:42 | 更新Cursor规则、水桥平台对接、水溪整理归档、卡木、总索引与入口、运营中枢工作台 | 排除 >20MB: 11 个 | [仓库](http://open.quwanzhi.com:3000/fnvtk/karuo-ai) [百科](http://open.quwanzhi.com:3000/fnvtk/karuo-ai/wiki) |