본문으로 건너뛰기

© 2026 Molayo

GitHub요약2026. 06. 15. 15:45

Codemini-CLI: 극도로 절제된 코딩 및 작업용 CLI

요약

Codemini-CLI는 미니멀리즘을 지향하는 에이전트 기반의 코딩 및 범용 작업용 CLI 도구입니다. 경량 모델과 대형 모델을 동시에 활용하는 이중 모델 디스패치와 효율적인 컨텍스트 관리를 통해 다양한 플랫폼에서 강력한 자동화 기능을 제공합니다.

핵심 포인트

  • 경량 모델과 프론티어 모델을 활용한 이중 모델 디스패치 지원
  • 컨텍스트 예산을 효율적으로 관리하는 마이크로 압축 및 디스크 스필 기술 적용
  • TypeScript 기반의 가벼운 의존성과 다양한 OS 및 터미널 호환성
  • 읽기 전용 및 파괴적 작업을 구분하는 비례적 승인 시스템 제공
  • 프로젝트 인덱싱 및 자기 진화형 지속성 메모리 기능 내장

극도로 절제된 코딩 + 작업용 CLI.

모든 플랫폼. 모든 터미널. 설계부터 미니멀리즘을 지향합니다.

English · 简体中文 · Web UI · Operator Guide · Deployment

Codemini는 단순한 전제 조건 하에 구축된 **코딩 + 작업용 CLI (coding + tasks CLI)**입니다: 에이전트 기반의 도움(agentic help)은 어디서나 작동해야 하며, 소형 모델부터 프론티어(frontier) 모델까지 확장 가능해야 하고, 사용자의 컨텍스트 예산(context budget)을 절대 낭비해서는 안 된다는 것입니다.

이 도구는 TypeScript 코드베이스를 리팩터링하거나, Git 워크플로우를 자동화하거나, 다단계 DevOps 파이프라인을 실행하거나, 데이터 파일을 일괄 처리하는 작업에 모두 적합합니다. 단순히 코드를 작성하는 것에 국한되지 않습니다 — 코딩에 매우 능숙할 뿐인 범용 작업 에이전트(general-purpose task agent)입니다.

Windows, macOS 또는 Linux에서 실행되며, 모든 터미널(PowerShell, bash, zsh 등)에서 사용할 수 있습니다. 모든 OpenAI 호환 API 또는 Anthropic API와 연동되므로 특정 제공업체에 종속되지 않습니다. 또한 풍부한 터미널 TUI(Text User Interface)와 브라우저 기반의 Web UI라는 두 가지 인터페이스를 제공하며, 이들은 동일한 세션과 엔진을 공유합니다.

Codemini는 한 세션에서 두 개의 모델을 사용할 수 있습니다: 라우팅(routing) 및 간단한 작업을 위한 경량 모델과 복잡한 추론(reasoning)을 위한 대형 모델을 활용합니다. 두 모델을 모두 설정하면 시스템이 적절한 모델로 작업을 배분합니다.

기타 내장된 기능으로는 프로젝트 인덱싱(project indexing), /reflect를 통한 자기 진화형 지속성 메모리(persistent memory), 기술 기반 워크플로우(skill-based workflows), 계획 모드(planning mode), 승인(approvals), 그리고 동작은 바꾸지 않으면서 어조(tone)만 변경하는 소울 프리셋(soul presets) 등이 있습니다.

SaaS 없음. 텔레메트리(telemetry) 없음. 필수 가입 없음.

많은 코딩 에이전트들이 더 많은 도구, 더 많은 컨텍스트, 더 많은 자동화를 추구하며 끊임없이 확장되는 인터페이스를 지향합니다. Codemini는 그 반대의 접근 방식을 취합니다.

작은 의존성 발자국 (Small dependency footprint). 집중된 npm 패키지 세트만 사용합니다. Electron, Docker, Python 런타임이 필요 없습니다.

관리되는 컨텍스트 예산 (Managed context budgets). 마이크로 압축 (Micro-compaction), 도구 결과의 디스크 스필 (tool-result spill-to-disk), 프롬프트 사전 점검 트리거 (prompt preflight triggers) — 모델의 컨텍스트 윈도우 (window) 내에 머물도록 설계되었습니다.

