The foundational instruction architecture for AI agent orchestration
Baton Framework is an open-source framework that provides the foundational instruction architecture for building, configuring, and orchestrating AI agents. It combines 19 cognitive thinking patterns with domain specialist templates to enable the creation of specialized agents with specific capabilities.
The framework is organized as a monorepo containing npm packages that can be consumed independently or together:
- @conductus-labs/baton-core - Core types, utilities, and validation
- @conductus-labs/baton-agents - 25 pre-defined agent definitions
- @conductus-labs/baton-cognitive-patterns - 19 cognitive thinking patterns
- @conductus-labs/baton-knowledge - Knowledge files and best practices
- @conductus-labs/baton-workflows - Workflow definitions for common tasks
Baton Framework provides the building blocks for creating AI agents that can:
- Think strategically using cognitive patterns (strategic, critical, analytical, systems thinking, etc.)
- Work collaboratively with humans through structured workflows
- Manage projects using the RHYTHM Method (designed for agents with human integration)
- Execute tasks through reusable workflows and templates
Cognitive patterns define how agents think. Each pattern provides:
- Thinking workflows and decision-making frameworks
- Communication patterns and quality standards
- Optimized LLM parameters for that thinking style
Patterns include:
- Analytical, Critical, Strategic, Systems Thinking
- Creative Problem Solving, Experimental Thinking
- Meta-Cognitive, Adaptive Thinking
- And 11 more specialized patterns
π Read the Cognitive Patterns Documentation
Rapid, High-Yield, Token-based, Human-in-loop, Management
A project management methodology specifically designed for agents with human integration. RHYTHM Method is the default methodology for Baton Framework projects.
Key Features:
- TEMPO: Agents operate at fast computational speeds (hours, not weeks)
- Flow: Continuous execution with dependency-driven prioritization
- Control: Human-in-the-Loop checkpoints at critical decision points
- Precision: Token-based estimation replaces abstract story points
π Read the RHYTHM Method Documentation
25 pre-defined agent definitions covering various domains:
- Engineering agents (backend, frontend, DevOps, database, etc.)
- Design agents (UI/UX, content strategist)
- Management agents (project manager, business analyst, business advisor)
- Specialist agents (security, quality assurance, research, technical writer, etc.)
To install all Baton Framework packages:
npm install @conductus-labs/baton-core \
@conductus-labs/baton-agents \
@conductus-labs/baton-cognitive-patterns \
@conductus-labs/baton-knowledge \
@conductus-labs/baton-workflowsYou can install only the packages you need:
# Core package (required by others)
npm install @conductus-labs/baton-core
# Agent definitions
npm install @conductus-labs/baton-agents
# Cognitive patterns
npm install @conductus-labs/baton-cognitive-patterns
# Knowledge files
npm install @conductus-labs/baton-knowledge
# Workflow definitions
npm install @conductus-labs/baton-workflowsWhen you install Baton Framework packages, they automatically:
- Create
baton/folder in your project root (if it doesn't exist) - Copy framework files from
node_modules/tobaton/folder:baton/agents/- Agent definition filesbaton/cognitive/- Cognitive pattern filesbaton/knowledge/- Knowledge filesbaton/workflows/- Workflow filesbaton/core/- Core framework files
This makes framework files easily accessible in your project without navigating node_modules/.
npm install @conductus-labs/baton-core \
@conductus-labs/baton-agents \
@conductus-labs/baton-cognitive-patterns \
@conductus-labs/baton-workflowsAfter installation, framework files are automatically available in the baton/ folder. For project-specific configuration:
Option 1: Use Platform Tools (Recommended)
- Use RHYTHM Board or Baton Platform for project initialization and management
Option 2: Manual Setup
- Create
.baton/folder manually - Copy framework files from
baton/to.baton/as needed - Create
project.config.ymlandproject.manifest.mdmanually
Note: Programmatic initialization utilities may be added in future releases.
import { loadAgent, validateAgent } from "@conductus-labs/baton-core";
import type { AgentDefinition } from "@conductus-labs/baton-core";
// Load an agent definition
const agent = loadAgent("baton-agent");
// Validate agent structure
if (validateAgent(agent)) {
console.log(`Agent: ${agent.agent_name}`);
console.log(`Patterns: ${agent.cognitive_patterns.primary.length}`);
}Core types, utilities, and validation for Baton Framework.
npm install @conductus-labs/baton-coreExports:
- TypeScript type definitions for all framework components
- Validation utilities for agents, patterns, workflows, and knowledge files
- File parsing utilities (YAML, Markdown, frontmatter)
- Path resolution utilities
- Version comparison utilities
Usage:
import {
AgentDefinition,
validateAgent,
loadAgent,
parseYamlFrontmatter,
} from "@conductus-labs/baton-core";π Core Package README
25 pre-defined agent definitions for various domains.
npm install @conductus-labs/baton-agentsContents:
- 25 agent definition files (
.mdformat) - Agent types and interfaces (re-exported from core)
Usage:
import type { AgentDefinition } from "@conductus-labs/baton-agents";
// Agent files are available in baton/agents/ after installation
// Use loadAgent() from baton-core to load them19 cognitive thinking patterns that define how agents think.
npm install @conductus-labs/baton-cognitive-patternsContents:
- 19 cognitive pattern files (
.ymlformat) - Pattern types and interfaces (re-exported from core)
Usage:
import type { CognitivePattern } from "@conductus-labs/baton-cognitive-patterns";
// Pattern files are available in baton/cognitive/ after installation
// Use loadPattern() from baton-core to load themπ Cognitive Patterns Package README
Knowledge files and best practices for agent operations.
npm install @conductus-labs/baton-knowledgeContents:
- Knowledge files for Git CLI, GitHub API, GitHub CLI
- Knowledge types and interfaces (re-exported from core)
Usage:
import type { KnowledgeFile } from "@conductus-labs/baton-knowledge";
// Knowledge files are available in baton/knowledge/ after installationWorkflow definitions for common agent tasks and project management.
npm install @conductus-labs/baton-workflowsContents:
- 4 main workflows (agent initialization, context sync, boundary management, project initialization)
- 10 sub-flows for workflow composition
- Workflow types and interfaces (re-exported from core)
Usage:
import type { WorkflowDefinition } from "@conductus-labs/baton-workflows";
// Workflow files are available in baton/workflows/ after installation
// Use loadWorkflow() from baton-core to load thembaton-framework/
βββ packages/ # npm packages (monorepo)
β βββ core/ # @conductus-labs/baton-core
β β βββ src/
β β β βββ types/ # TypeScript type definitions
β β β βββ validation/ # Validation utilities
β β β βββ utils/ # Shared utilities
β β β βββ manifest/ # Framework manifest
β β β βββ config/ # Core configuration
β β β βββ permissions/ # Workflow permissions
β β βββ package.json
β βββ agents/ # @conductus-labs/baton-agents
β β βββ src/
β β β βββ agents/ # 25 agent definition files
β β βββ package.json
β βββ cognitive-patterns/ # @conductus-labs/baton-cognitive-patterns
β β βββ src/
β β β βββ patterns/ # 19 cognitive pattern files
β β βββ package.json
β βββ knowledge/ # @conductus-labs/baton-knowledge
β β βββ src/
β β β βββ knowledge/ # Knowledge files
β β βββ package.json
β βββ workflows/ # @conductus-labs/baton-workflows
β βββ src/
β β βββ workflows/ # 4 main workflows + 10 sub-flows
β βββ package.json
β
βββ docs/ # Framework documentation
β βββ cognitive-patterns/ # Cognitive pattern documentation
β βββ rhythm/ # RHYTHM Method documentation
β βββ workflows/ # Workflow documentation
β
βββ .github/ # GitHub Actions workflows
β βββ workflows/ # CI/CD workflows
β
βββ package.json # Root workspace configuration
βββ tsconfig.json # Root TypeScript configuration
βββ README.md # This file
When you install Baton Framework packages in your project:
your-project/
βββ baton/ # Framework files (from npm packages)
β βββ agents/ # Agent definition files
β βββ cognitive/ # Cognitive pattern files
β βββ knowledge/ # Knowledge files
β βββ workflows/ # Workflow files
β βββ core/ # Core framework files
β
βββ .baton/ # Project configuration (created by init)
β βββ project.config.yml # Project configuration
β βββ project.manifest.md # Project manifest
β βββ agents/ # Project-specific agent instances
β βββ workflows/ # Project-specific workflow instances
β βββ boundaries/ # Project boundaries
β βββ context/ # Agent context files
β βββ knowledge/ # Project-specific knowledge
β
βββ node_modules/ # npm packages
β βββ @conductus-labs/
β βββ baton-core/
β βββ baton-agents/
β βββ ...
β
βββ package.json
Key Points:
baton/(no dot) = Framework files from npm packages (read-only, managed by npm).baton/(with dot) = Project configuration (read-write, project-specific)
- Cognitive Patterns Overview - Learn about the 19 thinking patterns
- RHYTHM Method Overview - Understand the project management methodology
- Migration Guide - Migrate from CLI to packages
- Patterns List - Detailed descriptions of all 19 patterns
- Using Patterns - How to select and configure patterns
- Pattern Combinations - Best practices for combining patterns
- Dictionary - Key terms and concepts
- Principles - Core principles of RHYTHM Method
- TEMPO - Understanding TEMPO: the speed/pace at which agents operate
- Workflows - RHYTHM Method workflows and processes
- Core Package - Core types, utilities, and validation
- Agents Package - Agent definitions
- Cognitive Patterns Package - Cognitive thinking patterns
- Knowledge Package - Knowledge files
- Workflows Package - Workflow definitions
Baton Framework is designed with these principles:
- Agent-First Design: Built for agents with human integration, not the other way around
- Reusable Patterns: Cognitive patterns and workflows can be combined and reused
- Open and Extensible: Framework components can be customized and extended
- Documentation-Driven: Comprehensive documentation for both humans and agents
- Package-Based: Modular packages allow consumers to install only what they need
# Build all packages
npm run build
# Build specific package
cd packages/core && npm run build# Run all tests
npm run test
# Run tests for specific package
cd packages/core && npm run test
# Run tests in watch mode
npm run test:watch
# Generate coverage report
npm run test:coverageThis repository uses npm workspaces to manage multiple packages. All packages are located in the packages/ directory and share common tooling (TypeScript, Vitest, etc.) configured at the root level.
We welcome contributions! Please see our Contributing Guidelines for details on:
- How to contribute to the framework
- Package contribution process
- Adding new components (agents, patterns, workflows, knowledge)
- Versioning process
- Code of conduct
This project is licensed under the MIT License - see the LICENSE file for details.
Baton Framework is developed by Conductus Labs Ltd, a UK-based AI application layer company.
- Website: conductuslabs.com
- Product: Baton Platform - AI Orchestration Platform (SaaS)
- Baton Platform: The commercial SaaS platform built on Baton Framework
- RHYTHM Board: Project management tool that consumes Baton Framework packages
Built with β€οΈ in the UK