Beta
logo

The JavaScript Framework for Building Multi-Agent Systems.

NOTBacked byYCombinatorCombinator ✌️

Why AI Agents for JavaScript?

Multi-agent AI systems promise to revolutionize how we build interactive and intelligent applications.

However, most AI frameworks cater to Python, leaving JavaScript developers at a disadvantage.

KaibanJS fills this void by providing a first-of-its-kind, JavaScript-native framework designed specifically for building and integrating AI Agents.

Agents

Try it Yourself

Start the workflow to see AI agents in action on the Kaiban Board—just like Trello or Jira, but for AI agents and humans.

🌟 Star Us on GitHub!

Like What You See?

Initial Setup

  1. Initialize

    Quickly set up KaibanJS.

    Terminal
    npx kaibanjs@latest init
  2. Run

    Start the Kaiban Board locally.

    Terminal
    npm run kaiban

Or

For manual installation, follow the steps below.

  1. Install

    Install via npm or your preferred package manager.

    Terminal
    npm install kaibanjs
  2. Import

    Import KaibanJS in your JavaScript file using ES6 or CommonJS syntax.

    src/index.js
    // Using ES6 import syntax for NextJS, React, etc.
    import { Agent, Task, Team } from "kaibanjs";

    // Using CommonJS syntax for NodeJS
    const { Agent, Task, Team } = require("kaibanjs");

Quick Start Video

Watch how to set up and run KaibanJS in less than a minute.

Support Us on GitHub!

Your Start Makes a Difference

Real Use Cases: You Can Develop Now!

Thumbnail
AI Agents for Sports News

Deploy AI agents to search for sports information and craft in-depth sports articles.

Thumbnail
AI Agents for Trip Planning

Utilize AI agents to select cities based on criteria and create personalized travel itineraries.

Thumbnail
AI Agents for Resume Building

Assemble AI agents to extract professional details and construct tailored resumes efficiently.

Key Features of KaibanJS

The Kaiban Board: A Trello for AI Workflows

Visualize, manage, and share AI Agents like never before with the Kaiban Board. This familiar Kanban-style interface is built for AI agents to simplify workflows.

Kaiban Board

Run it locally, share with your team, and iterate quickly—without vendor lock-in.

Star Us on GitHub!

Help us keep building!

From Creation to Deployment: All in One Framework

KaibanJS covers every step of your AI journey-build, visualize, and easily integrate with your preferred deployment tools.

Your AI - Your Infrastructure

With KaibanJS, manage every step of the AI lifecycle. Create agents, visualize workflows, and integrate with deployment platforms like Vercel or AWS-all in one place.

Star Us on GitHub!

We appreciate your support

Your AI, Your Infrastructure

Run KaibanJS locally or deploy anywhere-no vendor lock—in, just full control.

Your AI - Your Infrastructure

KaibanJS gives you complete ownership of your AI projects.

Run the Kaiban Board locally for fast iteration, or deploy it to your private servers-without relying on SaaS platforms.

Star Us on GitHub!

Your support makes a difference

Role-Based Agent Design

Harness the power of specialization by configuring AI agents to excel in distinct, critical functions within your projects. This approach enhances the effectiveness and efficiency of each task, moving beyond the limitations of generic AI.

src/index.js
import { Agent } from 'kaibanjs';

const daveLoper = new Agent({
name: 'Dave Loper',
role: 'Developer',
goal: 'Write and review code',
background: 'Experienced in JavaScript, React, and Node.js',
});

const ella = new Agent({
name: 'Ella',
role: 'Product Manager',
goal: 'Define product vision and manage roadmap',
background: 'Skilled in market analysis and product strategy',
});

const quinn = new Agent({
name: 'Quinn',
role: 'QA Specialist',
goal: 'Ensure quality and consistency',
background: 'Expert in testing, automation, and bug tracking',
});

For a deeper dive visit the documentation.

Make Us Shine on GitHub!

Your Star Means Everything

Tool Integration

Just as professionals use specific tools to excel in their tasks, enable your AI agents to utilize tools like search engines, calculators, and more to perform specialized tasks with greater precision and efficiency.

src/index.js
import { Agent, Tool } from 'kaibanjs';

const tavilySearchResults = new Tool({
name: 'Tavily Search Results',
maxResults: 1,
apiKey: 'ENV_TRAVILY_API_KEY',
});

const peterAtlas = new Agent({
name: 'Peter Atlas',
role: 'City Selector',
goal: 'Choose the best city based on comprehensive travel data',
background: 'Experienced in geographical data analysis and travel trends',
tools: [tavilySearchResults],
});

KaibanJS supports all LangchainJS-compatible tools, offering a versatile approach to tool integration. For further details, visit the documentation.

Support Us on GitHub!

Your Star Makes a Difference

Multiple LLMs Support

Optimize your AI solutions by integrating a range of specialized AI models, each tailored to excel in distinct aspects of your projects.

src/index.js
import { Agent } from 'kaibanjs';

const emma = new Agent({
name: 'Emma',
role: 'Initial Drafting',
goal: 'Outline core functionalities',
llmConfig: {
provider: 'google',
model: 'gemini-1.5-pro',
}
});

const lucas = new Agent({
name: 'Lucas',
role: 'Technical Specification',
goal: 'Draft detailed technical specifications',
llmConfig: {
provider: 'anthropic',
model: 'claude-3-5-sonnet-20240620',
}
});

const mia = new Agent({
name: 'Mia',
role: 'Final Review',
goal: 'Ensure accuracy and completeness of the final document',
llmConfig: {
provider: 'openai',
model: 'gpt-4o',
}
});

