Validator manage
Manage GenLayer validators across testnets using the genlayer CLI. Join, fund, set identity, list, and organize validators per network and owner.From its SKILL.md
npx -y skills add genlayerlabs/skills --skill validator-manageAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 19 stars19 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
5.1 KB, as published. Nobody here has run it
Validator Manage
Purpose
Manage GenLayer validators across testnet networks (asimov, bradbury, etc.) using the local genlayer CLI. Covers listing, joining, funding operators, setting identities, renaming accounts, and producing per-network reports.
Quick Reference
- Tool:
genlayerCLI (npm global package) - Config:
~/.genlayer/genlayer-config.json - Keystores:
~/.genlayer/keystores/<name>.json - Memory: project memory
validators.md
Prerequisites
# Verify CLI is installed and check version
genlayer --version
# Check current network
genlayer network list
# List available accounts
genlayer account list
Key Concepts
Address Roles
- Owner: Controls the validator on-chain. Can set identity, exit, deposit. One owner can own many validators.
- Operator: Runs the node software. Each validator has exactly one operator. Different per network.
- Validator: The on-chain wallet created when joining. Assigned automatically by the staking contract.
Network Isolation
Each testnet has its own staking contract. Validators must be joined separately per network. Operator keys should be unique per network (same owner, different operators).
Operations
Switch Network
genlayer network set testnet-bradbury
genlayer network info
List Validators (Per Network)
# Table view with stake, status, weight
genlayer staking validators
# Detailed info for a specific validator
genlayer staking validator-info <validator-address>
Join Validator
genlayer staking validator-join \
--amount "100000gen" \
--operator <operator-address> \
--account "<owner-cli-name>"
Returns the on-chain validatorWallet address.
Fund Operator
genlayer account send --account "<owner-cli-name>" <operator-address> <amount>
Set Moniker (Identity)
Requires the owner account, not the operator.
genlayer staking set-identity <validator-address> \
--moniker "GenLayerLabs Validator N" \
--account "<owner-cli-name>"
Create New Operator Accounts
genlayer account create \
--name "GenLayerLabs Bradbury Validator N" \
--password "<password>" \
--no-set-active
Rename Local Account
Account names are just filenames in the keystore directory:
mv ~/.genlayer/keystores/"Old Name.json" ~/.genlayer/keystores/"New Name.json"
After renaming, unlock the account under the new name:
genlayer account unlock --account "New Name"
Check Balances
genlayer account show --account "<name>"
Epoch & Staking Info
genlayer staking epoch-info
genlayer staking active-validators
genlayer staking quarantined-validators
genlayer staking banned-validators
Reporting Format
Always use box-drawing tables for terminal output, grouped by network and owner:
═══════════════════════════════════════════════════════════════════════════════════
TESTNET-BRADBURY
═══════════════════════════════════════════════════════════════════════════════════
Owner: 0xAAAA...AAAA (Owner Name) — 100K GEN remaining
┌──────────────────────────┬──────────────────────┬──────────────────────┬────────┐
│ Moniker │ Validator │ Operator │ Status │
├──────────────────────────┼──────────────────────┼──────────────────────┼────────┤
│ Example Validator 1 │ 0xBBBB...BBBB │ 0xCCCC...CCCC │ pending│
└──────────────────────────┴──────────────────────┴──────────────────────┴────────┘
Batch Operations
When joining multiple validators:
- Create all operator accounts first (
account create) - Join all validators with the owner account (
staking validator-join) - Fund all operators (
account send) - Set monikers for all (
staking set-identity) - Verify with
staking validators - Update memory file with new mappings
Current Accounts
See the project memory file validators.md for the full mapping of owners, validators, and operators across networks.
Automation
See skill.yaml for procedure definition.
See sharp-edges.yaml for common pitfalls.