Intelligent terminal like thinking.
Project description
Mind Terminal
Overview
Terminal large language model client implemented using Python with a modular architecture.
Technology Stack
- Use UV to manage development environments and third-party dependencies.
- Use the prompt-toolkit to handle user input and interaction.
- Interact with the backend large language model service using openai-python
- Use the rich library to beautify terminal display.
- Use Pytest testing ensures the correctness of each module and function.
Features
- Handle user input
- Interact with the backend large language model
- Write unit tests for interacting with LLM
- Beautify terminal display with Rich formatting
- Modular code structure
- Configuration management
- Error handling
Installation
Ensure you are using Python 3.11 or later (but less than 4.0).
pip install mindterm --user
Usage
Set your OpenAI API key as an environment variable:
export OPENAI_API_KEY=your-api-key-here
Then run the application:
mt
Commands
\chat- Start a chat session (default mode)\bye- Exit the application\help- Show available commands
Testing
Tests for the app are included using pytest. To run the tests, simply execute:
uv run pytest
Project Structure
src/
├── mindterm/
│ ├── __init__.py
│ ├── config.py # Configuration management
│ ├── client.py # LLM client
│ ├── ui.py # Terminal UI components
│ ├── commands.py # Command handling
│ └── main.py # Main application logic
tests/
├── test_config.py # Tests for configuration
└── test_commands.py # Tests for command handling
Contributing
Contributions are welcome! If you have ideas for improvements, bug fixes, or additional features, feel free to open an issue or submit a pull request.
License
This App is open-source software released under the MIT License.
Project details
Release history Release notifications | RSS feed
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 mindterm-0.1.10.tar.gz.
File metadata
- Download URL: mindterm-0.1.10.tar.gz
- Upload date:
- Size: 43.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
905f4c53409a20dc68eb3f5e3acab5580c37ee664e4749dbaffac267dd912c43
|
|
| MD5 |
f45e15968db544bee72a0a45796bd517
|
|
| BLAKE2b-256 |
89e73da6935c75791252436a767f6797667477734c61710082ae209453518f15
|
File details
Details for the file mindterm-0.1.10-py3-none-any.whl.
File metadata
- Download URL: mindterm-0.1.10-py3-none-any.whl
- Upload date:
- Size: 6.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
72146900fb68905b18077f9996e4ebed76ff707fec45a7a4706bef267ded3c9f
|
|
| MD5 |
401af57a44523c4d9f0ad37133412d28
|
|
| BLAKE2b-256 |
cdc1d75599ae90167e937f55f4320f1b912279521b3e1ce362a3c46391ab33cc
|