AgentsKit
AgentsKit is a modular JavaScript toolkit for building AI agents, offering a small core with zero dependencies and a set of composable packages for adapters, runtime, tools, memory, RAG, and more. It solves the problem of cobbling together incompatible libraries by providing formal contracts and a unified architecture. It is for developers who want to build production-grade agents in plain JavaScript or TypeScript without framework lock-in.
✨ Key features
- 10 KB gzipped core with zero runtime dependencies
- 22 focused packages for adapters, runtime, tools, memory, RAG, UI, and more
- Six formal contracts make every component substitutable
- One-line provider swap across OpenAI, Anthropic, Gemini, Ollama, and others
- Multi-agent delegation via planner, researcher, and coder skills
- Framework bindings for React, Vue, Svelte, Solid, Angular, and React Native
🎯 Use cases
- Build a streaming chat UI in React or other frameworks
- Create a headless autonomous agent with tools and skills
- Implement RAG over your own documents
- Expose tools as an MCP server for Claude Desktop or Cursor
- Run terminal-based agents with CLI and Ink
📦 Installation
🧰 Requirements: Requires Node.js and npm; no API keys needed for the local demo, but provider keys are needed for real LLM calls.
npm install @agentskit/core @agentskit/runtime tsx
🚀 Usage
import type { AdapterFactory } from '@agentskit/core'
import { createRuntime } from '@agentskit/runtime'
const localAdapter: AdapterFactory = {
createSource(request) {
const task = request.messages.at(-1)?.content ?? 'your task'
return {
async *stream() {
yield { type: 'text' as const, content: `Agent ready. I received: ${task}` }
yield { type: 'done' as const }
},
abort() {},
}
},
}
async function main() {
const runtime = createRuntime({ adapter: localAdapter })
const result = await runtime.run('Plan my first production agent')
console.log(result.content)
}
void main()
Run with npx tsx agent.ts.
⚠️ Good to know
AgentsKit is JavaScript-first, so Python developers should use a Python framework; the observability layer is young and not yet as mature as LangSmith or Arize; and while @agentskit/core is stable, many packages are still in beta.
❓ FAQ
What is the core size and dependency footprint?
The core is under 10 KB gzipped and has zero runtime dependencies, enforced by CI.
Can I swap LLM providers easily?
Yes, you can change providers in one line by using different adapter imports, such as openai, anthropic, or ollama.
Does AgentsKit support multi-agent delegation?
Yes, the runtime supports delegation using skills like planner, researcher, and coder, where the planner decomposes tasks and delegates to sub-agents.
Is there a way to run agents without an API key?
Yes, the quick start uses a local adapter that echoes input, requiring no account or network request.
📊 Repository
🤖 Overview, features, install steps and FAQ were generated from the project's README on Sep 4, 2026. Always check the original source before running commands.