Skip to content
Back to skills

Aioom

ASecurity

AI-powered memory guardian for Windows. 三色分级智能清理系统:红(可清理)/黄(需关注)/绿(安全),35+进程百科,内存健康报告,Web GUI实时监控仪表盘。Triggers: 内存占用高, 清理内存, 查看内存, 启动aioom, 打开aioom界面, 内存满了, 内存快满了.

  • 2 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 9, 2026
toolspythonshellbashgit

Works with

  • cli

Security analysis

A100/100

Scanned September 9, 2026

npx -y skills add Lord1Egypt/awesome-skill-forge --skill aioom --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Aioom?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Aioom
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/lord1egypt-aioom/badge)](https://www.skillsdirectory.com/skills/lord1egypt-aioom)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: aioom
description: "AI-powered memory guardian for Windows. 三色分级智能清理系统:红(可清理)/黄(需关注)/绿(安全),35+进程百科,内存健康报告,Web GUI实时监控仪表盘。Triggers: 内存占用高, 清理内存, 查看内存, 启动aioom, 打开aioom界面, 内存满了, 内存快满了."
version: "2.0.0"
metadata:
  openclaw:
    requires:
      bins:
        - python.exe
        - psutil
    emoji: "🦞"
    homepage: https://github.com/bettermen/aioom
---

# aioom — AI Memory Guardian Skill (v2.0)

> **AI 内存守护工具技能 — 三色分级体系**
> 智能监控并清理 Windows 系统内存,基于 AI 评分 + 三色分级机制识别和管理进程。

## 概述

aioom 是一个 AI 驱动的内存守护进程,参考 earlyoom 设计,通过 AI 评分机制智能识别内存泄漏进程并执行清理。

**v2.0 核心升级 — 三色分级体系:**
- 🔴 **红灯 (TERM/KILL)** — 可安全清理的进程,AI 高置信度判定
- 🟡 **黄灯 (WATCH/SAFE)** — 需关注但暂不处理的进程
- 🟢 **绿灯 (PROTECTED)** — 受保护进程,终止可能导致系统不稳定

**项目路径:** `C:\Users\PC\WorkBuddy\2026-05-15-task-3\aioom\`
**Web 端口:** `http://localhost:8866`
**GitHub:** https://github.com/bettermen/aioom

---

## 调用方式自动检测

优先使用打包后的 exe,回退到 Python 脚本:

```python
import os, subprocess

PROJECT_DIR = r"C:\Users\PC\WorkBuddy\2026-05-15-task-3\aioom"
EXE_PATH    = r"C:\Users\PC\WorkBuddy\2026-05-15-task-3\aioom\dist\aioom.exe"
WEB_EXE     = r"C:\Users\PC\WorkBuddy\2026-05-15-task-3\aioom\dist\aioom-web.exe"
PY_AIOOM    = os.path.join(PROJECT_DIR, "aioom.py")
PY_WEB      = os.path.join(PROJECT_DIR, "web.py")

def get_runner(target="cli"):
    """返回 (cmd_prefix, cwd)"""
    if target == "cli":
        if os.path.exists(EXE_PATH):
            return [EXE_PATH], PROJECT_DIR
        return ["python", PY_AIOOM], PROJECT_DIR
    else:  # web
        if os.path.exists(WEB_EXE):
            return [WEB_EXE], PROJECT_DIR
        return ["python", PY_WEB], PROJECT_DIR
```

---

## 功能一:查看系统内存状态

使用 psutil 快速获取当前内存信息(无需启动 aioom 守护进程):

```python
import psutil

mem = psutil.virtual_memory()
swap = psutil.swap_memory()
print(f"内存:{mem.percent:.1f}% 已用 | 可用 {mem.available / 1024**3:.2f} GB / 总计 {mem.total / 1024**3:.2f} GB")
print(f"SWAP:{swap.percent:.1f}% 已用")

# 列出前10个内存占用最高的进程
procs = sorted(psutil.process_iter(['pid','name','memory_percent']),
               key=lambda p: p.info['memory_percent'] or 0, reverse=True)
for p in procs[:10]:
    print(f"  PID {p.info['pid']:6d}  {p.info['memory_percent']:.1f}%  {p.info['name']}")
```

---

## 功能二:干跑分析(只分析不清理)

适合在执行清理前确认目标进程:

```bash
# CLI 方式
python "C:\Users\PC\WorkBuddy\2026-05-15-task-3\aioom\aioom.py" --dryrun -v
# 或 exe 方式
"C:\Users\PC\WorkBuddy\2026-05-15-task-3\aioom\dist\aioom.exe" --dryrun -v
```

- `--dryrun`:只打印分析结果,不执行任何 kill 操作
- `-v`:详细输出,显示每个进程的 AI 评分

---

## 功能三:启动守护进程(后台持续监控)

```python
import subprocess

cmd, cwd = get_runner("cli")
# 后台运行,日志输出到文件
proc = subprocess.Popen(
    cmd + ["--interval", "5", "-v"],
    cwd=cwd,
    stdout=open(r"C:\Users\PC\WorkBuddy\2026-05-15-task-3\aioom.log", "a"),
    stderr=subprocess.STDOUT,
    creationflags=subprocess.CREATE_NO_WINDOW  # Windows 无窗口后台运行
)
print(f"aioom 守护进程已启动,PID: {proc.pid}")
```

常用参数:
| 参数 | 说明 | 默认值 |
|------|------|--------|
| `--interval N` | 检测间隔秒数 | 2 |
| `--dryrun` | 干跑模式 | 关闭 |
| `-v` | 详细输出 | 关闭 |
| `--config path` | 自定义配置文件 | config.toml |

---

## 功能四:停止 aioom 守护进程

```python
import psutil

killed = []
for proc in psutil.process_iter(['pid', 'name', 'cmdline']):
    try:
        cmdline = ' '.join(proc.info['cmdline'] or [])
        if 'aioom' in cmdline.lower() and 'aioom-web' not in cmdline.lower():
            proc.terminate()
            killed.append(proc.info['pid'])
    except (psutil.NoSuchProcess, psutil.AccessDenied):
        pass
print(f"已停止 {len(killed)} 个 aioom 进程:{killed}")
```

---

## 功能五:打开 Web GUI 面板

```python
import subprocess, webbrowser, time

cmd, cwd = get_runner("web")
proc = subprocess.Popen(cmd, cwd=cwd, creationflags=subprocess.CREATE_NO_WINDOW)
time.sleep(2)  # 等待服务启动
webbrowser.open("http://localhost:8866")
print(f"Web GUI 已在 http://localhost:8866 启动,PID: {proc.pid}")
```

Web 面板功能:
- 实时内存/CPU 折线图(Chart.js)
- 🚦 三色分级进程列表(红/黄/绿分组过滤)
- 📖 进程百科弹窗(点击进程名查看用途、终止影响、安全建议)
- 📊 内存健康报告(三色统计摘要 + 优化建议 + 分类内存占用)
- 一键终止高风险进程
- 配置阈值调整

---

## 配置文件说明

配置文件路径:`C:\Users\PC\WorkBuddy\2026-05-15-task-3\aioom\config.toml`

```toml
[threshold]
mem_percent = 85        # 触发清理的内存占用百分比
swap_percent = 80       # 触发清理的 SWAP 占用百分比

[ai]
term_confidence = 0.8   # SIGTERM 置信度阈值
kill_confidence = 0.95  # SIGKILL 置信度阈值

[protect]
ignore_patterns = ["sshd", "bash", "powershell", "explorer", "python.*aioom"]
ignore_root = true
protect_foreground = true

[notify]
log_file = "aioom.log"
verbose = true
```

修改配置时,直接编辑 config.toml,重启守护进程后生效。

---

## 常见场景处理

**场景:用户说"内存快满了,帮我清一下"**
1. 先用 psutil 展示当前内存状态
2. 运行 `--dryrun -v` 让用户确认目标进程
3. 征得确认后,正式启动(去掉 --dryrun)执行清理

**场景:用户说"启动aioom后台监控"**
1. 检查是否已有 aioom 进程在运行
2. 如有,提示用户当前状态
3. 如无,用后台模式启动守护进程

**场景:用户说"打开aioom界面"**
1. 直接执行功能五,启动 web.py 并打开浏览器

**场景:用户说"查看aioom日志"**
```python
log_path = r"C:\Users\PC\WorkBuddy\2026-05-15-task-3\aioom.log"
with open(log_path, encoding='utf-8') as f:
    lines = f.readlines()
print(''.join(lines[-50:]))  # 最后50行
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…