Install dependencies
Run pnpm install inside the SDK/ folder to install the package dependencies and test tooling.
KeeperKit ships as a TypeScript package that targets Node 18 or later. You can install it directly, build the local dist output, and use either the flat API or the namespaced client depending on how much surface area your project needs.
To work with the KeeperHub SDK, clone this repository first: git clone https://github.com/PhAnToMxSD/KeeperKit. Then move into SDK/, install dependencies, and build the package before importing it into your own project.
git clone https://github.com/PhAnToMxSD/KeeperKit
cd KeeperKit/SDK
pnpm install
pnpm build
Run pnpm install inside the SDK/ folder to install the package dependencies and test tooling.
The build produces dist/index.js, dist/index.mjs, and dist/index.d.ts.
Create a KeeperKit instance with your API key and optional base URL, timeout, and retry policy.
These are the exact commands a developer needs to start using the SDK locally.
cd SDK
pnpm install
pnpm build
pnpm type-check
pnpm test
The SDK accepts an organization API key and optional overrides for the KeeperHub base URL, timeout, and retry behavior.
import { KeeperKit } from "keeperkit";
const client = new KeeperKit({
apiKey: process.env.KEEPERHUB_API_KEY,
baseUrl: "https://app.keeperhub.com/api",
timeout: 30000,
retry: {
maxAttempts: 5,
baseDelayMs: 1000,
maxDelayMs: 30000,
retryWrites: false,
},
});
Because the package builds to a standard dist/ directory, you can link it locally or reference it with a file dependency.
cd SDK
pnpm link --global
cd /path/to/consumer-project
pnpm link --global keeperkit
The README exposes both styles. Use the flat API for common operations and the namespaced client when you need direct access to every module.
Methods like listWorkflows, executeWorkflow, and waitForExecution cover the common workflow lifecycle.
Access client.workflows, client.executions, client.directExecute, and more for advanced integrations.
import { KeeperKit, createKeeperHubClient } from "keeperkit";
const flat = new KeeperKit({ apiKey: process.env.KEEPERHUB_API_KEY });
const namespaced = createKeeperHubClient({ apiKey: process.env.KEEPERHUB_API_KEY });
const workflows = await flat.listWorkflows();
const logs = await namespaced.executions.getLogs("exec_123");
KeeperHub API keys start with kh_. The auth provider rejects keys that do not match that prefix, which helps catch configuration errors early.