Streaming Tool Execution
Gadgets execute the moment their block is parsed—not after the response completes. Real-time UX without buffering.
Streaming Tool Execution
Gadgets execute the moment their block is parsed—not after the response completes. Real-time UX without buffering.
Built-in Function Calling
llmist implements its own tool calling via a simple block format. No JSON mode required. Works with any model.
Multi-Provider Support
OpenAI, Anthropic, and Gemini out of the box. Use model shortcuts like sonnet, haiku, or flash.
Composable Agent API
Fluent builder, async iterators, full TypeScript inference. Hook into any lifecycle point.
npm install llmistimport { LLMist, Gadget, z } from 'llmist';
class Calculator extends Gadget({ description: 'Performs arithmetic operations', schema: z.object({ operation: z.enum(['add', 'multiply']), a: z.number(), b: z.number(), }),}) { execute(params: this['params']): string { const { operation, a, b } = params; return operation === 'add' ? String(a + b) : String(a * b); }}
const answer = await LLMist.createAgent() .withModel('sonnet') .withGadgets(Calculator) .askAndCollect('What is 15 times 23?');
console.log(answer); // "15 times 23 equals 345"llmist
Core library with agents, gadgets, and providers.
npm install llmist
@llmist/cli
Command-line interface for quick completions and agent runs.
npx llmist agent "Your prompt"
@llmist/testing
Testing utilities and mocks for unit testing your agents.
npm install -D @llmist/testing