{"id":16256115,"url":"https://github.com/zalweny26/ts-cat","last_synced_at":"2025-03-19T21:30:49.260Z","repository":{"id":230770243,"uuid":"775162678","full_name":"zAlweNy26/ts-cat","owner":"zAlweNy26","description":"TypeScript version of the Cheshire Cat AI project","archived":false,"fork":false,"pushed_at":"2025-03-09T18:17:18.000Z","size":2544,"stargazers_count":14,"open_issues_count":14,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-10T17:52:22.272Z","etag":null,"topics":["bun","cheshire-cat","elysia","langchain","typescript"],"latest_commit_sha":null,"homepage":"https://zalweny26.github.io/ts-cat/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zAlweNy26.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-20T21:51:26.000Z","updated_at":"2025-03-10T08:57:42.000Z","dependencies_parsed_at":"2024-03-31T20:30:25.466Z","dependency_job_id":"2ba0169c-6308-473f-a163-fd40065f709a","html_url":"https://github.com/zAlweNy26/ts-cat","commit_stats":null,"previous_names":["zalweny26/ts-cat"],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zAlweNy26%2Fts-cat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zAlweNy26%2Fts-cat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zAlweNy26%2Fts-cat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zAlweNy26%2Fts-cat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zAlweNy26","download_url":"https://codeload.github.com/zAlweNy26/ts-cat/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244056425,"owners_count":20390719,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bun","cheshire-cat","elysia","langchain","typescript"],"created_at":"2024-10-10T15:44:29.661Z","updated_at":"2025-03-19T21:30:49.250Z","avatar_url":"https://github.com/zAlweNy26.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Cheshire Cat (Stregatto)\n\n[![GitHub Stars](https://img.shields.io/github/stars/zAlweNy26/ts-cat)](https://github.com/zAlweNy26/ts-cat)\n[![Discord Server](https://img.shields.io/discord/1092359754917089350?logo=discord)](https://discord.gg/bHX5sNFCYU)\n[![GitHub Issues](https://img.shields.io/github/issues/zAlweNy26/ts-cat)](https://github.com/zAlweNy26/ts-cat/issues)\n[![GitHub Latest Tag](https://img.shields.io/github/v/tag/zAlweNy26/ts-cat)](https://github.com/zAlweNy26/ts-cat/tags)\n[![GitHub Top Language](https://img.shields.io/github/languages/top/zAlweNy26/ts-cat)](https://github.com/zAlweNy26/ts-cat)\n\nTypeScript version of the [Cheshire Cat AI](https://github.com/cheshire-cat-ai/core) framework originally made in Python.\n\nCheck out the [linked project](https://github.com/zAlweNy26/ts-cat/projects?query=is%3Aopen) for more information on what's being worked on.\n\n📜 For the full list of changes, please read the [changelog](./CHANGELOG.md) file.\n\n👥 If you want to contribute, please read the [contributing](./CONTRIBUTING.md) file.\n\n📃 To be sure to respect everything, please read the [code of conduct](./CODE_OF_CONDUCT.md) file.\n\n## Why use the cat?\n\n- ⚡️ API first, so you get a microservice to easily add a conversational layer to your app\n- 🐘 Remembers conversations and documents and uses them in conversation\n- 🚀 Extensible via plugins\n- 🏛️ Event callbacks, function calling (tools), conversational forms\n- 🌍 Supports any language model (works with OpenAI, Google, Ollama, HuggingFace, custom services and many others)\n- 🐋 Production ready - 100% dockerized\n\n## Features\n\n- [x] Granular plugins folder reload\n- [x] Sync/Async ingestion endpoints\n- [x] New built-in LLMs and Embedders\n- [x] Instant tool call hook\n- [x] Granular management of procedures (forms and tools)\n- [x] Supports cron jobs (without saving to memory)\n- [x] Rate limiter\n- [x] Database query executor\n- [x] Supports streaming both in WebSocket and HTTP\n- [x] Tokens usage visible through model interactions\n- [x] Cache support for LLM and Embedder responses\n- [ ] Built-in CLI\n- [ ] External plugins registry support\n- [ ] Add multi-modality support\n- [ ] Add multi-agent support\n- [ ] Add multi-chat support\n\n## Pre-requisites\n\n- Bun (\u003e= 1.2) (for local development)\n- Docker\n\n## Installation\n\n```bash\n# (for development)\nbun install\n\n# (for production)\ndocker compose build --no-cache\n```\n\n## How to run\n\n```bash\n# (for development)\ndocker run -p 6333:6333 qdrant/qdrant\nbun run dev\n# OR (if you are using the dev docker compose)\ndocker compose -f compose.dev.yml build --no-cache\ndocker compose -f compose.dev.yml up -d\n\n# (for production)\ndocker compose up\n```\n\n## How to run CLI\n\n```bash\nbun run cli \u003ccommand\u003e\n# OR (if you are using the dev compose)\ndocker exec ccat_ts_dev bun run cli \u003ccommand\u003e\n# OR (if you are using the prod compose)\ndocker exec ccat_ts bun run cli \u003ccommand\u003e\n```\n\n## How to test\n\n```bash\nbun run test\n# OR (if you are using the dev compose)\ndocker exec ccat_ts_dev bun run test\n# OR (if you are using the prod compose)\ndocker exec ccat_ts bun run test\n```\n\n## License\n\nThis project is licensed under the GPL-3.0 License - see the [LICENSE](./LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzalweny26%2Fts-cat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzalweny26%2Fts-cat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzalweny26%2Fts-cat/lists"}