cli: -p PROMPT means one-shot prompt, not --provider alias

ober

df7972a929fdacacd33729c0b47cdfc725bf1522

diff --git a/main-binary.ss b/main-binary.ss
index 160dd85..e68972d 100644
--- a/main-binary.ss
+++ b/main-binary.ss
@@ -10,9 +10,11 @@
 (define (has-positional-args? args)
   (cond
     ((null? args) #f)
+    ;; -p starts the one-shot prompt: everything after is positional.
+    ((equal? (car args) "-p") (pair? (cdr args)))
     ((member (car args) '("--help" "-h" "--version" "-v" "--debug" "-d" "--tui" "--no-tui" "--verbose" "--repl" "--no-mcp"))
      (has-positional-args? (cdr args)))
-    ((member (car args) '("--model" "-m" "--provider" "-p" "--repl-port" "--trace"))
+    ((member (car args) '("--model" "-m" "--provider" "--repl-port" "--trace"))
      (if (null? (cdr args)) #f (has-positional-args? (cddr args))))
     (else #t)))
 
diff --git a/src/jcode/ui/cli.ss b/src/jcode/ui/cli.ss
index 20c62f1..a849932 100644
--- a/src/jcode/ui/cli.ss
+++ b/src/jcode/ui/cli.ss
@@ -110,8 +110,11 @@
        (loop (cddr args) (cons (cons '--model (cadr args)) opts)))
       ((and (equal? (car args) "--provider") (pair? (cdr args)))
        (loop (cddr args) (cons (cons '--provider (cadr args)) opts)))
+      ;; -p PROMPT: stop flag parsing; rest of argv is the one-shot prompt.
+      ;; (Claude Code convention; jcode's earlier alias of -p to --provider
+      ;; collided with users' natural `jcode -p "..."` invocations.)
       ((and (equal? (car args) "-p") (pair? (cdr args)))
-       (loop (cddr args) (cons (cons '--provider (cadr args)) opts)))
+       (cons (cons '-- (cdr args)) (reverse opts)))
       (else (cons (cons '-- args) (reverse opts))))))
 
 (def *no-mcp* #f)
@@ -144,7 +147,8 @@ OPTIONS:
     -v, --version    Show version
     -d, --debug      Enable debug logging
     -m, --model      Model to use (default: claude-sonnet-4-20250514)
-    -p, --provider   Provider to use (default: anthropic)
+    --provider       Provider to use (default: anthropic)
+    -p PROMPT        One-shot prompt; everything after -p is the prompt
     --tui            Launch terminal UI mode
     --no-tui         Force line-mode REPL (default)
     --no-mcp         Skip MCP server initialization
diff --git a/src/jcode/ui/tui.ss b/src/jcode/ui/tui.ss
index 55ebd91..d578682 100644
--- a/src/jcode/ui/tui.ss
+++ b/src/jcode/ui/tui.ss
@@ -236,9 +236,6 @@
       ((and (equal? (car args) "--provider") (pair? (cdr args)))
        (current-provider-override (cadr args))
        (loop (cddr args)))
-      ((and (equal? (car args) "-p") (pair? (cdr args)))
-       (current-provider-override (cadr args))
-       (loop (cddr args)))
       ((and (equal? (car args) "--model") (pair? (cdr args)))
        (current-model-override (cadr args))
        (loop (cddr args)))