A framework for building AI agents programmatically
Project description
Klisk
The easiest way to build AI agents.
Klisk is a framework for building AI agents programmatically. Define agents and tools with a simple API, iterate with an interactive Studio, and deploy to production — all from the CLI.
Install
pip install klisk
Quick start
klisk # creates ~/klisk workspace
cd ~/klisk
claude # or your preferred AI agent
> "Create an agent that ..."
Or create a project manually:
klisk create my-agent
This scaffolds a ready-to-run project:
my-agent/
├── klisk.config.yaml
├── .env
└── src/
├── main.py
└── tools/
└── example.py
Define your agent in src/main.py:
from klisk import define_agent, get_tools
agent = define_agent(
name="Assistant",
instructions="You are a helpful assistant.",
model="gpt-5.2",
tools=get_tools("greet"),
)
Create tools in src/tools/:
from klisk import tool
@tool
async def greet(name: str) -> str:
"""Greet someone by name."""
return f"Hello, {name}!"
Run it:
klisk run "Say hello to Juan"
klisk run -i # Interactive chat mode
Studio
Launch the interactive development environment:
klisk studio
A visual Studio opens in your browser with:
- Agent graph — see agents and their connected tools
- Live chat — test your agent with file attachments, tool call inspection, and markdown rendering
- Inline editing — modify agent instructions, model, and tools directly from the UI
- Hot reload — changes to your code update the Studio instantly
Multi-provider
Use any LLM provider via LiteLLM. Just prefix the model name:
# OpenAI (default)
define_agent(name="Agent", model="gpt-5.2")
# Anthropic
define_agent(name="Agent", model="anthropic/claude-sonnet-4-5-20250929")
# Google
define_agent(name="Agent", model="gemini/gemini-2.5-flash")
Set the corresponding API key in your .env file (OPENAI_API_KEY, ANTHROPIC_API_KEY, GEMINI_API_KEY, etc.).
Builtin tools
OpenAI models support builtin tools out of the box:
define_agent(
name="Researcher",
model="gpt-5.2",
builtin_tools=["web_search", "code_interpreter"],
)
Available: web_search, code_interpreter, file_search, image_generation.
Production
Serve your agent with a chat UI and REST API:
klisk start my-agent
This starts a production server with:
- Chat UI at
http://localhost:8080 - REST API at
/api/chat(streaming supported) - WebSocket endpoint at
/ws/chat - Embeddable widget via
/widget.js - Optional API key auth via
KLISK_API_KEY
Deploy
Deploy to Google Cloud Run in one command:
klisk deploy init # Generate Dockerfile and config
klisk deploy # Deploy to Cloud Run
CLI reference
| Command | Description |
|---|---|
klisk |
Initialize workspace and show welcome |
klisk create <name> |
Scaffold a new project |
klisk studio |
Start Studio with hot reload |
klisk run [message] |
Run agent from terminal |
klisk check [name] |
Validate project configuration |
klisk list |
List workspace projects |
klisk start [name] |
Start production server |
klisk deploy |
Deploy to Google Cloud Run |
License
Elastic License 2.0 (ELv2) — free to use, cannot be offered as a managed service.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file klisk-0.2.3.tar.gz.
File metadata
- Download URL: klisk-0.2.3.tar.gz
- Upload date:
- Size: 445.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
03e79a3b728eb65c02b7b072bf013bda39f6bf8f4f78f7d5639846218f2d72ea
|
|
| MD5 |
b37bfc6e8e79639535cabd45a4739229
|
|
| BLAKE2b-256 |
4199bb83717aa2c9d53bce5f134b2b3386a03a01b76f927e6cc5ff1b5bfcb4f6
|
File details
Details for the file klisk-0.2.3-py3-none-any.whl.
File metadata
- Download URL: klisk-0.2.3-py3-none-any.whl
- Upload date:
- Size: 317.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a957fbf4589c03bf19f2f6acdb969ba216beb0edbdd103472783f383f206bd21
|
|
| MD5 |
2f600eced089f7297adbdc1ebd590bbb
|
|
| BLAKE2b-256 |
76d570b3df09b486e6f055df7020d1a57ebfd645ced917061278e875a7616e7c
|