이중 모델 디스패치 (Dual-model dispatch). 경량 모델(라우팅 및 단순 작업용)과 프론티어 모델 (frontier model, 복잡한 추론용)을 함께 구성합니다. 작업은 자동으로 적절한 모델에 전달됩니다.

비례적 승인 (Proportional approvals). 명령은 의도에 따라 분류됩니다. 읽기 전용 작업은 그대로 통과하며, 파괴적인 작업은 확인을 요청합니다. 사용자가 임계값을 제어합니다.

지연 로딩되는 기술 (Lazy-loaded skills). 1,000개의 기술 카탈로그가 있어도 비용은 1개와 같습니다. 호출된 기술만이 프롬프트에 기여합니다.

자기 진화형 큐레이션 메모리 (Curated memory with self-evolution). Inbox는 설계상 일시적입니다. Dream loop가 이를 큐레이션하며, /reflect 명령은 성공적인 패턴을 재사용 가능한 기술로 변환합니다.

이는 기능을 적게 제공하려는 것이 아닙니다. 당신이 짊어질 필요가 없는 것들을 제거하는 것에 관한 것입니다.

AGENTS.md, 자동 기술 (auto skill), 메모리 스냅샷, 프로젝트 컨텍스트를 포함한 실제 프로젝트의 전형적인 첫 번째 턴 시스템 프롬프트는 약 **5,300 토큰 (tokens)**이 소요됩니다. 세부 내역은 다음과 같습니다:

기본 시스템 프롬프트 (base system prompt) 2,703 tokens ████████████████░░░░░░░░░ 51%
AGENTS.md 프로젝트 규칙 535 tokens ███░░░░░░░░░░░░░░░░░░░░░ 10%
자동 기술 (auto skill, superpowers) 1,371 tokens ████████░░░░░░░░░░░░░░░░ 26%
...

대조적으로, 많은 대안은 사용자의 첫 메시지가 전달되기 전에 **15K–25K 토큰 (tokens)**의 시스템 프롬프트를 전달합니다. 설치된 모든 기술, 저장된 메모리, 규칙 파일이 무조건적으로 쏟아져 들어갑니다.

Codemini의 절제는 아키텍처(architectural)적인 것입니다:

기술(Skills)은 지연 로딩(lazy-load)됩니다. 10개의 기술이 설치되어 있어도 시스템 프롬프트(system prompt) 비용은 0개일 때와 동일합니다. 선택된 기술의 본문만 로드됩니다.

메모리는 큐레이션(curated)됩니다. 인박스(Inbox)는 일시적인 노이즈일 뿐이며, 승격된 메모리만이 프롬프트에 들어갑니다. 사용자가 그 양을 제어합니다.

프로젝트 인덱스는 컴팩트(compact)합니다. 심볼 맵(Symbol maps)이 가공되지 않은 파일 트리(file trees)를 대체합니다. 전체 저장소(repository)가 단 몇 백 개의 토큰(tokens) 안에 들어갑니다.

숨겨진 페이로드(payloads)가 없습니다. 텔레메트리(telemetry) 스크립트, 사용 추적기, 요청하지 않은 주입된 컨텍스트(injected context)가 전혀 없습니다.

원칙은 간단합니다: 프롬프트 세금(prompt tax)이 적을수록 실제 작업을 위한 예산이 더 많아집니다.

# 전역 설치 (Install globally)
npm install -g codemini-cli
# 게이트웨이 설정 (Configure your gateway)
...

세 가지 명령어로 대화형 세션(interactive session)에 진입할 수 있습니다.

Codemini의 codemini run 명령은 어떤 자연어 작업(natural-language task)이라도 자동화된 워크플로(workflow)로 전환합니다 — 코딩은 필요하지 않습니다.

# 대화형 세션 (chat)
codemini "Summarize the recent Git history and write a CHANGELOG.md"
# 일회성 작업 (One-off task)
...

일반적인 비코딩(non-coding) 작업 예시:

