Add CTRL plugin#69
Open
daxaur wants to merge 1 commit into
Open
Conversation
CTRL is a workflow automation surface on Base — users compose
trigger → action → condition graphs in natural language, sign one
EIP-5792 batch to deploy an audited V3 vault + register on-chain
spending caps, and a keeper executes triggers autonomously under
those caps forever.
The plugin follows the same pattern as bankr.md: public API on the
plugin's side, the actual user signature flows through Base MCP's
send_calls. CTRL itself doesn't ship an MCP server — it's purely
HTTP, with the activation batch designed for send_calls handoff.
Key surface area covered:
- /block-catalog (live block schema)
- /workflows (create draft, no auth)
- /activate/{id} (returns EIP-5792 calls[] for send_calls)
- /vault-status (anonymous read by wallet)
- /execution-logs (anonymous read by workflow_id)
ctrl.build needs to be added to webRequest.ts DEFAULT_WEB_REQUEST_HOSTS
in the walletchan-mcp downstream so the agent's web_request calls land;
that's a separate, tiny PR I'll open after this lands. CTRL is verified
on BaseScan and live in production — addresses are listed in the doc.
Collaborator
🟡 Heimdall Review Status
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds CTRL as a Base MCP plugin, sibling of
bankr.md.CTRL is a workflow automation surface on Base. Users compose trigger → action → condition graphs in natural language ("DCA $50 ETH weekly", "snipe Flaunch launches with
miladyin the name, auto-sell at 2x", "mirror this whale"), sign one EIP-5792 batch to deploy an audited V3 vault + register on-chainmaxPerSwap/maxPerDaycaps, and a keeper executes triggers autonomously under those caps. After the activation signature, no further user interaction is required.How it fits Base MCP
ctrl.build/api/mcp/*.POST /activate/{workflowId}endpoint returns an EIP-5792calls[]array designed to be passed directly to Base MCP'ssend_calls, the same pattern Bankr uses for the swap step.Verified contracts on Base mainnet
All three are verified on BaseScan and live in production.
What's in the plugin
bankr.mdshapeweb_requestallowlist (downstream walletchan-mcp PR addsctrl.buildtoDEFAULT_WEB_REQUEST_HOSTS)/block-catalog,/workflowsPOST,/activate/{id}POST,/vault-status,/execution-logs/block-catalogendpoint flagged as the live source of truthpool.created.safetyEnabledGoPlus integrationTest plan
skills/base-mcp/plugins/ctrl.mdbankr.md,morpho.md, etc.Happy to iterate on the doc style — particularly the placement of the auto-sell snippet and the worked example. Whatever house style works best.