This page shows where to start in the current repository documentation.
The docs are kept small on purpose. A document is added only when its content has been checked against the current code.
Stelis lets apps run programmable Sui transactions without asking users to manage SUI gas first. A Host, the deployed API service, pays SUI gas for execution, and generic settlement can recover the execution cost from supported user-held value.
| Reader | Start with | Then |
|---|---|---|
| App or service developer | @stelis/sdk |
@stelis/app-web for the public web app |
| Agent runtime integrator | @stelis/mcp-server |
@stelis/sdk only if you are also building an app integration |
| Host operator | @stelis/app-api |
@stelis/app-admin |
| Contract reviewer | packages/contracts/move |
@stelis/contracts |
| Repository maintainer | repository-structure.md |
Package README files under packages/ |
| Product package | Purpose |
|---|---|
@stelis/sdk |
TypeScript SDK for app and service developers |
@stelis/mcp-server |
Model Context Protocol (MCP) server for agent clients |
@stelis/app-api |
Host runtime for Relay API, auth, admin, and promotion HTTP APIs |
@stelis/app-web |
Public static web app |
@stelis/app-admin |
Admin static web app |
packages/contracts/move |
On-chain Move package |
These packages are private workspace packages. They exist to keep shared code in one place.
| Internal package | Purpose |
|---|---|
@stelis/contracts |
Contract IDs, shared request and response types, settlement swap direction data, and data shared with Move contracts |
@stelis/core-relay |
Transaction validation, pricing, settlement swap path checks, and transaction-building helpers |
@stelis/core-api |
Server-side domain logic for prepare, sponsor, admin, promotion, stores, and abuse controls |
| Topic | Document |
|---|---|
| Package layout and dependency rules | repository-structure.md |
| HTTP routes | api.md |
| User TransactionKind constraints | api.md → User TransactionKind rules and invariants.md → Relay Policy |
| SDK, MCP, and promotion integration | integration.md |
| Product terms and payment flows | payment-platform.md |
| Contract and relay rules | invariants.md |
| Security boundaries | security.md |
| Public parameters and environment variables | parameters.md |
| Cost formulas | economics-formal.md |
| Host operation | operations.md |
| Architecture map | architecture.md |
architecture/onchain-settlement.mdarchitecture/pricing-and-validation.mdarchitecture/settlement-swap-path-boundaries.mdarchitecture/sponsor-pools.mdarchitecture/prepare-sponsor-session.md
- Use clear words that a new reader can understand.
- Define product terms before using them as labels.
- Do not use internal shorthand in public docs unless the shorthand is also a code field or package name.
- If docs and code disagree, treat the code as the current behavior until the mismatch is reviewed.
- Do not publish docs for examples, scripts, or audit workflows before the matching files exist in this repository.