Show full model ID in Claude Code statusline by default
Assisted-by: Claude Opus 4.6 (1M context) via Claude Code
change uokvupqyrwuvzqrvxrxtvrwskwntxwmv
commit a0ca074a8bd117b08ecc7ea6db5a999833001bb4
author Alpha Chen <alpha@kejadlen.dev>
date
parent zvntmozp
diff --git a/ai/claude/statusline.sh b/ai/claude/statusline.sh
index 59e348fb..dc75c9ae 100755
--- a/ai/claude/statusline.sh
+++ b/ai/claude/statusline.sh
@@ -1,11 +1,18 @@
 #!/bin/bash
+# Usage: statusline.sh [--short-model]
+#   --short-model  Show abbreviated model name (e.g., "sonnet-4.5")
+#   Default shows the full model ID
 
 # Read JSON input from stdin
 input=$(cat)
 
-# Extract and format model name (e.g., "claude-sonnet-4-5-..." -> "sonnet-4.5")
+# Extract model name
 model_id=$(echo "$input" | jq -r '.model.id')
-model=$(echo "$model_id" | sed -E 's/^.*claude-//; s/-[0-9]{8,}.*$//; s/^([a-z]+)-([0-9]+)-([0-9]+)$/\1-\2.\3/')
+if [[ "$1" == "--short-model" ]]; then
+    model=$(echo "$model_id" | sed -E 's/^.*claude-//; s/-[0-9]{8,}.*$//; s/^([a-z]+)-([0-9]+)-([0-9]+)$/\1-\2.\3/')
+else
+    model="$model_id"
+fi
 
 # Get the default model from settings and format it the same way
 default_model=$(jq -r '.model // "sonnet"' ~/.claude/settings.json)