Token导航 LogoToken导航TokenDH.com
Joshua AI logo
安全风控stdio官方级别未说明来源级核验

Joshua AI

MCP Server

W.O.P.R.是一款基于本地LLM的自主网络防御代理,用于监控网络边界、检测异常并协调多代理系统,适用于网络安全防御和矿机管理场景。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
安全PythonClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

sirrand27

提供方

sirrand27

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python3 -c "import secrets; print(secrets.token_urlsafe(32))"

详细介绍

     ╔══════════════════════════════════════════════════════════════╗
     ║                                                              ║
     ║  ██╗    ██╗ ██████╗ ██████╗ ██████╗                         ║
     ║  ██║    ██║██╔═══██╗██╔══██╗██╔══██╗                        ║
     ║  ██║ █╗ ██║██║   ██║██████╔╝██████╔╝                        ║
     ║  ██║███╗██║██║   ██║██╔═══╝ ██╔══██╗                        ║
     ║  ╚███╔███╔╝╚██████╔╝██║     ██║  ██║                        ║
     ║   ╚══╝╚══╝  ╚═════╝ ╚═╝     ╚═╝  ╚═╝                        ║
     ║                                                              ║
     ║     Watchpoint Observation and                               ║
     ║              Perimeter Response                              ║
     ║                                                              ║
     ║           NETWORK DEFENSE SENTRY                             ║
     ╚══════════════════════════════════════════════════════════════╝

W.O.P.R.——网络防御哨兵

自主网络防御代理 通过微调的本地LLM供电 奥拉玛.W.OP.R.作为一个集装箱化的5服务堆栈在 杰森奥林纳米8GB通过UniFi监控网络边界,检测异常,管理BitAxe矿工队,并通过Blackboard MCP界面与其他代理进行协调。

多代理框架的一部分 约书亚 (Claude Code——高级分析师,面向操作员)和 TARS开发 (Windows——开发、部署)。

美学和呼号源自年的WOPR超级计算机 *战争游戏* (1983).

______________________________________________________________________

代理人名册

代理身份角色平台
约书亚Claude Code(Opus 4.6)面向运营商的交互分析师Kali Linux
W.O.P.R。当地Ollama哨兵(joshua:cybersec)网络防御、矿工车队、被动监控Jetson Orin Nano 8GB
TARS开发Windows AI代理开发、部署、微调Windows 11

______________________________________________________________________

当前部署

主要主机: NVIDIA Jetson Orin Nano 8GB(192.168.100.191)

组件状态详细信息
NVMe启动三星990 PRO 1TB免费848GB,root /dev/nvme0n1p1
DockerCE 29.2.1+Compose v5.0.2nvidia容器工具包1.16.2
JetPack6.2.1aarch64,最大功率模式, jetson_clocks
交换NVMe上的16GBswappiness=60

Docker编写堆栈

集装箱港口服务健康状况
wopr-ollama11434Ollama LLM服务器ollama list 检查
wopr-blackboard9700黑板MCP+任务控制PWAHTTP /api/dashboard
wopr-unifi-mcp9600UniFi网络MCP服务器HTTP健康端点
wopr-agent--W.O.P.R.防御哨兵循环日志文件新鲜度
wopr-voice9876Piper TTS语音服务器TCP套接字检查

所有服务使用 绑定已装载的卷 用于无需容器重建的实时代码更新。

______________________________________________________________________

建筑

