내 컴퓨터에서 실행되고,
내가 직접 다룰 수 있는
로컬 AI 에이전트
TARS는 Go 기반 단일 바이너리로 실행되는 로컬 AI 에이전트 런타임입니다. 브라우저 콘솔에서 에이전트의 작업 흐름, 메모리, 스케줄 작업, Git 변경사항, 실행 기록을 직접 확인하고 제어할 수 있습니다.
내 컴퓨터에서 함께 일하는
AI 에이전트
TARS라는 이름은 영화 인터스텔라의 TARS에서 따왔습니다. 실용적이고 직설적이며, 복잡한 상황에서도 제 역할을 해내는 존재죠. TARS는 그런 방향을 지향합니다.
클라우드 어딘가에서 돌아가는 알 수 없는 에이전트가 아니라, 내 컴퓨터에서 실행되고 내가 직접 보고 다룰 수 있는 로컬 AI 에이전트입니다. 대부분의 AI 에이전트 도구는 CLI 중심이거나 얇은 웹 UI를 덧붙인 형태인 반면, TARS는 브라우저 콘솔을 중심으로 설계되어 있습니다. 채팅, 서브에이전트, 스케줄 작업, 메모리 검토, Git 변경사항, 실행 흐름, 승인 대기 작업이 각각의 화면으로 분리되어 있습니다.
에이전트가 내 파일과 도구를 다루는 만큼, 그 과정을 직접 확인하고 필요할 때 개입할 수 있어야 한다는 전제에서 출발했습니다. 확장 구조도 가볍게 유지합니다 — 스킬은 필요할 때만 로드되고, 플러그인과 MCP 서버는 명시적으로 허용된 경우에만 사용됩니다. 시스템 프롬프트는 작게 유지되고, 에이전트는 현재 작업에 집중할 수 있습니다.
에이전트가 일하는 과정을
직접 확인하는 공간
많은 로컬 에이전트 도구는 CLI 하나로 끝납니다. TARS는 브라우저 콘솔을 중심 인터페이스로 사용합니다. 127.0.0.1:43180/console을 열면, 단순한 상태 페이지가 아니라 실제로 에이전트를 확인하고 제어할 수 있는 화면을 만나게 됩니다.
Mission Control
Pulse, Reflection, 플랜, 런타임 실행, Cron 작업, 디스크 상태, 세션, 권장 설정 작업을 한 화면에서 확인. 에이전트의 상태와 진행 중인 작업을 빠르게 파악할 수 있습니다.
Chat
Sessions, Tasks, Health, Git Inspector, Skill Inbox, Cron, Prior Context 패널을 도크. 메시지 단위로 세션을 분기. 첫 턴에서는 작업에 맞는 모델 티어를 추천합니다.
Lineage
대화와 작업 흐름을 Git 로그처럼 트리 구조로 확인. 어느 메시지에서 분기했는지 미리보기. 부모 대화는 그대로 두고 분기 인사이트만 Memory Inbox로 승격.
Memory
에이전트가 장기 기억으로 저장하려는 내용을 저장 전 검토. Markdown으로 직접 편집. Tool path와 Prefetch path 리콜 결과를 비교해 어떤 정보가 참조되는지 확인.
Agent Runtime
리스트, 트리, Gantt, 인터랙티브 Flow 그래프 4가지 뷰. Replay 스크러버, 비용 흐름, 파일 어텐션, Git diff 타임라인, 체크포인트 재시작.
Approvals
위험한 정리 작업과 Git 변경을 적용 전 검토. 승인 대기 작업을 사용자가 결정. Automation Audit 로그가 모든 결정을 보관해 나중에 다시 확인할 수 있습니다.
Analytics
토큰 사용량, 모델별 비용, 도구·스킬 호출 횟수. 일별 사용량과 비용 흐름. 헤더에는 일일 예산 칩.
Extensions
Skill Creator와 MCP Server Creator로 확장을 만들고 샌드박스 테스트. 허브 설치 시 점수, 마지막 업데이트, 테스트 통과 여부, 설치 수가 함께 표시됩니다.
핵심은 작게,
필요한 기능은 선택적으로
TARS는 모든 기능을 한꺼번에 시스템 프롬프트에 밀어 넣지 않습니다. 기본 런타임은 작게 유지하고, 나머지는 스킬과 플러그인으로 분리합니다.
서브에이전트 오케스트레이션
리서치/플래닝용 읽기 전용 서브에이전트 실행. 작업별 모델 티어 라우팅, 허용 정책, 깊이 제어. 병렬 실행과 비교 모드.
영속 메모리
Gemini 임베딩 시맨틱 검색을 갖춘 Markdown 메모리. 일일 로그, 검토된 경험, 야간 Reflection을 디스크에 저장. 저장 전 검토를 거쳐 어떤 정보가 장기 기억으로 남을지 사용자가 결정합니다.
Pulse 감시 루프
주기적으로 런타임 상태를 점검. Cron 실패, 멈춘 실행, 디스크 압력, Telegram 오류를 감지. 필요할 때만 좁은 범위로 LLM을 호출합니다.
야간 Reflection
02:00–05:00 사이에 세션에서 경험과 기억 후보를 추출. 빈 세션 정리, 메모리 후보 갱신. Go 코드 중심으로 동작하며 LLM 도구 표면을 직접 사용하지 않습니다.
스케줄 작업
30초 단위 틱 기반 스케줄러. Cron 표현식과 @at 일회성 트리거. 작업별 실행 기록과 상태 관리 제한값을 제공.
3-Tier LLM 라우터
Heavy / Standard / Light 세 티어. 역할은 티어에 연결, 프로바이더와 모델은 설정에서 관리. 작업 성격에 따라 가벼운 모델과 강한 모델을 골라 쓸 수 있습니다.
Skills, Plugins, MCP
스킬은 Markdown 설명과 실행 가능한 CLI로 구성. 호출될 때만 로드되어 시스템 프롬프트가 작게 유지됩니다. Plugins은 명시적으로 허용된 경우에만 사용, MCP는 클라이언트로 지원.
멀티 채널 I/O
브라우저 콘솔 외에도 Telegram 양방향 메시징, 인바운드 웹훅, macOS Assistant 팝업, 스크립트용 로컬 API.
TARS는 어떤 지점을 다르게 보는가
이 영역에는 이미 좋은 다른 두 프로젝트 — OpenClaw와 Hermes Agent가 있습니다. 각자 초점이 있고, TARS는 다음 지점을 특히 중요하게 봅니다.
| 항목 | OpenClaw | Hermes Agent | TARS |
|---|---|---|---|
| 언어 | TypeScript | Python | Go (단일 바이너리) |
| 주 인터페이스 | CLI | CLI + API | 브라우저 콘솔 (CLI / Telegram / 웹훅 포함) |
| 서브에이전트 | ACP + 서브에이전트 런타임, Docker 샌드박스 | ThreadPoolExecutor (max 3), 단발 프롬프트 | 작업별 모델 티어, 허용 정책, 깊이 제어 |
| 모델 라우팅 | 에이전트별 모델 오버라이드 | 자식별 오버라이드, MoA (4개 프론티어 모델) | 3-티어 번들 (heavy/standard/light), 역할→티어 매핑 |
| 메모리 | 세션 트랜스크립트 | Honcho/Holographic 플러그인 훅 | Markdown + 시맨틱 + 저장 전 검토 + 야간 Reflection |
| 백그라운드 | — | — | Pulse 감시 루프 (1분) + 야간 Reflection 배치 |
| 스케줄링 | — | — | 세션 바운드 cron + 감사 로그 |
| 확장성 | 빌트인 도구 | 툴셋 | 스킬 + 동반 CLI + 허용 기반 plugins/MCP |
이 비교는 TARS 관점에서 의도적으로 단순화한 것입니다. 각 프로젝트의 소스를 직접 보고 본인의 관점을 만드세요.
하나의 바이너리,
분리된 도구 표면
TARS는 하나의 바이너리 안에서 실행되지만, 모든 도구를 같은 방식으로 노출하지 않습니다. 채팅에서 사용하는 도구와 런타임 내부 도구를 분리합니다. ops_, pulse_, reflection_ 계열은 일반 채팅에서 직접 호출할 수 없으며, 런타임 내부 동작용으로 예약되어 있습니다. Pulse는 제한된 Go 인터페이스만 사용하며 LLM은 필요할 때만 호출, Reflection은 결정론적으로 동작합니다.
┌─ cmd/tars (cobra) ──────────────────────────────────────┐
│ serve · service · init · doctor · status · cron · ... │
└──────────────────────────┬──────────────────────────────┘
│
┌──────────────▼──────────────┐
│ tarsserver (127.0.0.1:43180) │
└──┬─────────┬──────────┬──────┘
│ │ │
┌───────▼──┐ ┌────▼─────┐ ┌──▼─────────┐
│ chat │ │ pulse │ │ reflection │
│ agent │ │ watchdog │ │ nightly │
└────┬─────┘ └────┬─────┘ └────┬───────┘
│ │ │
┌────▼────────────▼────────────▼─┐
│ memory · cron · ops · llm │
└────────────────────────────────┘세 단계로 시작하기
처음 실행하면 설정 마법사가 LLM 프로바이더와 모델 티어 구성을 안내합니다. LLM 설정이 완료되기 전까지 콘솔은 설정 전용 모드로 실행됩니다.
설치
macOS / Linux — 콘솔이 포함된 사전 빌드 바이너리
brew tap devlikebear/tap brew install devlikebear/tap/tars
워크스페이스 초기화
tars init
서버 시작
Ctrl+C 누를 때까지 터미널에서 실행됩니다.
tars serve # console at http://127.0.0.1:43180/console