작업명령
시스템 진단 (System diagnostics)codemini run "Check disk usage, top 5 memory processes, and recent error logs"
Git 일괄 작업 (Git batch operations)codemini run "Squash the last 3 commits with message 'fix: pagination edge cases'"
데이터 마이그레이션 (Data migration)codemini run "Read users.csv, normalize emails, deduplicate by ID, write to users.json"
릴리스 준비 (Release prep)codemini run --pipeline "Bump patch version, update CHANGELOG, git tag, build"
의존성 감사 (Dependency audit)codemini run "List all outdated npm packages and summarize breaking changes"
프로젝트 정리 (Project cleanup)codemini run "Find orphaned test fixtures and temporary debug logs"

--harness 플래그는 도구 접근을 제한하는 역할(role) (planner, advisor, coder, reviewer, tester)을 할당합니다. --pipeline 플래그는 각 단계의 출력이 다음 단계의 입력이 되는 다단계 계획(multi-step plan)을 실행합니다. 두 모드 모두 Codemini를 헤드리스 작업 에이전트(headless task agent)로 변모시킵니다 — Claude Code와 유사하지만, 사용자의 머신에서, 사용자의 모델로, 사용자의 승인 정책(approval policy) 하에 완전히 실행됩니다.

기능중요성
🧠 지속적 메모리 (Persistent Memory)/capture → 인박스 (inbox) → 꿈의 통합 (dream consolidation) → 사용자, 글로벌 및 프로젝트 메모리 계층. 에이전트가 사용자의 프로젝트로부터 학습합니다.
📂 프로젝트 인덱스 (Project Index)언어, 심볼 (symbols), 임포트 (imports) 및 엑스포트 (exports)를 포함하는 자동 .codemini/ 인덱스. 모든 편집 후 점진적으로 갱신됩니다.
🛠 스킬 시스템 (Skills System)지연 로딩 (lazy-loaded)되는 SKILL.md 본문과 분리된 라우팅 메타데이터. 자신만의 워크플로를 가져오거나 내장된 프리셋 중에서 선택할 수 있습니다.
🔄 자기 진화 (Self-Evolution)/reflect를 통해 성공적인 워크플로를 재사용 가능하고 검토 가능한 SKILL.md 파일로 변환합니다. 도구 세트가 프로젝트와 함께 성장합니다.
⚡ 이중 모델 디스패치 (Dual-Model Dispatch)성능이 뛰어난 프런티어 모델 (frontier model)과 함께 빠르고 가벼운 모델을 구성합니다. 시스템이 각 작업을 적절한 모델로 라우팅합니다.
🖥 터미널 TUI스피너 애니메이션, 구문 강조 (syntax-highlighted) 코드 블록, 실시간 명령 출력 및 실시간 상태를 제공하는 풍부하고 대화형인 터미널 UI.
🕸 웹 UI (Web UI)전체 브라우저 인터페이스 — 동일한 엔진, 세션 공유. 터미널과 브라우저 사이를 자유롭게 전환할 수 있습니다.
🎭 소울 (Souls)실행 정책에는 영향을 주지 않으면서 표현 방식만 바꾸는 톤 프리셋 (professional, playful, anime, caveman …).
📋 계획 모드 (Planning Mode)파일 경로, 검증 단계 및 실행 전 명시적 승인을 포함하는 다단계 계획.
🔒 승인 (Approvals)위험 수준에 따라 분류된 명령. 읽기 전용은 통과되며, 파괴적인 작업은 확인을 위해 일시 중지됩니다. 임계값(thresholds) 설정 가능.
💾 세션 체크포인트 (Session Checkpoints)세션 상태를 저장, 브랜치 또는 재생합니다. 충돌 및 모델 오류 발생 시에도 컨텍스트가 보존됩니다.
🌍 크로스 플랫폼 (Cross-Platform)Windows의 PowerShell, macOS 및 Linux의 bash/zsh — 동일한 도구, 동일한 설정 형식, 동일한 동작.

스킬 (Skills)은 재사용 가능하고 검토 가능한 워크플로 레시피입니다. 내장 기능:

스킬 (Skill)사용 시점
using-superpowers기본 스킬 라우터 (router): 어떤 개발 워크플로를 적용할지 결정합니다.
brainstorming여러 접근 방식이 타당할 때 옵션들을 비교합니다.
systematic-debugging버그, 실패하는 테스트, 그리고 예상치 못한 동작을 조사합니다.
test-driven-development집중적인 테스트와 함께 동작 변경 사항을 구현합니다.
verification-before-completion작업이 완료되었다고 선언하기 전에 작업을 검증합니다.
codemini skill list
codemini skill install <path>
codemini skill inspect <name>
...

