Monitor and control AllStar Link amateur radio nodes via REST API
数据来源:ClawHub。 在 ClawSkills 查看
选择你使用的 Agent
方法一:命令行安装(推荐)
推荐(无需提前安装 clawhub)
npx clawhub@latest --dir ~/.claude/skills install asl-control或使用 clawhub CLI(需提前安装)
clawhub --dir ~/.claude/skills install asl-control⚠️ 需要 Node.js 18+,没有 Node?请使用下方方法二直接下载 ZIP。 安装 Node.js →
方法二:手动下载安装(无需 Node)
下载 ZIP,解压后将文件夹放到以下路径,重启 Agent 即可:
安装路径
~/.claude/skills/asl-control/💡解压后将文件夹放到上方路径,重启 Agent 即可生效
--- name: asl-control description: Monitor and control AllStar Link amateur radio nodes via REST API metadata: {"openclaw":{"emoji":"📡","requires":{"bins":["python3"],"env":["ASL_PI_IP","ASL_API_KEY"]}}} ---
Control and monitor your AllStar Link node through the ASL Agent REST API.
---
This skill is a client. It talks to an ASL3 agent backend that must be running independently on a Raspberry Pi (or any host reachable over your network).
You need:
asl-agent FastAPI service (see backend/ in this repo for the server code)config.yaml (at /opt/asl-agent/config.yaml) contains your API key and node numberEnvironment variables (set in your secrets file, e.g. ~/.config/secrets/api-keys.env):
ASL_PI_IP -- IP address of the Pi (Tailscale IP preferred, works from anywhere)ASL_API_KEY -- Bearer token from the Pi's config.yamlASL_API_BASE -- (optional) override the full base URL if you're not on port 8073. Format: http://host:portASL_STATE_DIR -- (optional) override where favorites/net state files are stored. Default: ~/.openclaw/state/asl-control/---
All commands go through the Python client. Always source your secrets first:
source ~/.config/secrets/api-keys.env
python3 {baseDir}/scripts/asl-tool.py <command> [flags]
Every command supports --out json (default, machine-readable) or --out text (human-readable one-liner).
# Status & monitoring
python3 {baseDir}/scripts/asl-tool.py status --out text
python3 {baseDir}/scripts/asl-tool.py nodes --out text
python3 {baseDir}/scripts/asl-tool.py report --out text
python3 {baseDir}/scripts/asl-tool.py audit --lines 20
# Connect / disconnect
python3 {baseDir}/scripts/asl-tool.py connect 55553 --out text
python3 {baseDir}/scripts/asl-tool.py connect 55553 --monitor-only --out text
python3 {baseDir}/scripts/asl-tool.py disconnect 55553 --out text
# Favorites
python3 {baseDir}/scripts/asl-tool.py favorites list
python3 {baseDir}/scripts/asl-tool.py favorites set mynet 55553
python3 {baseDir}/scripts/asl-tool.py favorites remove mynet
python3 {baseDir}/scripts/asl-tool.py connect-fav mynet --out text
# Net profiles (timed sessions, auto-disconnect default)
python3 {baseDir}/scripts/asl-tool.py net list
python3 {baseDir}/scripts/asl-tool.py net set ares 55553 --duration-minutes 90
python3 {baseDir}/scripts/asl-tool.py net start ares --out text
python3 {baseDir}/scripts/asl-tool.py net status --out text
python3 {baseDir}/scripts/asl-tool.py net tick --out text
python3 {baseDir}/scripts/asl-tool.py net stop --out text
python3 {baseDir}/scripts/asl-tool.py net remove ares
# Watch (JSON-line event stream)
python3 {baseDir}/scripts/asl-tool.py watch --interval 5 --emit-initial
Favorites and net session state live outside the repo, so they survive updates:
~/.openclaw/state/asl-control/favorites.json~/.openclaw/state/asl-control/net-profiles.json~/.openclaw/state/asl-control/net-session.jsonAuto-disconnect only fires when net tick runs. Wire it to cron for enforcement:
* * * * * /bin/bash -c 'source ~/.config/secrets/api-keys.env && python3 /path/to/asl-tool.py net tick --out text >> ~/.openclaw/state/asl-control/tick.log 2>&1'
---
When the user asks in natural language, translate to the Python client:
asl-tool.py report --out textasl-tool.py nodes --out textasl-tool.py connect 55553 --out textasl-tool.py connect 55553 --monitor-only --out textasl-tool.py connect-fav "" --out text asl-tool.py disconnect 55553 --out textasl-tool.py favorites list --out textasl-tool.py net start --out text asl-tool.py net status --out textasl-tool.py audit --lines 20 --out text---
ASL_PI_IP (works from anywhere on the mesh)/opt/asl-agent/audit.log安装 Allstar Link node control ASL3 (ASL3 Node Control) 后,可以对 AI 说这些话来触发它
Help me get started with Allstar Link node control ASL3 (ASL3 Node Control)
Explains what Allstar Link node control ASL3 (ASL3 Node Control) does, walks through the setup, and runs a quick demo based on your current project
Use Allstar Link node control ASL3 (ASL3 Node Control) to monitor and control AllStar Link amateur radio nodes via REST API
Invokes Allstar Link node control ASL3 (ASL3 Node Control) with the right parameters and returns the result directly in the conversation
What can I do with Allstar Link node control ASL3 (ASL3 Node Control) in my developer & devops workflow?
将技能文件夹放到 ~/.claude/skills/asl-control/ 目录(个人级,所有项目可用),或 .claude/skills/asl-control/(项目级)。重启 AI 客户端后,用 /asl-control 主动调用,或让 AI 根据上下文自动发现并使用。
Allstar Link node control ASL3 (ASL3 Node Control) 支持 Claude、Cursor、OpenClaw,可与这些 AI 平台无缝集成,扩展其能力。
Allstar Link node control ASL3 (ASL3 Node Control) 可免费安装使用。请查阅仓库了解许可证信息。
Monitor and control AllStar Link amateur radio nodes via REST API
Lists the top use cases for Allstar Link node control ASL3 (ASL3 Node Control), with example commands for each scenario
Automate my developer & devops tasks using Allstar Link node control ASL3 (ASL3 Node Control)
Identifies repetitive steps in your workflow and sets up Allstar Link node control ASL3 (ASL3 Node Control) to handle them automatically
Allstar Link node control ASL3 (ASL3 Node Control) 属于「Developer & DevOps」分类,该分类的技能帮助 AI 智能体在此领域执行专业任务。