kendex
요약
kendix는 Claude Code, Codex, Cursor 등 다양한 AI 코딩 도구를 사용하는 개발자를 위한 데스크톱 및 CLI 도구입니다. 이 도구는 에이전트, 스킬, 훅 등의 사용자 정의 기능을 중앙에서 관리하고 모든 프로젝트와 도구에 일관되게 적용할 수 있게 합니다.
핵심 포인트
- 다양한 AI 코딩 도구를 통합 관리하는 중앙 허브 역할 수행
- 에이전트, 스킬, 훅 등 커스텀 로직을 표준화하여 적용 가능
- 개인 설정과 프로젝트별 설정을 분리하여 관리할 수 있음
kendex <a href="https://daytona.io" target="_blank" rel="noopener"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/images/daytona-startup-grid-dark-transparent.svg"><img src="https://raw.githubusercontent.com/vanillagreencom/kendex/HEAD/docs/images/daytona-startup-grid-light-transparent.svg" alt="Daytona Startup Grid" height="36" align="absmiddle"></picture></a>
kendix는 Claude Code, Codex, Cursor와 같은 AI 코딩 도구를 사용하는 사람들을 위한 데스크톱 앱이자 커맨드라인 도구입니다. 에이전트(agents), 스킬(skills), 훅(hooks) 및 기타 사용자 정의 기능을 관리합니다: 한 번 설정해 두면 모든 도구와 프로젝트에서 사용할 수 있습니다.
<p><img src="https://raw.githubusercontent.com/vanillagreencom/kendex/HEAD/docs/images/harness-claude.png" alt="Claude Code" height="20"> <img src="https://raw.githubusercontent.com/vanillagreencom/kendex/HEAD/docs/images/harness-codex.png" alt="Codex" height="20"> <img src="https://raw.githubusercontent.com/vanillagreencom/kendex/HEAD/docs/images/harness-opencode.png" alt="OpenCode" height="20"> <img src="https://raw.githubusercontent.com/vanillagreencom/kendex/HEAD/docs/images/harness-cursor.png" alt="Cursor" height="20"> <img src="https://raw.githubusercontent.com/vanillagreencom/kendex/HEAD/docs/images/harness-pi.png" alt="Pi" height="20"> <img src="https://raw.githubusercontent.com/vanillagreencom/kendex/HEAD/docs/images/harness-gemini.png" alt="Gemini CLI" height="20"> <img src="https://raw.githubusercontent.com/vanillagreencom/kendex/HEAD/docs/images/harness-copilot.png" alt="GitHub Copilot" height="20"> <img src="https://raw.githubusercontent.com/vanillagreencom/kendex/HEAD/docs/images/harness-antigravity.png" alt="Antigravity" height="20"></p>
기능 (Features)
-
코딩 도구 전반에 걸쳐 커스터마이징을 하나의 설정으로 설치합니다.
-
에이전트(agent) 및 스킬 파일(skill files)을 각 도구가 읽는 형식으로 변환합니다.
-
패키지 변경 사항을 적용하기 전에 미리 보여줍니다.
-
개인용 설정과 프로젝트별 별도 설정을 유지할 수 있습니다.
-
kendex adopt <kind> <name>명령어로 수동 설정한 커스터마이징을 채택합니다. 프로젝트 스킬의 경우, 실제 디렉토리는.agents/skills/<name>으로 이동합니다. 심볼릭 링크(symlink) 방식으로 배포할 경우, 별도의 코딩 도구 위치들이 kendex가 관리하는 링크가 되며, 수동으로 만든 링크도 포함됩니다. 복사본(copy) 방식일 경우, 해당 위치들은 복사본이 됩니다. -
kendex.ai 페이지의
kendex://링크를 통해 마켓플레이스 또는 패키지를 앱에서 엽니다. -
오래된 패키지를 찾아 업데이트합니다.
-
에이전트나 스킬에 자체 지침(instruction)을 추가하거나, 각 도구에서 하나의 에이전트에 다른 설정을 부여할 수 있습니다.
-
설치된 커스터마이징을 활성화, 비활성화 또는 제거하고, 해당 설정이 어디서 왔는지 보여줍니다.
-
각 패키지를 검사하여 안전하지 않은 명령어(unsafe commands)가 있는지 확인하고 발견한 내용을 보고합니다.
설치 (Install)
curl -fsSL https://kendex.ai/install.sh | sh
brew install vanillagreencom/kendex/kendex
yay -S kendex-bin
Windows: 설치 프로그램은 kendex.ai/download에서 다운로드할 수 있습니다. 이 스크립트는 Linux에서는 앱과 CLI를, macOS에서는 CLI를 설치하며, Homebrew가 앱을 설치합니다. 다른 채널들은 packaging에 있습니다.
지원되는 도구 (Supported tools)
| Claude Code | Codex | OpenCode | Cursor | Pi | Gemini CLI | GitHub Copilot | Antigravity | |
|---|---|---|---|---|---|---|---|---|
| 에이전트(Agents) | ● | ● | ● | ●¹ | ● | ● | ● | ●² |
| ... |
- Cursor는 프로젝트 내에서만 관리됩니다.
- Antigravity는 자체 전역 디렉토리에서 에이전트를 읽기 때문에, 에이전트는 여기에 설치되고 프로젝트에는 절대 설치되지 않습니다.
- OpenCode는 훅(hook) 런타임이 없고, Cursor는 등록(registration) 대신 규칙(rule)을 사용하므로, 어느 쪽의 훅이든 모델이 무시할 수 있는 지침입니다. Bash에 대한
PreToolUse훅은 또한 OpenCode의permission.bash를 질문하도록 설정합니다. - Pi는
pi-hooks확장 프로그램을 통해 훅을 실행합니다. 이것이 등록되지 않은 경우, 그것들은 단지 지침일 뿐입니다. - Codex는 명령어를 스킬(skill)로 저장합니다.
- Cursor는 명령어 대신 스킬을 선호하여 슬래시 명령어(slash commands)를 사용 중단했으며, 따라서 그곳의 명령어는 표시만 되고 작성되지는 않습니다.
- Copilot CLI는 자체 명령어 디렉토리를 읽지 않으며, 읽는 것은 Claude Code의 것입니다.
- Gemini는 MCP 서버가 켜져 있는지 여부를 단일 기기 전체 파일에 기록하므로, 프로젝트에서 서버를 선언할 수는 있지만 그곳에서 비활성화할 수는 없습니다.
- Copilot은 또한 내장된 MCP 서버 목록을 제공하고 네이티브 설정을 통해 이를 제어합니다. 프로젝트의 활성화 설정은 개인적인 비활성화 설정을 재정의할 수 없습니다.
전체 도구별 정보는 docs/adapters에서 확인할 수 있습니다.
작동 방식
kendex.toml 파일에 원하는 항목들을 나열합니다. 개인 설정용 하나와 자체 프로젝트가 필요로 하는 곳에 들어갈 것이 하나입니다. kendex는 각 코딩 도구의 폴더에 이미 존재하는 사용자 정의 설정을 읽고, 이를 목록과 비교하여 차이점을 보여줍니다. 적용(apply)할 때, 이는 각 도구가 읽는 파일을 작성하고, 무엇을 설치했는지, 그리고 각 패키지가 어디에서 왔는지 기록하므로 나중에 업데이트하거나 제거할 수 있습니다. 데스크톱 앱과 CLI는 동일한 설정을 읽고 쓰기 때문에, 한 곳에서 변경된 내용은 다른 곳에도 나타납니다. 목록에서 패키지를 삭제하면 다음 적용 시 그 파일들이 제거되지만, 사용자가 직접 편집했거나 Pi 확장 프로그램으로 인한 파일은 kendex가 보존하고 보고합니다.
패키지
이 저장소는 기본 카탈로그(default catalog)이기도 합니다. 여기에 있는 에이전트(agents), 스킬(skills), 훅(hooks) 및 Pi 확장 기능(Pi extensions)은 default catalog 페이지에 나열되어 있으며, 각 Pi 확장 기능은 npm의 @vanillagreen/에서도 확인할 수 있습니다.
| 패키지 | 설명 |
|---|---|
| agents/ | 코딩 하네스(coding harnesses)를 위한 구현, 검토 및 계획 에이전트입니다. |
| ... |
설정 (Setup)
kendex.toml은 설정을 선언하고 각 도구에 추가하는 지침이나 옵션을 담고 있습니다.- 패키지 설정은 프로젝트별로 적용됩니다. 이는 패키지의 'Customize' 탭 또는 해당 프로젝트의
kendex.settings.toml에서 변경할 수 있습니다. - 개인 앱 환경설정 및 기계 상태는 별도의 앱 설정 파일을 사용합니다.
- 비공개 설정과 비밀 정보(secrets)는
.env.local에 넣습니다. - 프로젝트 루트의 JSON을 검사하는 Biome이나 Prettier와 같은 포맷터는 무시 목록(ignore list)에
.kendex-lock.json및.kendex-generated.json이 필요합니다. kendex가 자체 레이아웃으로 이 두 파일을 작성하기 때문입니다.
자신만의 패키지 작성 방법: docs/authoring. kendex 자체를 개발하는 방법: DEVELOPMENT.md.
라이선스 (Licence)
AI 자동 생성 콘텐츠
본 콘텐츠는 개발 자료 GitHub · 9ffce42f의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기