From 870315036612349db1e03e571cd4f33fb2353362 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Mon, 13 Jul 2026 11:47:33 -0500 Subject: feat(rules): add visuals-display rule for EAT and a zsh word-split note interaction.md gains a Showing Craig Visuals section: EAT renders SendUserFile and inline images as a text line, so visuals open in the browser or imv (per desktop-capture.md), with inline sixel as the quick-glance lane behind a capability gate (patched EAT answering CSI 14 t plus tmux terminal-features sixel, diagnosed 2026-07-13). protocols.org gains the zsh no-word-split gotcha next to the exa alias note. takuzu sent the proposal as inbox handoff 2026-07-11-2137; the sixel findings correct its capability claim. --- claude-templates/.ai/protocols.org | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'claude-templates') diff --git a/claude-templates/.ai/protocols.org b/claude-templates/.ai/protocols.org index 1b41989..ebe14d1 100644 --- a/claude-templates/.ai/protocols.org +++ b/claude-templates/.ai/protocols.org @@ -367,6 +367,12 @@ Craig's shell aliases =ls= to =exa=, which prints nothing to non-TTY pipes (e.g. - Applies to =ls -la=, =ls -t=, glob expansions piped through =ls=, and any =ls= invocation whose output gets read programmatically. - Symptom if forgotten: the Bash tool returns empty output and you mistakenly conclude the directory is empty. +*** zsh does not word-split unquoted variables +The Bash tool runs zsh, which (unlike bash) does not split an unquoted =$var= on whitespace. =chrome $urls= passes all the space-joined URLs as one malformed argument. + +- Loop over the values, use an array, or force the split with =${=var}=. +- Symptom if forgotten: a command that "works in bash" gets one garbled argument and fails, often silently (from the takuzu session, 2026-07-11). + ** Miscellaneous Information - Craig currently lives in New Orleans, LA - Craig's phone number: 510-316-9357 -- cgit v1.2.3