Klyro is AI pair programming in your terminal
Project description
🧠 Klyro
AI Pair Programming in Your Terminal
Klyro lets you pair program with LLMs directly from your terminal. Start a new project or work on your existing codebase with an AI that can read, understand, and edit your code.
⚡ Quick Install
pip install klyro
Or install from source:
git clone https://github.com/RavindraTirlangi/Klyro.git
cd Klyro
pip install -e .
🚀 Usage
# Start Klyro in your project directory
klyro
# Use a specific model
klyro --model gpt-4o
# Use a local Ollama model (auto-detected if running)
klyro --model ollama/llama3.2
✨ Features
Smart Model Detection
Klyro auto-detects your environment:
- Local Ollama running? Uses it automatically — no API key needed.
- Cloud API keys set? Picks the best available model.
- No keys at all? Offers one-click OpenRouter setup.
Slash Commands
| Command | Description |
|---|---|
/stats |
Show model name, last message cost, and total session cost |
/web <url> |
Fetch a web page and add its content to the chat context |
/export [filename] |
Export chat history to a markdown file |
/tokens |
Report token usage for the current chat context |
/add <file> |
Add a file to the chat |
/drop <file> |
Remove a file from the chat |
/diff |
Show the diff of changes made |
/undo |
Undo the last change |
/help |
Show all available commands |
Code Editing
- Whole file and diff-based editing modes
- Automatic linting after every edit
- Built-in git integration with auto-commits
Repository Intelligence
- Builds a repo map using tree-sitter AST analysis
- Understands your codebase structure and relationships
- Smart context management to stay within token limits
🔧 Configuration
Create a .klyro.conf.yml in your project root:
model: ollama/llama3.2
dark-mode: true
auto-commits: true
Or use environment variables:
export OPENAI_API_KEY=sk-...
export ANTHROPIC_API_KEY=sk-ant-...
export OLLAMA_API_BASE=http://localhost:11434
📦 Publishing
This project uses GitHub Actions for automated PyPI publishing. To release:
git tag v1.0.0
git push origin v1.0.0
The workflow will automatically build and publish to PyPI.
📄 License
Apache License 2.0 — see LICENSE for details.
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 klyro-1.0.1.tar.gz.
File metadata
- Download URL: klyro-1.0.1.tar.gz
- Upload date:
- Size: 1.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e001cf0303bcd5b1eecc17bf0e3bc98ec00c0cae2bcbb238cdb589f870982d7f
|
|
| MD5 |
8e683d2d0614488062f7508f608a1ac5
|
|
| BLAKE2b-256 |
3b10e4b425558bcc885eb7c07467f2ab62873e7d83bb4e59613506599bccc213
|
Provenance
The following attestation bundles were made for klyro-1.0.1.tar.gz:
Publisher:
publish.yml on RavindraTirlangi/Klyro
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
klyro-1.0.1.tar.gz -
Subject digest:
e001cf0303bcd5b1eecc17bf0e3bc98ec00c0cae2bcbb238cdb589f870982d7f - Sigstore transparency entry: 2095249525
- Sigstore integration time:
-
Permalink:
RavindraTirlangi/Klyro@2b40720fd8f5a2f5c57bc0822279b290694b0a0a -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/RavindraTirlangi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@2b40720fd8f5a2f5c57bc0822279b290694b0a0a -
Trigger Event:
push
-
Statement type:
File details
Details for the file klyro-1.0.1-py3-none-any.whl.
File metadata
- Download URL: klyro-1.0.1-py3-none-any.whl
- Upload date:
- Size: 382.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2c736ddc29c9873e5c30088426317aa6fb30055594f504473810705cd17321c2
|
|
| MD5 |
8ef29fab7ddde8d7919f44fc5e8a0420
|
|
| BLAKE2b-256 |
b6b525d5034cede63eaa6a596c5b446062baec2902340e5aceb67c20a5bcac21
|
Provenance
The following attestation bundles were made for klyro-1.0.1-py3-none-any.whl:
Publisher:
publish.yml on RavindraTirlangi/Klyro
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
klyro-1.0.1-py3-none-any.whl -
Subject digest:
2c736ddc29c9873e5c30088426317aa6fb30055594f504473810705cd17321c2 - Sigstore transparency entry: 2095249740
- Sigstore integration time:
-
Permalink:
RavindraTirlangi/Klyro@2b40720fd8f5a2f5c57bc0822279b290694b0a0a -
Branch / Tag:
refs/tags/v1.0.1 - Owner: https://github.com/RavindraTirlangi
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@2b40720fd8f5a2f5c57bc0822279b290694b0a0a -
Trigger Event:
push
-
Statement type: