🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@deepractice-ai/agent-sdk

Package Overview
Dependencies
Maintainers
1
Versions
15
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@deepractice-ai/agent-sdk

High-performance Agent SDK with RxJS event-driven architecture

latest
Source
npmnpm
Version
0.13.0
Version published
Maintainers
1
Created
Source

@deepractice-ai/agent-sdk

High-performance Agent SDK with RxJS event-driven architecture and warmup pool optimization.

Features

  • 10x Performance: Warmup pool reduces cold start from 5.2s to <1s
  • RxJS Event Streams: Native reactive programming for streaming AI responses
  • Type-Safe: Full TypeScript support with strict mode
  • Clean Architecture: api/core/types layered design
  • Well-Tested: BDD-driven development with Cucumber

Installation

pnpm add @deepractice-ai/agent-sdk

Quick Start

import { Agent } from "@deepractice-ai/agent-sdk";

// Initialize agent with warmup pool
const agent = new Agent({
  workspace: "/path/to/project",
  warmupPoolSize: 3,
  model: "claude-sonnet-4",
});

await agent.initialize();

// Quick chat
const session = await agent.chat("Explain RxJS");

// Subscribe to streaming messages
session.messages$().subscribe({
  next: (message) => console.log(message),
  error: (err) => console.error(err),
  complete: () => console.log("Response complete"),
});

API

Agent

class Agent {
  constructor(config: AgentConfig);

  // Lifecycle
  initialize(): Promise<void>;
  destroy(): void;

  // Session management
  createSession(options?: SessionOptions): Promise<Session>;
  getSession(id: string): Session | null;
  getSessions(limit?: number, offset?: number): Session[];

  // Quick API
  chat(message: string, options?: SessionOptions): Promise<Session>;

  // Observables
  sessions$(): Observable<SessionEvent>;

  // Status
  getStatus(): AgentStatus;
}

Session

class Session {
  readonly id: string;
  readonly state: SessionState;

  // Actions
  send(content: string): Promise<void>;
  abort(): Promise<void>;
  delete(): Promise<void>;

  // Observables
  messages$(): Observable<AnyMessage>;

  // Queries
  getMessages(limit?: number, offset?: number): AnyMessage[];
  getTokenUsage(): TokenUsage;
  getMetadata(): SessionMetadata;
}

Architecture

packages/agent-sdk/
├── src/
│   ├── api/           # Public exports
│   │   ├── Agent.ts
│   │   ├── Session.ts
│   │   └── index.ts
│   ├── types/         # Type definitions
│   │   ├── Message.ts
│   │   ├── Config.ts
│   │   └── index.ts
│   └── core/          # Internal (not exported)
│       ├── SessionManager.ts
│       ├── WarmupPool.ts
│       ├── MessageStream.ts
│       └── ClaudeAdapter.ts
├── features/          # BDD tests
└── tests/
    ├── support/       # Test setup
    └── steps/         # Step definitions

Performance

Warmup Pool

The SDK maintains a pool of pre-initialized sessions:

  • Cold start: ~5.2s (no warmup)
  • Warm start: <1s (from pool)
  • Automatic refill: Pool maintains configured size

Configuration

const agent = new Agent({
  workspace: "/path/to/project",
  warmupPoolSize: 3, // Number of pre-warmed sessions
  model: "claude-sonnet-4",
});

Testing

# Run all tests
pnpm test

# Watch mode
pnpm test:watch

# Coverage
pnpm test:coverage

# UI
pnpm test:ui

License

Private

Keywords

ai

FAQs

Package last updated on 17 Nov 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts