Skip to content
Apothem
하니스 어댑터

Gemini CLI

Gemini CLI(GA)용 Apothem 하니스 어댑터.

벤더: Google 설치 이름: gemini-cli 상태: GA 네이티브 구성: 프로젝트 로컬 GEMINI.md 및 .gemini/

설치

apothem install --harness gemini-cli --project /path/to/project

이 어댑터는 프로젝트 범위입니다. 프로젝트 GEMINI.md를 설치하고, Apothem 커맨드를 Gemini TOML 슬래시 커맨드로 변환하며, 로컬 도우미 정의를 정규화하고, 네이티브가 아닌 지원 코호트를 .gemini/.apothem/support/ 아래에 배치합니다. 다른 코딩 도구도 프로젝트 GEMINI.md를 읽으므로, 그 안의 Apothem 블록은 어느 한 도구도 독자로 지칭하지 않는 프로젝트 전체 지침으로 작성됩니다.

작성되는 파일:

GEMINI.md
.gemini/commands/*.toml
.gemini/agents/*.md
.gemini/skills/
.gemini/.apothem/support/

프로필-네이티브 구성 매핑

어댑터는 Apothem의 공유 코호트를 읽고 각 코호트를 Gemini 호환 표면으로 라우팅합니다. Markdown 규칙, 템플릿, 훅 자료는 Gemini 네이티브 규칙 디렉터리가 아니라 지원 자료이므로 .gemini/.apothem/support/ 아래에 남습니다. GEMINI.md의 Apothem 블록은 Apothem 지원 파일 섹션으로 끝나며, 이 섹션은 저장소 스타일의 각 인용(rules/<name>.md, templates/..., hooks/...)이 해석되는 기준인 .gemini/.apothem/support/ 아래 디렉터리를 프로젝트 루트 기준 상대 경로로 명시합니다. 경로가 상대 경로이므로 커밋된 GEMINI.md에는 특정 머신에 종속된 경로가 들어가지 않습니다.

.gemini/commands/의 변환된 각 커맨드는 description과 prompt를 담습니다. 프롬프트는 커맨드의 지시 사항만으로 이루어집니다. 소스 파일 맨 위의 Apothem 메타데이터(버전, 도구 목록 및 유사한 필드)는 제외되므로, 모델은 이를 절대 지시 사항으로 읽지 않습니다. Gemini는 사용자 지정 커맨드를 여러분이 입력할 때만 실행합니다.

.gemini/agents/의 도우미 정의는 도구 제한과 턴 제한을 유지합니다. 소스의 tools 권한에서 disallowedTools를 뺀 것이 Gemini 도구 이름으로 이루어진 Gemini tools 허용 목록이 되고, maxTurns는 max_turns가 됩니다. 따라서 읽기 전용 도우미는 write_file이나 replace 도구를 받지 않습니다. 모델은 설정하지 않으므로 각 도우미는 세션 모델을 상속합니다.

프로필의 agent_mcp_servers 키가 나열하는 도우미는 지정된 서버마다 tools 허용 목록에 mcp_<server>_* 항목 하나를 추가로 받으므로, 그 서버의 도구는 호출할 수 있고 다른 서버의 도구는 호출할 수 없습니다. 키가 없으면 모든 도우미가 일반 허용 목록을 유지합니다(MCP 서버 참조). Gemini CLI는 밑줄이 든 이름을 지정할 수 없으므로, Apothem은 문자, 숫자, -로 이루어진 서버 이름에 대해서만 여기에 권한을 작성합니다. 그 밖의 이름은 건너뛰고 보고하며, 이미 모든 MCP 서버에 도달하는 도우미에 대한 권한도 마찬가지로 건너뛰고 보고합니다.

호환성 참고 사항

~/.gemini/는 전역 Gemini 프로필을 사용하는 도구를 위한 사용자 범위 영역으로 남습니다. Gemini CLI 어댑터는 --project로 전달된 프로젝트에만 작성합니다.

검증

apothem verify --harness gemini-cli --project /path/to/project

verify 명령은 다음을 확인합니다.

  1. 네이티브 구성이 예상 경로에 존재합니다.
  2. 각 관리 대상이 존재하고, 관리되는 파일은 비어 있지 않으며, JSON 또는 YAML 구성은 파싱됩니다. 설치된 파일이 그 프로필과도 일치하는지 확인하려면 --profile PATH를 추가하세요.
  3. 어댑터별 검증 루틴이 성공을 보고합니다.

업데이트

apothem update --harness gemini-cli --project /path/to/project

GEMINI.md, 변환된 커맨드, 로컬 도우미 정의, 설치된 스킬, 그리고 .gemini/.apothem/support/ 지원 하위 트리를 새로 고칩니다.

제거

apothem uninstall --harness gemini-cli --project /path/to/project

<project>/GEMINI.md에서 Apothem 블록을 제거하고, 그 안의 나머지 텍스트는 그대로 둡니다. 파일은 그 안에 다른 내용이 하나도 남지 않은 경우에만 삭제됩니다. 또한 <project>/.gemini/commands/, <project>/.gemini/skills/, <project>/.gemini/agents/, <project>/.gemini/.apothem/support/에 있는 Apothem 파일을 제거하며, 그 폴더들의 다른 파일은 그대로 남습니다. 변경하기 전에 각 파일의 타임스탬프가 찍힌 사본이 ~/.apothem/backups/ 아래에 저장되며, 프로젝트에는 백업 파일이 남지 않습니다. 공유 프로필 YAML과 Apothem 엔진은 영향을 받지 않습니다.

적합성 게이트

python -m apothem.conformity.gate --all .

문제 해결

증상해결 방법
구성 파일을 찾을 수 없음apothem install --harness gemini-cli --project /path/to/project를 다시 실행
검증 실패apothem update --harness gemini-cli --project /path/to/project를 실행한 후 다시 검증
예기치 않은 구성 내용~/.config/apothem/profile.yaml 또는 --profile PATH를 확인한 후 apothem update --harness gemini-cli --project /path/to/project를 다시 실행

구성 노브

플래그기본값설명
--dry-runfalse파일을 작성하지 않고 설치를 미리 봅니다.

함께 보기

On this page