From db7a1aa42d56f85fec0b20ebf7d57868d24578cd Mon Sep 17 00:00:00 2001 From: Levi Neely Date: Sat, 11 Apr 2026 16:43:18 +0200 Subject: [PATCH] sessions: require workdir on new session creation No sensible default exists server-side. Clients must pass workdir= explicitly. The TUI uses $PWD of the ollie process; shell users should pass workdir=$PWD or use a wrapper. Co-Authored-By: Claude Sonnet 4.6 --- internal/p9/server.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/internal/p9/server.go b/internal/p9/server.go index 41b6410..9ed4830 100644 --- a/internal/p9/server.go +++ b/internal/p9/server.go @@ -793,8 +793,8 @@ func (s *Server) handleRootCtl(input string) { } // createSession parses key=value options and starts a new agent session. -// Recognised keys: backend, model, agent, workdir. Unknown keys are rejected. -// Example: new backend=ollama model=qwen3:8b agent=myagent workdir=/home/lkn/src/myproject +// Recognised keys: backend, model, agent, workdir. workdir is required. +// Example: new workdir=/home/lkn/src/myproject backend=ollama model=qwen3:8b agent=myagent func (s *Server) createSession(args []string) error { backendOverride := "" modelOverride := "" @@ -820,6 +820,10 @@ func (s *Server) createSession(args []string) error { } } + if workdir == "" { + return fmt.Errorf("workdir is required (e.g. new workdir=/path/to/project)") + } + var ( be backend.Backend err error