{"_id":"@3xhaust/kodex","name":"@3xhaust/kodex","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@3xhaust/kodex","version":"0.1.0","description":"Korean-native wrapper for Codex CLI. Type Korean, Codex reads English, replies Korean.","type":"module","bin":{"kodex":"dist/index.js"},"scripts":{"build":"tsc && chmod +x dist/index.js","dev":"tsx src/index.ts","start":"node dist/index.js","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","check":"biome check src","format":"biome format --write src","lint":"biome lint src","typecheck":"tsc --noEmit","prepublishOnly":"npm run check && npm run typecheck && npm test && npm run build"},"engines":{"node":">=20"},"keywords":["codex","codex-cli","korean","translation","cli","wrapper"],"author":{"name":"3xhaust"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/3x-haust/Kodex.git"},"homepage":"https://github.com/3x-haust/Kodex#readme","bugs":{"url":"https://github.com/3x-haust/Kodex/issues"},"publishConfig":{"access":"public"},"dependencies":{"@anthropic-ai/sdk":"^0.100.1","@xterm/headless":"^5.5.0","node-pty":"^1.2.0-beta.13"},"devDependencies":{"@biomejs/biome":"^2.4.16","@types/node":"^22.0.0","@vitest/coverage-v8":"^4.1.7","tsx":"^4.19.0","typescript":"^5.6.0","vitest":"^4.1.7"},"gitHead":"5c1fef2ae1928636c65e6af3f9111eb86d5de03a","_id":"@3xhaust/kodex@0.1.0","_nodeVersion":"24.11.0","_npmVersion":"11.6.1","dist":{"integrity":"sha512-DbqkrJST7OGQoreABew+FF0cCSbRGy3f6yUzifvLm1vhHYOWzkkFt/FfVwnZnl+NLuhEvEFGLP3vXzGhjTPLOg==","shasum":"de6c2aceab055d76df9eddc52592811063215a28","tarball":"https://registry.npmjs.org/@3xhaust/kodex/-/kodex-0.1.0.tgz","fileCount":28,"unpackedSize":169085,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD78GIYdAgvPnSTGq2uzYbdOwSLjQrSxBGEXekpK4XDwAIgV0iUEAiZysqqhK1RvTYzzJ6rzVrvsFm5kqHAGCrDj9M="}]},"_npmUser":{"name":"3xhaust","email":"s2424@e-mirim.hs.kr"},"directories":{},"maintainers":[{"name":"3xhaust","email":"s2424@e-mirim.hs.kr"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/kodex_0.1.0_1781915639665_0.7006313927677168"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-20T00:33:59.458Z","0.1.0":"2026-06-20T00:33:59.839Z","modified":"2026-06-20T00:34:00.029Z"},"maintainers":[{"name":"3xhaust","email":"s2424@e-mirim.hs.kr"}],"description":"Korean-native wrapper for Codex CLI. Type Korean, Codex reads English, replies Korean.","homepage":"https://github.com/3x-haust/Kodex#readme","keywords":["codex","codex-cli","korean","translation","cli","wrapper"],"repository":{"type":"git","url":"git+https://github.com/3x-haust/Kodex.git"},"author":{"name":"3xhaust"},"bugs":{"url":"https://github.com/3x-haust/Kodex/issues"},"license":"MIT","readme":"# Kodex\n\n한국어로 자연스럽게 입력하면, `kodex`가 실제 `codex` CLI를 그대로 띄운 뒤 Enter 순간에만\n프롬프트를 영어로 번역해서 전달합니다. Codex는 영어 프롬프트를 읽고, 답변은 한국어로 하도록\n조용히 지시가 붙습니다.\n\n`kodex` 자체가 코딩 에이전트가 되는 것이 아니라, 실제 OpenAI Codex CLI 앞에 붙는 얇은\n인터셉트 레이어입니다.\n\n## 사용법\n\n```bash\nnpm install -g @3xhaust/kodex\n\nkodex\nkodex resume --last\nkodex -m gpt-5.5\nkodex --help\n```\n\n`kodex`가 직접 처리하는 서브커맨드가 아니면 모든 인자는 실제 `codex`로 그대로 전달됩니다.\n\n로컬에서 개발 중인 버전을 설치하려면:\n\n```bash\nnpm install\nnpm run build\nnpm install -g .\n```\n\n## 동작 방식\n\n```text\n사용자 키보드 -> node-pty -> codex\ncodex 출력    <- node-pty <- 화면 미러\n\nEnter 감지 -> 입력창 추출 -> 한국어면 번역 -> 입력창 교체 -> Enter 전달\n```\n\n- `codex` TUI는 그대로 사용합니다.\n- `/command`, `@path`, 코드 블록, URL은 번역에서 보호합니다.\n- 자동완성, 선택 메뉴, 모달, 첨부 마커에서는 Enter를 그대로 통과시킵니다.\n- `Ctrl+Enter`를 누르면 번역 없이 원문 그대로 제출합니다.\n- 번역 백엔드가 준비되지 않아도 실제 `codex`는 실행하고, 한국어는 원문 그대로 통과시킵니다.\n\n## 번역 백엔드\n\n기본 백엔드는 Codex입니다. `kodex`가 메인 인터랙티브 Codex 세션과 별개로 `codex exec --ephemeral`을\n짧게 호출해서 번역만 수행합니다. 그래서 Codex 로그인만 되어 있으면 별도 API 키 없이 동작합니다.\n\n```bash\nkodex\nkodex config set backend codex\nkodex config set backend codex:gpt-5.5\n```\n\nAnthropic Haiku나 로컬 Ollama 백엔드로 바꿀 수도 있습니다.\n\n```bash\nexport ANTHROPIC_API_KEY=...\nkodex config set backend haiku\n\nkodex config set backend ollama:gemma3:4b\nkodex model list\nkodex model use qwen2.5:7b\n```\n\n환경변수로도 지정할 수 있습니다.\n\n```bash\nKODEX_BACKEND=codex kodex\nKODEX_BACKEND=codex:gpt-5.5 kodex\nKODEX_BACKEND=ollama:gemma3:4b kodex\nKODEX_CODEX_BIN=/absolute/path/to/codex kodex\nKODEX_DUMP_POPUP=1 KODEX_DUMP_KEYS=1 kodex\n```\n\n설정과 로그는 `~/.kodex` 아래에 저장됩니다.\n\n## 명령\n\n```bash\nkodex config get\nkodex config set backend codex\nkodex config set backend haiku\nkodex config set backend ollama:gemma3:4b\nkodex config set debug true\n\nkodex glossary list\nkodex glossary add 리액트 React\nkodex glossary remove 리액트\n\nkodex install-rules\nkodex uninstall-rules\n```\n\n`install-rules`는 선택적으로 `~/.codex/AGENTS.md`에 토큰 절약 규칙 블록을 추가합니다.\n\n## 참고\n\n이 프로젝트는 [Leviosa-AI/klaude](https://github.com/Leviosa-AI/klaude)의 구조와 아이디어를\n참고해 Codex CLI용으로 만든 변형입니다. PTY 래핑, 화면 미러링, Enter 시점 번역 인터셉트,\n토큰 보호 전략의 큰 틀은 `klaude`에서 출발했습니다.\n\n원본 `klaude`는 MIT License로 배포되며, 원 저작권 고지는 이 저장소의 `LICENSE`에 보존되어\n있습니다.\n","readmeFilename":"README.md","_rev":"1-775eec19f6c96cc6563db7fdb15c5837"}