Об этом проекте

Profer — это локальное (local-first) универсальное настольное приложение AI-агента, построенное на двойной среде выполнения Claude Agent SDK и Pi Agent. Оно предназначено для передачи простых вопросов в чат, сложных задач — агенту, а поверх мощных локальных возможностей AI-агента добавляет уровень командного взаимодействия. **Ключевые возможности** - **Универсальный агент**: на базе `@anthropic-ai/claude-agent-sdk`, поддерживает декомпозицию графа задач, оркестрацию зависимостей подзадач, потоковый вывод и подтверждение плана; переключение между средами Claude и Pi. - **Совместные субагенты**: параллельное разделение сложных задач между несколькими реальными подсессиями, которые работают независимо, с последующим объединением результатов; полная видимость и отслеживаемость процесса. - **Автоматизация по расписанию**: поддержка постоянного планирования (интервал / ежедневно / еженедельно / ежемесячно), история выполнения, защита от сбоев и анализ результатов; подходит для ежедневных/еженедельных отчётов, автоматических проверок и других сценариев без участия человека. - **Удалённый доступ с мобильных устройств**: подключение к настольному компьютеру через локальный HTTP/WS; на мобильных устройствах поддерживаются чат, синхронизация настроек и переподключение при обрыве связи (клиент в отдельном репозитории Profer-pocket, на базе Capacitor для Android). - **Командное рабочее пространство**: пригласительная модель (роли Owner / Admin / Member / Viewer), общий маркетплейс Skills, облачная синхронизация файлов и брендирование. - **Многомодельный чат**: поддержка диалогов от нескольких провайдеров, разбор вложений (PDF / Office / изображения), Markdown / Mermaid / KaTeX / подсветка кода, параллельное сравнение и управление контекстом. - **Skills и MCP**: каждое рабочее пространство может независимо настраивать Skills и MCP-серверы; полноэкранный просмотр навыков с поиском, включением, обновлением, импортом, удалением и публикацией для команды. - **Удалённые боты**: поддержка мостов Feishu / Lark / DingTalk / WeChat; запуск локальных агентских рабочих процессов через телефон или групповые чаты. - **Настольный интерфейс**: автоматическое обновление, глобальные горячие клавиши, окно быстрых задач, потоковый голосовой ввод (Doubao), светлая/тёмная темы и несколько тщательно проработанных тем оформления. **Поддерживаемые каналы моделей** Поддерживаются Anthropic, DeepSeek, Kimi API, Kimi Coding Plan, OpenAI, Google, Zhipu AI, MiniMax, Doubao, Tongyi Qianwen, а также пользовательские конечные точки (совместимые с OpenAI). Из них Anthropic и совместимые с Anthropic каналы поддерживают функции агента; OpenAI, Google и пользовательские конечные точки — только чат. **Технологический стек** - Среда выполнения: Bun - Настольный фреймворк: Electron 43 - Интерфейс: React 18 + TypeScript + Jotai - Стили: Tailwind CSS + Radix UI - Форматированный текст / диаграммы: TipTap · Beautiful Mermaid · KaTeX · Shiki - Сборка: Vite + esbuild + electron-builder - Agent SDK: `@anthropic-ai/claude-agent-sdk@0.3.201` (Claude) + `@earendil-works/pi-agent@0.82.1` (Pi) — двойная среда - Мобильная платформа: Capacitor (Android) - Командный бэкенд: Hono + better-sqlite3 + JWT **Быстрый старт** Скачайте последнюю версию из GitHub Releases: доступны установочные пакеты для macOS Apple Silicon / Intel и Windows. При первой настройке необходимо пройти проверку окружения (зависимости: Git, Node.js / Bun и доступная оболочка), затем в настройках добавить AI-канал и выбрать канал по умолчанию, модель и рабочее пространство. Для командных функций требуется развернуть лёгкий бэкенд-сервис (Hono + SQLite), который можно развернуть одной командой на любом Linux-сервере. **Локальная разработка** Монорепозиторий Bun workspace, включающий packages (shared, core, project-core, session-core, ui), apps (electron, cli) и каталог server. Используйте `bun install` для установки зависимостей, `bun run dev` для запуска в режиме разработки, `bun run typecheck` для проверки типов и `bun test` для запуска тестов. **Вклад** Приветствуются pull request'ы; необходимо соблюдать правила проекта: использовать Bun, Jotai для управления состоянием, запрет `any` в TypeScript, синхронное обновление соответствующих типов и кода мостов при добавлении новых IPC. **Лицензия** Profer разработан на основе Proma; версия для сообщества распространяется под лицензией AGPL-3.0.