Skip to main content
  ░█████╗░░██████╗██╗░░██╗
  ██╔══██╗██╔════╝██║░██╔╝
  ███████║╚█████╗░█████═╝░
  ██╔══██║░╚═══██╗██╔═██╗░
  ██║░░██║██████╔╝██║░╚██╗
  ╚═╝░░╚═╝╚═════╝╚═╝░░╚═╝

Your terminal command oracle. Powered by OpenRouter.

$ ask how do I find files larger than 100MB
find / -type f -size +100M
(copied to clipboard)
$ ask --verbose how do I find files larger than 100MB
find / -type f -size +100M

  find      — search for files in a directory hierarchy
  /         — start from the root (use . for current directory)
  -type f   — match files only, not directories
  -size +100M — only files larger than 100 megabytes

Requirements

Installation

ask-cli is a standard installable Python package (pyproject.toml, console-script entry point).

Recommended: pipx

pipx install .

pip (editable, good for development)

pip install -e .

Windows helper script

.\install.ps1

This just runs pip install --user -e . for you. If the ask command isn't found afterward, make sure your Python user Scripts directory is on PATH, or use pipx install . instead.

After installing, restart your terminal, then:

ask how do I list open ports

First Run

On first use, the setup wizard will guide you through:

  1. Pasting your OpenRouter API key
  2. Choosing a default model
$ ask how do I create an SSH key
=== ask setup ===

Paste your OpenRouter API key (https://openrouter.ai/keys):
> sk-or-...

You can re-run setup at any time with ask --setup.

Usage

ask [options] <question>

Options

Flag Description
--verbose Include an explanation alongside the command
--copy, -c Copy the result to clipboard
--model <id> Switch the default model (saved permanently)
--setup Re-run the setup wizard (key + model selection)
--reset-key Remove the saved API key
--list-models List models currently available (live-checked against OpenRouter)
--version Show the installed version

Examples

# Get a command (auto-copied if single line)
ask how do I list open ports

# Get a command with explanation
ask --verbose how do I recursively delete empty folders

# Switch model
ask --model openai/gpt-4o-mini

# Ask with the new model and copy result
ask -c how do I tar a directory excluding node_modules

Models

The setup wizard offers a curated shortlist, checked against OpenRouter's live model catalog on each run (cached for 24h, with an offline fallback so the tool still works without network access):

Model Notes
anthropic/claude-haiku-4.5 Default — fast, great for shell/code tasks
openai/gpt-5.6-luna Fast, cheap, good for shell tasks
google/gemma-4-26b-a4b-it:free Free tier via OpenRouter

Run ask --list-models to see the current, live-checked shortlist at any time.

You can also set any OpenRouter model directly:

ask --model anthropic/claude-sonnet-4.5

Configuration

Config is stored at ~/.config/ask/config.json:

{
  "api_key": "sk-or-...",
  "model": "anthropic/claude-haiku-4.5"
}

System Prompts

Prompts are bundled as Markdown files inside the package:

  • src/ask_cli/prompts/default.md — used for standard (concise) responses
  • src/ask_cli/prompts/verbose.md — used when --verbose is passed

Edit these files (and reinstall) to customize the assistant's behavior.

Development

pip install -e ".[dev]"
pytest

CI runs the test suite on Windows and Linux via GitHub Actions (.github/workflows/ci.yml).

Clipboard Behavior

  • Single command returned: auto-copied to clipboard
  • Multiple commands returned: only copied if --copy / -c is passed

Author

Created and maintained by Ramin Nikzad-Langerodi

info@bottleneck-analytics.com

License

MIT — see LICENSE.

Metadata

Release files for terminal-ask 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for terminal-ask 0.1.0
File Size Uploaded
terminal_ask-0.1.0.tar.gz 11.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for terminal-ask 0.1.0
File Interpreter ABI Platform
terminal_ask-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 20.0 kB

Release files / terminal_ask-0.1.0.tar.gz

Download URL terminal_ask-0.1.0.tar.gz
Size 11.2 kB
Tags Source
SHA-256 checksum
How to use checksums
65f692f98e4c40ae9cab60b792925df63da96c7b0f22b64de170ce606b587ea2
BLAKE2b-256 checksum
How to use checksums
af691373fcd6d3dff04f91723d5c36810aad903eb0ddda55a65281c7e6db6b06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release files / terminal_ask-0.1.0-py3-none-any.whl

Download URL terminal_ask-0.1.0-py3-none-any.whl
Size 8.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e8eadf9d0ae483808b16822066551911cc165f75d91985bde1c35b041973583d
BLAKE2b-256 checksum
How to use checksums
6ce5885422612a28a7824298348c0d9f46da1a6400861f42e313bf957773d88d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release history Release notifications | RSS feed

0.1.1

2 release files

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page