$ npm install -g @sylphx/cli$ sylphx login$ sylphx access projects create --spec.slug app✓ project app$ sylphx data databases create app-db✓ database app-db$ sylphx auth oauth-clients create✓ auth config app// the same three, from one keyconst sylphx = new Sylphx()const me = await sylphx.access.whoami({})await sylphx.data.databases.create({ parent: me.project!, databaseId: 'app-db' })
產品
一個平台,後端的每一部分。
Deploy web apps and services from Git, with a preview for every pull request.
AgentsRun AI agents with durable sessions and governed tool access.
SandboxesIsolated machines for running untrusted code and computer use.
RunnersFast CI runners for GitHub Actions.
BuildsContainer builds with a shared cache, SBOMs and signed provenance.
DatabaseServerless Postgres with pgvector, backups and point-in-time restore.
KVLow-latency key-value storage.
SearchFull-text and vector search indexes.
Jobs and cronScheduled and triggered jobs.
EmailSend and receive email from your own domain.
WebhooksSend signed webhooks with retries, and receive them.
AuthSign-in for your app's users: passwords, passkeys, social and magic links.
NetworkCustom domains, certificates, routes and private links.
MonitoringLogs, traces and errors for everything you run.
AIOne API for the latest models from every major provider.
FlagsFeature flags with targeting and gradual rollouts.
運作方式
一個帳戶、一把金鑰、一張帳單。
1
一次呼叫
經 API 建立的項目是未認領的:代理無需帳戶就能建立,你登入後接手。CLI 與主控台發出的是同一個呼叫。
sylphx access projects create --spec.slug app
# unclaimed until you sign in2
一把金鑰
每個環境一把金鑰,就能存取你啟用的所有服務,並以角色限定範圍。撤銷後數秒內全面失效。
sylphx access api-keys create --spec.scopes data:read
export SYLPHX_API_KEY=sk_…3
一張帳單
每個服務的用量都計入同一張帳單,逐行列明,價格與本網站公佈的相同 —— 與主控台計費用的是同一份價目表。
sylphx billing usage-reports list
# one line per product為代理而設
代理是一等公民,不是變通做法。
一個 MCP 伺服器與一個 CLI,由同一個 API 產生:代理呼叫的方法與 SDK 相同,金鑰與權限也相同。整個網站的內容都在 llms.txt,可直接放進上下文視窗。
{
"mcpServers": {
"sylphx": {
"command": "npx",
"args": ["-y", "@sylphx/mcp"],
"env": { "SYLPHX_API_KEY": "sylphx_sk_…" }
}
}
}
// then the same action, as one call:
// sylphx_call { "method_id": "data.databases.list" }