An AI assistant for your terminal.
Project description
term-assist
project / repo / mailing list / issues
ℹ️ Note
The canonical project locations are linked above. Other locations are mirrors.
An AI assistant for your terminal.
Features
- Works with Anthropic and OpenAI models
- Configurable parameters: change models, system prompt, response length, and other parameters
- Automatic environment detection: automatically detects your system and shell environment for accurate responses
- Automatic copy and paste: optionally copies the generated response to the clipboard and pastes it in your terminal, ready to execute
Installation
-
Install
term-assistusingpipx:pipx install term-assist
-
In your terminal, configure your API keys depending on which model(s) you want to use.
Usage
usage: ta [-h] [--version] [--model MODEL] [--environment ENVIRONMENT]
[prompt ...]
term-assist: an AI assistant for your terminal.
positional arguments:
prompt prompt for the AI model
options:
-h, --help show this help message and exit
--version display the program version
--model MODEL, -m MODEL
specify a model to use in the format
BRAND:MODEL (overrides the setting in your
config file)
--environment ENVIRONMENT, -e ENVIRONMENT
specify environment details (overrides
automatic environment detection)
Examples
Basic prompt
> ta unzip a tgz archive
Override AI model configuration
> ta --model openai:gpt-4o follow a file as it updates
> ta -m ...
Override environment detection
> ta --environment "windows 95 dos" list com ports
> ta --environment bash list free drive space
> ta -e ...
Configuration
The configuration file is ~/.config/term-assist/config.json and will
be created on first run and initialized with default configuration
parameters if it does not already exist.
See ~/.config/term-assist/config_default.json for the default
configuration.
AI configuration
model
The AI model to use.
This parameter should be set in the format BRAND:MODEL. For example,
to use OpenAI's GPT-4o model, set this parameter
to openai:gpt-4o.
See ~/.config/term-assist/models.json for available models.
max_tokens
The maximum number of tokens that will be generated for output.
temperature
The amount of randomness injected into the response. Ranges from 0.0 to 1.0.
system_prompt
The system prompt that is given to the model.
Automatically collected information about your system environment will
be appended to the end of the string. This information can be overridden
using the --environment/-e command.
Program behavior configuration
auto_copy
If true, automatically copy the AI's response to your clipboard.
auto_paste
If true (and if auto_copy is true), automatically paste the AI's response so it is ready to execute.
Testing
Module tests are located in the src/term_assist/test/ directory.
- Install docker.
- Run
run.sh, which will build the docker image and initiate testing inside a container. - Results will be copied to an
src/term_assist/test/outputin both XML and plaintext log format.
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 term_assist-0.6.1.tar.gz.
File metadata
- Download URL: term_assist-0.6.1.tar.gz
- Upload date:
- Size: 50.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c11106b39ce2174aff3f557a810b97dfe2b1c38fdb950ec1733b4149cc316598
|
|
| MD5 |
398fc786de7a409c188e1cf6bb6173d8
|
|
| BLAKE2b-256 |
f7ede0d73e5ad4a83dd41b19e5060b6824766b5bbec05c24dd8f72ea1226ea7c
|
File details
Details for the file term_assist-0.6.1-py3-none-any.whl.
File metadata
- Download URL: term_assist-0.6.1-py3-none-any.whl
- Upload date:
- Size: 38.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7b65a7f70c516065d6b39c24f5866542a0dee43a9c305ff649ce5435e19e1aa0
|
|
| MD5 |
c556c07a2bb66213a3abfae9c5e3ea20
|
|
| BLAKE2b-256 |
e195edce1eea07d325d07b30a35fd34256ad984f5ce64c86fc10f621e4f66848
|