Everything should be made as simple as possible, but not simpler.
A side-by-side look at the differences that matter for everyday use.
| Capability | KISS Sorcar | Claude Code | Cursor |
|---|---|---|---|
| Interfaces | CLI + VS Code extension + web/mobile app | CLI + mobile app | Custom VS Code |
| Multiple models from multiple vendors in the same task | ✓ Mix OpenAI, Anthropic, Gemini, Together, MiniMax, OpenRouter, Claude Code CLI, and Codex CLI | ✗ Anthropic Claude models only | ✗ One model per task |
| Primary focus | ✓ Quality — rigorous review, end-to-end tests | Speed and developer ergonomics | Speed |
| Models in bundled catalog | 501 across 8 provider categories | Claude family only | Subset chosen by Cursor |
| Bring your own API key / endpoint | ✓ Yes — keys stay on your machine | ✓ Anthropic key | ⚠ Routed through Cursor backend |
| Open source | ✓ Apache-2.0 | ✗ Proprietary | ✗ Proprietary |
| Price | Free framework; pay only your chosen model provider | Subscription / API usage | Subscription |
| Run on top of Claude Code / Codex CLI | ✓ cc/* and codex/* namespaces |
N/A | ✗ |
| Messaging and communication channels | ✓ 23 third-party agents, including Slack, Gmail, Phone Control, SMS, and WhatsApp | ⚠ Slack, mobile Remote Control, and research-preview channels for Telegram, Discord, and iMessage; no documented built-in Gmail, WhatsApp, phone-call, or SMS channel | ⚠ Slack and Microsoft Teams Cloud Agent integrations; no documented built-in Gmail, WhatsApp, phone-call, or SMS channel |
| Terminal Bench 2.0 score | 62.2% | 58% | 61.7% (Cursor agent) |
Two names. One principle. A nod to a Bengali magician.
KISS Agent Framework is a deliberately small agent runtime organized around the KISS principle — "Keep it Simple, Stupid."
KISS Sorcar is named after P. C. Sorcar, the Bengali magician. Note: Sorcar also means government in Bengali.
Pick the install path that fits you — full source, Python package, or the VS Code extension. All you need is at least one API key from a major LLM provider.
macOS and Linux on x86_64, aarch64, and arm64. Installs or checks every tool needed to run KISS Sorcar and build/install the VS Code extension.
For just the Python package and CLI entry points. KISS Sorcar requires Python 3.13+.
Provide at least one model backend through environment variables:
Or configure a custom endpoint with --endpoint / -e and optional repeated --header Key:Value CLI flags.
To install only the KISS Sorcar extension, open Visual Studio Code, search for KISS Sorcar in the extension marketplace, install it, and relaunch VS Code.
Press ESC if you do not have a specific API key ready, but configure at least one model backend before running tasks.
sorcar CLI.¶
sorcar runs in two modes. Interactive (no -t/--task or -f/--file) is a Claude-Code-style REPL that connects as a thin terminal client to the local sorcar web daemon; chat-session control (new chat, resume by id, list history) and worktree merge/discard prompts are driven from slash commands, and each task is isolated in a git worktree by default. Non-interactive (-t or -f supplied) runs a plain SorcarAgent once on the supplied task and exits; worktree isolation and chat-session control are unavailable in this mode, but display events are still streamed into the chat DB so the run is replayable in the chat webview.
| Flag | Description |
|---|---|
-t, --task | Task description; switches to non-interactive mode |
-f, --file | Path to a file whose contents are used as the task; switches to non-interactive mode |
-m, --model_name | LLM model name; defaults to the best available model for the configured API keys |
-e, --endpoint | Custom base URL for a local or self-hosted model |
--header | Custom HTTP header in Key:Value form; may be repeated |
-b, --max_budget | Maximum spend in USD for the run |
-w, --work_dir | Working directory; defaults to the directory where sorcar is launched |
-v, --verbose | Print Rich panels to the console (true by default; pass false for quiet mode) |
-p, --parallel / --no-parallel | Enable/disable parallel sub-agents (enabled by default) |
--worktree / --no-worktree | Interactive only. Isolate each task in a git worktree branch (enabled by default); use --no-worktree to run directly in the working tree |
--auto-commit / --no-auto-commit | Interactive only. Auto-commit worktree changes when a task finishes (enabled by default); use --no-auto-commit to preserve the worktree for manual review |
--no-web | Disable browser/web tools (terminal-only mode) |
--worktree / --no-worktree / --auto-commit / --no-auto-commit are rejected with exit 2 when combined with -t/-f, since the non-interactive path runs a bare SorcarAgent that does not implement them. Argparse prefix abbreviations are disabled, so each flag must be spelled out in full.
@ file/folder mentions with ranked project-file completion./help, /clear (alias /new), /resume, /model, /model list, /cost (aliases /usage, /context), /commands, /skills, /mcp, /autocommit, and /exit (alias /quit).~/.kiss/commands, <project>/.kiss/commands, ~/.claude/commands, and <project>/.claude/commands.~/.kiss/skills, <project>/.kiss/skills, Claude skill directories, .agents/skills, and bundled Sorcar skills.~/.kiss/mcp.json, <project>/.kiss/mcp.json, and <project>/.mcp.json.~/.kiss/INJECTIONS.md (one per ## Trick section), seeded on install from the bundled src/kiss/INJECTIONS.md. Edit the file to customise the dropdown; remove it to regenerate from the bundled defaults.~/.kiss/SAMPLE_TASKS.md (one per ## Task section), seeded on install from the bundled src/kiss/agents/vscode/SAMPLE_TASKS.md. Edit the file to customise the chips; remove it to regenerate from the bundled defaults.sorcar mcp subcommandManage Model-Context-Protocol servers used by Sorcar:
| Subcommand | Purpose |
|---|---|
sorcar mcp add <name> <cmd…> | Register a stdio (default) or --transport http/sse server in --scope user (~/.kiss/mcp.json) or --scope project (<work_dir>/.kiss/mcp.json); supports --env KEY=VALUE and --header 'Key: Value' (repeatable). |
sorcar mcp list [--ping] | List configured servers; --ping also connects and reports live status and tool counts. |
sorcar mcp get <name> | Print one server's configuration as JSON. |
sorcar mcp remove <name> | Delete a server from every writable config file. |
sorcar mcp auth <name> [--no-browser] | Run the OAuth 2.1 browser flow (dynamic client registration + PKCE) and persist tokens under ~/.kiss/mcp_auth/. |
sorcar mcp logout <name> | Delete a server's stored OAuth tokens. |
sorcar mcp debug <name> | Connect and dump capabilities, tools (with input schemas and permission status), resources, and prompts. |
KISS Sorcar includes 23 third-party messaging agents that can send and receive messages on your behalf. It also ships a Govee smart-home CLI for controlling IoT lights (on/off, brightness, color, and color temperature) via the Govee Developer API. These agents live in src/kiss/agents/third_party_agents/.
A Govee smart-home CLI for controlling IoT lights — on/off, brightness, color, and color temperature — directly via the Govee Developer API.
KISS Sorcar ships a catalog of 501 models across 8 provider categories, with built-in prices, context lengths, and capability flags (fc function calling, gen generation, emb embedding). The source of truth is src/kiss/core/models/MODEL_INFO.json.
cc/*)3codex/*)7Across all bundled providers, the catalog currently reports:
See the full per-provider model list in the README, including the cc/* and codex/* namespaces that let KISS Sorcar run on top of the Claude Code and Codex CLIs.
Contributions in the form of issues are welcome. KISS Sorcar should be able to help implement and review them.
Report bugs, request features, or share ideas. Each issue becomes a candidate task KISS Sorcar can pick up and work on.
Drop an issue link into a Sorcar task and it will draft a fix, run tests, and self-review before opening a PR.
KISS Sorcar is released under a permissive open-source license.
Use it for anything — personal, commercial, research, education. See LICENSE for the full text.
Apache License 2.0If you use KISS Sorcar in your research, please cite:
@misc{sen2026kisssorcar,
title = {KISS Sorcar: A Stupidly-Simple General-Purpose and Software Engineering AI Assistant},
author = {Sen, Koushik},
year = {2026},
eprint = {2604.23822},
archivePrefix = {arXiv},
primaryClass = {cs.SE},
url = {https://arxiv.org/abs/2604.23822}
}