完整 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

50
scripts/mc_clear_items.py Normal file
View File

@ -0,0 +1,50 @@
#!/usr/bin/env python3
"""清理Minecraft地面掉落物(含倒计时,通过RCON通知玩家)"""
import sys, os, re, time
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
from mc_config import RCON_HOST, RCON_PORT, RCON_PASSWORD
from mc_rcon import RCONClient
def clear_items():
killed = 0
error = None
client = RCONClient(RCON_HOST, RCON_PORT, RCON_PASSWORD)
try:
client.connect()
# 验证连接
resp = client.send_command("list")
if resp is None:
raise Exception("无法连接到Minecraft RCON服务")
# 30秒倒计时
for i in range(30, 0, -1):
if i in (30, 20, 10, 5, 4, 3, 2, 1):
client.send_command(f'tellraw @a ["\\u00a7e\\u26a0\\ufe0f 将在 {i} 秒后清理地面掉落物,请捡起你的物品!"]')
time.sleep(1)
client.send_command('tellraw @a ["\\u00a7c\\ud83e\\uddf9 正在清理地面掉落物..."]')
time.sleep(0.5)
kill_resp = client.send_command("kill @e[type=item]")
body = kill_resp.get("body", "") if kill_resp else ""
m = re.search(r'Killed (\d+) entities', body)
killed = int(m.group(1)) if m else 0
client.send_command(f'tellraw @a ["\\u00a7a\\u2705 已清理 {killed} 个掉落物"]')
except Exception as e:
error = str(e)
try:
client.send_command('tellraw @a ["\\u00a7c清理掉落物时发生错误"]')
except Exception:
pass
finally:
client.close()
import json
result = {"killed": killed, "error": error}
print(json.dumps(result, ensure_ascii=False))
return result
if __name__ == "__main__":
clear_items()