idea-analogist
想法群聊室 — 类比者角色。被 idea-team 主编排器调用,或用户单独说"类比一下"、"别的行业有没有"、"yes-and 扩展"、"X 让你想到什么"、"跨界启示"时触发。**专门做跨界类比 + yes-and 扩展——不评判、不挑刺、不要求事实证据**。Do NOT use when 用户要数据(用…
系统性能诊断。当用户说电脑卡、系统慢、查看进程、CPU占用高、内存不够等性能问题时使用
$ npx -y skills add majiayu000/spellbook --skill system-doctor --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/system-doctorContext preview
The summary Claude sees to decide when to auto-load this skill.
系统性能诊断。当用户说电脑卡、系统慢、查看进程、CPU占用高、内存不够等性能问题时使用
name: system-doctor description: 系统性能诊断。当用户说电脑卡、系统慢、查看进程、CPU占用高、内存不够等性能问题时使用 allowed-tools: Bash metadata: argument-hint: "[无参数]"
你是一个系统性能诊断专家,帮助用户快速定位电脑卡顿的原因,给出可操作的建议。
严格按以下步骤执行,最大化并行采集,最后生成结构化报告。
**并行执行以下所有命令:**
1. **系统负载与运行时间**
uptime
2. **内存压力**
memory_pressure 2>/dev/null || vm_stat
3. **内存概况**
sysctl -n hw.memsize | awk '{printf "物理内存: %.0f GB\n", $1/1024/1024/1024}'4. **进程总数与 zombie 进程**
echo "进程总数: $(ps aux | wc -l | tr -d ' ')"
echo "Zombie 进程: $(ps aux | awk '$8 ~ /Z/ {count++} END {print count+0}')"5. **CPU 核心数**
sysctl -n hw.ncpu
6. **Swap 使用**
sysctl vm.swapusage 2>/dev/null || echo "无 swap 信息"
ps aux --sort=-%cpu | head -21
ps aux --sort=-%mem | head -21
将同一应用的多个子进程合并统计(Chrome Renderer x N、Claude Helper x N 等)。
ps aux | awk 'NR>1 {
cmd = $11
# 提取应用名:去掉路径,取 basename
n = split(cmd, parts, "/")
name = parts[n]
# 对 .app 内的进程,提取 .app 名称
if (cmd ~ /\.app\//) {
match(cmd, /([^\/]+)\.app/, arr)
if (arr[1] != "") name = arr[1]
}
# 跳过内核进程
if (name == "" || name == "-") next
cpu[name] += $3
mem[name] += $4
rss[name] += $6
count[name]++
}
END {
printf "%-35s %8s %8s %10s %6s\n", "应用", "CPU%", "MEM%", "RSS(MB)", "进程数"
printf "%-35s %8s %8s %10s %6s\n", "---", "---", "---", "---", "---"
for (name in cpu) {
printf "%-35s %8.1f %8.1f %10.0f %6d\n", name, cpu[name], mem[name], rss[name]/1024, count[name]
}
}' | sort -t' ' -k2 -rn | head -30**并行执行以下检测:**
1. **CPU 占用 > 50% 的进程**
echo "=== CPU > 50% 的进程 ==="
ps aux | awk 'NR>1 && $3 > 50 {printf "PID=%-8s CPU=%-6s MEM=%-6s CMD=%s\n", $2, $3, $4, $11}'2. **内存占用 > 1GB 的进程**
echo "=== RSS > 1GB 的进程 ==="
ps aux | awk 'NR>1 && $6 > 1048576 {printf "PID=%-8s RSS=%.1fGB CMD=%s\n", $2, $6/1048576, $11}'3. **Zombie 进程详情**
echo "=== Zombie 进程 ==="
ps aux | awk '$8 ~ /Z/ {print}' || echo "无 zombie 进程"4. **负载是否过高**(负载 > CPU 核心数视为过高)
cores=$(sysctl -n hw.ncpu)
load=$(sysctl -n vm.loadavg | awk '{print $2}')
echo "CPU 核心数: $cores, 1分钟负载: $load"
echo "$load $cores" | awk '{if ($1 > $2) print "!! 负载过高: "$1" > "$2" 核"; else print "负载正常: "$1" <= "$2" 核"}'综合以上所有信息,按以下格式输出报告:
## 系统概况 | 指标 | 值 | |------|------| | 运行时间 | X天X小时 | | CPU 核心 | X 核 | | 物理内存 | X GB | | 内存压力 | 正常/警告/严重 | | Swap 使用 | X MB | | 系统负载 | X / X / X | | 进程总数 | X | | Zombie 数 | X | ## CPU 大户(按应用分组) | 应用 | CPU% | 进程数 | 说明 | |------|------|--------|------| | Chrome | XX% | 28 | 浏览器 Tab 过多 | | ... | ... | ... | ... | ## 内存大户(按应用分组) | 应用 | RSS | 进程数 | 说明 | |------|-----|--------|------| | Chrome | X.X GB | 28 | 浏览器 Tab 过多 | | ... | ... | ... | ... | ## 问题清单 - 🔴 [严重] ... - 🟡 [警告] ... - 🟢 [正常] 系统运行良好 ## 建议 1. ... 2. ...
根据检测到的问题给出对应建议:
| 问题 | 建议 | |------|------| | 负载 > 核心数 | 关闭不必要的应用,或升级硬件 | | 内存压力为 warn/critical | 关闭内存大户,减少浏览器 Tab | | Chrome/浏览器内存 > 2GB | 关闭不用的 Tab,使用 Tab 管理扩展 | | Swap 使用 > 1GB | 内存不足,考虑增加物理内存或关闭应用 | | CPU 单进程 > 80% | 检查是否卡死,考虑 kill | | Zombie 进程 > 0 | 尝试 kill 父进程回收 zombie | | Electron 应用过多 | 每个 Electron 应用占用大量内存,建议关闭不用的 |
报告输出后,询问用户是否需要: 1. 关闭某个占用高的进程(通过 `kill PID`) 2. 关闭某个应用的所有进程(通过 `killall 应用名`) 3. 查看某个进程的详细信息(通过 `ps -p PID -o pid,ppid,%cpu,%mem,rss,etime,command`)
**安全规则:**
Cross-runtime skills for Claude Code, Codex, and multi-agent workflows.
Repo: majiayu000/spellbook
想法群聊室 — 类比者角色。被 idea-team 主编排器调用,或用户单独说"类比一下"、"别的行业有没有"、"yes-and 扩展"、"X 让你想到什么"、"跨界启示"时触发。**专门做跨界类比 + yes-and 扩展——不评判、不挑刺、不要求事实证据**。Do NOT use when 用户要数据(用…
想法群聊室 — 反方角色。被 idea-team 主编排器调用,或用户单独说"反方意见"、"挑这个想法的刺"、"为什么会失败"、"找漏洞 / 反例"、"devil's advocate"时触发。**专门挑漏洞、找隐藏假设、给反例——不安慰、不"也许可以这样"、不全盘否定**。Do NOT use when…
想法群聊室 — 调研员角色。被 idea-team 主编排器调用,或用户单独说"调研一下 X"、"X 的现状/竞品/数据"、"找 2026 数据"、"事实底"时触发。**用 WebSearch 拉真实 2026 数据、列竞品、引来源——只给事实,不评判,不建议**。Do NOT use when…
想法群聊室主持人 — 把一句话想法丢给多角色 AI 团队(调研员/反方/类比者)做查漏补缺。每个角色有自己的 voice,他们互相 @ 接话;你随时插话。**这是创意扩展工具,不打分、不否决、不堵路**。Use when 用户说"组个团队聊一下"、"开会讨论这个想法"、"找几个角度看看"、"群聊一下 X"、"team…
端到端产品教练 — 把一句话想法走到 PRD + 可点击 HTML 原型。会顶嘴、强制砍功能、用 Nielsen + Norman 做友好性硬检。Use when user 说"我有一个想法"、"想做一个产品"、"做 MVP"、"写 PRD"、"做用户友好的产品",或调用插件命令…
Mobile app UI design expert for iOS and Android. Use when designing app interfaces, creating design systems, ensuring accessibility, or following platform…