Compleet is an AI prompt compiler for developers. The primary CLI command is tc.
It can:
- turn rough text into terminal commands
- answer prompt-mode questions
- record a short voice note, transcribe it, and compile it into a structured AI prompt
Global install:
bun add -g compleet
tc --helpOne-off usage:
bunx compleet --helpbunffmpegfortc voicezshorbashfor shell integration
Run setup once:
tc setuptc setup now finishes provider onboarding first, then immediately checks voice mode readiness and offers the voice setup wizard if ffmpeg or a transcription backend still needs setup.
tc voiceVoice mode pipeline:
- Record microphone audio.
- Keep listening until you press Enter.
- Transcribe speech locally when possible.
- Fall back to the OpenAI speech API when needed.
- Reuse Compleet's existing model path to turn the transcript into a structured prompt.
Example:
Speech:
code optimize docker container and switch node to bun
Output:
Task: Optimize the Docker container for minimal size.
Requirements:
- Replace Node runtime with Bun if compatible.
- Remove unnecessary dependencies.
- Ensure the container builds successfully.
Output:
- Report the final image size.
Compleet tries these backends in order:
whisper.cpp(recommended)- OpenAI speech-to-text API
When voice mode is not ready, the interactive setup wizard offers these options in order:
- Install
ffmpegif recording is not available. - Set up
whisper.cpplocally and download a default model. - Enter your own OpenAI API key fallback.
During recording, press Enter to stop.
If Compleet shell integration is installed, tc voice stages the compiled prompt into your next editable shell input instead of auto-running it.
Without shell integration, voice mode prints the compiled prompt to stdout.
Persistent settings live in:
~/.config/compleet/config.json
Example voice section:
{
"voice": {
"audioInputDevice": "Built-in Microphone",
"whisperCppModelPath": "/Users/you/.config/compleet/voice/models/ggml-base.en.bin"
}
}Environment variables are still supported as temporary overrides for CI, debugging, or one-off runs, but the config file is the default place for durable settings.
tc find all files larger than 500MB under this directory
tc generate a command to sync ./dist to s3://my-bucket/releases
tc -e safely remove docker images that are danglingPrompt mode:
tc -p explain when to use rsync vs scptc setup
tc setup codex
tc setup openai
tc config
tc config codex
tc config openai
tc reset
tc reset --yes
tc use codex
tc use openaiBuild the native binary for your current machine:
bun run build
./dist/tc --helpCreate an export bundle with install scripts:
bun run export
ls dist/export
./dist/export/<bundle-name>/install.shOr install the JS project directly for local testing:
bun link
tc --help