스킬 (Skills)은 가벼운 라우팅 메타데이터인 description, mode, triggers, enabled, priority를 포함하는 평면 카탈로그 (codemini.skills.json)를 사용합니다. Codemini는 시작 시 이 메타데이터만 읽으며, 전체 SKILL.md는 스킬이 선택되거나 호출될 때만 로드됩니다. 카탈로그가 없는 경우, 시스템은 SKILL.md의 프론트매터 (frontmatter)로 대체(fallback)됩니다.

활성화된 모든 스킬은 세션 내에서 슬래시 명령 (slash command)으로 호출하거나, 일회성 프롬프트로 슬래시 명령을 전달할 수 있습니다:

# 대화형 세션 내부에서
/requesting-code-review 내가 태그를 달기 전에 이 릴리스 계획을 검토해줘
/plan OAuth 리프레시 토큰 회전 (refresh-token rotation) 기능을 자동으로 추가해줘
...

Codemini는 동일한 엔진으로 구동되는 **두 가지 인터페이스 (surfaces)**를 제공합니다.

터미널 TUI (Terminal TUI) — 오래 걸리는 작업을 위한 스피너 애니메이션, 구문 강조 (syntax-highlighted) 코드 블록, 실시간 명령 출력 스트리밍, 그리고 자동 완성이 포함된 커맨드 팔레트 (command palette)를 갖춘 풍부한 대화형 인터페이스입니다. 모든 터미널 에뮬레이터에서 실행되며, 별도의 프로세스가 필요하지 않습니다.

웹 UI (Web UI) — 동일한 세션 상태를 공유하는 완전한 브라우저 인터페이스입니다:

codemini --web

세션은 터미널과 브라우저 간에 공유되므로 자유롭게 전환할 수 있습니다. 활성화된 CLI 세션에서 web을 입력하면 브라우저 UI가 실행됩니다.

추가적인 웹 UI 옵션 (포트, 프로젝트 디렉토리, 세션, 모델)은 --port, --project, --session, --model, --no-open과 같은 플래그 (flags)를 통해 사용할 수 있습니다.

소울 (Souls) — 동작을 바꾸지 않고 에이전트의 말투 (tone)를 변경합니다. 내장된 프리셋 (presets): default, professional, ceo, playful

, anime

, caveman

, pirate.

codemini config set soul.preset professional 명령어로 설정합니다.

Codemini의 메모리 시스템은 단순히 사실을 저장하는 것이 아니라, 사용자의 작업으로부터 학습하도록 설계되었습니다.

명령어목적
/capture <summary>인박스 (inbox)에 신호 (signal)를 기록합니다.
/inbox대기 중인 메모리 증거 (memory evidence)를 검토합니다.
/dream [--dry-run]인박스 항목들을 영구적인 사용자/전역/프로젝트 메모리로 통합합니다.
/reflect성공적인 워크플로우 패턴을 검토 가능한 SKILL.md로 변환합니다 — 작업함에 따라 사용자의 도구 세트가 진화합니다.

인박스는 의도적으로 소음이 많습니다 (noisy). 드림 루프 (dream loop)는 무엇이 장기 저장소로 승격될 가치가 있는지를 결정합니다. 그리고 /reflect는 이 루프를 완성합니다: 사용자가 성공적으로 반복한 패턴은 프로젝트와 함께 검토되고 버전 관리되는 재사용 가능한 기술 (skill)이 됩니다.

전형적인 reflect 루프:

# 1. 잘 작동한 워크플로우를 마친 후, Codemini에게 패턴 추출을 요청합니다.
/reflect preserve the provider tool-call recovery workflow from the last task
# 2. TUI/Web UI에서 생성된 초안을 검토합니다.
...

워크플로우가 여러 저장소(repositories)에 걸쳐 유지되어야 할 때는 --scope=global을 사용하세요:

/reflect --scope=global turn the release checklist I just used into a reusable skill
codemini '/release-checklist prepare a patch release'

