Об этом проекте
jcode — это открытый терминальный ИИ-инструмент для программирования, созданный для эффективности ресурсов и скорости. Проект позиционирует себя как самый эффективный по памяти и самый интеллектуальный инструмент, и README подтверждает это таблицами бенчмарков, сравнивающими jcode с такими инструментами, как pi, Codex CLI, OpenCode, GitHub Copilot CLI, Cursor Agent, Claude Code и Antigravity CLI. Сообщаемые показатели включают примерно 27,8 МБ PSS для одной сессии с отключённым локальным эмбеддингом, около 14 мс до первого кадра и около 48,7 мс до первого ввода, при масштабировании памяти на сессию около 10 МБ. Установка — это однострочный скрипт curl на macOS/Linux и однострочник PowerShell на Windows 11, а инструмент поставляется для Linux, macOS и Windows под лицензией MIT.
Основной опыт — это TUI с областью чата, боковыми панелями, встроенным рендерингом Mermaid-диаграмм, информационными виджетами, которые занимают только отрицательное пространство экрана, пользовательской реализацией прокрутки и сопутствующим терминальным проектом Handterm, добавляющим нативный API прокрутки. Заявлено, что рендеринг работает со скоростью более тысячи кадров в секунду, и проект включает собственную библиотеку рендеринга Mermaid (mermaid-rs-renderer) без зависимости от браузера или TypeScript. Выравнивание можно переключать между левым и центральным, а эмодзи можно отключить глобально через конфигурацию или переменную окружения.
Отличительная особенность — система памяти агента. Каждый ход встраивается как семантический вектор и запрашивается по графу воспоминаний с использованием косинусного сходства. Совпадения внедряются в разговор, при необходимости проверяются сайд-агентом памяти, который может выполнять дополнительную работу по извлечению. Воспоминания извлекаются периодически на основе семантического дрейфа, количества ходов или окончания сессии и консолидируются в фоновом режиме, который реорганизует записи и проверяет на устаревание и конфликты. Явные инструменты памяти позволяют агенту активно искать или хранить воспоминания, а поиск по сессиям обеспечивает традиционный RAG по предыдущим сессиям.
Функция Swarm позволяет нескольким агентам работать в одном репозитории под общим сервером. Когда один агент редактирует файл, который читает другой, сервер уведомляет другого агента, который может игнорировать изменение или просмотреть diff, чтобы избежать конфликтов. Агенты могут общаться друг с другом через DM, широковещательные сообщения или каналы с областью репозитория, и они могут автономно создавать свои собственные рои, превращая основного агента в координатора, а созданных агентов — в рабочих. Групповые каналы сообщений, статусы завершения и координация управляются автоматически, и это может работать как без головы, так и с головой.
Поддержка провайдеров широкая. Встроенные потоки входа OAuth охватывают Claude, OpenAI/ChatGPT/Codex, Google Gemini, GitHub Copilot, Azure OpenAI, Alibaba Cloud Coding Plan, Fireworks, Novita AI, MiniMax, Meta Model API/Muse, LM Studio и Ollama, плюс пользовательская конечная точка, совместимая с OpenAI. Нативные провайдеры OpenAI используют Responses WebSocket v2 с оппортунистическим фоновым предварительным прогревом и HTTPS-фолбэком. Провайдеры, совместимые с OpenAI, включают встроенные именованные профили для таких сервисов, как OpenRouter, DeepSeek, Moonshot AI, Baseten, Hugging Face, Nebius, Scaleway и других, а произвольные конечные точки можно добавить с помощью однострочной команды профиля провайдера, которая записывает в ~/.jcode/config.toml и хранит секреты в приватном каталоге конфигурации приложения. Шлюзы, совместимые с Anthropic Messages, поддерживаются с bearer, пользовательским заголовком или без аутентификации и специфичными для шлюза заголовками. Локальные среды выполнения, такие как Ollama и LM Studio, поддерживаются с потоковыми чат-завершениями, вызовом функций/инструментов и контентом изображений в стиле OpenAI для локальных моделей с поддержкой зрения. Параметры конфигурации включают контекстные окна для каждой модели, поля extra_body для нестандартных тел запросов, таймауты простоя потока, которые масштабируются с усилием рассуждения, и контроль усилия рассуждения.
Проект также предоставляет SDK, документацию, бенчмарки и сообщество Discord. Обновления можно выполнять в TUI с помощью /update или из терминала с помощью jcode update, со стабильным каналом по умолчанию и основным каналом для обновлений из исходной ветки. Сборки для разработки сравнивают Git-коммит запущенного бинарника с тегом релиза и останавливаются, а не рискуют понижением версии, если происхождение не может быть проверено. В целом, jcode нацелен на разработчиков, которые хотят быструю, лёгкую по памяти терминальную среду ИИ для программирования с постоянной памятью, мультиагентным сотрудничеством и гибкой конфигурацией провайдеров моделей.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.