┌─────────────────────────────────────────────────────────────────────┐
│                    JETSON ORIN NANO 8GB                              │
│                                                                     │
│  ┌───────────────────────────────────────────────────────────────┐  │
│  │              W.O.P.R. DEFENSE SENTRY LOOP                     │  │
│  │                                                               │  │
│  │  ┌──────────┐  ┌──────────────┐  ┌────────────────────────┐  │  │
│  │  │ UniFi MCP│→ │  Behavioral  │→ │ Threat Classification  │  │  │
│  │  │  :9600   │  │  Baseline    │  │ + Auto-Response        │  │  │
│  │  └──────────┘  └──────────────┘  └────────────────────────┘  │  │
│  │                                                               │  │
│  │  ┌──────────┐  ┌──────────────┐  ┌────────────────────────┐  │  │
│  │  │  Miner   │  │  Device      │  │ Anomaly Deduplication  │  │  │
│  │  │ Monitor  │  │  Knowledge   │  │ + Suppression Window   │  │  │
│  │  │ (AxeOS)  │  │  Base        │  │                        │  │  │
│  │  └──────────┘  └──────────────┘  └────────────────────────┘  │  │
│  │                                                               │  │
│  │  ┌──────────┐  ┌──────────────┐  ┌────────────────────────┐  │  │
│  │  │Correlation│  │  Incident   │  │ Threat Intelligence    │  │  │
│  │  │ Engine   │  │  Timelines   │  │ (abuse.ch feeds)       │  │  │
│  │  │(RF+Net)  │  │  (HIGH+)     │  │ C2 IPs + domains       │  │  │
│  │  └──────────┘  └──────────────┘  └────────────────────────┘  │  │
│  └───────────────────────────────────────────────────────────────┘  │
│                                                                     │
│  ┌──────────┐  ┌──────────────┐  ┌──────────┐  ┌──────────────┐   │
│  │Blackboard│  │Mission Control│  │  Ollama  │  │  Piper TTS   │   │
│  │MCP :9700 │  │  PWA (v30)   │  │  :11434  │  │    :9876     │   │
│  │(auth+MCP)│  │(WarGames UI) │  │joshua:cs │  │ (voice alert)│   │
│  └──────────┘  └──────────────┘  └──────────┘  └──────────────┘   │
│                                                                     │
│  ┌──────────────────────────────────────────────────────────────┐   │
│  │  ESP32 Marauder (via Flipper Zero USB-UART)                  │   │
│  │  RF Monitor: deauth detection, probe requests, pwnagotchi    │   │
│  └──────────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────────┘
         │                                     ▲
         ▼                                     │
   ┌──────────┐                          ┌──────────┐
   │  JOSHUA  │  Blackboard MCP :9700    │ TARS Dev │
   │  (Kali)  │◄────────────────────────►│(Windows) │
   └──────────┘  (Bearer token auth)     └──────────┘

______________________________________________________________________

特性

网络防御(主要任务)

  • 通过UniFi MCP增强人工智能入侵检测系统(30秒轮询周期)
  • 行为基线学习(设备群体、OUI跟踪、网络分配)
  • 威胁分类:严重/高/中/低/信息
  • 自动阻止关键威胁(流氓AP、未经授权的设备)
  • 具有可配置抑制窗口的异常重复数据删除
  • DEFCON等级系统(1-5),可根据威胁态势自动计算
  • 内部记录防御周期状态(无实时活动混乱)
  • 仅当子系统降级时才发布每小时诊断

跨层关联引擎

  • RF事件(Marauder)与网络事件(UniFi)的滑动窗口相关性
  • 带可配置窗口的双环缓冲区(默认120秒)
  • 邪恶双胞胎检测:deauth攻击+具有匹配SSID的流氓AP→ 关键的
  • 迪厄斯→重新连接:deauth定位客户端+重新连接到不同的AP→ HIGH
  • Probe→副手:来自MAC+同一设备的可疑探测器加入网络→ HIGH
  • 协同攻击:3+个目标或2+个来源+人口激增→ 关键的
  • 每(类型,MAC)进行5分钟冷却,以防止警报洪水
  • 递归安全:合成相关异常不会重新触发相关性检查

事件时间表

  • 高严重性事件上的自动上下文快照
  • 捕获8个上下文源:最近的异常、设备配置文件、姿态状态、射频状态、诊断、矿工车队、关联引擎、基线状态
  • 每(MAC,类型)数据消除窗口(默认10分钟)可防止时间线洪水
  • 人类可读的摘要+结构化的JSON证据发布到Blackboard
  • 上下文缓冲区记录所有异常(甚至被抑制),以实现完全的态势感知

威胁情报(abuse.ch Feed)

  • 从3个公共威胁源中提取(不需要API密钥):

- 菲奥多追踪器:C2服务器IP(Emotet、Dridex、TrickBot、QakBot) - 乌尔豪斯:当前在线恶意URL→ 提取的IP和域 - 威胁福克斯:IoC主机文件(恶意域)

  • SQLite持久性+内存 set() 用于O(1)查找(~2K个IP,~48K个域)
  • 每日提要刷新(可配置),通过数据库缓存在容器重启后仍然有效
  • 每10个防御周期,将UniFi客户端IP与威胁数据库进行交叉引用
  • 火柴生产 threat_intel_match 严重异常

射频监测(ESP32掠夺者)

  • ESP32掠夺者通过Flipper Zero USB-UART桥接器连接
  • 4相扫描周期:AP扫描→ deauth检测→ 探测请求捕获→ pwnagotchi检测
  • 具有源/目标/信道跟踪功能的实时deauth攻击检测
  • 探测请求智能——来自广播探测的设备指纹识别
  • 基于信标帧指纹的Pwnagotchi检测
  • RF事件馈入相关引擎,用于跨层复合攻击检测
  • 集成到防御状态和任务控制雷达显示器中

