前言¶
写文档、报 bug、做 UI 走查时,经常需要「截一张当前屏幕或某个窗口」并把路径交给 Agent 继续处理。若每次都切到系统截图工具再手动贴图,会打断对话节奏。下面介绍 SkillHub 上的社区 Skill「截图助手」:用纯 Python 脚本封装截图逻辑,装到 Agent 的 skills 目录后,用自然语言或命令行即可触发。
这是什么¶
「截图助手」坐标为 @user_3cdbf8ea/screenshot-assistant,当前 SkillHub 版本为 1.0.3,来源为 community,分类 dev-programming,发布者为 user_3cdbf8ea。简介写明:[Python技能] 屏幕全屏/窗口截图,纯Python实现。标签 requires_api_key=false,使用时不需要配置 API Key。
Skill 本体是通用 SKILL.md 格式,附带 scripts/tool.py。在 SkillHub 页面可通过提示词让 AI 按官方安装说明拉取;也可本地用 skillhub CLI 安装到当前 Agent 的 skills 目录。
核心功能(以源码为准)¶
安装包内的 scripts/tool.py 是当前可执行能力的主要来源,与 SKILL.md 中部分营销性描述相比,实现范围更窄,写文章时以代码为准。
- 全屏截图:
capture_screen(path),在 Windows 上通过 ctypes 调用 GDI/User32 写入 BMP;未传path时在当前工作目录生成screenshot_YYYYMMDD_HHMMSS.bmp。 - 窗口截图:
capture_window(title, path),按窗口标题模糊匹配;未传title时截取前台窗口。找不到窗口时返回 JSON 错误信息。 - 统一返回格式:函数返回字典,成功时含
path、size_kb(全屏)等字段;失败时含error。 - 命令行入口:可直接用 Python 调用模块,便于本地验证。
python scripts/tool.py
python scripts/tool.py screen
python scripts/tool.py screen /tmp/full.bmp
python scripts/tool.py window "记事本"
python scripts/tool.py window "Chrome" /tmp/win.bmp
SKILL.md 还列举了滚动截图、标注、马赛克、取色、剪贴板等能力;当前仓库中的 tool.py 未实现这些函数。若你依赖上述能力,需要先自行扩展脚本或等待作者更新,不要默认已可用。
平台:capture_screen 在非 Windows 上会返回「当前仅支持 Windows 平台」;capture_window 在非 Windows 上会回退调用 capture_screen,同样受 Windows 限制。SKILL.md 提到 Pillow/ImageGrab 降级方案,但现有 tool.py 未引用 PIL,实际路径是 Windows API + BMP。
安装与启用¶
官方 SkillHub 页面给出的安装方式是:让 AI 阅读 SkillHub 安装与优先源配置,并安装 @user_3cdbf8ea/screenshot-assistant。
本地若已安装 skillhub CLI,可将 Skill 装进当前 Agent 的 skills 目录(必须使用 --dir,否则默认 ./skills/ 可能不会被 Agent 加载):
command -v skillhub && skillhub --version
未安装 CLI 时,可按官方文档执行(完整安装或仅 CLI):
curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash
安装本 Skill(示例为 Cursor 用户目录,其他客户端请换成自己的 skills 路径):
skillhub install @user_3cdbf8ea/screenshot-assistant --dir ~/.cursor/skills/
常见 skills 目录(摘自 SkillHub 安装文档):Claude Code 为 ~/.claude/skills/,Cursor 为 ~/.cursor/skills/,Codex 为 ~/.codex/skills/ 或项目下 .agents/skills/。安装后按你所用客户端的要求重启或刷新 Agent,以便加载新 Skill。
典型用法¶
在对话里使用:SKILL.md 说明 Agent 会根据你的描述调用 tool.py 中的函数。可复现的表述示例(与官方 Examples 一致的方向):
- 「帮我截一张全屏图,保存到桌面」
- 「截取标题里包含 VS Code 的窗口」
- 「截当前前台窗口」
Agent 应在有 shell 权限、且运行环境为 Windows 时执行脚本,并把返回 JSON 中的 path 交给你或用于后续步骤。
本地直测:进入 Skill 目录后执行上一节的 python scripts/tool.py ... 命令,确认 success 为 true 且文件存在。
适用场景与注意¶
适合:在 Windows 开发机上,希望通过 Agent 自动化「全屏 / 指定窗口」截图并拿到文件路径;不想为截图单独装重型 GUI 工具、希望逻辑留在可读的 Python 脚本里。
注意:
- 输出默认为 BMP,体积可能较大;需要 PNG/JPG 时要自行后处理或改脚本。
- Linux / macOS 上当前实现基本不可用,部署前先在目标 OS 上跑一遍 CLI 自测。
- SKILL.md 与
tool.py在功能列表、跨平台描述上不一致,集成到生产流程前以tool.py为准做验收。 - SkillHub 统计(抓取资料):评分 100000,下载 2135,安装 0;数据随商店更新变化,引用时以页面为准。
结尾¶
「截图助手」把 Windows 下的全屏与窗口截图封装成 Agent 可调用的 Python Skill,安装路径清晰、无需 API Key。若你只需要可脚本化的基础截图,可以按官方地址安装试用;若需要标注、滚动长图等,请先对照 scripts/tool.py 再决定是否二次开发。
- SkillHub 页面:https://www.skillhub.cn/skills/user_3cdbf8ea/screenshot-assistant
- API 坐标页:https://api.skillhub.cn/user_3cdbf8ea/screenshot-assistant