CLI for one-shot, stateless questions to an LLM.
Project description
Askai
Development happens on Codeberg. GitHub is a read-only mirror for discovery — please open issues and pull requests on Codeberg.
CLI for one-shot, stateless questions to an LLM.
Meant for engineers living inside terminals, askai aims to fill those small information gaps that typically pop up while working, such as:
- commands syntax / flag names;
- tiny code examples;
- quick conceptual clarifications. Instead of wasting time switching to a browser or a dedicated AI app, simply:
askai "What does set -euo pipefail do?"
will return a concise, fluff-free answer from your favorite model, minimizing distractions and speeding up your workflow.
Installation
Install with pipx (recommended):
pipx install askai-py
Or with uv:
uv tool install askai-py
Then set your Groq API key (Groq is the default backend):
export GROQ_API_KEY="your-key"
askai "How to rename a branch in Git?"
Backends
askai supports two backends:
groq(default) — API adapter calling Groq's OpenAI-compatible endpoint. RequiresGROQ_API_KEY.codex— CLI adapter wrapping the Codex CLI. Requires a local Codex installation.
Switch backend:
askai config set backend codex
askai doctor
Adding a Backend
Contributions for new backends are welcome. To add one, you need to:
- Implement the
BackendAdapterprotocol insrc/askai/backends/ - Register it in
build_backend_adapters()(src/askai/backends/__init__.py) - Add the backend name to
KNOWN_BACKENDS(src/askai/config.py) - Add tests under
tests/ - Document it in
docs/CLI_CONTRACT.md
Corporate VPN / Proxy (Self-Signed Certificates)
If you are behind a corporate VPN or intercepting proxy, set ASKAI_CA_BUNDLE to your company's CA certificate so askai trusts the TLS connection:
export ASKAI_CA_BUNDLE=/path/to/company-ca.pem
askai "List Tmux useful commands"
This adds your CA as a trust root alongside the system defaults, so normal HTTPS still works.
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 askai_py-0.1.0.tar.gz.
File metadata
- Download URL: askai_py-0.1.0.tar.gz
- Upload date:
- Size: 10.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d2b0fae08e8046aec2bc785c0e6f053fcc9713feac9cf95743c7cba97a603be7
|
|
| MD5 |
25bdb7d58d56b8e44fc75d8a15eca63e
|
|
| BLAKE2b-256 |
a924105499f47fff68a9e4226997d273753eca145ff8a5b26873cd8f0740bc1f
|
Provenance
The following attestation bundles were made for askai_py-0.1.0.tar.gz:
Publisher:
publish.yml on arbiter1elegantiae/askai
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
askai_py-0.1.0.tar.gz -
Subject digest:
d2b0fae08e8046aec2bc785c0e6f053fcc9713feac9cf95743c7cba97a603be7 - Sigstore transparency entry: 2064448049
- Sigstore integration time:
-
Permalink:
arbiter1elegantiae/askai@0f4a3122cf7abf4ee792316549278bd72f7a7226 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/arbiter1elegantiae
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@0f4a3122cf7abf4ee792316549278bd72f7a7226 -
Trigger Event:
push
-
Statement type:
File details
Details for the file askai_py-0.1.0-py3-none-any.whl.
File metadata
- Download URL: askai_py-0.1.0-py3-none-any.whl
- Upload date:
- Size: 14.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
787235012f14d9edb6f08c02abb00126909b71a388dfd03337358f9af330955c
|
|
| MD5 |
1a3ee57a955a78f68a1b8aee4ec27abd
|
|
| BLAKE2b-256 |
0bd9a40bf5b1afe3b05ef411f47664774db88abc23537384b352e1b18210c245
|
Provenance
The following attestation bundles were made for askai_py-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on arbiter1elegantiae/askai
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
askai_py-0.1.0-py3-none-any.whl -
Subject digest:
787235012f14d9edb6f08c02abb00126909b71a388dfd03337358f9af330955c - Sigstore transparency entry: 2064448072
- Sigstore integration time:
-
Permalink:
arbiter1elegantiae/askai@0f4a3122cf7abf4ee792316549278bd72f7a7226 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/arbiter1elegantiae
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@0f4a3122cf7abf4ee792316549278bd72f7a7226 -
Trigger Event:
push
-
Statement type: