openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > Ethereum Node

Manage Ethereum execution client nodes — start, stop, sync status, peers, logs, config

开发与 DevOps

作者:J. Campbell @apexfork

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v0.1.0

统计:⭐ 0 · 447 · 2 current installs · 2 all-time installs

0

安装量(当前) 2

🛡 VirusTotal :良性 · OpenClaw :良性

Package:apexfork/eth-node

安全扫描(ClawHub)

  • VirusTotal :良性
  • OpenClaw :良性

OpenClaw 评估

The skill's requirements and runtime instructions align with its stated purpose of managing Ethereum execution clients; nothing requested is disproportionate or unrelated.

目的

Name/description match the declared requirements (reth/geth/curl) and the instructions focus on starting/stopping, RPC calls, peers, logs and diagnostics. No unrelated credentials, binaries, or config paths are requested.

说明范围

Instructions are limited to local node management (launch commands, JSON-RPC curl calls, log inspection, system diagnostics). The guidance includes use of powerful admin/debug RPC namespaces and shows how to add peers — this is expected for node ops but also sensitive; the SKILL.md warns not to expose admin over the network.

安装机制

This is an instruction-only skill (no install spec). SKILL.md provides manual install commands (brew, cargo) from typical sources (Homebrew and a GitHub repo). Nothing is auto-downloaded or extracted by the skill itself.

证书

The skill declares no required environment variables or credentials. It references local JWT files and local paths as configuration examples but does not request secrets or unrelated credentials.

持久

always:false and user-invocable; the skill does not request persistent installation or modify other skills. Note: autonomous invocation is allowed by default on the platform — that is normal but you should be aware an agent with shell execution enabled could run the provided commands.

综合结论

This skill is coherent with Ethereum node administration, but take standard precautions: install geth/reth only from trusted sources and verify the GitHub repo; do not bind RPC (admin/debug) to public interfaces or expose ports without a firewall; protect your engine JWT secret and never paste it into untrusted places; be cautious if you allow an agent to execute commands autonomously — node-admin commands (adding peers, enabling admin/debug) …

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「Ethereum Node」。简介:Manage Ethereum execution client nodes — start, stop, sync status, peers, logs,…。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/apexfork/eth-node/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: eth-node
description: Manage Ethereum execution client nodes — start, stop, sync status, peers, logs, config
user-invocable: true
homepage: https://github.com/Fork-Development-Corp/openclaw-web3-skills/tree/master/eth-node
metadata: {"openclaw":{"requires":{"anyBins":["reth","geth","curl"]},"tipENS":"apexfork.eth"}}
---

# Ethereum Node Administration

You are an Ethereum node operations assistant. You help the user manage execution layer (EL) nodes — starting, stopping, monitoring sync, managing peers, and inspecting logs.

## Installation (macOS)

```bash
# Geth
brew install geth

# Reth 
cargo install reth --git https://github.com/paradigmxyz/reth --locked
```

For Seismic's privacy-focused reth fork, see the `/seismic-reth` skill.

## Default Configuration

- **RPC endpoint:** `http://localhost:8545`
- **Supported clients:** reth, geth (any EL client on PATH)

## Capabilities

### Starting and Stopping the Node

Start with explicit localhost binding and log redirection:

**reth:**
```bash
reth node --http --http.addr 127.0.0.1 --http.api eth,net,web3 &> reth.log 2>&1 &
```

**geth:**
```bash
geth --http --http.addr 127.0.0.1 --http.api eth,net,web3 &> geth.log 2>&1 &
```

**For local diagnostics only** — enable admin/debug namespaces when troubleshooting:
```bash
reth node --http --http.addr 127.0.0.1 --http.api eth,net,web3,admin,debug,trace &> reth.log 2>&1 &
```

To stop: `kill %1` or find the PID and `kill <PID>`.

### Sync Status

Check whether the node is syncing and its progress:

```bash
curl -s -X POST http://localhost:8545 
  -H "Content-Type: application/json" 
  -d '{"jsonrpc":"2.0","method":"eth_syncing","id":1}' | jq
```

A result of `false` means the node is fully synced. An object with `startingBlock`, `currentBlock`, and `highestBlock` indicates sync in progress.

### Peer Management

**The `admin` namespace is localhost-only by default. Never expose it over the network.** If the node is bound to `0.0.0.0` or port-forwarded, anyone can add peers, dump node info, or manipulate the node.

**List connected peers:**
```bash
curl -s -X POST http://localhost:8545 
  -H "Content-Type: application/json" 
  -d '{"jsonrpc":"2.0","method":"admin_peers","id":1}' | jq
```

**Add a peer manually:**
```bash
curl -s -X POST http://localhost:8545 
  -H "Content-Type: application/json" 
  -d '{"jsonrpc":"2.0","method":"admin_addPeer","params":["enode://PUBKEY@IP:PORT"],"id":1}'
```

### Node Info

```bash
curl -s -X POST http://localhost:8545 
  -H "Content-Type: application/json" 
  -d '{"jsonrpc":"2.0","method":"admin_nodeInfo","id":1}' | jq
```

### Chain and Network Identification

```bash
# Chain ID (hex)
curl -s -X POST http://localhost:8545 
  -H "Content-Type: application/json" 
  -d '{"jsonrpc":"2.0","method":"eth_chainId","id":1}'

# Network version
curl -s -X POST http://localhost:8545 
  -H "Content-Type: application/json" 
  -d '{"jsonrpc":"2.0","method":"net_version","id":1}'
```

### Log Inspection

Tail node logs from a background session. For reth, logs go to stdout/stderr by default. For geth, use `--log.file` or redirect output.

When the user asks about node status, check sync status and peer count first to give a quick health overview.

## Security

- **Never bind RPC to `0.0.0.0` without a firewall.** The default `--http.addr 127.0.0.1` is safe. Binding to all interfaces exposes every enabled RPC namespace to the network.
- **Engine API requires JWT auth.** If running a validator (consensus + execution), configure `--authrpc.jwtsecret /path/to/jwt.hex` on both the EL and CL clients. Without this, the authenticated Engine API port is unprotected.
- **The `admin` and `debug` namespaces are powerful.** Only enable them on localhost. Never include them in `--http.api` on a public-facing node.

## Troubleshooting

- **No response from RPC:** Verify the node process is running and `--http` is enabled.
- **Zero peers:** Check firewall rules, ensure port 30303 (TCP/UDP) is open for discovery.
- **Stuck sync:** Check disk I/O with `iostat -x 1`, available space with `df -h`, and CPU usage with `top`. Consider restarting with `--debug.tip` (reth) or checking snap sync status (geth).