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

Getting Started

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

pipx install kalle
kalle -h
kalle hi

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 to TabbyAPI currently) constrain generation with regex and json-schema

  • Constrain with regex: kalle -S $(date "+%s") -x -R "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 tempalte, prompt template, constrainer and profile
  • Pipe output from one pattern to the input of another
  • Create streamlined workflows

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 section below "Updating license data".


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.2.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.2-py3-none-any.whl (27.3 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for kalle-0.0.2.tar.gz
Algorithm Hash digest
SHA256 b6996e1b1e17b6f149edddb4207744f1c7c01c6f071f1adbcbe9370016799bfb
MD5 7621c34cb7e8e1fafefe281d3a033711
BLAKE2b-256 a7a1ddcb0e6bab23b6e56d073ca69b2331ba4f778ee8360d873e665bbe27a9f0

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for kalle-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f0d13c2cf992a3436577ad7a220988e3c4ad3d6d11bc0908f0961ce01557a122
MD5 3e9ae8f241622e154e251a2dce12552a
BLAKE2b-256 39da7bcc97f74e4f043982b100a84c5834c173f4ff62cc42a106dfca9640697a

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