Skip to main content

A smart CLI friend

Project description

kalle

kalle

kalle -x "Briefly describe yourself for the README.md for your project. $(kalle -h)"
Hey there! I'm Kalle, your friendly personal assistant. I'm here to help you
with any questions or tasks you might have. I'm a smart CLI friend, which means
I can understand and respond to your messages in a conversational way. Think of
me as your go-to buddy for getting things done!

Hello!

kalle is useful for anyone who wants a quick and easy way to get answers or complete tasks without having to leave the command line. It's perfect for developers, researchers, and anyone who wants to automate their workflow.

With kalle, you can:

  • Get answers to common questions
  • Have focused discussions on specific topics
  • Incorporate documents from your local filesystem or web pages into your conversations
  • Recall previous conversations
  • Summarize content, create and edit files and more to get things done

kalle_intro


Getting Started

To get started with kalle, simply install it with pipx:

pipx install kalle
kalle -h

Run for the first time!

kalle hi

NOTE: When running for the first time, the a default model will be downloaded (SmolLM-1.7b) for use with the llamacpp connector. This may take a few minutes.

More information can be found in the installation instructions.

Detailed information on how to work with kalle be found in the documentation.


Usage

Here are some simple examples of how to use kalle:

  • Simple example: kalle "hi"
  • No conversation history: kalle -x "What's the capital of California?"
  • Custom conversation: kalle -c partyplanning "Lets plan a party."
  • Using a different profile: kalle -P ollama "Hello, world!"

For more examples, check out the usage guide.


Features

Profiles: connect to any number of different endppints and language models

  • Local and self hosted models are supported via llama.cpp and Ollama and TabbyAPI
  • Vendor managed models can be accessed via Anthropic, OpenAI, Grok and Google VertexAI APIs

Conversations: kalle supports multiple conversations, so you can have focused discussions on specific topics.

  • Create a new conversation: kalle -c my_conversation "Hello, world!"
  • List all conversations: kalle -l
  • Have a different conversation: kalle -c my_other_conversation "Hello, other conversation!"

Piped input: information can be piped into kalle on the command line.

  • Reference command output: git diff | kalle -x "Review this git diff, determine why the changes were made and generated a well formed git commit comment."

Document references: kalle can incorporate documents from your local filesystem or web pages into your conversations.

  • Reference a local file: kalle -f "Tell me about this document: file://test.pdf"
  • Reference a web page: kalle -f "What is this webpage about: https://www.fsf.org"

Tools: tools can be invoked to accomplish various tasks

  • Create a file: kalle -t "Create a file containing the text 'Hello World'."
  • Send a desktop notification: kalle -t "Send a desktop notification with a haiku about turtles."

Constrained generation: (limited connector support) constrain generation with regex and json-schema

  • Constrain with regex: kalle -S $(date "+%s") -x --regex "HEADS|TAILS" "Flip a coin and tell me if its heads or tails."
  • Constrain with json-schema: kalle -x -J schema.json -f "Reformat this content into json: file://data.md"

Patterns: create building blocks of agentic functionality

  • Combine a set of system prompt template, prompt template, constrainer and profile
  • Pipe output from one pattern to the input of another
  • Create streamlined workflows

Memory: You can add content to kalle's memory and use it during conversations!

  • Add content and documents to memory (sqlite-vec): kalle -S -R README.md < README.md
  • Directly query the memory: kalle -Q Give me a good smashburger recipe
  • Automatically use memories relevant to your prompt: kalle -M Give me a good smashburger recipe
  • Use separate and distinct memory-stores: kalle -K notes What have I written about agentic architecture\?

For more examples, check out the usage guide.


Resources

Similar projects or alternatives include:


Copyright & License

Copyright (C) 2024-2025 Wayland Holdings, LLC

This software is licensed under the GNU Affero GPL (see LICENSE.md)

This software uses a number of third party libraries. See 3RDPARTY.licenses for details. NOTE: This may be out of date. See the script ./bin/update_license_data.sh to get the latest.


Copyright (C) 2024-2025 Wayland Holdings, LLC

fe2 fe2

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

kalle-0.0.6.tar.gz (26.8 MB view details)

Uploaded Source

Built Distribution

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

kalle-0.0.6-py3-none-any.whl (27.3 MB view details)

Uploaded Python 3

File details

Details for the file kalle-0.0.6.tar.gz.

File metadata

  • Download URL: kalle-0.0.6.tar.gz
  • Upload date:
  • Size: 26.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for kalle-0.0.6.tar.gz
Algorithm Hash digest
SHA256 a0d61331040f3405d8984c3cb97755f57059f2d6d0ffc384a4a1a40373c0a8b9
MD5 9304a825be46cbb5faedb66d98c55552
BLAKE2b-256 77ba31c21e1786557f6b443a320dfab4e20e6e4505f211d1f8422c42d7a1543f

See more details on using hashes here.

File details

Details for the file kalle-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: kalle-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 27.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for kalle-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 a64db2b88662eb6af086e804c9a5358eb97e2f59555a605800fbc986f10979e3
MD5 955594e9f0f2db6ff493166f64bb0713
BLAKE2b-256 d42b31af89d7d1a8710167271f3c8d179bcf7e23d8579ad31e55934f1a615909

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