Installation
TypeScript SDK
npm install @sequenceware/sdk
The TypeScript SDK has zero runtime dependencies — it uses native fetch.
Configuration
import { SequencewareClient } from '@sequenceware/sdk';
const client = new SequencewareClient({
baseUrl: 'https://sequenceware.yourcompany.com', // Your Sequenceware instance
apiKey: 'acl_your_api_key', // From Settings > API Keys
agentId: 'my-agent', // Unique identifier for this agent
timeout: 10000, // Request timeout in ms (default: 10000)
maxRetries: 3, // Max retry attempts (default: 3)
retryDelay: 1000, // Delay between retries in ms (default: 1000)
});
| Option | Type | Default | Description |
|---|---|---|---|
baseUrl | string | required | URL where Sequenceware is running |
apiKey | string | — | API key for authentication |
agentId | string | required | Unique identifier for your agent |
timeout | number | 10000 | Request timeout in milliseconds |
maxRetries | number | 3 | Maximum retry attempts on failure |
retryDelay | number | 1000 | Delay between retries in milliseconds |
Python SDK
pip install sequenceware
Configuration
from sequenceware import SequencewareClient
client = SequencewareClient(
base_url="https://sequenceware.yourcompany.com",
api_key="acl_your_api_key",
agent_id="my-agent",
)
Framework integrations
The Python SDK includes built-in tracers for popular agent frameworks:
# Install with specific integrations
pip install sequenceware[langchain]
pip install sequenceware[crewai]
pip install sequenceware[openai]
pip install sequenceware[anthropic]
# Install all integrations
pip install sequenceware[all]
Self-hosted Sequenceware
If you're running Sequenceware locally or self-hosted, set baseUrl to your instance:
const client = new SequencewareClient({
baseUrl: 'http://localhost:3000', // Local development
apiKey: 'acl_...',
agentId: 'my-agent',
});
See the Self-hosted deployment guide for setup instructions.
Verify the connection
- TypeScript
- Python
// Start and immediately complete a test run
const runId = await client.startRun(undefined, { task: 'connection-test' });
await client.completeRun(runId);
console.log('Connected! Run ID:', runId);
with client.run(metadata={"task": "connection-test"}) as run:
pass # Empty run — just verify the connection
print("Connected!")