atomic-agent

Local AI RunnersCLITypeScript

★ 2,529주당 +123조회 4

무엇인가

Atomic Agent는 제어 루프와 상태를 사용자 머신에서 실행하는 데스크톱 조작형 AI 에이전트다. 호스팅 에이전트 서비스가 서버에서 돌리는 루프·승인·기억을 로컬 프로세스로 옮긴 자리에 해당한다. TypeScript로 작성된 CLI이며, HTTP 또는 Tauri 사이드카로 다른 애플리케이션에 내장할 수 있다.

어떻게 동작하나

동작은 한 번의 추론이 하나의 JSON 도구 호출 배열을 내는 구조로 돌아간다. 압축된 프롬프트를 로컬 모델에 보내고, 문법 검사로 형식을 고정한 JSON 배열을 받아 코어가 실행한다. 독립적인 읽기 작업은 병렬로 돌리고, 위험한 동작은 먼저 승인을 요청한다. 결과와 상태는 그대로 되붙이지 않고 요약해 압축한 뒤 다음 턴으로 넘기며, 응답·종료·취소·최대 스텝 한도까지 반복한다. 세션, 기억, 태스크, 트레이스, 스킬, 브라우저 프로필, 설정, .env 시크릿은 상태 디렉터리에 평문 파일과 SQLite로 저장되고 트레이스는 NDJSON으로 남는다. 외부 도구는 MCP로 호출한다.

무엇과 다른가

호스팅 에이전트와의 차이는 상태 소재지다. 세션·기억·트레이스가 벤더 서버가 아니라 사용자 디스크에 파일로 남고, 프롬프트를 직접 열어보고 트레이스 드리프트를 재생하고 스킬을 수정할 수 있다. 순수 llama.cpp/llama-server와의 차이는 루프의 유무다. llama-server는 추론만 내놓고, Atomic Agent는 그 위에서 도구 선택·승인·압축·중단 조건을 소유한다. 매 턴 컨텍스트를 통째로 재전송하는 단순 루프 대신 결과를 요약해 넘기므로 작은 양자화 모델에서도 다단계 작업이 유지된다.

어떻게 쓰나

설치 스크립트는 릴리스 아카이브를 내려받아 체크섬을 검증하고 CLI와 지원 자산(grammars/, 네이티브 프리빌드, 번들 ripgrep)을 설치하며, 바이너리 옆에 atag 단축 별칭을 만든다. 실행하면 TUI가 뜨고 Ctrl+N 또는 /window로 같은 디렉터리에 두 번째 에이전트 창을 열 수 있다. 다른 에이전트에서 옮겨오려면 TUI의 /import 또는 셸의 atomic-agent import를 쓰며, Hermes·OpenClaw·Claude Code·Codex의 스킬·기억·MCP 서버·세션·크론 작업·프로바이더 키(선택)를 미리보기 후 가져온다. 업데이트는 atomic-agent update, 제거는 atomic-agent uninstall로 처리한다.

전제와 한계

개발자 프리뷰 단계라 API·명령·설정·동작이 바뀔 수 있고, 안정적인 통합 지점이 필요하면 릴리스를 고정해야 한다. 빌드는 macOS(Apple Silicon), Linux x64/arm64, Windows x64를 대상으로 한다. 자체 업데이트는 설치된 바이너리에서만 동작하고 개발 체크아웃은 git으로 갱신한다. uninstall은 상태 디렉터리(설정·기억·세션·태스크·트레이스·내려받은 모델)와 PATH 설정까지 지우며 되돌릴 수 없다. 로컬 모델 실행에는 llama-server가 필요하고, 직접 띄우거나 CLI가 관리하게 할 수 있다.

관련 논문 1

유사 도구