CtxGuard CLI
Локальный прокси между агентом и API модели: сжимает диффы и логи, сохраняет префикс запроса стабильным для кеша промптов.
- 189 ★ репозитория
- Последний коммит
- MIT
Расширенный доступ
Почему такой уровень
- Прокси видит все запросы и ключи провайдера в пути запроса.
- Сжатие вывода может скрыть от модели строку, которая оказалась важной.
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add cli/ctxguardОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемРасширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.
- Прокси видит все запросы и ключи провайдера в пути запроса.
- Сжатие вывода может скрыть от модели строку, которая оказалась важной.
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
CtxGuard — обратный прокси на FastAPI, который встает между агентом (Claude Code, Codex, Pi Agent) и API провайдера: OpenAI, Anthropic, Gemini, xAI, DeepSeek. По пути он сокращает контекст. Код сворачивается до сигнатур и докстрингов через Tree-sitter, свернутые тела хранятся в локальной SQLite и возвращаются по запросу модели. Повторные выводы `ls` и `git status` заменяются разницей с прошлым снимком, длинные логи сборки и тестов обрезаются до 25 первых и 75 последних строк, ключи и токены в тексте маскируются. Вторая задача — не ломать кеш промптов провайдера: схемы инструментов сортируются в детерминированном порядке, неизмененные сообщения пересылаются байт в байт, блоки рассуждений проходят без правок. Работу видно на панели `http://127.0.0.1:8787/dashboard`. Заявленное автором сокращение токенов — от 50 до 80 процентов, независимой проверки в README нет.
Для кого. Разработчикам, которые гоняют Claude Code или Codex на длинных сессиях и платят за контекст: нужен счетчик экономии и прокси без правок в самом агенте.
Подходит, если
- Длинная сессия агента упирается в окно контекста из-за логов сборки и повторных листингов каталога.
- Кеш промптов у провайдера сбрасывается, потому что клиент по-разному сериализует схемы инструментов.
- Нужен локальный дашборд с динамикой токенов и журналом запросов по каждому ходу.
- Агент запускают одной командой с готовой подменой базового адреса API.
Не подходит, если
- Весь трафик к модели не должен проходить через сторонний процесс, даже локальный.
- Агент работает с недетерминированной задачей, где любое сжатие вывода может скрыть важную строку.
- Хватает встроенного сжатия контекста самого агента.
Пример запроса к агенту
Подними CtxGuard локально, запусти Claude Code через него и покажи на панели, сколько токенов ушло на логи сборки.Ограничения
Прокси видит все запросы и читает адрес и ключ провайдера из конфигурации клиента, например `~/.claude/settings.json`; запускайте его только на своей машине и не открывайте порт наружу. Свертка кода и логов меняет то, что видит модель, а цифры экономии взяты из README автора. Описание на китайском, английской документации нет, последний коммит октябрь 2026. Проект молодой: 189 звезд, одиночный автор, версия сети и поведение сжатия могут меняться между релизами.
Как отключить. Остановите процесс `ctxguard` и запускайте агента напрямую, без `ctxguard wrap`. Если задавали переменные командой `eval $(ctxguard env --eval)`, закройте этот терминал.
Частые вопросы
Как запустить агента через прокси без правки конфигов?
Выполните `ctxguard wrap claude`: команда сама поднимает шлюз на порту 8787 и подставляет базовый адрес API только в процесс агента. Для Codex и Pi Agent есть `wrap codex` и `wrap pi`.
Как включить прокси в текущем терминале?
Выполните `eval $(ctxguard env --eval)`: переменные окружения применятся к сессии, после чего запускайте `claude` или другого агента как обычно.
Что с блоками рассуждений модели?
Они проходят без изменений. Автор не правит thinking-блоки, чтобы не получить ошибку подписи у Anthropic и не сбить кеш Gemini и DeepSeek.
Можно ли вернуть свернутый код?
Да. Тело функции сохраняется в локальной SQLite с отметкой-ссылкой, и модель может запросить полный текст по этой отметке.
Какие провайдеры поддерживаются?
По README шлюз стоит перед OpenAI, Anthropic, Google Gemini, xAI Grok и DeepSeek. Адрес провайдера берется из конфигурации клиента при `ctxguard wrap`.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
CLI-инструментыЛокальный прокси и плагин для Claude Code и Codex: режет лишний вывод инструментов, греет кэш промптов и показывает экономию
Программа на Rust сокращает вывод команд, который читает агент: убирает шум сборок и тестов, сворачивает повторные чтения и прячет ключи
Paritok — прокси между кодинг-агентом и API модели, который сжимает запросы и сокращает счет за входные токены.
Локальное сжатие контекста для агентов: выводы инструментов, логи, файлы и RAG ужимаются до отправки в LLM. Прокси, CLI, библиотека и MCP
Локальный прокси с API как у OpenAI кеширует повторяющиеся запросы агентов и отдает сохраненные ответы без вызова модели.
Локальный прокси с панелью в терминале: показывает, сколько токенов уходит с каждым запросом Claude Code и Codex, и сохраняет промпты в файлы
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Авторизация | Звезды репозитория | Главное отличие |
|---|---|---|---|---|
| CtxGuard (эта карточка) | нет | 189 | ||
| SuperCompress | нет | API-ключ | 146 | сжимает вывод через MCP-инструмент по запросу; CtxGuard стоит прокси перед API и работает со всем трафиком без вызовов инструмента |
| LeanToken | нет | не нужна | 158 | ищет по коду локально и ограничивает контекст бюджетом; CtxGuard сжимает уже идущие запросы и охраняет кеш промптов |
Коротко о README
Единая точка, где сжатие контекста, защита префикса кеша и маскирование секретов собраны в одном прокси с панелью.