Deskaid

by ezyang
Apache 2.0
1,241
  • Apple

Integrations

  • Uses Git version control to track changes made by Claude, ensuring all code modifications can be rolled back

  • Supports running tests with pytest-style test selectors through custom commands

codemcp

Сделайте Claude Desktop помощником парного программирования, установив codemcp. С его помощью вы можете напрямую попросить Клода реализовать функции, исправить ошибки и провести рефакторинг в кодовой базе на вашем компьютере; Клод будет напрямую редактировать файлы и запускать тесты. Попрощайтесь с копированием кода в окно чата Клода и из него!

codemcp предлагает схожую функциональность с другим программным обеспечением для кодирования ИИ (Claude Code, Cursor, Cline, Aider), но занимает уникальную позицию в пространстве проектирования:

  1. Он предназначен для использования с Claude Pro , предложением Anthropic по подписке за 20 долларов в месяц. Мне нравится платить за использование по подписке, потому что это означает нулевую предельную стоимость действий агента; больше не нужно чувствовать себя плохо из-за того, что вы потратили пять баксов на набор изменений, который не работает.Обратите внимание, что если у вас есть Claude Max ($100/мес.), Claude Code также можно использовать с подпиской. Ценностное предложение codemcp в этом случае более туманно (и оно определенно уступает Claude Code в некоторых отношениях), но вы все равно можете использовать codemcp с Claude Max, если вам больше нравятся некоторые другие решения пользовательского интерфейса, которые он принимает. (Кроме того, это открытый исходный код, поэтому вы можете изменить его, если он вам не нравится, в отличие от Claude Code!)
  2. Он построен вокруг auto-accept by default . Я хочу, чтобы мой агент прошел как можно дальше без моего надзора, чтобы я мог просмотреть все за один раз в конце. Есть две ключевые вещи, которые codemcp делает иначе, чем большинство агентов кодирования: мы запрещаем неограниченную оболочку , вместо этого требуя от вас заранее объявлять команды, которые агент может использовать в codemcp.toml , и мы версионируем все правки LLM в Git , поэтому вы можете откатывать изменения агента на мелкозернистой основе и не беспокоиться о том, что забудете зафиксировать изменения.
  3. Он независим от IDE : вы просите Клода внести изменения, он их вносит, а затем вы можете использовать свою любимую настройку IDE для просмотра изменений и внесения дополнительных правок. Я использую vim в качестве ежедневного редактора драйверов, а среды кодирования, требующие VSCode или определенного редактора, меня отталкивают.

ВАЖНО: Для основных пользователей — основные изменения в эффективности токенов

Чтобы улучшить эффективность маркера codemcp, на master я нахожусь в процессе изменения codemcp обратно в многофункциональный инструмент (вместо одного инструмента, инструкции которого выводятся в чат при InitProject). Это означает, что вам придется вручную одобрять использование инструмента. Поскольку одобрение использования инструмента сохраняется в нескольких чатах, я думаю, что это разумный компромисс, но если вам это действительно не нравится, отправьте сообщение об ошибке в расширение браузера refined-claude для поддержки автоматического одобрения использования инструмента.

Установка

Я рекомендую именно этот способ установки и использования codemcp:

  1. Установите uv и git, если они еще не установлены.
  2. Установите claude-mcp в свой браузер. Это позволит вам подключаться к серверам SSE MCP напрямую с веб-сайта, что означает, что вам не нужно использовать Claude Desktop, и вы можете легко иметь несколько окон чата, работающих параллельно. Мы ожидаем, что это расширение должно вскоре устареть из-за развертывания Integrations . Однако на момент написания статьи Integrations еще не появились у подписчиков Claude Pro.
  3. Запустите codemcp с помощью uvx --from git+https://github.com/ezyang/codemcp@prod codemcp serve . Вы можете добавить --port 1234 если вам нужно прослушивать нестандартный порт.Совет профессионала: если вам нравится жить опасно, вы можете изменить prod на main . Если вы хотите прикрепить к определенному релизу, замените на 0.3.0 или подобный.Совет от профессионала: вы можете запустить codemcp удаленно! Если вы используете Tailscale и доверяете всем устройствам в вашем Tailnet, вы можете сделать это безопасно, передав --host 100.101.102.103 (замените IP на IP-адрес Tailscale вашего узла. Этот IP обычно находится в диапазоне 100.64.0.0/10.) ПРЕДУПРЕЖДЕНИЕ: любой, у кого есть доступ к этому MCP, может выполнить произвольное выполнение кода на вашем компьютере, КРАЙНЕ маловероятно, что вы захотите привязаться к 0.0.0.0.
  4. Настройте claude-mcp с URL: http://127.0.0.1:8000/sse (при необходимости замените порт.)
  5. К сожалению, веб-интерфейс непоследовательно отображает значок молотка. Однако вы можете проверить, работает ли сервер MCP, найдя "[MCP codemcp] SSE connection opening" в консоли или спросив Клода, какие инструменты у него есть (он должен сказать, что инструменты из codemcp доступны).

