Agent Skill
2/7/2026

evm-deployment

Deploy Sablier EVM contracts (Comptroller, ERC20 Faucet, Flow, Lockup, Airdrops) with full workflow automation. This skill should be used when the user asks to "deploy", "deploy protocol", "deploy to chain", or mentions deployment-related tasks. Handles contract deployment, explorer verification, SDK updates, and sample data creation through Init script.

S
sablier
7GitHub Stars
1Views
npx skills add sablier-labs/plugin-marketplace

SKILL.md

Nameevm-deployment
DescriptionDeploy Sablier EVM contracts (Comptroller, ERC20 Faucet, Flow, Lockup, Airdrops) with full workflow automation. This skill should be used when the user asks to "deploy", "deploy protocol", "deploy to chain", or mentions deployment-related tasks. Handles contract deployment, explorer verification, SDK updates, and sample data creation through Init script.

name: evm-deployment description: Deploy Sablier EVM contracts (Comptroller, ERC20 Faucet, Flow, Lockup, Airdrops) with full workflow automation. This skill should be used when the user asks to "deploy", "deploy protocol", "deploy to chain", or mentions deployment-related tasks. Handles contract deployment, explorer verification, SDK updates, and sample data creation through Init script. version: 0.1.0

Overview

End-to-end deployment workflow for Sablier EVM contracts. Supports Comptroller, Flow, Lockup, and Airdrops with protocol-specific adaptations.

Prerequisites

Version Check

Before proceeding, verify Foundry version:

forge -V

Stop if version is below 1.3.6.

Protocol Detection

Detect the current EVM protocol from package.json:

Package NameProtocolSDK Path
@sablier/evm-utilsComptroller../sdk/deployments/comptroller
@sablier/flowFlow../sdk/deployments/flow
@sablier/lockupLockup../sdk/deployments/lockup
@sablier/airdropsAirdrops../sdk/deployments/airdrops

Extract version from package.json"version": "x.y.z" → SDK version is v<x.y>

Workflow

Execute steps in order, tracking state between each:

Step 1: Deploy Contracts

Reference: ./references/deploy.md | Examples: ./references/examples.md

Deploy protocol contracts using Foundry. Handles:

  • RPC configuration
  • Deterministic (CREATE2) vs non-deterministic (CREATE) deployment
  • Contract verification on block explorer

Step 2: Update SDK (optional)

Reference: ./references/copy-to-sdk.md

Copy broadcast artifacts to SDK repository:

  • Broadcast JSON file
  • Update README.md with deployment info
  • Update deployments.ts with contract addresses

Step 3: Create Test Data (optional)

Reference: ./references/deploy-streams.md

For Flow and Lockup protocols only. Creates sample streams for testing:

  • Mint or verify ERC20 token balance
  • Run Init.s.sol script to create test streams

State Tracking

Track and carry forward between steps:

StateSource
Protocol nameDetected from package.json
Chain IDFrom deployment or user input
Chain nameLowercase (e.g., ethereum, arbitrum)
Deployment typedeterministic or non-deterministic
Contract addressesFrom broadcast JSON returns field
Block numberFrom deployment receipt (hex → decimal)
SDK versionFrom package.json version

Protocol-Specific Scripts

ProtocolDeterministic ScriptNon-deterministic Script
ComptrollerDeployDeterministicComptrollerProxy.s.solDeployComptrollerProxy.s.sol
FlowDeployDeterministicProtocol.s.solDeployProtocol.s.sol
LockupDeployDeterministicProtocol.s.solDeployProtocol.s.sol
AirdropsDeployDeterministicFactories.s.solDeployFactories.s.sol

Output Summary

After completion, provide:

  • Protocol deployed
  • Chain and deployment type
  • Contract addresses (factories + campaigns if applicable)
  • Verification status
  • SDK files updated (if applicable)
  • Test data created (if applicable)

Airdrops Campaign Contracts

When deploying Airdrops test data, campaigns are created via factory:

FactoryCampaign Contract
SablierFactoryMerkleInstantSablierMerkleInstant
SablierFactoryMerkleLLSablierMerkleLL
SablierFactoryMerkleLTSablierMerkleLT
SablierFactoryMerkleVCASablierMerkleVCA

Campaign addresses are returned in broadcast returns field, not contractAddress.

Skills Info
Original Name:evm-deploymentAuthor:sablier