Skip to main content

Natural-language to shell command converter Grok API

Project description

Quick Workspace Executor (QWE)

  • A natural-language to shell command converter CLI tool. It allows you to type instructions in plain English, and it generates OS-specific shell commands safely. It also includes diagnostic tools, command explanation, history tracking, and configuration management.

Features

- Convert natural-language instructions into shell commands
- Supports multiple OS modes: Windows, Linux, macOS
- Risk analysis for potentially dangerous commands
- Command history tracking (last 50 commands)
- Configure API key, model, OS, and temperature
- Diagnostic tools for verifying API and model connectivity
- Explain shell commands with detailed breakdowns
- Version command to check current qwe version

Installation

  1. Clone the repository:
git clone <repo-url>
cd qwe
  1. Create a virtual environment:
python -m venv venv
  1. Activate the environment:
  • Windows:
venv\Scripts\activate
  • Linux/macOS:
source venv/bin/activate
  1. Install dependencies:
pip install -e .

This will install typer, rich, google-generativeai, and other required packages.


Usage

All commands use the qwe CLI.

Run Commands

Generate shell commands from natural language:

qwe run "<instruction>" [--dry-run/--run]
  • --dry-run (default) – shows the command without executing it.
  • --run – executes the command.

Example:

qwe run "count the number of files in the folder"

Output:

Generated command: (Get-ChildItem -File | Measure-Object).Count
Explanation: Counts the number of files in the current directory.
Risk level: LOW
Dry run: Command not executed.

Configuration

Manage qwe configuration:

qwe config show           # Show all config values
qwe config get <key>      # Get a single config key
qwe config set <key> <value>  # Update a config value
qwe config reset          # Reset to defaults
  • Defalut OS Configuration : Windows

  • Keys include api_key, model, os, temperature.

  • Temperature is a float value (0.0–1.0) controlling command generation randomness.

Example:

qwe config set os linux
qwe config set temperature 0.3

OS Quick Commands

Switch OS modes quickly:

qwe os windows
qwe os linux
qwe os mac

Or use:

qwe os set <os>

History

Track your commands:

qwe history show   # Show last 50 commands
qwe history clear  # Clear command history

Tools

Diagnostic and reverse-analysis tools:

qwe tools diagnose         # Verify config, API, and model
qwe tools models           # List available Gemini models
qwe tools explain "<command>"  # Explain a shell command

Version

Check the current qwe version:

qwe version

Command Reference

Command Description
qwe run "<instruction>" [--dry-run/--run] Generate shell commands from natural language.
qwe version Show the current qwe version.
qwe config show Display all configuration values.
qwe config get <key> Get a single configuration value.
qwe config set <key> <value> Update a configuration value (e.g., OS, model, temperature).
qwe config reset Reset configuration to defaults.
qwe os set <os> Set OS mode explicitly.
qwe os windows Quick set OS to Windows.
qwe os linux Quick set OS to Linux.
qwe os mac Quick set OS to macOS.
qwe history show Show the last 50 commands executed.
qwe history clear Clear all command history.
qwe tools diagnose Check configuration, API key, and model.
qwe tools models List available Gemini models for your API key.
qwe tools explain "<command>" Ask Gemini to explain what a shell command does.

Supported OS

  • Windows (PowerShell)
  • Linux (bash, sh)
  • macOS (zsh, bash)

qwe ensures commands are OS-specific and safe to run.


Safety

  • All generated commands are analyzed for risk.
  • Risk levels: LOW, MEDIUM, HIGH.
  • Dangerous commands (like rm -rf) are flagged.

Requirements

  • Python >= 3.10 (3.11 recommended)
  • Gemini API key (gemini_api_key) for command generation
  • Internet connection for API requests

Development

  • Source code is under cli/ and core/.
  • Config file: config/settings.json
  • Virtual environment recommended (venv/)
Happy scripting with qwe — turning your instructions into shell commands!  

Powered by Python, fueled by coffee, guided by late-night curiosity ☕🚀

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flyn-0.1.1.tar.gz (11.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flyn-0.1.1-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file flyn-0.1.1.tar.gz.

File metadata

  • Download URL: flyn-0.1.1.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for flyn-0.1.1.tar.gz
Algorithm Hash digest
SHA256 53851175c13f11f4223e36d33ef8555c6775cedad2e2347f3ed2e48b7773d6dd
MD5 4ca6be94e413e732d2a81324ffd9f43b
BLAKE2b-256 43788522d5d4fb5b1e4863fd0819e27c799de549923b942f66c3a485cc6a78ce

See more details on using hashes here.

File details

Details for the file flyn-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: flyn-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for flyn-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4dfb2660a37614912b04e66a67e5c2189e69b6b99ed880c085d6592b376ec595
MD5 7656aa41c62d603e3ab37600a3e87609
BLAKE2b-256 89445ae657605904cf897bd6d0ef73fb437434768b7a843c0d9b4f4570743af4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page