Codemini는 사용자가 작업하는 모든 프로젝트에 대해 가볍지만 정밀한 코드 인덱스 (code index)를 구축합니다. 단순한 정규 표현식 (regex)이나 줄 수 세기가 아닌, **Tree-sitter AST 파싱 (AST parsing)**을 사용하여 심볼 (symbols)을 추출합니다.

파일내용
.codemini/project-map.json언어, 소스 루트 (source roots), 테스트 디렉토리, 엔트리 후보, 저장소 정보.
.codemini/file-index.json파일별 임포트 (imports), 엑스포트 (exports), 함수 및 클래스 선언, 인터페이스, 타입 별칭 (type aliases) — 언어 인식 AST 쿼리를 통해 추출됨.

이 인덱스는 시스템 내의 모든 코드 인식 도구의 기반이 됩니다:

파일 맵 (file map)을 사용하여 파일 시스템을 건드리기 전에 관련 없는 디렉토리 (node_modules, 빌드 결과물, .git)를 건너뜁니다. grepglob

심볼 타겟(symbol targets)을 정확한 라인 및 컬럼 범위로 해석하여, 수동적인 오프셋 계산 없이도 정밀한 편집(surgical edits)을 가능하게 합니다. ast_query

/read_ast_node

커서 위치를 중심으로 둘러싸고 있는 함수 본문이나 클래스 정의를 반환할 수 있습니다. read

AST 컨텍스트와 함께

인덱스 최신 상태는 점진적으로 유지됩니다. 모든 edit, write, 또는 patch 호출 이후에 영향을 받은 파일만 다시 파싱되고 해당 인덱스 항목이 교체됩니다. 모든 변경 시마다 전체를 다시 빌드하지 않습니다.

언어 지원은 JavaScript, TypeScript, TSX, Python, Go, C, C++, Rust, Java, C#, PHP, Ruby, Bash를 포함하며, 각 언어는 전용 Tree-sitter 문법을 사용합니다.

범위경로
전역 세션 (Global sessions)<base-config-dir>/sessions/
...
기본 설정 디렉토리는 CODEMINI_GLOBAL_DIR 환경 변수를 통해 재정의할 수 있습니다.

FFF 검색 가속화: codemini doctor는 시스템 PATH에서 fff-mcp를 확인하고, 더 빠른 grep, glob, 그리고 선택된 list 작업을 위해 이를 사용합니다. 사용 불가능할 경우 내장 검색 기능으로 대체됩니다.

JavaScript 비중이 높은 페이지를 위한 Playwright 렌더링:

npm install -g playwright
playwright install chromium
npm install
npm test
npm start

프로덕션용 Web UI 번들을 빌드합니다:

npm run build:web

  • OPERATIONS.md — 일일 운영 매뉴얼
  • deployment.md — 패키징, 설치, 배포
  • Releases

의도적으로 절제된 코딩 + 작업용 CLI입니다. 단순히 코드를 작성하는 것을 넘어 Git 워크플로우 자동화, DevOps 파이프라인, 데이터 배치 처리, 시스템 진단까지 모두 수행할 수 있습니다.

Windows PowerShell, macOS zsh, Linux bash 등 다양한 터미널 환경과 호환됩니다. 특정 모델이나 제공업체에 종속되지 않으며, 모든 OpenAI 호환 API 또는 Anthropic API와 호환됩니다. Ink + React로 구축된 터미널 TUI와 브라우저 Web UI라는 이중 인터페이스를 제공하며, 두 인터페이스는 동일한 엔진과 세션을 공유합니다.

대형 및 소형 모델의 협업을 지원합니다. 경량 모델을 설정하여 라우팅 및 간단한 작업을 처리하고, 대형 모델이 복잡한 추론을 담당하도록 시스템이 자동으로 스케줄링합니다.

기타 내장 기능으로는 프로젝트 인덱싱, 지속적 기억(persistent memory) 및 /reflect를 통한 자기 진화, 스킬 워크플로우, 계획 모드, 승인 메커니즘, 그리고 행동은 바꾸지 않고 어조만 바꾸는 인격 프리셋(Souls) 등이 있습니다.

SaaS 불필요, 텔레메트리(telemetry) 불필요, 회원가입 불필요.

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub AI Coding Assistants의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0