Navi Code: stop via Esc + project cwd propagation
- TUI: Esc stops active stream cooperatively via POST /sessions/{id}/stop
- TUI: render stream_stopped as status message
- CLI/WebSocket: send shell cwd in client->server message field
- Orchestrator stores cwd in session.session_metadata
- ContextBuilder injects [Working directory] into LLM context
- Agent sets current_working_directory ContextVar per turn
- tools/base: ToolContext gains cwd field
- filesystem/terminal/code_exec resolve relative paths against session cwd
- Add bin/navi-code wrapper for PATH symlink; document in README.md
- Update docs/websocket.md and tests

Full pytest: 544 passed, 1 skipped.

Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 4519268 commit eb2f092a5bd7179e4a37f1ace8c719037d3b8f58
@Eugene Sukhodolskiy Eugene Sukhodolskiy authored 6 hours ago
Showing 21 changed files
View
README.md
View
bin/navi-code 0 → 100755
View
clients/terminal/cli.py
View
clients/terminal/tui/chat_model.py
View
clients/terminal/tui/context.py
View
clients/terminal/tui/tui_app.py
View
clients/terminal/tui/widgets/input_box.py
View
clients/terminal/tui/ws_bridge.py
View
clients/terminal/ws_client.py
View
docs/websocket.md
View
navi/api/websocket.py
View
navi/core/agent.py
View
navi/core/context_builder.py
View
navi/core/orchestrator.py
View
navi/tools/_internal/base.py
View
navi/tools/code_exec.py
View
navi/tools/filesystem.py
View
navi/tools/terminal.py
View
tests/clients/test_terminal_client.py
View
tests/clients/test_tui_app.py
View
tests/integration/test_websocket.py