TUI app that enriches prompts using Groq API and project context
Project description
Magic Prompt
A TUI and CLI tool that enriches short, vague prompts into detailed, structured prompts using Groq API and your project's actual file structure and codebase.
Features
- 📁 Project-Aware: Scans your project's file structure, config files, and extracts code signatures
- 🧠 AI-Powered: Uses Groq's fast LLM API to intelligently expand prompts
- ⚡ Real-Time Streaming: Watch the enriched prompt generate in real-time
- 🖥️ Dual Mode: Interactive TUI or headless CLI for shell scripting
Installation
From PyPI
pip install ai-magic-prompt
Or with uv:
uv tool install ai-magic-prompt
Raycast Extension
The easiest way to install the Raycast extension is using the built-in command:
# Print the script to your terminal
magic-prompt --install-raycast
# Or save it directly to your Raycast scripts folder
magic-prompt --install-raycast ~/path/to/raycast/scripts
This will generate a script that automatically uses your current magic-prompt installation.
From Source
git clone https://github.com/arterialist/magic-prompt.git
cd magic-prompt
pip install -e .
Setup
Get your Groq API key from console.groq.com/keys.
Set it as an environment variable:
export GROQ_API_KEY=gsk_...
Configuration
Magic Prompt saves your preferences in ~/.config/magic-prompt/config.json. You can configure these via the CLI:
Model Selection
Set your preferred Groq model (default: llama-3.3-70b-versatile):
magic-prompt --model llama-3.1-8b-instant
Debounce Time
Adjust the real-time enrichment delay in milliseconds (default: 800):
magic-prompt --debounce 500
Default Directory
Save your current project directory as the default:
magic-prompt --save-dir .
View Current Config
magic-prompt --show-config
Or create a .env file in your project directory:
GROQ_API_KEY=your_api_key_here
Usage
Headless CLI Mode
Run from anywhere as a shell command:
# Basic usage - enrich a prompt
magic-prompt "add user authentication"
# Pipe prompt from stdin
echo "add logging" | magic-prompt
# Specify project directory
magic-prompt -d /path/to/project "refactor the API"
# Quiet mode - only output result (good for piping)
magic-prompt -q "add tests" > enriched.md
CLI Options
| Option | Description |
|---|---|
-d, --directory |
Project directory (default: from config or cwd) |
-t, --tui |
Launch interactive TUI mode |
-q, --quiet |
Only output result, no progress |
--debounce MS |
Set debounce time for real-time mode |
--save-dir DIR |
Save default directory for future runs |
--show-config |
Show current configuration |
Interactive TUI Mode
magic-prompt --tui
# OR just run without arguments:
magic-prompt
- Enter your project's root directory path
- Type a short prompt (e.g., "add user authentication")
- Watch the enriched, project-aware prompt stream in real-time
- Press
Ctrl+Yto copy the enriched prompt
TUI Keyboard Shortcuts
| Key | Action |
|---|---|
Enter |
Submit prompt |
Ctrl+T |
Toggle real-time |
Ctrl+Y |
Copy to clipboard |
Ctrl+U |
Clear Input |
Ctrl+L |
Clear Output |
Ctrl+R |
Rescan project |
Ctrl+Q |
Quit |
How It Works
- Scans your project directory structure
- Extracts docstrings, function signatures, and imports
- Sends context + your prompt to Groq's LLM
- Streams an enriched version that references actual files and APIs
License
GNU General Public License v3.0 - see LICENSE for details.
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 ai_magic_prompt-0.1.7.tar.gz.
File metadata
- Download URL: ai_magic_prompt-0.1.7.tar.gz
- Upload date:
- Size: 30.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7185e3ec9db135afef3e658f59bd6b8e37a3682c13df2eff708bb5a0418b59dd
|
|
| MD5 |
70e40611d5fe9b019d20c47235ff9fa7
|
|
| BLAKE2b-256 |
a19712d90e37f838d193d4fa88f0c0f2c120d0694020be55aad762f2c2a9b160
|
Provenance
The following attestation bundles were made for ai_magic_prompt-0.1.7.tar.gz:
Publisher:
pypi-deploy.yml on arterialist/magic-prompt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ai_magic_prompt-0.1.7.tar.gz -
Subject digest:
7185e3ec9db135afef3e658f59bd6b8e37a3682c13df2eff708bb5a0418b59dd - Sigstore transparency entry: 815669668
- Sigstore integration time:
-
Permalink:
arterialist/magic-prompt@7ebc6ca7784465d8489abf79061dbdde46088d89 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/arterialist
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-deploy.yml@7ebc6ca7784465d8489abf79061dbdde46088d89 -
Trigger Event:
push
-
Statement type:
File details
Details for the file ai_magic_prompt-0.1.7-py3-none-any.whl.
File metadata
- Download URL: ai_magic_prompt-0.1.7-py3-none-any.whl
- Upload date:
- Size: 34.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
901fb52da16d48eb8e5dd4ac9330ce72a13b925eabe3a16d63e8c91b816bb169
|
|
| MD5 |
4eb8e932292c51d35ec9987bbde23c9f
|
|
| BLAKE2b-256 |
e1de4da1301880a48a213cc18068425952a7ad2b60cb9476e068c653943df376
|
Provenance
The following attestation bundles were made for ai_magic_prompt-0.1.7-py3-none-any.whl:
Publisher:
pypi-deploy.yml on arterialist/magic-prompt
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ai_magic_prompt-0.1.7-py3-none-any.whl -
Subject digest:
901fb52da16d48eb8e5dd4ac9330ce72a13b925eabe3a16d63e8c91b816bb169 - Sigstore transparency entry: 815669672
- Sigstore integration time:
-
Permalink:
arterialist/magic-prompt@7ebc6ca7784465d8489abf79061dbdde46088d89 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/arterialist
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-deploy.yml@7ebc6ca7784465d8489abf79061dbdde46088d89 -
Trigger Event:
push
-
Statement type: