How a request becomes a workflow execution
Read the message-to-execution flow, workflow resolution, status polling, and the failure modes you need to design around.
KeeperKit is the official TypeScript SDK for KeeperHub. It gives developers a typed, ergonomic interface for workflows, executions, chains, integrations, marketplace listings, and direct execution without hand-rolling HTTP calls against the raw API.
The docs site mirrors the actual SDK surface: workflows, executions, chains, integrations, marketplace workflows, MCP schemas, and helper utilities.
Use the flat KeeperKit class or the fully namespaced KeeperHub client.
One HTTP layer handles auth, retries, timeouts, and typed error mapping.
Workflows, executions, direct execute, listed workflows, integrations, projects, tags, chains, and MCP schemas.
These are the first pages a new developer should read to understand the protocol and how to use the SDK in a real project.
Read the message-to-execution flow, workflow resolution, status polling, and the failure modes you need to design around.
Use the package from a local project, configure auth, and select the flat or namespaced API style that best fits your codebase.
Each module page includes method tables, examples, and the request patterns used by the SDK internals.
The SDK is the stable boundary between a host application and KeeperHub. The docs explain the full lifecycle from intent to execution.
A host app identifies the workflow to run, typically by searching or matching workflow metadata.
The SDK returns typed workflow objects with nodes, edges, enabled state, and project/tag filters.
Execution starts with an execution ID, then status and logs are polled until a terminal state is reached.
The HTTP client automatically retries safe requests and normalizes timeouts, network failures, and typed KeeperKit errors.
A minimal example for developers who want to use the SDK directly in a Node.js or TypeScript app.
import { KeeperKit } from "keeperkit";
const client = new KeeperKit({
apiKey: process.env.KEEPERHUB_API_KEY,
timeout: 30000,
retry: {
maxAttempts: 5,
baseDelayMs: 1000,
retryWrites: false,
},
});
const workflows = await client.listWorkflows();
const execution = await client.executeWorkflow(workflows[0].id);
const result = await client.waitForExecution(workflows[0].id, execution.executionId);
The deeper module pages explain every field and method that appears in the README, including helper builders, validation, marketplace calls, and direct execution.