Создать систему "Navi Code": локально запускаемый вариант Navi, управляемый через терминал. Без авторизации (NAVI_AUTH_ENABLED=false), с выделенным профилем, ориентированным на работу с кодом, терминалом и файловой системой.
NAVI_AUTH_ENABLED=false).navi_code на базе developer..env / конфигурации для локального терминального режима.navi_codenavi/profiles/developer/ → navi/profiles/navi_code/.id: navi_code.name: "Navi Code".Включить:
terminal — основной инструмент.filesystem — чтение/запись файлов.code_exec — выполнение кода.spawn_agent — для сложных подзадач.list_tools, tool_manual, write_tool, reload_tools — саморасширение.scratchpad, todo, reflect — для планирования.Исключить (для упрощения терминального опыта):
share_file.content_publish.image_view.http_request — оставить по необходимости, но по умолчанию убрать.web_search, ssh_exec — оставить как опцию, но не включать по умолчанию.max_iterations: сохранить высокое значение (например, 100), но не безгранично.temperature: 0.3–0.4.model: локальная модель по умолчанию, например gemma4:26b-a4b-it-q4_K_M.iteration_budget_enabled, goal_anchoring_enabled, anti_stall_enabled: оставить включёнными.step_validation_enabled: отключить.adaptive_replan_enabled: оставить выключенным.developer/system_prompt.txt.rm, перезапись) спрашивать подтверждение.Вариант A — env-переменная (предпочтительный):
navi/config.py: navi_default_profile_id: str = "".NAVI_DEFAULT_PROFILE_ID из .env.profile_id.POST /sessions разрешить отсутствие profile_id, взяв дефолт.Вариант B — клиент-side:
navi_code и всегда шлёт его.Реализовать вариант A: серверная env-переменная + поддержка отсутствующего profile_id в POST /sessions. Это позволит любому клиенту (CLI, веб, скрипт) работать с дефолтным профилем.
NAVI_AUTH_ENABLED=false (уже есть).NAVI_DEFAULT_PROFILE_ID=navi_code (новая).NAVI_PERSONA_FILE=persona_navi_code.txt (новая персона).FS_ALLOWED_PATHS=*.TERMINAL_ALLOWED_COMMANDS=*.OLLAMA_HOST=http://localhost:11434.DATABASE_URL=postgresql://navi:navipass@localhost:5432/navidb (или локальная настройка пользователя)..env.navi_code.example — пример .env для Navi Code.persona_navi_code.txt — глобальная персона для Navi Code.navi/config.py) — добавляем только новые поля.NAVI_AUTH_ENABLED=true — не ломаем.terminal для shell-команд.filesystem для чтения/записи.code_exec для быстрой проверки небольших фрагментов.scratchpad для длительных мыслей, todo для планирования.write_tool всегда вызывает tool_manual("write_tool").navi_code_cli/ в корне проекта (отдельный Python-пакет).clients/terminal/.navi-code без аргументов → чат).navi-code "задача" → выполнить и выйти).session_id между запусками (~/.navi_code/state.json)./new — новая сессия,/sessions — список сессий,/switch <id> — переключиться,/profile — показать текущий профиль,/quit — выход.stream_delta — печатать текст.thinking_delta / thinking_end — показывать в сворачиваемом блоке или с флагом --show-thinking.tool_started / tool_call — показывать имя инструмента и результат.stream_end — завершение ответа.error — красным цветом.click или typer.websockets.rich — для цветного вывода, markdown, таблиц.pydantic — для моделей.GET /agents/profiles — проверить профиль.POST /sessions — создать сессию (с дефолтным профилем).WS /ws/sessions/<session_id> — основной чат.POST /sessions/<id>/stop — остановить генерацию.docs/navi_code.md — полное руководство по Navi Code.docs/navi_code_cli.md — документация по CLI.docs/profiles.md — обновить: добавить профиль navi_code, описать NAVI_DEFAULT_PROFILE_ID.docs/config.md — обновить: новые env-переменные.navi/profiles/navi_code/ на базе developer/.navi_default_profile_id в navi/config.py.POST /sessions для использования дефолтного профиля.persona_navi_code.txt..env.navi_code.example.docs/profiles.md, docs/config.md).navi_code_cli/.TERMINAL_ALLOWED_COMMANDS=* и admin-роль дают полный доступ к системе. Нужно ясно документировать, что Navi Code предназначена только для локального использования.gnexus-auth-client-py: при сборке/установке может потребоваться доступ к Git. Для локальной разработки текущий venv уже настроен./cd для смены рабочей директории в CLI?cwd_provider) или передавать cwd через параметры CLI?navi_code создан и загружается.NAVI_DEFAULT_PROFILE_ID работает, POST /sessions без profile_id создаёт сессию с дефолтным профилем.NAVI_PERSONA_FILE.session_id между запусками.