Skip to main content

Minimalist AI framework in 300 Lines. Enable LLMs to Program Themselves.

Project description

Caskada's logo

A radically minimalist AI framework (just 300 lines! 🤯)
Build Powerful AI Agents with Minimal Code, Maximum Freedom.
Let Agents build Agents with Zero bloat, dependencies, or vendor lock-in 😮

python version typescript version Discord GitHub Repository GitHub Sponsors

Caskada is a framework enabling Agentic Coding through powerful abstractions.

It provides a simple interface for building complex AI applications based on nested directed graphs with shared state. It enables both humans and AI assistants to collaborate effectively on designing and implementing AI systems.

Features

  • Brain-Easy 🧠: Intuitive for both humans and AI assistants
  • Minimalist Design ✨: Core abstractions in just (you heard it right!) 300 lines of code
  • Freedom 🔓: Zero bloat, dependencies, or vendor lock-in
  • Composable 🧩: Build complex systems from simple, reusable components
  • Powerful 🦾: Supports everything you love—(Multi-)Agents, Workflow, RAG, and more
  • Agentic-Coding 🤖: Designed for AI-assisted development
  • Universal 🌈: Works with any LLM provider or API
  • Polyglot 🌍: Python Logo Python and Typescript Logo Typescript are both supported

Documentation

Our documentation is inclusive, suitable for both biological and synthetic minds.
Start by selecting your condition - or perhaps the one you've been conditioned to believe:

>> I'm Carbon-Based 🐥 <<

>> I'm Silicon-Based 🤖 <<

Why Caskada?

Current LLM frameworks are bloated... You actually only need 300 lines for a robust LLM Framework!

Abstraction App-Specific Wrappers Vendor-Specific Wrappers Lines Size
LangChain Agent, Chain Many
(e.g., QA, Summarization)
Many
(e.g., OpenAI, Pinecone, etc.)
405K +166MB
CrewAI Agent, Chain Many
(e.g., FileReadTool, SerperDevTool)
Many
(e.g., OpenAI, Anthropic, Pinecone, etc.)
18K +173MB
SmolAgent Agent Some
(e.g., CodeAgent, VisitWebTool)
Some
(e.g., DuckDuckGo, Hugging Face, etc.)
8K +198MB
LangGraph Agent, Graph Some
(e.g., Semantic Search)
Some
(e.g., PostgresStore, SqliteSaver, etc.)
37K +51MB
AutoGen Agent Some
(e.g., Tool Agent, Chat Agent)
Many [Optional]
(e.g., OpenAI, Pinecone, etc.)
7K
(core-only)
+26MB
(core-only)
Caskada Typescript Logo.ts Graph None None 300 few KB
Caskada Python Logo.py Graph None None 300 few KB

How does Caskada work?

The single file in Python Logo Python or Typescript Logo Typescript capture the core abstraction of LLM frameworks: Graph!


  • Node handles simple (LLM) tasks with a clear lifecycle (prepexecpost).
  • Flow connects nodes through Actions (labeled edges), orchestrating execution.
  • Memory manages shared (global) and isolated (local) state, enabling communication between nodes.

From there, it's easy to implement all popular design patterns:


  • Agent autonomously makes decisions based on context.
  • Workflow chains multiple tasks into sequential pipelines.
  • RAG integrates data retrieval with generation.
  • Map Reduce splits data tasks into Map and Reduce steps.
  • Structured Output formats outputs consistently.
  • Multi-Agents coordinate multiple agents.

Tutorials

Name Difficulty Description
Chat ☆☆☆
Dummy
A basic chat bot with conversation history
RAG ☆☆☆
Dummy
A simple Retrieval-augmented Generation process
Workflow ☆☆☆
Dummy
A writing workflow that outlines, writes content, and applies styling
Map-Reduce ☆☆☆
Dummy
A resume qualification processor using map-reduce pattern for batch evaluation
Agent ☆☆☆
Dummy
A research agent that can search the web and answer questions
Streaming ☆☆☆
Dummy
A real-time LLM streaming demo with user interrupt capability
Multi-Agent ★☆☆
Beginner
A Taboo word game for asynchronous communication between two agents
Supervisor ★☆☆
Beginner
Research agent is getting unreliable... Let's build a supervision process
Parallel ★☆☆
Beginner
A parallel execution demo that shows 3x speedup
Thinking ★☆☆
Beginner
Solve complex reasoning problems through Chain-of-Thought
Memory ★☆☆
Beginner
A chat bot with short-term and long-term memory

And many more available for all levels! Check them all out!

Quick Start

New to Caskada? Check out our Getting Started guide to build your first flow in no time.

Ready to Build Self-Coding Apps?

Check out Agentic Coding Guidance, the fastest way to develop self-coding LLM projects with Caskada!

Acknowledgement

We would like to extend our deepest gratitude to the creators and contributors of the PocketFlow framework, from which Caskada originated as a fork.

Contributors Wanted!

We're looking for contributors for all aspects of the project. Whether you're interested in documentation, testing, or implementing features, we'd love your help!

Get involved by joining our Discord server.

Liability Disclaimer

Caskada is provided "as is" without any warranties or guarantees.
We do not take responsibility for how the generated output is used, including but not limited to its accuracy, legality, or any potential consequences arising from its use.

Sponsors

Caskada's logo

Caskada runs on 300 lines of code and your generosity! 💰
Help us deliver more AI with less code (but maybe more caffeine)

Your support helps keep it minimal, powerful, and dependency-free! 🚀

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

caskada-2.2.0.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

caskada-2.2.0-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file caskada-2.2.0.tar.gz.

File metadata

  • Download URL: caskada-2.2.0.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for caskada-2.2.0.tar.gz
Algorithm Hash digest
SHA256 8c67ab5ff72d6cad67d3c1125a9a0c5e1686ddae04c59cee7056c87ee078c9d9
MD5 299d7ca91c4fb5fe2b1fae4a322247ab
BLAKE2b-256 f77580c4183be2a9eccf37ed53bb64ddb606758d2755400cc313bdf5364c1c56

See more details on using hashes here.

Provenance

The following attestation bundles were made for caskada-2.2.0.tar.gz:

Publisher: python-publish.yml on skadaai/caskada

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file caskada-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: caskada-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for caskada-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a656929c166f57ae0851c919ee2dd71246d240e5c6df40d23be011b4b7758e2b
MD5 a51ed073dcbc794c3a8f434766e05ac8
BLAKE2b-256 bcc374b4f03ac069847d788e3fa52206672167bebc299b9d812d11dd9b558864

See more details on using hashes here.

Provenance

The following attestation bundles were made for caskada-2.2.0-py3-none-any.whl:

Publisher: python-publish.yml on skadaai/caskada

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page