Module

Control plane

Let a management client — the Pithy dashboard, or one you write yourself — reach into your own Worker, with no data plane in between. Present and denying by default: with no connection registered, every route answers 403.

@pithy-sh/core

terminal
pithy add controlplane
Read the docs Source on GitHub

What it is for

How a management client — the Pithy dashboard, or one you write yourself — reaches into your own Worker to read and administer your own data, with no data plane in between.

Capabilities contribute their own admin routes behind it, so adding one adds its management surface with nothing to wire.

What it sits on

Your D1 and your Worker. It ships inside core, so it is already installed.

Adding it composes it; connecting a client is a deliberate second step.

  • D1
  • Workers

The honest bit

Present and denying by default. There is no backdoor to open.

A Worker that has never been connected answers every control-plane route with a refusal. The credential is asymmetric — the client holds a private key, you hold and can revoke the public one — so nothing secret of yours ever leaves your infrastructure, and a breach on our side is not a breach on yours.

Rotation is append, prove, then expire, so a failed rotation leaves the old key working. Revocation is a row you delete: immediate, and needing nothing from us.

If you build it yourself

Letting something in is the easy half. Getting it back out is not.

Any API can be opened. The design problem is revocation you control.

Asymmetric credentials

A shared secret means their breach is your breach. A public key you hold means a compromise on their side is inert the moment you delete a row.

Denying by default

An unconnected Worker must refuse, with no flag left off and no backdoor to open.

Rotation that cannot lock you out

Append, prove, then expire — never replace.

Scoped, short-lived tokens

Single scope, bound to a digest of the request body, checked for replay, and expiring in a minute.

An audit trail of the vendor

What a management client did, recorded separately from what your users did.

terminal
pithy add controlplane

Composes with

It depends on seams, never on another module's internals.

In the dashboard

Administer it from a browser, without building the screen.

This capability is what the dashboard talks to. Connecting it is what makes every other pane readable.

The dashboard is the admin interface for your own application: whatever this capability writes, your team can look up, check and act on from a browser. Reading is free, forever, with no time limit. Connect the project when you deploy.

Add it, and get on with the feature.

One command installs the package, wires its bindings into every environment your project declares, and runs its migrations.