@agentuity/coder
v3.1.18
Published
Downloads
51,550
Readme
@agentuity/coder
Standalone package for the Agentuity Coder service. Provides a simple, ergonomic client for managing Coder Hub sessions, participants, replay data, loop state, and users.
Installation
npm install @agentuity/coderQuick Start
import { CoderClient } from '@agentuity/coder';
const client = new CoderClient();
// List sessions
const { sessions } = await client.listSessions({ limit: 10 });
for (const session of sessions) {
console.log(`${session.sessionId}: ${session.label} (${session.status})`);
}
// Create a new session
const session = await client.createSession({
task: 'Implement feature X',
workflowMode: 'standard',
});
console.log(`Created session: ${session.sessionId}`);
// Create a session from a saved workspace
const workspaceSession = await client.createSession({
task: 'Test workspace startup',
workspaceId: 'ws_...',
});
console.log(`Created workspace session: ${workspaceSession.sessionId}`);
// Manage workspace snapshot inputs
const validation = await client.validateWorkspaceDependencies(['git', 'nodejs']);
if (validation.invalid.length > 0) {
throw new Error(validation.invalid.map((pkg) => pkg.error).join(', '));
}
const workspace = await client.createWorkspace({
name: 'Node workspace',
scope: 'org',
dependencies: ['git', 'nodejs'],
setupScript: 'corepack enable',
});
await client.updateWorkspace(workspace.id, {
setupScript: 'corepack enable && bun install',
});
await client.refreshWorkspaceSnapshot(workspace.id);
// Get session details
const details = await client.getSession(session.sessionId);
console.log(`Task: ${details.task}`);
// Archive a session
await client.archiveSession(session.sessionId);Configuration
const client = new CoderClient({
apiKey: 'your-api-key',
url: 'https://your-coder-hub-url.example.com',
orgId: 'your-org-id',
});Environment Variables
| Variable | Description | Default |
|----------|-------------|---------|
| AGENTUITY_SDK_KEY | API key for authentication | Required |
| AGENTUITY_REGION | Region for API endpoints | usc |
| AGENTUITY_CODER_URL | Override Coder Hub API URL | Auto-discovered via Catalyst |
API Reference
CoderClient
Main client for interacting with the Coder Hub API.
Constructor
new CoderClient(options?: CoderClientOptions)Options:
apiKey- API key (defaults toAGENTUITY_SDK_KEYenv var)url- Coder Hub API URL (defaults toAGENTUITY_CODER_URLenv var, or auto-discovered)region- Region for Catalyst URL resolution (defaults toAGENTUITY_REGIONenv var)orgId- Organization ID for multi-tenant operationslogger- Custom logger instance
Methods
getUrl()- Get the resolved Coder Hub base URLcreateSession(body)- Create a new coder sessiongetSession(sessionId)- Get session detailsupdateSession(sessionId, body)- Update a sessionlistSessions(params?)- List sessions with optional filteringdeleteSession(sessionId)- Permanently delete a sessionarchiveSession(sessionId)- Archive an active sessionresumeSession(sessionId)- Resume an archived sessionlistConnectableSessions(params?)- List sessions the caller can connect togetReplay(sessionId, params?)- Get replay data for a sessionlistParticipants(sessionId, params?)- List session participantslistEventHistory(sessionId, params?)- List historical events for a sessiongetLoopState(sessionId, params?)- Get loop-mode state for a sessionlistUsers(params?)- List known users in the coder hub
License
Apache-2.0
