Skip to content
HN On Hacker News ↗

A Comma and a Question Mark Redux

▲ 40 points 11 comments by z3ugma 3mo ago HN discussion ↗

Pangram verdict · v3.3

We believe that this document is a mix of AI-generated, and human-written content

61 %

AI likelihood · overall

Mixed
30% human-written 70% AI-generated
SEGMENTS · HUMAN 1 of 2
SEGMENTS · AI 1 of 2
WORD COUNT 488
PEAK AI % 81% · §1
Analyzed
May 27
backend: pangram/v3.3
Segments scanned
2 windows
avg 244 words each
Distribution
30 / 70%
human / AI fraction
Verdict
Mixed
Pangram v3.3

Article text · 488 words · 2 segments analyzed

Human AI-generated
§1 AI · 81%

25 May 2026 I am a decent user of the terminal, but I am not strong at remembering find flags - or rsync, or grep for that matter.

I read Rémi Louf’s post about wiring a comma and a question mark into his shell and immediately wanted the same thing. The idea is simple: type , <description> and get a shell command that does what you described. Type ? <question> and get an AI answer right in your terminal.

Rémi runs a local Qwen model through llama.cpp. I don’t have a local model, but I do have pi, a CLI chat agent, and I have my routing set through OpenRouter. Pi was already configured and working on my machine. So I took the idea and adapted it.

The comma

When I want nice shell commands, now all I have to do is type a comma followed by a plain English description of what I want to do. A few seconds later I get a suggested command copied to my clipboard. For example:

, find the 5 largest files in the current directory

A second later:

ls -lS

is copied to my clipboard. I press Cmd+V, the command lands on my prompt line. I read it, maybe edit it, then press Enter myself.

$ ls -lS

The comma is slightly safe because it won’t automatically execute. It copies to my clipboard and prints the command - so that I can judge and apply the keystroke between “here’s a suggestion” and “yes, do that”.

Under the hood it’s a thin shell script in ~/.dotfiles/bin/, on my PATH:

#!/usr/bin/env zsh local command command=$(pi --print -p --no-tools --thinking off \ --system-prompt "output exactly one shell command — the best one — with no numbering, no explanation, no markdown, no backticks. Just the raw command on a single line." "$desc" 2>/dev/null)

echo -n "$command" | pbcopy echo "$command"

Pi uses whichever model is currently selected. Typically for me this is on OpenRouterusing DeepSeek v4 Flash or Gemini 3.5 Flash. These have low or free API cost.

I skipped the JSON Schema trick from the original.

§2 Human · 15%

I don’t think pi exposes a structured output mode, so I just made the prompt tight and stripped backticks in post.

The question mark

Likewise, when I just have a short question, I now have the q script. Instead of launching a whole pi session, I can get a quick answer with minimal fuss:

q what's the weather like today in Brutus, MI?

The q command also invokes Pi, but now Pi can use a narrow toolset including from some extensions:

pi --print -p \ --system-prompt "You are a helpful, concise assistant running in a macOS terminal. Answer clearly and accurately. You can read files from disk and search the web — use those when you need current or file-specific information." \ --tools "read,web_search,url_extract,web_fetch,batch_web_fetch" \ "$question"

You can find the script files in my dotfiles repo on GitHub.