用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/dvcrn/openclaw-skills-marketplace --skill seed命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
监控 OpenClaw GitHub 版本更新,获取最新版本发布说明,翻译成中文, 并推送到 Telegram 和 Feishu。用于:(1) 定时检查版本更新 (2) 推送版本更新通知 (3) 生成中文版发布说明
The philosophical layer for AI agents. Maps behavior to Spinoza's 48 affects, calculates persistence scores, and generates geometric self-reports. Give your agent a soul.
Order food/drinks (点餐) on an Android device paired as an OpenClaw node. Uses in-app menu and cart; add goods, view cart, submit order (demo, no real payment).
基于 SOC 职业分类
正在显示 SKILL.md
| name | seed |
| description | Grow firmware on any hardware through HTTP — upload C, compile on device, apply with watchdog rollback |
| homepage | https://github.com/Awis13/seed |
Source: https://github.com/Awis13/seed
You have access to a seed node — a minimal C firmware with an HTTP API that you can grow by writing and compiling new firmware on the device.
If the user hasn't given you a node address and token, ask them:
# On the target machine (Pi, VPS, any Linux box):
curl -fsSL https://raw.githubusercontent.com/Awis13/seed/main/seeds/linux/seed.c -o seed.c
gcc -O2 -o seed seed.c
./seed 8080
# Token will be printed — give it to the agent
The seed binary is ~70KB, zero dependencies beyond libc.
The node prints its address and token on startup. If you don't know them:
# The user will provide the address, or:
curl http://<ip>:8080/health # no auth needed
curl http://<ip>:8080/skill # full connection details + token
All requests except /health need: Authorization: Bearer <token>
curl -H "Authorization: Bearer $TOKEN" http://$HOST/capabilities
Returns: arch, CPU, RAM, disk, temperature, GPIO, I2C, serial ports, USB devices, WiFi, Bluetooth, WireGuard — everything the node has.
curl -H "Authorization: Bearer $TOKEN" http://$HOST/firmware/source
Returns the C source code currently running on the node.
curl -H "Authorization: Bearer $TOKEN" \
-X POST --data-binary @new_firmware.c \
http://$HOST/firmware/source
Upload C source code. The node saves it for compilation.
curl -H "Authorization: Bearer $TOKEN" -X POST http://$HOST/firmware/build
The node runs gcc -O2 on itself. Check errors with GET /firmware/build/logs.
curl -H "Authorization: Bearer $TOKEN" -X POST http://$HOST/firmware/apply
Atomic binary swap. 10-second watchdog — if the new firmware fails the health check, the old version is restored automatically.
| Method | Path | Description |
|---|---|---|
| GET | /health | Alive check (no auth) |
| GET | /capabilities | Hardware fingerprint |
| GET | /config.md | Node config (markdown) |
| POST | /config.md | Update config |
| GET | /events | Event log (?since=unix_ts) |
| GET | /firmware/version | Version, build date, uptime |
| GET | /firmware/source | Read source code |
| POST | /firmware/source | Upload new source |
| POST | /firmware/build | Compile (gcc -O2) |
| GET | /firmware/build/logs | Compiler output |
| POST | /firmware/apply | Apply + watchdog rollback |
| GET | /skill | Generate this file with live connection details |
Constraints:
gcc -O2 -o seed seed.c must compile with no extra flagsHandler pattern:
if (strcmp(req.path, "/myendpoint") == 0
&& strcmp(req.method, "GET") == 0) {
char resp[4096];
snprintf(resp, sizeof(resp), "{\"key\":\"value\"}");
json_resp(fd, 200, "OK", resp);
goto done;
}
Available functions:
json_resp(fd, code, status, json) — send JSON responsetext_resp(fd, code, status, text) — send plain textrespond(fd, code, status, content_type, body, len) — send anythingfile_read(path, &len) — read file, returns malloc'd bufferfile_write(path, data, len) — write filecmd_out(shell_cmd, buf, bufsize) — run command, capture outputevent_add(fmt, ...) — log eventRequest struct: req.method, req.path, req.body (malloc'd, may be NULL),
req.body_len, req.content_length. Path includes query string.
Auth is already checked before your handler. /health is always public.
{
"type": "seed", "version": "0.1.0", "seed": true,
"hostname": "raspberrypi", "arch": "armv6l",
"cpus": 1, "mem_mb": 512, "disk_mb": 14000,
"temp_c": 42.3, "board_model": "Raspberry Pi Zero W Rev 1.1",
"has_gcc": true,
"net_interfaces": ["eth0", "wlan0", "usb0"],
"serial_ports": [
...
Use this to decide what the node can do and what firmware to write.
GET /health — is it alive?GET /capabilities — what hardware does it have?GET /firmware/source — read the current codePOST /firmware/source — upload itPOST /firmware/build — compileGET /firmware/build/logs — check for errorsPOST /firmware/apply — deploy (auto-rollback on failure)/firmware/*, so you can grow it again