Если вы предпочитаете использовать Claude Desktop или у вас необычные потребности, посетите сайт INSTALL.md, где вы найдете инструкции по установке для различных нестандартных ситуаций.

Использование

Сначала вы должны создать файл codemcp.toml в репозитории Git checkout, над которым вы хотите работать. Если вы хотите, чтобы агент мог делать такие вещи, как запуск вашего форматировщика или запуск тестов, добавьте команды для их выполнения в раздел команд (примечание: эти команды должны соответствующим образом настроить любую необходимую им виртуальную среду):

format = ["./run_format.sh"] test = ["./run_test.sh"]

Команда format является специальной; она всегда выполняется после каждого редактирования файла.

Далее в Claude Desktop мы рекомендуем создать проект и указать его в инструкциях к проекту:

Initialize codemcp with $PROJECT_DIR

Где $PROJECT_DIR — это путь к проекту, над которым вы хотите работать.

Затем пообщайтесь с Клодом о том, какие изменения вы хотите внести в проект. Каждый раз, когда codemcp вносит изменения в ваш код, он генерирует коммит.

Чтобы увидеть примеры расшифровок с использованием этого инструмента, посетите:

codemcp сгенерирует коммит для каждого чата и будет вносить в него изменения по мере работы над вашей функцией.

Философия

  • Когда у вас ограничена скорость, найдите время заняться чем-то другим (просмотрите код Клода, просмотрите чей-то код, составьте планы, проведите несколько встреч).
  • Это не автономный агент. Как минимум, вам нужно вмешаться после каждого чата, чтобы просмотреть изменения и запросить следующее изменение. Хотя вы можете попросить длинный список вещей, которые нужно сделать в одном чате, вы, скорее всего, достигнете предела вывода Claude Desktop и вам придется вручную «продолжать» агента в любом случае. Примите это и используйте прерывания, чтобы убедиться, что Claude делает правильно.
  • Когда Клод сходит с рельсов, это стоит вам времени, а не долларов. Ведите себя соответственно: если время — узкое место, внимательно следите за инкрементальным выходом Клода.

Конфигурация

Вот все параметры конфигурации, поддерживаемые codemcp.toml :

project_prompt = """ Before beginning work on this feature, write a short haiku. Do this only once. """ [commands] format = ["./run_format.sh"] test = ["./run_test.sh"]

project_prompt будет загружен при инициализации проекта в чатах.

Раздел commands позволяет вам настраивать команды для определенных инструментов. Имена сообщаются LLM, который решает, когда их запускать. Вы можете добавить инструкции по использованию инструментов в project_prompt ; мы также поддерживаем более подробный синтаксис, в котором вы можете давать конкретные инструкции по каждому инструменту:

[commands.test] command = ["./run_test.sh"] doc = "Accepts a pytest-style test selector as an argument to run a specific test."

Поиск неисправностей

Чтобы запустить сервер с инспектором, используйте:

PYTHONPATH=. mcp dev codemcp/__main__.py

Логи записываются в ~/.codemcp/codemcp.log . Уровень лога можно задать в глобальном файле конфигурации в ~/.codemcprc :

[logger] verbosity = "INFO" # Can be DEBUG, INFO, WARNING, ERROR, or CRITICAL

Ведение журнала не настраивается для каждого проекта отдельно, но это не должно иметь большого значения, поскольку в любом случае сложно использовать Claude Desktop параллельно в нескольких проектах.

Внося вклад

См. CONTRIBUTING.md .

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Tools

Сервер MCP, предоставляющий инструменты для чтения, записи и редактирования файлов в локальной файловой системе.

  1. ВАЖНО: Для основных пользователей — основные изменения в эффективности токенов
    1. Установка
      1. Использование
        1. Философия
          1. Конфигурация
            1. Поиск неисправностей
              1. Внося вклад

                Related MCP Servers

                • A
                  security
                  A
                  license
                  A
                  quality
                  An MCP server that provides access to project files and their contents, allowing users to retrieve file data from specified project directories with error handling and configuration options.
                  Last updated -
                  1
                  4
                  TypeScript
                  MIT License
                • -
                  security
                  F
                  license
                  -
                  quality
                  An MCP server that allows Claude AI to perform filesystem operations including reading, writing, listing, moving files, and searching directories within specified allowed paths.
                  Last updated -
                  5
                  1
                  JavaScript
                • -
                  security
                  F
                  license
                  -
                  quality
                  A Filesystem MCP server that allows an LLM to read and list files from a specified directory on your local machine through the Model Context Protocol.
                  Last updated -
                  2
                  Python
                • A
                  security
                  F
                  license
                  A
                  quality
                  A MCP server that allows searching for files in the filesystem based on path fragments, returning file metadata including name, path, size, and creation date.
                  Last updated -
                  1
                  Python
                  • Apple

                View all related MCP servers

                ID: vujkyr83by