Skip to main content

A terminal assistant that allows you to ask an LLM to run commands.

Project description

tass

Demo

A terminal assistant that allows you to ask an LLM to run commands.

Warning

This tool can run commands including ones that can modify, move, or delete files. Use at your own risk.

Installation

Using uv

uv tool install tass

Using pip

pip install tass

You can run it with

tass

or if you only want to ask/request a single thing

tass "convert video.mp4 to audio.mp3"

tass has only been tested with llama.cpp with LLMs such as gpt-oss-120b and MiniMax M2.1, but any LLM with tool calling capabilities should work.

By default, tass will try connecting to http://localhost:8080. To use another host, set the TASS_HOST environment variable. If your server requires an API key, you can set the TASS_API_KEY environment variable. At the moment there's no support for connecting tass to a non-local API, nor are there plans for it. I plan on keeping tass completely local. There's no telemetry, no logs, just a simple REPL loop.

Once it's running, you can ask questions or give commands like "Create an empty file called test.txt" and it will propose a command to run after user confirmation.

You can enter multiline input by ending lines with a backslash (\). The continuation prompt will keep appearing until you enter a line without a trailing backslash.

You can use the --yolo flag to turn off user confirmations for executing commands and editing files, but I would only recommend using this if you're benchmarking tass with an LLM and highly recommend not using it outside of testing/benchmarking scenarios.

Upgrade

Using uv

uv tool upgrade tass

Using pip

pip install --upgrade tass

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

tass-0.1.18.tar.gz (260.8 kB view details)

Uploaded Source

Built Distribution

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

tass-0.1.18-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file tass-0.1.18.tar.gz.

File metadata

  • Download URL: tass-0.1.18.tar.gz
  • Upload date:
  • Size: 260.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for tass-0.1.18.tar.gz
Algorithm Hash digest
SHA256 fb4f1dbeb77a602d36b3b3cb99a305015c82c1a69d32f82090b5dc21c92a01cd
MD5 920135180438f62b99b4ded9aef020f1
BLAKE2b-256 c398ae3100d9447cecd8f6001dc50d3aade901a74b628d94bd0f126439fc1cd8

See more details on using hashes here.

File details

Details for the file tass-0.1.18-py3-none-any.whl.

File metadata

  • Download URL: tass-0.1.18-py3-none-any.whl
  • Upload date:
  • Size: 14.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for tass-0.1.18-py3-none-any.whl
Algorithm Hash digest
SHA256 6b345893fc3280ffdd1a22d7db73bcc1038612b60692553df9d2b939456c47a6
MD5 0b4a23d9a4066f0fe8892550c22c20ea
BLAKE2b-256 eaec51bdad1e2eca6478efdccb9c69a156e0ac0a8cb733aff970aa68a22751c1

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