完整 AgentSkill:词库外部化 + 全部脚本/Skill 脱敏上传

- 高危词库从 process.py 抽到 config.toml [security] section
- process.py 改为 _get_high_risk_words() 动态加载(配置优先)
- 新增 15 个 QQ 操作脚本(已脱敏:QQ号/IP/Token → 占位符)
- 新增 8 个 SKILL.md(qq-messenger/management/resolver/napcat-extras 等)
- 新增 SKILL.md 入口(完整部署方案文档)
- 保留 SDK 框架(plugin_modules.py, file_store_api.py, package.py 等)
This commit is contained in:
Claw
2026-05-04 16:23:59 +08:00
parent d7d33c39a4
commit e1fbd31c64
35 changed files with 5058 additions and 276 deletions

58
scripts/ask_nix.py Executable file
View File

@ -0,0 +1,58 @@
#!/usr/bin/env python3
"""
qq-agent → Nix 求助工具(同步 Gateway API 调用)
直接发问题到 Gateway,等 Nix 回复,不需要文件桥接。
模仿 openclaw_bridge 插件的 `_send_to_openclaw` 实现。
用法: python3 ask_nix.py "问题内容"
返回: Nix 的回复,或超时错误
"""
import sys
import json
import requests
GATEWAY_URL = "http://127.0.0.1:18789/v1/chat/completions"
GATEWAY_TOKEN = "YOUR_GATEWAY_TOKEN"
NIX_MODEL = "openclaw/ops-manager"
def ask(question: str, timeout: int = 120) -> str:
"""同步调用 Gateway,等 Nix 回复"""
payload = {
"model": NIX_MODEL,
"messages": [{"role": "user", "content": question}],
"stream": False,
}
headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {GATEWAY_TOKEN}",
}
try:
resp = requests.post(
GATEWAY_URL,
json=payload,
headers=headers,
timeout=timeout,
)
if resp.status_code == 200:
data = resp.json()
choices = data.get("choices", [])
if choices:
return choices[0].get("message", {}).get("content", "")
return "Nix 返回为空"
return f"请求失败({resp.status_code}): {resp.text[:200]}"
except requests.exceptions.Timeout:
return "[timeout] Nix 没回 超时了 要么他不在线 要么忙着呢 老板稍后再试吧"
except requests.exceptions.ConnectionError:
return "Nix 连接失败,请检查 Gateway 服务状态"
except Exception as e:
return f"请求异常: {str(e)}"
if __name__ == "__main__":
question = sys.argv[1] if len(sys.argv) > 1 else sys.stdin.read().strip()
if not question:
print("错误:未提供问题", file=sys.stderr)
sys.exit(1)
print(ask(question))