矿工车队监控

  • AxeOS BitAxe矿工车队管理(针对7名AxeOS矿工的HTTP API轮询)
  • 公共池API集成,适用于27人的完整车队(AxeOS+NerdMiners+cgminers)
  • 实时哈希率、温度和效率跟踪
  • 基于温度的警报(65℃警告,75℃临界重启)
  • 自动重启离线矿工 在可配置的连续故障后(默认值5)
  • 持续的哈希率下降检测:连续N次民意调查低于平均值的50%后发出警报
  • 接近零哈希率检测:当哈希率降至0.01 GH/s以下时立即发出警报(可能危及固件)
  • 池故障转移恢复验证:在停机时快照工作人员状态,验证恢复后所有工作人员重新连接
  • 矿工健康评分 (0-100,A-F级):温度(25%),哈希率稳定性(25%)、正常运行时间(20%)、共享质量(15%)、WiFi RSSI(15%)
  • 池故障转移检测和报告
  • 共享质量监控和异常检测
  • W.O.P.R.状态报告中的舰队摘要

设备知识库

  • 具有行为配置文件的持久SQLite设备数据库
  • MAC地址、OUI供应商、主机名、网络分配跟踪
  • 信任评分和历史异常相关性
  • 响应行动审计日志记录

黑板MCP集成

  • 发布安全调查结果,包括严重性、证据和补救措施
  • 向实时活动终端报告周边状态
  • 代理间消息传递(JOSHUA、TARS Dev、操作员)
  • QLoRA微调培训示例提交
  • 任务控制中心的心跳监测
  • API密钥验证 在所有 /api/*/mcp 端点(承载令牌)
  • 在以下情况下禁用优雅身份验证 BLACKBOARD_API_KEY 未设置(向后兼容)

任务控制PWA(v30)

  • 9700端口提供基于浏览器的仪表板
  • WarGames视觉主题:CRT扫描线叠加、屏幕渐晕、荧光粉发光
  • API密钥身份验证覆盖 具有本地存储持久性和锁定注销功能
  • 四窗格布局:网络防御、任务板、代理通信、实时活动
  • 网络防御窗格:DEFCON级别,包括上下文原因、威胁列表、射频雷达扫描
  • 帆布雷达显示器:来自活点数据的带有AP光点的动画扫掠线
  • 采矿车队仪表板:按类型细分(axeos/cgminer/nerdminer)、最佳难度、池状态
  • 引导顺序:加载WarGames风格的打字机动画
  • DEFCON级别屏幕色调(绿色→黄色→橙子→每个威胁级别为红色)
  • WarGames——带有滴答声的真实电传动画(Web Audio API)
  • 智能滚动跟随状态(自动跟随打字,用户滚动时脱离)
  • 增量消息呈现(轮询时不进行完整的DOM重建)
  • 快速赶上页面加载速度(所有历史记录立即渲染,只有新行有动画)
  • 关键事件DEFCON警报音频
  • 具有持久布局的可调整大小的窗格(localStorage)
  • 离线功能服务人员

警报声

  • Jetson上的Piper TTS(GPU加速)
  • 发出高+严重性威胁警报
  • 语音输出中的WarGames个性

学习系统

  • 每个有异常的防御周期都会生成结构化的训练示例
  • 上下文、推理、行动、观察、结论格式
  • 批量处理并冲洗到Blackboard,用于QLoRA微调管道

______________________________________________________________________

仓库结构

WOPR-AI/
├── wopr/                        # W.O.P.R. Agent Modules
│   ├── agent.py                 #   Defense sentry loop + inquiry system
│   ├── config.py                #   Configuration (env var overrides)
│   ├── unifi_defense.py         #   AI-augmented UniFi defense engine
│   ├── correlation.py           #   Cross-layer RF + network correlation engine
│   ├── incident_timeline.py     #   Automated incident timeline generator
│   ├── threat_intel.py          #   Threat feed integration (abuse.ch)
│   ├── device_db.py             #   Device knowledge base (SQLite)
│   ├── miner_monitor.py         #   AxeOS BitAxe miner fleet monitor + health scoring
│   ├── blackboard.py            #   Blackboard MCP JSON-RPC client
│   ├── blackboard_monitor.py    #   Message monitoring + auto-ACK
│   ├── tools.py                 #   Tool registry + MCP service wrappers
│   ├── voice.py                 #   TTS voice client
│   ├── learning.py              #   Training example auto-generation
│   ├── memory.py                #   Sliding window conversation memory
│   ├── marauder.py              #   ESP32 Marauder RF monitor (serial)
│   ├── Dockerfile               #   Agent container image
│   └── __init__.py
│
├── blackboard/                  # Blackboard MCP Server
│   ├── server.py                #   FastMCP server (0.0.0.0:9700)
│   ├── database.py              #   SQLite backing store
│   ├── models.py                #   Data models
│   ├── training.py              #   Training data export (JSONL)
│   ├── Dockerfile               #   Server container image
│   └── pwa/                     #   Mission Control Progressive Web App
│       ├── index.html           #     Dashboard UI (v29 — WarGames theme + auth)
│       ├── sw.js                #     Service worker (v29)
│       ├── manifest.json        #     PWA manifest
│       ├── tick.wav             #     Teletype tick sample (30ms, 2.9KB)
│       ├── defcon.wav           #     DEFCON alert sound
│       ├── icon-192.png         #     App icon
│       └── icon-512.png         #     App icon (large)
│
├── unifi-mcp/                   # UniFi Network MCP Server
│   ├── server.py                #   MCP tool server (:9600)
│   ├── unifi_client.py          #   UniFi controller API client
│   ├── syslog_listener.py       #   UDP syslog receiver
│   ├── models.py                #   Data models
│   └── Dockerfile               #   Server container image
│
├── voice/                       # Voice Server
│   ├── voice_server.py          #   Piper TTS server (:9876)
│   └── Dockerfile               #   Voice container image
│
├── scripts/                     # Deployment
│   ├── deploy.sh                #   Docker Compose deployment script
│   └── jetson-first-boot.sh     #   Jetson Orin Nano first-boot setup
│
├── docker-compose.yml           # 5-service stack definition
├── .env.example                 # Environment config template
├── joshua.modelfile             # Ollama Modelfile (base personality)
├── joshua_cybersec.modelfile    # Ollama Modelfile (fine-tuned cybersec)
├── finetune_wopr.py             # QLoRA fine-tuning pipeline
├── launch-wopr.sh               # Bare-metal launch script (non-Docker)
├── local-joshua.service         # Systemd service unit (non-Docker)
├── setup.sh                     # Quick setup script
├── requirements.txt             # Python dependencies
├── test_forensics.py            # Integration tests
└── README.md

______________________________________________________________________

配置

环境变量在中定义 .env (参见 .env.example):

安全

变量默认值描述
BLACKBOARD_API_KEY*(空--身份验证已禁用)*用于黑板端点的API密钥。设置为在所有设备上启用承载令牌身份验证 /api/*/mcp 路线。生成方式 python3 -c "import secrets; print(secrets.token_urlsafe(32))"