For further details on integrating diverse AI models with KaibanJS, please visit the documentation.

Star Us on GitHub!

Help Us Grow Stronger

Robust State Management

KaibanJS employs a Redux-inspired architecture, enabling a unified approach to manage the states of AI agents, tasks, and overall flow within your applications. This method ensures consistent state management across complex agent interactions, providing enhanced clarity and control.

src/index.js
import myAgentsTeam from './agenticTeam';

const KaibanJSComponent = () => {
const useTeamStore = myAgentsTeam.useStore();

const {agents, workflowResult } = useTeamStore(state => ({
agents: state.agents,workflowResult: state.workflowResult,
}));

return (<div>
<button onClick={myAgentsTeam.start}>Start Team Workflow</button>
<p>Workflow Result: {workflowResult}</p>
<div>
<h2>🕵️‍♂️ Agents</h2>
{agents.map(agent => (
<p key={agent.id}>{agent.name} - {agent.role} - Status: ({agent.status})</p>
))}
</div></div>
);
};

export default KaibanJSComponent;

For a deeper dive into state management with KaibanJS, visit the documentation.

Click to Star on GitHub

Join The Journey

Integrate with Your Preferred JavaScript Frameworks

Easily add AI capabilities to your NextJS, React, Vue, Angular, and Node.js projects.

src/index.jsx
import React from 'react';
import myAgentsTeam from './agenticTeam';

const TaskStatusComponent = () => {
const useTeamStore = myAgentsTeam.useStore();

const { tasks } = useTeamStore(state => ({
tasks: state.tasks.map(task => ({
id: task.id,description: task.description,status: task.status
}))
}));

return (<div>
<h1>Task Statuses</h1>
<ul>
{tasks.map(task => (
<li key={task.id}>{task.description}: Status- {task.status}</li>
))}
</ul></div>
);
};

export default TaskStatusComponent;

For a deeper dive visit the documentation.

Give a Star on GitHub

Your Support Fuels Our Progress

Observability and Monitoring

Built into KaibanJS, the observability features enable you to track every state change with detailed stats and logs, ensuring full transparency and control. This functionality provides real-time insights into token usage, operational costs, and state changes, enhancing system reliability and enabling informed decision-making through comprehensive data visibility.

src/index.js
const useStore = myAgentsTeam.useStore();

useStore.subscribe(state => state.workflowLogs, (newLogs, previousLogs) => {
if (newLogs.length > previousLogs.length) {
const { task, agent, metadata } = newLogs[newLogs.length - 1];
if (newLogs} = newLogs[newLogs.length - 1].logType === 'TaskStatusUpdate') {
switch (task.status) {
case TASK_STATUS_enum.DONE:
console.log('Task Completed',{
taskDescription: task.description,agentName: agent.name,agentModel: agent.llmConfig.modelduration: metadata.duration,llmUsageStats: metadata.llmUsageStats,costDetails: metadata.costDetails,
});
break;
case TASK_STATUS_enum.DOING:
case TASK_STATUS_enum.BLOCKED:
case TASK_STATUS_enum.REVISE:
case TASK_STATUS_enum.TODO:
console.log('Task Status Update',{
taskDescription: task.description,taskStatus: task.status,agentName: agent.name
});
break;
default:
console.warn('Encountered an unexpected task status:', task.status);
break;
}
}
}
});

For more details on how to utilize observability features in KaibanJS, please visit the documentation.

Star KaibanJS on GitHub

Together, We Build the Future

Developer Advantages of KaibanJS

Native JavaScript Development

Harness your existing JavaScript skills to manage and implement AI agents efficiently. KaibanJS fits right into your current workflow, minimizing the need to learn new technologies.

Human-Friendly API Design

KaibanJS is designed with simplicity at its core. It minimizes unnecessary complexity, making it easier for JavaScript developers to adopt and implement AI Agents into their projects.

Browser and Server Compatibility

KaibanJS operates seamlessly in any modern browser, leveraging client-side JavaScript effectively. It also extends to server-side environments with Node.js, enabling robust full-stack JavaScript development.

Compatible with React, Vue, Angular, NextJS and beyond...

KaibanJS seamlessly integrates with major front-end frameworks including React, Vue, Angular, and NextJS. This compatibility enhances functionality and ensures flexibility across various web development projects.

Production Ready

KaibanJS has been rigorously benchmarked for performance to ensure reliability and efficiency in production environments. Everyone is tired of cool-looking AI demos that don’t deliver.

Enhanced Testing and Debugging

Thanks to its Redux-like state management architecture, KaibanJS offers robust tools and integrations that support comprehensive testing and effective debugging.

About Us

🏆

Hello! We are AI Champions, the team behind KaibanJS, we’re all about fostering warm, direct, and trustworthy connections with our community.

Over the past 15 years, members of our team have held various roles: Developers, Team Leads, and Entrepreneurs. This collective experience has equipped us with the knowledge and skills needed to quickly turn big ideas into reality.

Here are some of our key principles: Striving for excellence, keep it simple, iterate fast, be transparent, and build the best team. (I'm sure you've heard these many times, but putting them into practice is harder than it sounds 😉)

Acknowledgments

We are deeply grateful to Andrew Ng and Andrej Karpathy, who inspire us as role models through their dedication to the AI community.

Thanks to João Moura, CrewAI, and the LangChain Team for their innovative ideas that inspire our work; to the Built in Miami team for their essential support through our accelerator program; to OpenAI and Anthropic for pioneering the technologies fundamental to our development.

Special thanks also to Anton and Seth for their invaluable advice and mentorship, and to all the friends, family, and members of the AI Champions community who continually back and support us.