QClaw + 自定义Python工具

关于 QClaw 的相关信息,可以从官网查看,本文主要是记录一下将之前 Python 写的一个日志分析工具,封装成 QClaw 可接受的skill,并且安装到 QClaw 中使用。

skill安装

简单粗暴的方式

image-20260324110123931

看一下文件结构

1
2
3
4
5
6
7
8
9
10
11
12
13
14
linux-skill/
├── SKILL.md # 技能说明文档
└── scripts/
├── ssh_log/
│ ├── ssh_analyzer_pro.sh # SSH 日志分析主脚本
│ └── ssh_analyzer.sh # 简化版
├── linux_backdoor_emergency/
│ ├── linuxbackdoor.sh # 完整后门扫描脚本
│ ├── backdoor_scan.sh # 单项扫描脚本
│ └── linux_backdoor.sh # 备用脚本
└── func/
├── ssh_connect/ # SSH 连接模块
├── ssh_log_analysis/ # 日志分析 Python 模块
└── linux_backdoor_analysis/ # 后门扫描 Python 模块

就是一个供大模型阅读的skill.md文档和之前写好的 Python 脚本,脚本内容并没有发生变化。

这里其实要重点看一下skill.md

文件开始是一段YAML frontmatter,这段内容决定了什么时候触发这个 skill。

1
2
name: linux-skill
description: Linux 安全审计与应急响应技能包。用于 Linux 服务器安全检查、SSH 日志分析、后门检测与应急响应处置。当用户提到以下场景时触发:Linux 安全检查、SSH 日志分析、暴力破解检测、后门扫描、rootkit 检测、服务器被入侵排查、webshell 检测、SUID 后门排查、Linux 应急响应、安全审计。

然后是md文档的正文结构

image-20260324111452091

因为 Python 脚本包含两个模块,所以这里也自动分出了两个模块,其余的工作流程,几乎就是按照 Python 代码的逻辑来写的。

image-20260324111902385

将 skill 安装到 QClaw 中,这里也可以直接对话完成。

image-20260324110856962

skill使用

使用就比较简单了,按照之前 yaml 当中的description去发送指令,或者直接说明用什么skill完成什么事

image-20260324112141191

image-20260324112203629

最后可以导出一个记录报告

image-20260324112243708

image-20260324112319737

主要是水一篇文章,记录一下QClaw的自定义技能和使用。