设置后,所有API请求都需要 Authorization: Bearer 头球PWA在首次加载时提示输入密钥并将其存储在 localStorage.WOPR从容器环境中读取它。JOSHUA的投票钩读自 ~/.blackboard_key.

网络服务

变量默认值描述
BLACKBOARD_URLhttp://blackboard:9700黑板MCP端点
UNIFI_MCP_URLhttp://unifi-mcp:9600UniFi MCP端点
OLLAMA_URLhttp://ollama:11434API终点
VOICE_HOSTvoice语音服务器主机名
VOICE_PORT9876语音服务器端口

UniFi控制器

变量默认值描述
UNIFI_HOST192.168.100.1UDM Pro IP地址
UNIFI_PORT443控制器HTTPS端口
UNIFI_USER--控制器用户名
UNIFI_PASS--控制器密码
UNIFI_VERIFY_SSL0SSL验证(0=跳过)

W.O.P.R.代理人

变量默认值描述
WOPR_MODELjoshua:cybersecOlama型号名称
DEVICE_DB_PATH/data/wopr/wopr_devices.db设备数据库路径
LOG_FILE/data/logs/wopr.log日志文件路径
JOSHUA_VOICE_ENABLEDfalse语音输出(专为JOSHUA代理预留)
MARAUDER_ENABLEDfalse启用ESP32掠夺者射频监测
MARAUDER_DEVICE/dev/ttyACM0掠夺者串行设备(Flipper Zero USB-UART)

跨层相关性

变量默认值描述
WOPR_CORRELATION_ENABLEDtrue启用RF+网络事件关联
WOPR_CORRELATION_WINDOW120相关窗口(秒)
WOPR_CORRELATION_BUFFER500每个环形缓冲区的最大事件数(RF/网络)

事件时间表

