Skip to main content

KISS Agent Framework - A simple and portable agent framework for building and evolving AI agents

Project description

KISS Framework

KISS Sorcar

The open-source AI coding agent that beats Cursor and Claude Code on Terminal Bench.

Terminal Bench 2.0:  KISS Sorcar 62.2%  •  Cursor agent 61.7%  •  Claude Code 58%

Free. Local. Bring your own API key. Runs as a VS Code extension and as a web/mobile app.

Version License Python Website arXiv

"Everything should be made as simple as possible, but not simpler." — Albert Einstein

Website: https://kisssorcar.github.io/ · Paper: arXiv:2604.23822


Table of Contents

Introduction to KISS Sorcar

KISS Sorcar demo

KISS Sorcar is the open-source AI coding agent that beats Cursor and Claude Code on Terminal Bench. On Terminal Bench 2.0 it scored 62.2%, ahead of Cursor agent (61.7%) and Claude Code (58%) — while remaining free, open-source, and fully local. You bring your own model API key (Anthropic recommended) or LLM endpoint or Claude Code or OpenAI Codex; nothing about your code or prompts is sent through our servers.

It runs as a Visual Studio Code extension, as a CLI tool and as a web/mobile app, and is built on the KISS Agent Framework — a deliberately simple agent runtime that follows the KISS principle ("Keep it Simple, Stupid"). The agent has browser support (Chromium + Playwright), multimodal support, Docker container support, can research topics on the web, and can run for hours across multiple sessions. If you have Claude Code or OpenAI Codex in your PATH, you can also use cc/* or codex/* models for chat.

KISS Sorcar is named after P. C. Sorcar, the Bengali magician. The paper is at papers/kisssorcar/kiss_sorcar.pdf.

Engineering principles are encoded in the agent's system prompt. See Section 5 of the paper for details.

An old video on KISS Sorcar can be found at https://www.youtube.com/watch?v=xnYxWvRqACE. We no longer recommend explicitly creating a plan in KISS Sorcar. See the paper for details.

Note that Sorcar also means government in Bengali.

🎬 See It in Action

From writing production-grade code to planning your next vacation, KISS Sorcar handles a range of tasks end-to-end. Here are a few examples:

KISS Sorcar writing and refactoring code
💻 Coding & Software Engineering
Writes, debugs, and refactors code.
KISS Sorcar planning a trip
✈️ Trip Planning & Research
Browses the web, compares options, and assembles itineraries.
KISS Sorcar sending a Slack message
💬 Desktop & Messaging Apps
Drives native apps like Slack via the desktop, end-to-end.
KISS Sorcar controlling a mobile device
📱 Mobile/Web App
You can use KISS Sorcar as a mobile/web app.

Full Installation

curl -fsSL https://raw.githubusercontent.com/ksenxx/kiss_ai/main/scripts/install.sh | bash

KISS Sorcar Extension Installation

To install KISS Sorcar, open Visual Studio Code, search for "KISS Sorcar" in the extension marketplace, install, and relaunch VS Code. Press ESC if you don't have a specific API key, but you must provide at least one API key.

You can also manually download the extension from src/kiss/agents/vscode/kiss-sorcar.vsix.

CLI Interface

If you do not want to use the KISS Sorcar IDE, you can open a terminal and use sorcar as a shell command. Some examples:

sorcar -t "What is 2435*234"

sorcar -n -t --use-chat "What is 2435*234?" # start a new chat session

sorcar -m "claude-sonnet-4-6" -t "What is 2435*234?" # use a specific model

echo "Can you find the cheapest non-stop flight from SFO to JFK on June 15?" > prompt
sorcar -f prompt # use contents of a file as the task

sorcar -t 'Can you send the message "Hello from Sorcar!" to ksen via the desktop slack app?'

sorcar -t 'Can you show me the detailed step-by-step workflow of gepa.py?'

CLI Options

Flag Description
-t, --task Task description
-f, --file Path to a file whose contents to use as the task
-m, --model_name LLM model name (default: claude-opus-4-6)
-e, --endpoint Custom endpoint for a local model
--header Custom HTTP header in Key:Value form; may be repeated
-b, --max_budget Maximum budget in USD
-w, --work_dir Working directory
-v, --verbose Print output to console (default: true)
-n, --new Start a new chat session
-c, --chat-id Resume a chat session by ID
-l, --list-chat-id List the last 10 chat sessions with tasks and results
-p, --parallel Enable parallel subagents
--no-web Disable browser/web tools (terminal-only mode)
--use-chat Use chat mode
--use-worktree Use chat mode with git worktree isolation (advanced)
--cleanup Scan for and clean up orphaned worktree branches

💬 Messaging & Third-Party Agents

KISS Sorcar includes 23 third-party messaging agents that can send and receive messages on your behalf:

BlueBubbles · Discord · Feishu · Gmail · Google Chat · iMessage · IRC · LINE · Matrix · Mattermost · Microsoft Teams · Nextcloud Talk · Nostr · Phone Control · Signal · Slack · SMS · Synology Chat · Telegram · Tlon · Twitch · WhatsApp · Zalo

These agents are in src/kiss/agents/third_party_agents/.

🤖 Models Supported

542 models across 8 provider categories (OpenAI, Anthropic, Gemini, Together AI, MiniMax, OpenRouter, Claude Code CLI, Codex CLI) with built-in pricing, context lengths, and capability flags.

Generation Models (text generation with function calling support):

  • OpenAI: gpt-3.5-turbo, gpt-4, gpt-4-turbo, gpt-4.1, gpt-4.1-mini, gpt-4.1-nano, gpt-4o, gpt-4o-mini, gpt-5, gpt-5-mini, gpt-5-nano, gpt-5-pro, gpt-5.1, gpt-5.2, gpt-5.2-pro, gpt-5.3-chat-latest, gpt-5.4, gpt-5.4-mini, gpt-5.4-nano, gpt-5.4-pro, gpt-5.5, gpt-5.5-pro (+ dated variants)
  • OpenAI (Codex): gpt-5-codex, gpt-5.1-codex, gpt-5.1-codex-max, gpt-5.1-codex-mini, gpt-5.2-codex, gpt-5.3-codex
  • OpenAI (Reasoning): o1, o1-pro, o3, o3-mini, o3-pro, o3-deep-research, o4-mini, o4-mini-deep-research (+ dated variants)
  • OpenAI (Image): gpt-image-1, gpt-image-1-mini, gpt-image-1.5, gpt-image-2
  • OpenAI (Search): gpt-4o-search-preview, gpt-4o-mini-search-preview
  • OpenAI (Other): computer-use-preview, openai/gpt-oss-20b, openai/gpt-oss-120b
  • Anthropic: claude-opus-4-7, claude-opus-4-6, claude-opus-4-5, claude-opus-4-1, claude-opus-4, claude-sonnet-4-6, claude-sonnet-4-5, claude-sonnet-4, claude-haiku-4-5 (+ dated variants)
  • Claude Code CLI: cc/haiku, cc/opus, cc/sonnet
  • Codex CLI: codex/default, codex/codex-auto-review, codex/gpt-5.2, codex/gpt-5.3-codex, codex/gpt-5.4, codex/gpt-5.4-mini, codex/gpt-5.5
  • Gemini: gemini-2.5-pro, gemini-2.5-flash, gemini-2.5-flash-image, gemini-2.5-flash-lite, gemini-2.0-flash, gemini-2.0-flash-lite, gemini-3.1-flash-lite
  • Gemini (Preview): gemini-3-pro-preview, gemini-3-flash-preview, gemini-3.1-pro-preview, gemini-3.1-flash-lite-preview, gemini-3.1-flash-tts-preview
  • Gemini (Open Models): google/gemma-4-31B-it, google/gemma-3n-E4B-it, google/gemma-2-27b-it
  • Together AI (Llama): Llama-4-Scout, Llama-4-Maverick (with function calling), Llama-3.x series (generation only)
  • Together AI (Qwen): Qwen2-1.5B-Instruct, Qwen2-VL-72B-Instruct, Qwen2.5-72B/14B/7B-Instruct, Qwen2.5-VL-72B, Qwen2.5-Coder-32B, Qwen3-235B series, Qwen3-Coder-480B, Qwen3-Coder-Next, Qwen3-Next-80B, Qwen3-VL-32B/8B, Qwen3.5-397B/9B, Qwen3.6-Plus, QwQ-32B
  • Together AI (DeepSeek): DeepSeek-R1, DeepSeek-R1-0528, DeepSeek-R1-0528-tput, DeepSeek-R1-Distill-Llama-70B, DeepSeek-R1-Distill-Qwen-1.5B/14B, DeepSeek-V3-0324, DeepSeek-V3.1, DeepSeek-V4-Pro, deepseek-coder-33b-instruct
  • Together AI (Kimi/Moonshot): Kimi-K2-Instruct, Kimi-K2-Instruct-0905, Kimi-K2-Thinking, Kimi-K2.5, Kimi-K2.6
  • Together AI (Mistral): Ministral-3-14B, Mistral-7B-v0.1/v0.2/v0.3, Mistral-Small-24B, Mixtral-8x7B
  • Together AI (Z.AI): GLM-5, GLM-5.1, GLM-4.5-Air-FP8, GLM-4.6, GLM-4.7
  • Together AI (MiniMax): MiniMax-M2.5, MiniMax-M2.7
  • MiniMax: minimax-m2.5, minimax-m2.5-lightning (via MiniMax direct API)
  • Together AI (DeepCogito): cogito-v1-preview (llama-70B/8B/70B-Turbo, qwen-14B/32B), cogito-v2-1-671b
  • Together AI (NVIDIA): Llama-3.1-Nemotron-70B, Nemotron-Nano-9B-v2
  • Together AI (Other): arcee-ai/trinity-mini, essentialai/rnj-1-instruct
  • OpenRouter: Access to 330 models from 51 providers via unified API, including OpenAI, Anthropic, Google, Meta Llama, DeepSeek, Qwen, Amazon Nova, Cohere, X.AI Grok, MiniMax, ByteDance Seed, MoonshotAI, Mistral, NVIDIA, Z.AI/GLM, AllenAI, Perplexity, NousResearch, Baidu ERNIE, Xiaomi, Reka AI, Arcee AI, Perceptron, and others

Embedding Models (for RAG and semantic search):

  • OpenAI: text-embedding-3-small, text-embedding-3-large, text-embedding-ada-002
  • Google: gemini-embedding-001, gemini-embedding-2, gemini-embedding-2-preview
  • Together AI: BAAI/bge-base-en-v1.5, intfloat/multilingual-e5-large-instruct

Each model entry includes capability flags: is_function_calling_supported, is_generation_supported, is_embedding_supported.

🤗 Contributing

Contributions in the form of issues are welcome! KISS Sorcar should be able to take care of them.

📄 License

Apache-2.0

📚 Citation

If 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}
}

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

kiss_agent_framework-2026.5.33.tar.gz (3.5 MB view details)

Uploaded Source

Built Distribution

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

kiss_agent_framework-2026.5.33-py3-none-any.whl (1.8 MB view details)

Uploaded Python 3

File details

Details for the file kiss_agent_framework-2026.5.33.tar.gz.

File metadata

  • Download URL: kiss_agent_framework-2026.5.33.tar.gz
  • Upload date:
  • Size: 3.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for kiss_agent_framework-2026.5.33.tar.gz
Algorithm Hash digest
SHA256 dfdbc4bfb05a70beefcebf4b872b69bc69b87a59198b62599cc9767ebdbe67f7
MD5 0c20bae9a15290e5b0fc5bfdd63ce9e6
BLAKE2b-256 8fb4367f2f4b4800c6f24305e929cfe4a086588ca72393ad29beb1f25aff70e3

See more details on using hashes here.

File details

Details for the file kiss_agent_framework-2026.5.33-py3-none-any.whl.

File metadata

  • Download URL: kiss_agent_framework-2026.5.33-py3-none-any.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.2 {"installer":{"name":"uv","version":"0.11.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for kiss_agent_framework-2026.5.33-py3-none-any.whl
Algorithm Hash digest
SHA256 4b7ff2b6ec52f56ac98f8d8bd2222992ed20963707625612c1777718f0491eba
MD5 359fc9e21a1016a79bced802d95ccb5b
BLAKE2b-256 780bf56e3c24e4dd1e7bb2999c456f3e38b072103a40a67324040af0da357bcd

See more details on using hashes here.

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