migrate-to-portal
Migrate a Squid to Portal
Walks the migration of an existing Squid SDK indexer onto the Portal data source. EVM and Solana have different package sets; the migration shape (data source + types + field selection) is parallel. Upstream doc (unified, both chains): https://docs.sqd.dev/en/sdk/migration/gateway-to-portal.
The v2 gateways are actively being sunset. On 2026-08-05, 18 datasets (including
astar-mainnet,berachain-mainnet,celo-mainnet,linea-mainnet,scroll-mainnet,taiko-mainnet,unichain-mainnet,zksync-mainnet,zora-mainnet) became Portal-only. A v2 squid on those chains is already broken and must migrate. On 2026-08-20, 67 low-usage datasets retired from both v2 and Portal (announcement); there is no Portal migration target for them, so move to RPC or a private Portal instead. The July 30, 2026 Squid SDK release also introduced the@subsquid/squid-sdkumbrella package with an automatic Portal/RPC failover data source. Consider it for new work, though this guide's@subsquid/evm-streamtarget remains current.
When to use this skill
Activate when the user says any of:
- "migrate my squid to Portal" (EVM or Solana)
- "move off v2 archive /
setGateway/setDataSource/lookupArchive" - "upgrade
@subsquid/evm-processor" or "@subsquid/solana-streamto1.x" - references
https://v2.archive.subsquid.io/... - mentions removing
SolanaRpcClient - asks about Solana block-height-to-slot conversion
- hits compile errors on
EvmBatchProcessor,evmLog,block.height, orblock.header.slotafter a bump - needs to migrate
processor.setPrometheusPort()/processor.setPrometheusServer()(EVM only — removed withEvmBatchProcessor)