Skip to content

zAlweNy26/ts-cat

Repository files navigation

Cheshire Cat (Stregatto)

GitHub Stars Discord Server GitHub Issues GitHub Latest Tag GitHub Top Language

TypeScript version of the Cheshire Cat AI framework originally made in Python.

Check out the linked project for more information on what's being worked on.

📜 For the full list of changes, please read the changelog file.

👥 If you want to contribute, please read the contributing file.

📃 To be sure to respect everything, please read the code of conduct file.

Why use the cat?

  • ⚡️ API first, so you get a microservice to easily add a conversational layer to your app
  • 🐘 Remembers conversations and documents and uses them in conversation
  • 🚀 Extensible via plugins
  • 🏛️ Event callbacks, function calling (tools), conversational forms
  • 🌍 Supports any language model (works with OpenAI, Google, Ollama, HuggingFace, custom services)
  • 🐋 Production ready - 100% dockerized

Features

  • Granular plugins folder reload
  • Sync/Async ingestion endpoints
  • New built-in LLMs and Embedders
  • Instant tool call hook
  • Granular management of procedures (forms and tools)
  • Supports cron jobs (without saving to memory)
  • Built-in CLI
  • Supports multimodality

Pre-requisites

  • Bun (>= 1.1.19)

Installation

# (for development)
bun install
rm -f .git/hooks/pre-commit && ln -s ../../pre-commit .git/hooks/pre-commit

# (for production)
docker compose build --no-cache

How to run

# (for development, with watcher)
bun run dev
# (for development, without watcher)
bun start

# (for production)
docker compose up

How to test

bun run test

License

This project is licensed under the GPL-3.0 License - see the LICENSE file for details.