Loading...
Loading...
Cross-process Stacks nonce oracle — atomic acquire/release prevents mempool collisions across skills
npx skill4agent add aibtcdev/skills nonce-managerSENDER_NONCE_STALESENDER_NONCE_DUPLICATE~/.aibtc/nonce-state.jsonacquirereleasebun run nonce-manager/nonce-manager.ts acquire --address SP...{ "nonce": 42, "address": "SP...", "source": "local" }bun run nonce-manager/nonce-manager.ts release --address SP... --nonce 42
bun run nonce-manager/nonce-manager.ts release --address SP... --nonce 42 --failed
bun run nonce-manager/nonce-manager.ts release --address SP... --nonce 42 --failed --rejected--rejected--broadcast--failed--failed --rejected--failed{ "address": "SP...", "nonce": 42, "action": "confirmed" }bun run nonce-manager/nonce-manager.ts sync --address SP...{ "nonce": 42, "address": "SP...", "mempoolPending": 3, "lastExecuted": 41, "detectedMissing": [] }bun run nonce-manager/nonce-manager.ts status
bun run nonce-manager/nonce-manager.ts status --address SP...import { acquireNonce, releaseNonce, syncNonce } from "../nonce-manager/nonce-store.js";
const { nonce } = await acquireNonce("SP...");
// ... send transaction ...
await releaseNonce("SP...", nonce, true); // true = success| Relay Response | Release Action |
|---|---|
| |
| |
| |
| |
| |
| |