变量默认值描述
WOPR_TIMELINE_ENABLEDtrue在HIGH+事件上启用自动事件时间表
WOPR_TIMELINE_LOOKBACK300上下文回溯窗口(秒)(5分钟)
WOPR_TIMELINE_DEDUP600每(MAC,类型)个数据消除窗口(秒)(10分钟)

威胁情报

变量默认值描述
WOPR_THREAT_INTEL_ENABLEDtrue启用abuse.ch提要集成
WOPR_THREAT_INTEL_PULL86400进料刷新间隔(秒)(24小时)
WOPR_THREAT_INTEL_CHECK10每第N个防御周期交叉引用客户端

矿工车队自动化

变量默认值描述
WOPR_MINER_OFFLINE_RESTART5自动重启前连续轮询失败
WOPR_MINER_OFFLINE_AUTO_RESTARTtrue启用离线矿工的自动重启
WOPR_MINER_HR_DROP_POLLS3警报前连续低哈希率轮询

______________________________________________________________________

模型

W.O.P.R.继续奔跑 约书亚:网络安全 --QLoRA微调模型,针对网络防御、威胁分类和安全分析进行了优化。基于海豚米斯特拉尔:7b-v2.8,网络安全训练数据来自真实的防御观测。

资源要求:

  • 磁盘:约4.1 GB(Q4_K_M GGUF)
  • VRAM/统一内存:~4.5 GB
  • 推断:Jetson Orin Nano(MAXN模式)每次响应约3-8s

______________________________________________________________________

部署

Docker Compose(Jetson推荐)

# 1. Clone the repo
git clone https://github.com/sirrand27/WOPR-AI.git
cd WOPR-AI

# 2. Configure environment
cp .env.example .env
# Edit .env with your UniFi credentials and network settings
# Generate an API key for Blackboard auth:
python3 -c "import secrets; print(secrets.token_urlsafe(32))"
# Add to .env as BLACKBOARD_API_KEY=

# 3. Import the model (transfer GGUF separately — not in repo)
# scp joshua_cybersec.gguf to the Jetson, then:
docker compose up -d ollama
docker exec wopr-ollama ollama create joshua:cybersec -f /opt/wopr/joshua_cybersec.Modelfile

# 4. Start the full stack
docker compose up -d

# 5. Verify
docker compose ps
# Open http://:9700 for Mission Control

实时更新

部署代码更改时无需重建容器:

# Edit files in the repo, then push to Jetson
scp blackboard/pwa/index.html user@jetson:/opt/wopr/blackboard/pwa/
# Changes take effect immediately (bind-mounted volumes)

# For Python changes that require restart:
docker compose restart wopr-agent

裸金属(传统)

# Install Ollama
curl -fsSL https://ollama.com/install.sh | sh
ollama create joshua:cybersec -f joshua_cybersec.modelfile

# Run directly
python3 wopr/agent.py

# Or install systemd service
cp local-joshua.service ~/.config/systemd/user/
systemctl --user enable --now local-joshua

______________________________________________________________________

网络防御管道

UniFi MCP Poll (30s) → Threat Summary → Client Baseline → Anomaly Detection
         │                                                        │
         │    ┌───────────────────────────────┐                   │
         └───►│ Threat Intel Cross-Reference  │───────────────────┤
              │ (abuse.ch: C2 IPs + domains)  │                   │
              └───────────────────────────────┘                   │
                          ┌───────────────────────────────────────┘
                          ▼
                   Threat Classification
                          │
                          ├──► Correlation Engine (RF + Network)
                          │         Evil Twin / Deauth→Reconnect / Coordinated
                          │
          ┌───────────────┼───────────────┐
          ▼               ▼               ▼
       CRITICAL        HIGH/MED        LOW/INFO
    Auto-Block +    Blackboard +      Log Only
    Voice Alert     Finding Post
    + Timeline      + Timeline

严重程度级别

严重性异常类型响应
关键流氓AP、安全VLAN上的未经授权设备、检测到邪恶双胞胎、协同攻击、威胁情报匹配自动阻止+语音+黑板查找+事件时间线
未知OUI、人口激增、身份验证失败突发、IPS警报、deauth→重新连接,探测→关联黑板查找+语音警报+事件时间线
中等新设备(已知OUI),异常DPI模式,矿工温度警告黑板查找
LOW设备网络变化,矿工共享异常黑板查找
信息基线学习,常规事件仅记录

______________________________________________________________________

许可证

仅用于授权的安全测试、CTF竞赛和教育用途。

目录标签

目录标签

安全PythonClaude网络安全本地部署自主代理矿机管理威胁检测多代理系统

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

api-key

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdioapi-key部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP