<div align="center">
<img src="https://raw.githubusercontent.com/sorkila/tintpad/HEAD/docs/assets/icon.png" width="116" alt="Tintpad" />
Tintpad
노치(notch)에서 떨어져 나옵니다.
A free, open source macOS launcher for Claude Code and Codex (Claude Code와 Codex를 위한 무료 오픈 소스 macOS 런처).<br/>
단축키(Hotkey), 저장소(repo), Enter 키. 터미널이 해당 저장소에서 열리며 에이전트가 이미 실행된 상태입니다.
macOS용 다운로드
· brew install --cask sorkila/tap/tintpad
CI
Latest release
macOS 14+
License: MIT
<a href="https://tintpad.com"><img src="https://raw.githubusercontent.com/sorkila/tintpad/HEAD/docs/assets/demo.gif" alt="Tintpad demo: a black drop hangs from the MacBook notch with repo names inside. Keycaps show each shortcut as it is pressed: ⌥⌘Space summons it, → walks a white chip through the repos, tab switches the agent between Claude Code and Codex, and ⇧tab turns the MODE chip red for Skip permissions" width="100%" /></a>
</div>
설치 (Install)
Tintpad.dmg 다운로드
(서명 및 공증됨, macOS 14 이상) 또는 위의 brew 명령어를 사용합니다. Homebrew는 tap을 신뢰할지 한 번 요청하므로, 예라고 답하세요 (brew trust sorkila/tap를 미리 실행하면 됩니다).
또는 직접 빌드할 수 있습니다 (Swift 6, Xcode 16+):
git clone https://github.com/sorkila/tintpad.git && cd tintpad
swift run
./Scripts/package.sh
30초 만에 사용하기 (Thirty seconds)
- Tintpad를 실행합니다. 설정(Setup)에서 저장소(repos)가 위치한 곳과 사용할 터미널을 지정합니다.
- 아무 곳이나 <kbd>⌥⌘Space</kbd>를 누릅니다. 노치에서 저장소가 담긴 방울이 떨어집니다.
- 몇 글자를 입력하고 <kbd>⏎</kbd>를 누릅니다. 터미널이 해당 저장소에서 열리며 두 개의 칩(chips)에 표시된 대로 실행됩니다.
에이전트를 가져오세요: 먼저 claude, codex 또는 다른 에이전트 CLI를 설치해야 합니다.
기능 (What it does)
- 드롭(drop). 검은색 바탕에 검은 글씨로, 하우징에서 바로 나옵니다. 노치(notch)가 없나요? 메뉴 바 아래에 걸쳐 있습니다.
- 사용자의 터미널입니다. 새로운 것이 아닙니다. Ghostty, iTerm2, kitty, WezTerm, Alacritty, Terminal 또는 Warp와 같은 터미널을 에이전트가 실행되는 리포지토리(repo)에서 엽니다. Warp는 커맨드 API가 없기 때문에, 리포를 가져오고 클립보드는 커맨드를 받습니다.
- 계약(contract). 두 개의 칩은 Return이 정확히 무엇을 실행하는지 에이전트 자신의 말로 알려줍니다. 권한 우회 모드(mode)는 가장 먼저 빨간색으로 표시되며, 모든 경로에서 발동하기 전에 질문할 수 있습니다.
- 빈도수(Frecency). 실제로 사용하는 리포지토리들이 떠오르며, 마지막에 사용했던 에이전트와 모드가 함께 표시됩니다.
- 워크트리(Worktrees) 및 디스패치(dispatch). <kbd>⌃W</kbd>를 누르면 에이전트가 내장된 새로운 브랜치 체크아웃을 할 수 있으며 (<kbd>⌘0</kbd>)은 그곳에서 대화를 계속합니다. <kbd>⌃⏎</kbd>를 누르면 백그라운드에서 실행되고 완료되면 알림(ping)을 받습니다.
- 모든 에이전트. Claude Code와 Codex는 설정되어 제공됩니다. CLI가 있는 다른 모든 것은 한 줄이면 됩니다. Configure를 참조하세요.
- 나머지 기능. 프롬프트 라이브러리, 리포별 프리셋, GitHub 가져오기(import), 편집기에서 열기 등의 기능이 있습니다.
- 배려심 깊은 설계(Polite). Dynamic Type, VoiceOver, Reduce Motion을 지원합니다. 로컬 전용이며 계정이나 원격 측정(telemetry)이 없습니다.
또한 조용한 문제를 해결합니다. GUI 앱은 셸의 PATH를 상속받지 못하기 때문에, 더블 클릭된 앱이 claude를 전혀 찾을 수 없습니다. Tintpad는 로그인 셸(login shell)을 한 번 읽고 넘어갑니다.
Return이 아무것도 하지 않는 경우
권한 문제 때문입니다. 실행 문제가 발생하면 드롭(drop)에 빨간색 선으로 표시되며, 이 선에서 Return을 누르면 올바른 시스템 설정(System Settings) 패널이 열립니다. 접근성(Accessibility)에 Tintpad가 켜져 있다고 나오지만 아무 일도 일어나지 않는다면, macOS가 오래된 권한 부여(stale grant)를 가지고 있는 것입니다. 마이너스 버튼으로 Tintpad를 제거하고 다시 추가한 후 재시작하세요.
키(Keys)
| Key | Action |
|---|
| <kbd>⌥⌘Space</kbd> | 소환 (설정 → 키) |
| ... | |
| <kbd>⌘</kbd>를 잠시 누르고 있으면 드롭(drop)에 각 리포지토리의 번호와 각 칩의 키가 표시됩니다. 메뉴 바의 팔레트 키(Palette keys) 메뉴와 설정(Settings) → 키(Keys) 목록에서 이 표를 확인할 수 있습니다. | |
에이전트는 변수가 포함된 커맨드 템플릿일 뿐입니다. **설정(Settings) → 에이전트(Agents)**에서 설정하세요:
변수: {repoPath} {repoName} {branch} {remote} {prompt} {mode} {shell} {worktreePath} {continue}. 삽입된 모든 값은 실행되기 전에 정리(sanitized)되고 셸 따옴표 처리(shell-quoted)됩니다.
<kbd>⌃R</kbd> 및 <kbd>⌘0</kbd>을 실행하면 에이전트의 Continue 폼(Claude Code의 경우 --continue, Codex의 경우 resume --last)이 {continue}에서, 또는 템플릿에 슬롯이 없는 경우 바이너리 직후에 실행됩니다. 이를 지원하지 않는 에이전트는 그렇게 명시하고 아무것도 실행하지 않습니다. 에이전트는 디렉터리별로 대화를 유지하므로, 작업 공간(worktree)으로 시작된 세션은 그곳에서 계속되며, claude -w 작업 공간에 있는 세션은 Tintpad의 시야 밖에 있습니다.
기여하기 (Contributing)
PR을 환영합니다. 특히 새로운 터미널 어댑터가 좋습니다. 각기 하나의 프로토콜과 하나의 구조체(struct)를 추가해 주세요. CONTRIBUTING.md와 docs/ARCHITECTURE.md를 참조하세요.
함께 사용하기 (Pairs with)
Lockpaw는 이 루프의 다른 절반입니다. Tintpad가 에이전트를 시작하면, Lockpaw는 에이전트가 실행되는 동안 화면을 덮고 필요할 때 빛을 발합니다. 또한 무료이며 MIT 라이선스입니다.
지원 (Support)
전체 시스템이 무료이며 MIT 라이선스입니다. 잠금 해제할 것이 없고, Pro 버전도 없습니다. 만약 이 도구가 아침 시간을 절약해 준다면, GitHub에서 후원해주세요 →
라이선스 (License)
MIT © 2026 Erik Nielsen (Sörkila).