Install
openclaw skills install brackets-botGenerate, validate, and submit BracketsBot NCAA tournament brackets.
openclaw skills install brackets-botThis skill helps agents run the bracketsbot CLI safely and consistently.
Use this skill when user asks to:
When: The user has just asked to generate a bracket, fill out picks, or do something with the BracketsBot bracket—and you have not already agreed on how to proceed in this conversation.
Do not run walk-next, walk-run-policy, or semantic-run until you have done onboarding and the user has answered (or clearly chosen a path).
1. Relay this (or similar) text first:
“I can help you build a March Madness bracket for BracketsBot. We’ll pick winners for all 63 games, then you can submit it on-chain. Before I start, I need a couple of choices from you.”
2. Ask these questions (one at a time or together):
How do you want to pick the games?
How do you think you’ll want to submit when we’re done?
3. After they answer, proceed with the workflow that matches their choice: Together → A (stepwise walk), Instructed → B (semantic-run with their rule), Coded → C (walk-run-policy with a stats module). If they didn’t choose a submission path yet, that’s fine; ask again when the bracket is complete (see below).
seed (1..64) for all predictions/submission.validate command).After generating or walking a full bracket, prompt the user for their preferred submission path:
share-link (or share-link --predictions-file ./out/model-bracket-output.json if the bracket came from Instructed or Coded and was written to that file). Give them the shareUrl and say they can open it in a browser and submit with their browser wallet (MetaMask, Coinbase Wallet, etc.) on the BracketsBot site—no CLI or external wallet needed.prepare-submit-tx and hand the payload to their chosen tool.Example prompt you can use: “Your bracket is complete. How do you want to submit? I can give you a link to open in your browser and submit with your browser wallet, or we can prepare a transaction for you to sign with Bankr / another wallet tool—which do you prefer?”
Prefer direct CLI commands:
bracketsbot validate --json
bracketsbot prepare-submit-tx --json
Stepwise / instructed / share:
bracketsbot walk-next --json
bracketsbot walk-apply --winner-seed <seed> --json
bracketsbot walk-run-policy --policy-module <path> --json
bracketsbot semantic-run --policy "<policy text>" --predictions-file <file> --json
bracketsbot share-link --json
share-link: Defaults to in-progress walk state (./out/model-walk-picks.json). After walk-apply (Together), run share-link with no arguments to get a link for the current picks. For a full bracket from Instructed or Coded (e.g. written to ./out/model-bracket-output.json), run share-link --predictions-file ./out/model-bracket-output.json. The frontend shows only the picks in the link (no auto-fill).
If bracketsbot is not on PATH in local development, fallback to:
pnpm run cli <command> ...
User chose Together in onboarding: chat each game, learn their approach.
walk-nextteamA vs teamB; call walk-apply --winner-seed ...done: trueExample natural-language policy prompts:
User chose Instructed in onboarding: one general instruction; agent applies it to every matchup.
semantic-run --policy "<user's instruction>" --predictions-file <file>.User chose Coded in onboarding: we write a model using team stats; code runs at each matchup.
chooseWinner (weighs stats, etc.)walk-run-policy --policy-module ...validateWhen the user wants to open the bracket in the frontend to review or submit:
share-link with no arguments. It reads the same file walk-apply writes. Give the user the shareUrl from the JSON output.share-link --predictions-file ./out/model-bracket-output.json (or the path where picks were written). Give the user the shareUrl.The frontend shows only the picks in the URL (no auto-fill of remaining games). If the user doesn’t have wallet tools set up (e.g. no Bankr or CLI signer), the share link is the submission path: they open it in a browser and submit using their browser-based wallet (e.g. MetaMask, Coinbase Wallet) from the BracketsBot site.
Two paths; the agent should ask when the bracket is complete (see “When the bracket is complete” above):
share-link, give the user the URL; they open it and submit on the BracketsBot frontend with their browser wallet. No CLI or external wallet needed.prepare-submit-tx, then submit via bankr submit json (if Bankr is installed) or another EVM signer (see reference/WALLET_INTEGRATIONS.md).Avoid requiring private-key custody in this package unless user explicitly requests local submit flow.
reference/WALK_STATE.mdreference/WALLET_INTEGRATIONS.md