meshtastic-skill
Send and receive messages via Meshtastic LoRa mesh network. Use for off-grid messaging, mesh network status, reading recent mesh messages, or sending texts via LoRa radio.
数据来源:ClawHub。 在 ClawSkills 查看
选择你使用的 Agent
方法一:命令行安装(推荐)
推荐(无需提前安装 clawhub)
npx clawhub@latest --dir ~/.claude/skills install meshtastic-skill或使用 clawhub CLI(需提前安装)
clawhub --dir ~/.claude/skills install meshtastic-skill⚠️ 需要 Node.js 18+,没有 Node?请使用下方方法二直接下载 ZIP。 安装 Node.js →
方法二:手动下载安装(无需 Node)
下载 ZIP,解压后将文件夹放到以下路径,重启 Agent 即可:
安装路径
~/.claude/skills/meshtastic-skill/💡解压后将文件夹放到上方路径,重启 Agent 即可生效
--- name: meshtastic description: Send and receive messages via Meshtastic LoRa mesh network. Use for off-grid messaging, mesh network status, reading recent mesh messages, or sending texts via LoRa radio. ---
Control a Meshtastic node via USB for off-grid LoRa mesh communication.
meshtastic and paho-mqtt packagesreferences/SETUP.md for full installation guideEdit CONFIG.md with your node details, MQTT settings, and alert destinations.
┌─────────────────────────────────────────────────────────────┐
│ MQTT Bridge │
├─────────────────────────────────────────────────────────────┤
│ RECEIVE: mqtt.meshtastic.org (global JSON traffic) │
│ PUBLISH: optional map broker (protobuf) │
│ SOCKET: localhost:7331 (commands: send, status, toggle) │
├─────────────────────────────────────────────────────────────┤
│ Files: │
│ • /tmp/mesh_messages.txt - received messages log │
│ • /tmp/mesh_nodes.json - cached node positions │
└─────────────────────────────────────────────────────────────┘
┌─────────────┐ USB ┌─────────────┐
│ LoRa Node │◄────────────►│ Bridge.py │
│ (Radio) │ │ - Serial │
└─────────────┘ │ - Socket │
│ - MQTT │
└──────┬──────┘
│
┌────────────────────────┼────────────────────────┐
│ │ │
▼ ▼ ▼
localhost:7331 /tmp/mesh_* MQTT Broker
(send commands) (message logs) (mesh traffic)
# Via socket (preferred - works while bridge running)
echo '{"cmd":"send","text":"Hello mesh!"}' | nc -w 2 127.0.0.1 7331
# Direct message to specific node
echo '{"cmd":"send","text":"Hey!","to":"!abcd1234"}' | nc -w 2 127.0.0.1 7331
# Check status
echo '{"cmd":"status"}' | nc -w 2 127.0.0.1 7331
# List RF nodes (seen via radio)
echo '{"cmd":"nodes"}' | nc -w 2 127.0.0.1 7331
# Toggle map publishing on/off
echo '{"cmd":"map"}' | nc -w 2 127.0.0.1 7331
# Explicitly enable/disable
echo '{"cmd":"map","enable":true}' | nc -w 2 127.0.0.1 7331
echo '{"cmd":"map","enable":false}' | nc -w 2 127.0.0.1 7331
# Force immediate position report
echo '{"cmd":"map_now"}' | nc -w 2 127.0.0.1 7331
# Recent messages (last 20)
tail -20 /tmp/mesh_messages.txt
# Filter common noise
tail -50 /tmp/mesh_messages.txt | grep -v -E "(Hello!|hey|mqtt-test)"
TIMESTAMP|CHANNEL|SENDER|DISTANCE|TEXT
2026-02-02T12:43:59|LongFast|!433bf114|1572km|Moin moin!
# Status
sudo systemctl status meshtastic-bridge
# Restart
sudo systemctl restart meshtastic-bridge
# View logs
sudo journalctl -u meshtastic-bridge -f
# Stop (needed for direct CLI access)
sudo systemctl stop meshtastic-bridge
cron.add({
name: "mesh-monitor",
schedule: { kind: "every", everyMs: 300000 }, // 5 min
sessionTarget: "isolated",
payload: {
kind: "agentTurn",
message: "Check /tmp/mesh_messages.txt for new messages. Filter out noise (test messages, 'Hello!', 'hey'). Alert me of interesting ones with translations if non-English.",
timeoutSeconds: 60,
deliver: true,
channel: "telegram" // or your channel
}
})
cron.add({
name: "mesh-digest",
schedule: { kind: "cron", expr: "0 8,14,20 * * *", tz: "Europe/Madrid" },
sessionTarget: "isolated",
payload: {
kind: "agentTurn",
message: "Read /tmp/mesh_messages.txt. Create a digest of interesting messages from the last 6 hours. Translate non-English, guess country from distance. Post summary.",
timeoutSeconds: 120,
deliver: true,
channel: "telegram"
}
})
sessions_spawn({
task: "Monitor /tmp/mesh_messages.txt every 30 seconds. Alert me for interesting messages (not noise). Run for 1 hour.",
label: "mesh-monitor",
runTimeoutSeconds: 3600
})
Approximate distances for country guessing (adjust for your location):
| Distance | Typical Regions | |----------|-----------------| | <500km | Neighboring countries/regions | | 500-1000km | Medium range | | 1000-1500km | Long range | | 1500-2000km | Very long range (likely MQTT relay) | | >2000km | MQTT-bridged traffic |
| Device | Notes | |--------|-------| | RAK4631 | Recommended, reliable USB | | T-Beam | Popular, has GPS | | Heltec V3 | Budget option | | LilyGo T-Echo | E-paper display |
See references/SETUP.md for hardware-specific setup.
| Region | Frequency | Topic Root | |--------|-----------|------------| | Europe | 868 MHz | msh/EU_868/2/json | | Americas | 915 MHz | msh/US/2/json | | Australia/NZ | 915 MHz | msh/ANZ/2/json |
~/.openclaw/skills/meshtastic/
├── SKILL.md # This file
├── CONFIG.md # Your configuration
├── scripts/
│ └── mesh.py # CLI wrapper
└── references/
└── SETUP.md # Installation guide
"Resource temporarily unavailable"
sudo systemctl stop meshtastic-bridgeNo messages appearing
journalctl -u meshtastic-bridge for errorsCan't send messages
echo '{"cmd":"status"}' | nc -w 2 127.0.0.1 7331Considering BLE instead of USB?
references/SETUP.md for detailed findings.安装 Off-grid radio for sovereign AI. LoRa mesh comms via Meshtastic — no internet required. 后,可以对 AI 说这些话来触发它
Send a Slack message to the #engineering channel about the deployment
Formats and sends the message with relevant context, tagging the right people
Summarize all unread messages in my inbox from today
Reads messages across connected channels and returns a prioritized summary
Draft a reply to this customer complaint and send it for review
Writes an empathetic, professional response and routes it to the approval queue
将技能文件夹放到 ~/.claude/skills/meshtastic-skill/ 目录(个人级,所有项目可用),或 .claude/skills/meshtastic-skill/(项目级)。重启 AI 客户端后,用 /meshtastic-skill 主动调用,或让 AI 根据上下文自动发现并使用。
Off-grid radio for sovereign AI. LoRa mesh comms via Meshtastic — no internet required. 支持 Claude、Cursor、OpenClaw,可与这些 AI 平台无缝集成,扩展其能力。
Off-grid radio for sovereign AI. LoRa mesh comms via Meshtastic — no internet required. 可免费安装使用。请查阅仓库了解许可证信息。
Send and receive messages via Meshtastic LoRa mesh network. Use for off-grid messaging, mesh network status, reading recent mesh messages, or sending texts via LoRa radio.
Off-grid radio for sovereign AI. LoRa mesh comms via Meshtastic — no internet required. 属于「Communication」分类,该分类的技能帮助 AI 智能体在此领域执行专业任务。