The ?? Syntax
Inline intent → editable text → you stay in control. Hash never executes without your approval.
Three patterns
1. Full command generation
?? <prompt>
?? find all Go files modified today
# → find . -name "*.go" -mtime 0
# → find . -name "*.go" -mtime 0
2. Pipe transforms
cmd | ?? <prompt>
cat logs.txt | ?? summarize failure
# → Analysis: Connection refused on port 80...
# → Analysis: Connection refused on port 80...
3. Inline fill
cmd ?? <prompt> or --flag=?? <prompt>
git log --format=?? oneline with hash
# → git log --format="%h %s"
find . -name ?? all test files
# → find . -name "*_test.go"
# → git log --format="%h %s"
find . -name ?? all test files
# → find . -name "*_test.go"
Detection order
??at line start → full command| ??(pipe with space) → pipe transform|??(pipe no space) → pipe transform??mid-line → inline completion??after text (like=??) → inline completion
When NOT to use ??
- For simple commands you know — just type them
- When offline with no local agent configured
- For destructive commands — always review carefully