refactor: нативный persistence effort, выпил мёртвого кэша effort_*

EFFORT_MAPPING, statusline и _apply_effort переведены на нативное
хранение уровня в settings.json лаунчера. Убран CLAUDE_CODE_EFFORT_LEVEL
(он блокировал /effort внутри сессии) и кэш ~/.cache/ai-setup/effort_*,
который никто не читал и который врал относительно реального уровня.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-15 05:21:12 +03:00
parent 7a5a977aca
commit 1cb4853dca
3 changed files with 260 additions and 106 deletions

View File

@@ -82,31 +82,22 @@ on / off
## Persistence effort между сессиями
Каждый Claude Code лаунчер (`ai-claude`, `ai-deepseek`, `ai-kimi`, `ai-openrouter`)
запоминает свой уровень effort отдельно. Логика гибридная:
запоминает свой уровень effort отдельно в `settings.json` лаунчера.
- `low` / `medium` / `high` / `xhigh` живут нативно в `settings.json` лаунчера.
`/effort` внутри сессии работает как обычно, уровень сохраняется между сессиями.
- `max` - единственный уровень, который Claude Code не сохраняет в `settings.json`
(он session-only). Поэтому его восстанавливаем через `CLAUDE_CODE_EFFORT_LEVEL`.
Текущий уровень, включая `max`, лаунчер записывает в `~/.cache/ai-setup/effort_<launcher>`.
`/effort` внутри сессии работает для всех уровней. `CLAUDE_CODE_EFFORT_LEVEL` не используется.
Важное следствие только для `max`: когда восстановлена `max`-сессия, выставлена
`CLAUDE_CODE_EFFORT_LEVEL=max`, и `/effort` внутри нее не сменит уровень, потому что
env-переменная работает как жесткий override Claude Code.
Как выйти из `max` или форсить любой уровень:
Форсировать уровень при запуске:
```bash
AI_EFFORT=max ai-deepseek # включить и запомнить max
AI_EFFORT=high ai-deepseek # вернуться на high
ai-deepseek # без флага - восстановить последний уровень
AI_EFFORT=max ai-deepseek # включить max
AI_EFFORT=high ai-deepseek # включить high
ai-deepseek # без флага - использовать уровень из settings.json
```
Дефолты при пустом кеше: `xhigh` для `ai-claude`, `high` для остальных Claude Code лаунчеров.
Дефолты: `xhigh` для `ai-claude`, `high` для остальных Claude Code лаунчеров.
## Рекомендации
- Для повседневной работы: `high` или `xhigh`.
- `max` effort имеет реальный эффект у Anthropic и DeepSeek; у Kimi это все тот же thinking on.
- `low`/`medium` у DeepSeek и Kimi фактически не снижают reasoning.
- Смена уровня на `low`..`xhigh`: обычным `/effort`; выход из `max`: через `AI_EFFORT=<lvl> ai-<launcher>`.