|
agent parallelism: background tools, bg spawn_agent, parallel tool batches, message queue
- backgroundable tools (terminal/ssh_exec/peer/spawn_agent/code_exec) detach via TaskManager with per-session/global/spawn caps, rate limit and TTL - completion delivery both ways: task_update event (out-of-band) + pending notes injected into the next turn; tasks tool (list/check/wait/cancel) - parallel tool-call batches (profile-level gate, off by default) with ToolStarted up-front, tagged event mux, call-order results, one save, plus dangling tool_call repair on session load - user message queue instead of busy error: message_queued frame, back-to-back drain on the same socket, headless fallback on disconnect - pin mcp<2 (v2 renames FastMCP with breaking API changes) - docs: tasks.md (new), websocket/api/agent/config updates, tasks manual, spawn_agent background param, persona contract section |
|---|
|
|
| docs/agent.md |
|---|
| docs/api.md |
|---|
| docs/config.md |
|---|
| docs/index.md |
|---|
| docs/tasks.md 0 → 100644 |
|---|
| docs/websocket.md |
|---|
| manuals/spawn_agent.md |
|---|
| manuals/tasks.md 0 → 100644 |
|---|
| navi/api/websocket.py |
|---|
| navi/config.py |
|---|
| navi/core/agent.py |
|---|
| navi/core/agent_run_context.py |
|---|
| navi/core/container.py |
|---|
| navi/core/events.py |
|---|
| navi/core/orchestrator.py |
|---|
| navi/core/pg_session_store.py |
|---|
| navi/core/registry.py |
|---|
| navi/core/task_notes.py 0 → 100644 |
|---|
| navi/core/tasks.py 0 → 100644 |
|---|
| navi/core/tool_executor.py |
|---|
| navi/profiles/base.py |
|---|
| navi/tools/__init__.py |
|---|
| navi/tools/code_exec.py |
|---|
| navi/tools/peer.py |
|---|
| navi/tools/spawn_agent.py |
|---|
| navi/tools/ssh_exec.py |
|---|
| navi/tools/tasks.py 0 → 100644 |
|---|
| navi/tools/terminal.py |
|---|
| persona.txt |
|---|
| persona_navi_code.txt |
|---|
| pyproject.toml |
|---|
| tests/unit/api/test_websocket.py |
|---|
| tests/unit/core/test_orchestrator_queue.py 0 → 100644 |
|---|
| tests/unit/core/test_parallel_tools.py 0 → 100644 |
|---|
| tests/unit/core/test_task_manager.py 0 → 100644 |
|---|
| tests/unit/core/test_task_notes.py 0 → 100644 |
|---|
| tests/unit/core/test_task_notes_injection.py 0 → 100644 |
|---|
| tests/unit/core/test_tool_executor.py |
|---|
| tests/unit/test_deployment_flags.py |
|---|
| tests/unit/tools/test_spawn_agent.py |
|---|
| tests/unit/tools/test_tasks_tool.py 0 → 100644 |
|---|