@cipherrow/gateway
v2.3.0
Published
Official SDK for CR Gateway — AI agent validation, swarm management, and context compression
Maintainers
Readme
@cipherrow/gateway
Run 8x more agents in the same context window. Official SDK for CR Gateway — validate every LLM output, kill bad swarm chains early, compress context by 70%+ per pass.
- 8x agent scaling on GPT-4o 128K (proven in live benchmarks)
- 100% precision in benchmark testing — zero false positives across 1,800+ test calls
- ~70% token savings per compression pass
- <5ms processing — no LLM calls, pure pattern matching
- Zero dependencies — works anywhere
fetchis available: Node.js 18+, Deno, Bun, Cloudflare Workers
Install
npm install @cipherrow/gatewayQuick Start
import { CRGateway } from "@cipherrow/gateway";
const gw = new CRGateway("your-api-key");
// Validate any LLM response before acting on it
const result = await gw.validate({
type: "assistant_response",
content: "Based on the data, I recommend proceeding with Option A.",
});
if (result.valid) {
// Safe to use
} else {
// Failed validation — don't act on it
console.log("Blocked:", result.checks);
}Configuration
new CRGateway(apiKey: string, options?: {
baseUrl?: string; // default: CR Gateway production
timeout?: number; // request timeout in ms (default: 10000)
maxRetries?: number; // retries for 429/5xx errors (default: 2)
})API Methods
Validation
validate(message, options?)— Check an LLM response for safety issues. Returns pass/fail.validateBatch(messages)— Validate up to 50 messages in one call.store(message, sessionId)— Validate and store a message.getMessage(messageId)— Retrieve a stored message.
Swarm Management
swarmCheck(agentChain, options?)— Should this agent chain keep running or be killed? Saves wasted LLM calls on bad chains.
Context & Compression
compress(messages, options?)— Reduce conversation size for cheaper LLM calls.contextCheck(params)— Should the agent save work, wrap up, or keep going?
Agent Relay
relay(message, deliverTo, sessionId)— Validated agent-to-agent message delivery.
Orchestrator
createWorkflow(params)/listWorkflows()/deleteWorkflow(id)— Manage workflow definitions.startRun(workflowId, input?)/getRun(id)/cancelRun(id)— Execute and monitor workflows.completeStep(runId, stepId, params)— Report step completion.
Configuration & Usage
getConfig()/updateConfig(updates)— Read/update your tenant settings.getUsage(days?)— Usage statistics.feedback(params)— Report outcomes to improve accuracy over time.oracleStatus()— Check your validation model status.
Key Management
rotateKey()— Generate a new API key.listKeys()— List all keys (masked).revokeKey(keyId)— Revoke a key.
Authentication
register(params)/login(params)/logout(token)— Account management.checkSession(token)— Verify session.forgotPassword(params)/resetPassword(params)— Password recovery.
Error Handling
import { CRGateway, GatewayError } from "@cipherrow/gateway";
try {
await gw.validate(message);
} catch (err) {
if (err instanceof GatewayError) {
console.error(err.status); // HTTP status code
console.error(err.requestId); // for support
}
}429 and 5xx errors are automatically retried with exponential backoff.
Rate Limits
await gw.validate(message);
console.log(gw.lastRateLimit);
// { limit: 60, remaining: 57, retryAfter: null }Documentation
Full docs: https://gateway.cipherandrow.com/docs.html
License
MIT
