CROSS Skills
Staking

CROSS Staking · AI Agent Skill

Delegate, undelegate, and claim CROSS staking by sentence

Bonds, the 14-day unbonding period, and rewards on CROSS Mainnet 2.0 PoSA validators — all by natural language. The skill tracks unbonding cooldowns automatically.

Open SKILL.md ↗View repo ↗

Install

Clone https://github.com/to-nexus/skill-cross-stake into a temporary directory and run the install.sh script inside it to install the skill-cross-stake skill into my Claude Code environment. Tell me the result in one line when you're done.
  1. For personal testing, keep local signer config in the skill .env before staking writes.
  2. For team, hosted-agent, or production funds, prefer Vault/KMS/HSM-backed signing.
  3. Set safety guards locally: MAX_STAKE_NOTIONAL and CONFIRM_THRESHOLD.

Heads-up: CROSS Stake runs on local agent runtimes only — see the Where it runs section for the supported list. Hosted chat environments cannot execute this skill.

Where it runs

Supported

Claude Code (CLI)OpenClawCursor Composer / Background AgentCodex CLIAiderGooseGemini CLIOpenInterpreter

Not supported

Claude.ai (web)ChatGPT (web)Gemini (web)GitHub Copilot Chat (web)

What you can do

validators

Active validators (commission, total bond, jailed).

🟢 Read
my-delegation

Your delegations and totals.

🟡 Read · addr
rewards

Accrued rewards only.

🟡 Read · addr
delegate

Delegate native CROSS.

🔴 Write · tx
undelegate

Unbond (14-day cooldown).

🔴 Write · tx
withdraw

Claim mature unbonds after cooldown.

🔴 Write · tx
claim-rewards

Claim rewards (when protocol supports it).

🔴 Write · tx
history

Stake / unstake / withdraw / claim events.

🟡 Read · addr

Try it · natural-language prompts

Copy any of these into your agent — they map 1-to-1 onto a skill command.

Top 10 active validators
Table (moniker, commission, total bond)
Show my delegations
Delegation table + totals
Delegate 10 CROSS to 0xvalidator…
Dry-run → confirm → tx
Undelegate 5 CROSS from validator X
tx + withdrawAvailableAt
Withdraw all mature unbonds
tx sent
Claim all rewards
tx sent (when supported)
Show my staking history
Event table

Command reference

commandargsauthmutationdescription
validatorsreadActive validators.
my-delegation[<addr>]readYour delegations.
rewards[<addr>]readPending rewards.
delegate<validator> <amountCross> [--confirm]PKtxDelegate.
undelegate<validator> <amountCross> [--confirm]PKtxUnbond.
withdraw<validator> [--confirm]PKtxClaim mature unbonds.
claim-rewards<validator>|--all [--confirm]PKtxClaim rewards.
history[<addr>]readEvents.

Safety & credentials

On-chain transactions + 14-day unbonding

  • 🔴 Signs on-chain transactions — local signer config required.
  • 14-day unbonding — after undelegate your principal is locked for 14 days. The skill computes withdrawAvailableAt automatically.
  • `claim-rewards` is conditional — supported only if a separate claim selector was confirmed in Phase-0. Auto-compounding protocols return not_supported_by_protocol.
  • Guard env vars: MAX_STAKE_NOTIONAL (per-delegate cap)
  • CONFIRM_THRESHOLD (forces dry-run above this size)
  • MIN_GAS_NATIVE_CROSS (gas cushion)

Troubleshooting

cooldown_pending?
Less than 14 days since undelegate. The response envelope lists every pending unbond's withdrawAvailableAt.
delegate returns validator_jailed?
The validator was slashed and jailed. Pick another.
not_supported_by_protocol?
Rewards auto-compound — no separate claim needed; my-delegation already reflects them.