A minimalist CLI tool to connect to OpenRouter and chat with free AI models directly from your terminal.
Project description
Terminal Pilot
A minimalist, interactive CLI tool to connect to OpenRouter and chat with free AI models directly from your terminal.
Installation
You can install Terminal Pilot globally directly from PyPI:
pip install Terminal-Pilot
Configuration
Zero configuration required!
Just run tp start. If you don't have an OpenRouter API key set up, the CLI will interactively ask you for it and securely save it for future sessions.
If you ever need to update or change your OpenRouter API key, just run:
tp auth
Usage
Start the interactive assistant from anywhere in your terminal:
tp start
Inside the interactive chat, you can instantly load files into the AI's memory by using the /read command. You can read files in your current folder, or provide paths to files in other folders:
? You: /read requirements.md
✓ Reading requirements.md...
? You: /read src/components/App.jsx
✓ Reading src/components/App.jsx...
? You: /read C:\Users\azhar\Desktop\error.log
✓ Reading C:\Users\azhar\Desktop\error.log...
? You: Give me a summary of these files.
Changing Models Mid-Chat
If a model hits a rate limit or you want to switch to a different one, you don't need to exit. Just type /model to hot-swap:
? You: /model
✓ Switched model to: google/gemma-3
Pipe Support (stdin)
You can pipe data directly into the AI to analyze logs, code, or command outputs instantly without opening an interactive chat:
cat error.log | tp ask "Why is this crashing?"
git diff | tp ask "Write a commit message for these changes"
tp ask "What is the command to undo a git commit?"
Personas & Rules
Terminal Pilot ships with a default persona out of the box (a lazy senior developer focused on YAGNI). To disable or modify the default persona, simply edit or clear the ~/.terminal_pilot_default.md file that gets automatically generated in your home directory.
You can hot-swap the AI's personality or rules at any point—even mid-chat—using the /rule command:
? You: /rule concise
✓ Rule loaded mid-chat: concise
Terminal Pilot supports several ways to load rules:
- Built-in Personas: Use our pre-configured shortcuts (e.g.,
ponytail,pirate,concise). - Local Files & Remote URLs: Pass any
.mdfile or raw URL (/rule https://raw.github.../prompt.md). - Your Custom Aliases: Create a
~/.terminal_pilot_rules.jsonfile in your home directory with your own shortcuts:{ "hacker": "You are a 90s movie hacker...", "expert": "You are a senior python developer..." }
Then simply type/rule hackeranywhere!
You can also start the CLI with specific rules instantly (and chain them):
tp start --rule pirate
tp start --rule https://example.com/rule.md --rule concise
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 terminal_pilot-0.1.6.tar.gz.
File metadata
- Download URL: terminal_pilot-0.1.6.tar.gz
- Upload date:
- Size: 9.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f171d52dc7ef6629bb8a62300fe392f0a43200465f941b119a49c448cb4a68f0
|
|
| MD5 |
391f80047ec1dff4e1fc3484bddd70de
|
|
| BLAKE2b-256 |
07ded3fe1286d0014f93572c0fbcef67b3618c47021c3a92e35bba61d1e41eb8
|
File details
Details for the file terminal_pilot-0.1.6-py3-none-any.whl.
File metadata
- Download URL: terminal_pilot-0.1.6-py3-none-any.whl
- Upload date:
- Size: 11.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cbd4af4fe8e947cdfc8d93d68f4f74f892e2e5c3f0c89daf48c3c3e5cdcb9c8a
|
|
| MD5 |
67783f4e778f2ec2d80386c27f5e5d65
|
|
| BLAKE2b-256 |
3d9f48fc4360e5b6fa63d0f87de7c73c5c386036766783f6dcd372a86d5213ff
|