- 50 命令:patrol/health/board/recall/poke/who/inbox/mind/message/team 等 - 异步并行 SSH (asyncio subprocess) - 命令注册表 + @command decorator + 插件扩展架构 - 环境检测 (Mac/VM/agent 身份) - JSON 输出契约 (stdout=成功, stderr=错误 code) - 权限模型 (agent 身份检测 + 环境限制) - pytest 23/23 通过 - deploy-joy.sh 全集群 16 VM 部署脚本 (含 PEP 668 兼容) - 旧 bash 版归档到 archive/commands.bash/ Closes: joy CLI 2.0 迁移
28 lines
919 B
Bash
28 lines
919 B
Bash
# scout 领域检查 — SSL 证书 / DNS / 网站可达性
|
|
domain_check() {
|
|
local issues=()
|
|
# SSL check - look for recent failures in journal
|
|
local journal=~/office/scout/journal.jsonl
|
|
if [[ -f "$journal" ]]; then
|
|
local ssl_issues
|
|
ssl_issues=$(tail -20 "$journal" 2>/dev/null | python3 -c "
|
|
import json, sys
|
|
for line in sys.stdin:
|
|
line = line.strip()
|
|
if not line: continue
|
|
try:
|
|
d = json.loads(line)
|
|
se = d.get('self_eval','')
|
|
if 'expired' in se.lower() or 'ssl' in se.lower() or 'DNS' in se:
|
|
print(se[:100])
|
|
except: pass
|
|
" 2>/dev/null | tail -3)
|
|
[[ -n "$ssl_issues" ]] && issues+=("$ssl_issues")
|
|
fi
|
|
[[ ${#issues[@]} -eq 0 ]] && echo '{"status":"ok","domain":"scout"}'
|
|
jq -nc '{status:"issues",domain:"scout",issues:$ARGS.positional}' --args "${issues[@]:-}"
|
|
}
|
|
|
|
domain_summary() {
|
|
echo "SSL/DNS 监控正常"
|
|
}
|