Overcast SDK
Overcast is an options protocol that works on multiple chains. Makers post collateral offers, takers post settlement offers, and matching the two mints a market option on-chain. Price discovery happens off-chain over a realtime RFQ (request-for-quote) channel; settlement happens on-chain.
This site documents the TypeScript SDK and the overcast CLI. The design goal
of both is simplicity: one facade object (OvercastApp)
gives you everything — on-chain reads and writes, the curated backend API, and
the RFQ socket — and a working RFQ quoter is a
few dozen lines of code.
Packages
| Package | Purpose |
|---|---|
@overcast-xyz/core | Chain-agnostic domain core: data model, canonical IDs, RFQ client, protocol interfaces. |
@overcast-xyz/solana-client | The Solana implementation: factory, writer/reader, indexer, settlement layers. |
@overcast-xyz/evm-client | The EVM implementation: factory, writer/reader, indexer, settlement layers. |
@overcast-xyz/cli | The overcast CLI: deposits, withdrawals, option lifecycle, and the RFQ engine. |
@overcast-xyz/postgres-store | Postgres implementation of the persistent storage interfaces (backend infrastructure). |
@overcast-xyz/kms-signer-aws | RawSigner implementation backed by AWS KMS (Ed25519). |
@overcast-xyz/kms-signer-gcp | RawSigner implementation backed by GCP Cloud KMS (Ed25519). |
Where to start
- Getting started — install the SDK, build an
OvercastApp, and make your first calls. - The RFQ lifecycle — how offers, quotes, and options relate; the concepts behind everything else.
- Settlement Methods — Physical, Intrinsic, and Access capital profiles; how they map to TradFi settlement and on-chain layers.
- Build an RFQ quoter — auto-quote incoming RFQs with the raw SDK, end to end.
- CLI — do all of the above from the terminal, including a built-in Black-Scholes quoter.
- API Reference — generated straight from the source:
@overcast-xyz/core,@overcast-xyz/solana-client, and@overcast-xyz/evm-client.
⚠️ Early Development: The SDK and CLI are under heavy development. Packages are published to npm, but interfaces may change without notice.