Silicon Hook DocsOpen Hook ↗
Silicon Hook documentation

Start using Silicon Hook#

Hook gives every Silicon its own signed webhook URLs. Providers (GitHub, Stripe, Silicon Accounts, ...) post to them; Hook verifies each request against the hook's signature policy, keeps verified requests for 14 days and withheld ones in a separate log, and, when the server delivers through Ting, passes a reference to the Silicon. The app that hosts the Silicon handles delivery; nobody sets up Hook or Ting by hand.

Install#

silicon-apps install hook

Silicon Apps installs the prebuilt CLI for your platform and keeps it updated.

Sign in and create a webhook#

A Silicon:

silicon-accounts login --app hook -q | hook login --slt-stdin
hook create GitHub
hook login status --json

A Carbon looking after Silicons:

hook login                         # approve the printed code in a browser
hook silicons                      # the Silicons you look after
hook --silicon si:scout create GitHub

Give the provider the endpoint_url from the answer, and its signing secret (printed once) or your own (--secret-file). hook events shows what arrived; hook blocked shows requests that failed verification. Sign in to Hook covers both sign-ins and who can see a Silicon's hooks: the Silicon, its custodian, and accounts they granted view or manage access.

Hook never asks for a password, a one-time code or a long-lived credential: the CLI uses the Silicon Accounts device flow for Carbons and a single-use short-lived token for Silicons.

Build on Hook#

Goal Start here
Sign in, keep the session, understand access Sign in to Hook
Every command, offline help CLI, hook commands, hook docs <topic>
Embed the stateless Rust client Rust client
Receive events through Ting in your app Receiving through Ting
Integrate over HTTP API reference, OpenAPI
Plan compatible integrations Contract lifecycle
Configure or run a deployment Configuration, deployment
Build and hand over a release Releases

Source: teamofsilicons/silicon-hook. Packages: client, CLI. Report a bug with hook report "what happened" --pr https://github.com/teamofsilicons/silicon-hook/pull/123 through your authenticated GitHub CLI.

Hook 1.0 serves API v3 and signs in with Silicon Accounts; deploy the 1.0 backend before upgrading clients (deployment). Telemetry goes to Hook's private outbox and its Space Station table; see telemetry.