Skip to content

feat: Add Boardwalk plugin - #116

Open
daedboi wants to merge 6 commits into
base:masterfrom
daedboi:plugin/boardwalk
Open

feat: Add Boardwalk plugin#116
daedboi wants to merge 6 commits into
base:masterfrom
daedboi:plugin/boardwalk

Conversation

@daedboi

@daedboi daedboi commented Jun 21, 2026

Copy link
Copy Markdown

Description

Adds the Boardwalk plugin (hybrid): drives the boardwalk CLI (@useboardwalk/sdk) to build unsigned calldata for send_calls, with a prefilled launch-link fallback when there's no shell. Boardwalk is a fee-protection token-launch platform (permanently-locked liquidity + a built-in swap-fee equivalent) — the CLI never signs, the user's Base Account does. Covers launch, contribute, claim, refunds, BWLK stake/vote, fee/vesting/LP claims, visibility, and swap.

2026-07 update: Boardwalk redeployed since this PR was opened — BMX is now BWLK, and the staking/governance stack moved from Base to Ethereum (weekly vote epochs). The plugin now targets the released @useboardwalk/sdk@1.0.0, with chains: [ethereum, base, arbitrum] — the intersection of Boardwalk's deployments and Base MCP's send_calls set (Boardwalk also runs on Robinhood Chain, 4663, noted as out of Base MCP scope in ## Notes). Also appends staking + governance to the shared tag vocabulary, the sanctioned Contribution Scope edit for net-new tags.

Note on risk tags: local-exec is intentionally omitted for the cliPackage path, matching Morpho / Aerodrome / Bitrefill / OpenSea precedent — the spec mandates it only for externalMcp.transport: stdio.

Website: https://www.useboardwalk.com/
X: https://x.com/useboardwalk

Type of change

  • Base MCP plugin submission
  • Update to an existing skill/plugin
  • New skill
  • Documentation
  • Other (please describe):

Affected skill(s)

base-mcp

Plugin checklist

  • Plugin spec/manifest is accurate and tested
  • (If Applicable) API endpoints and/or external MCP/CLI tested and functional
  • Follows Contribution Scope

Base MCP Plugin Submission Agreement (when applicable)

By checking the box below, I agree and represent on behalf of the protocol/entity it references that:

  • I am authorized to submit this plugin on behalf of the protocol/entity it references;

  • the plugin does not infringe or misappropriate any third party's rights;

  • the plugin and the underlying protocol comply with all applicable laws, and my API enforces the same geofencing and eligibility restrictions as my own user-facing app;

  • the plugin is in full compliance with our protocol's/entity's then-current terms and conditions, and if not, submission and use thereafter is considered a formal written exemption to such terms and conditions;

  • the plugin accurately describes its behavior and contains no hidden, deceptive, or malicious instructions, and my API will not return malicious or unexpected calldata;

  • the protocol/entity is solely responsible for the plugin and is submitting a plugin is subject to the Base Account and Base App Terms of Service as using a "Service"; and

  • Base may modify, decline to list, or remove the plugin at any time, for any reason.

  • I have read and agree to the Base MCP Plugin Submission Agreement above.

Related issues

@cb-heimdall

cb-heimdall commented Jun 21, 2026

Copy link
Copy Markdown
Collaborator

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

daedboi added 2 commits June 22, 2026 19:37
Boardwalk redeployed while this PR was open: BMX is now BWLK and the
staking/governance stack moved from Base to Ethereum (weekly vote
epochs). Update the plugin to the released @useboardwalk/sdk@1.0.0:

- chains: [ethereum, base, arbitrum] — the intersection of Boardwalk's
  deployments and Base MCP's send_calls set; Robinhood Chain (4663) is
  noted as out of Base MCP scope in ## Notes
- rename BMX flags/ids/fields to BWLK; stake/vote/rewards/participation
  are Ethereum-only
- refresh mechanics: 0.95% fee split, swap on the chain's canonical
  Uniswap V2 with tax-adjusted quotes, 5 WETH graduation on every chain
- pin cliPackage and the npx examples to @useboardwalk/sdk@1.0.0
- append staking + governance to the shared tag vocabulary (the
  sanctioned Contribution Scope edit for net-new tags)
@daedboi

daedboi commented Jul 31, 2026

Copy link
Copy Markdown
Author

Updated the plugin for Boardwalk's redeployment, which shipped while this PR was open (released as @useboardwalk/sdk@1.0.0 on npm):

  • BMX → BWLK throughout (token, flags, bwlkBurnCost, approve step ids).
  • Staking/governance moved from Base to Ethereum: stake-bwlk, unstake-bwlk, handle-rewards, claim-participation, and vote are now Ethereum-only, with weekly vote epochs (epoch N's vote directs epoch N+1's revenue budget).
  • chains: [ethereum, base, arbitrum] — the intersection of Boardwalk's deployments and Base MCP's send_calls set, per the spec. Boardwalk also runs on Robinhood Chain (4663); ## Notes marks it out of Base MCP scope (same treatment the previous revision gave Fraxtal/Katana/Ink, and the Balancer plugin gives its non-Base-MCP chains).
  • Mechanics refresh to match the deployed contracts: 0.95% fee split spelled out, swap routes launch↔WETH on the chain's canonical Uniswap V2 with a tax-adjusted quote, graduation threshold is 5 WETH on every chain, advanced-path fee/vesting recipient limits (1–4 / up to 5).
  • cliPackage and npx examples pinned to @useboardwalk/sdk@1.0.0; plugin doc version bumped 0.4.2 → 1.0.0.
  • Tag vocabulary: appended staking + governance to the list in references/plugin-spec.md — the sanctioned Contribution Scope edit for net-new tags (staking was already in use by Aerodrome but missing from the list).

local-exec remains intentionally omitted for the cliPackage path, matching Morpho / Aerodrome / Bitrefill / OpenSea precedent — the spec mandates it only for externalMcp.transport: stdio.

1.0.1 is published and the pinned invocation resolves. Updates the
plugin doc version, the cliPackage pin, and the npx example.
@daedboi

daedboi commented Jul 31, 2026

Copy link
Copy Markdown
Author

Re-pinned to @useboardwalk/sdk@1.0.1 (22f58ce), now published — the plugin doc version, the cliPackage invocation, and the npx example. Verified npx -p @useboardwalk/sdk@1.0.1 boardwalk --version resolves against the live registry.

1.0.1 is a docs-only patch on our side (the corrected chain scoping plus smart-account signature guidance ship inside the package, and npm versions are immutable, so the fix needed its own release). No CLI behavior changed from 1.0.0.

The diff remains the two files described above: the plugin file, and the staking + governance append to the tag vocabulary.

Boardwalk now calls the 7-day path a standard launch. The CLI flag, the
SDK types, and the onchain contracts still use "advanced", so the doc
keeps the literal alongside the new name and states the mapping in
## Notes. 1.0.2 is published and the pinned invocation resolves.
@daedboi

daedboi commented Jul 31, 2026

Copy link
Copy Markdown
Author

Updated to @useboardwalk/sdk@1.0.2 (e132c21), published and verified — npx -p @useboardwalk/sdk@1.0.2 boardwalk --version resolves against the live registry.

Two changes since the last update:

  • Launch-path naming. Boardwalk now calls the 7-day path a standard launch. The CLI flag, the SDK types, and the onchain contracts still use advanced, so the doc keeps the literal next to the new name (standard (--path advanced)) and states the mapping in ## Notes — an agent should pass --path advanced when a user says "standard", and report a "path": "ADVANCED" API response back as a standard launch. No flag or wire value changed.
  • 1.0.2 pin on the plugin version, the cliPackage, and the npx example.

The diff is unchanged in scope: the plugin file, plus the staking + governance append to the tag vocabulary.

Express dropped from 5 to 2.5 WETH on every chain; the Standard change is
timelocked and executes 2026-08-08.

The two thresholds are separate timelocked values and can differ between
executions, so the line now points at the `graduationThreshold` field in the
`launch` output rather than presenting a written-down number as authoritative.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants