@ghub/gctl-sdk
v0.3.4
Published
App-side client for GControl: registration, manifest publication, lease handling, three-state module gating, signed module loading and the conformance suite.
Readme
@ghub/gctl-sdk
The client an application links to be managed by GControl. It declares what the application is through a manifest, holds the lease, answers heartbeats, reports health and usage, gates features behind entitlements, and loads signed modules.
The lease is enforced locally against exp and graceUntil, so an application whose broker
goes quiet expires on schedule rather than keeping what it stopped paying for. Nothing here
opens an inbound port: every exchange starts with a call the application makes.
import { createControlClient } from "@ghub/gctl-sdk";
const client = createControlClient();
await client.init({
brokerUrl,
appUuid,
manifest,
onHealth: () => ({ queue_depth: queue.depth() }),
});
if (client.entitled("sso/saml")) enableSaml();Part of GControl, a self-hosted broker for G-Apps. This package is published on its own because it is consumed outside that repository; it is not a general-purpose library and its releases follow GControl's.
Licence
Elastic License 2.0. Source-available: you may read, self-host and modify it for your own
organisation. You may not offer it as a service, and you may not circumvent the
licence-key functionality. See the LICENSE file in this package.
Copyright (c) 2026 Gelhaus Solutions (Enno Gelhaus). Built and maintained by Gelhaus Solutions.
