SAIL-Research-Lab/cheetahclaws
CheetahClaws: A Fast and Easy-to-Use Agent Harness Infrastructure for Long-Horizon, Multi-Model, and Tool-Using AI Systems
What it solves
CheetahClaws is a Python-native agent harness designed to provide a flexible, open-source alternative to proprietary coding assistants like Claude Code. It solves the problem of being locked into a single model provider or a compiled, hard-to-modify codebase, allowing developers to use any LLM—including local, offline models—as a powerful terminal-based AI coding assistant.
How it works
The system implements an agentic loop in Python that manages streaming APIs and automatic tool-use. It connects to various model providers (Anthropic, OpenAI, Gemini, DeepSeek, etc.) or local endpoints (Ollama, vLLM) and provides a suite of built-in tools for file system operations, shell execution, and web searching. It features a multi-layer context compression system to handle long-horizon tasks and a dual-scope persistent memory system for user and project-specific data.
Who it’s for
- Developers who want a hackable, local-first AI coding assistant that supports non-Anthropic models.
- AI Researchers studying the mechanics of agentic loops and tool-use.
- Teams needing a customizable baseline for AI agents without requiring a Node.js build chain.
Highlights
- Model Agnostic: Supports a wide array of closed-source APIs and local models via Ollama or OpenAI-compatible endpoints.
- Extensible Tooling: Includes 28 built-in tools and supports the Model Context Protocol (MCP) for adding external tools at runtime.
- Advanced Context Management: Employs four layers of context compression and a task dependency graph to manage long-term goals.
- Agentic Capabilities: Supports spawning typed sub-agents (e.g., coder, reviewer), autonomous background loops, and specialized modes like
/researchand/trading. - Developer Experience: Features a terminal REPL with next-prompt ghost text, a Web UI, and bridges to messaging platforms like Telegram and Slack.
Related
- Project
- Project
- Project
- Project