DeepSeek Reasonix - 높은 캐싱과 낮은 비용의 DeepSeek 네이티브 코딩 에이전트

3 days ago 10
  • Reasonix v0.50.0은 터미널에서 실행되는 오픈소스 AI 코딩 에이전트로, DeepSeek API에 직접 연결됨
  • 실행 루프는 DeepSeek의 바이트 안정 prefix cache에 맞춘 append-only 구조로 긴 세션 비용 절감을 노림
  • 공개 수치로 94% 캐시 적중률, 2.5배 비용 절감, 2837개 테스트, MIT 라이선스가 제시됨
  • Node 22 이상에서 npx reasonix code로 전역 설치 없이 실행하며, 내장 도구는 실행 디렉터리 기준으로 샌드박스 처리됨
  • V4-Flash·V4-Pro 전환, MCP 연결, Markdown 스킬, 세션 리플레이, Tauri 데스크톱이 같은 루프와 설정을 공유함

설치와 실행

  • Node 22 이상이 필요하며 macOS, Linux, Windows의 PowerShell, Git Bash, Windows Terminal에서 사용 가능함
  • 프로젝트 디렉터리에서 전역 설치 없이 바로 실행함 npx reasonix code
  • DeepSeek API 키는 DeepSeek platform에서 생성하며, 사용량 기반으로 과금됨
  • V4-Flash 기준 입력 토큰 가격은 미캐시 $0.07/Mtok, 캐시 $0.014/Mtok으로 제시됨
  • 기본 실행은 프로젝트 디렉터리로 이동한 뒤 TUI를 여는 방식임 cd /path/to/my-project npx reasonix code
  • 내장 도구는 실행 디렉터리를 기준으로 샌드박스 처리됨

DeepSeek 전용 설계

  • Reasonix는 DeepSeek만 대상으로 하며, 실행 루프의 불변 조건이 DeepSeek 캐시 메커니즘에 맞춰져 있음
  • 같은 모델과 같은 API를 쓰더라도, 루프를 캐시·비용·안정성 중심으로 설계한 점이 차이로 드러남
  • 핵심 축은 Cache-First Loop, R1 Thought Harvest, Tool-Call Repair로 구성됨
  • DeepSeek의 prefix cache는 프롬프트를 0번 바이트부터 fingerprint 처리함
  • Reasonix 루프는 append-only 방식으로 동작해 도구 호출이 반복돼도 캐시된 prefix가 유지되도록 설계됨
  • 메시지와 도구 결과는 뒤에 추가되고 기존 히스토리는 변경되지 않음
  • cache_control 같은 마커 기반 트리거에 의존하지 않음
  • 도구 호출 순서와 타임스탬프는 완전히 결정적으로 처리됨
  • 도구 디스패치가 많아져도 prefix가 유지돼 긴 세션에서 94% 캐시 적중률을 목표로 함

주요 기능과 구성

  • 터미널 네이티브 TUI

    • IDE 플러그인이 아니라 터미널을 작업 공간으로 삼음
    • diff는 git diff, 파일 트리는 ls를 쓰는 식으로 기존 터미널 도구와 맞물림
    • TUI는 TypeScript + Ink 기반임
  • V4 2단계 모델 운용

    • 기본 모델은 저렴한 반복 작업을 위한 V4-Flash
    • /pro는 단일 턴을 V4-Pro로 올림
    • /preset max는 전체 세션을 Pro로 실행함
  • MCP 일급 지원

    • --mcp "name=cmd args" 한 줄로 외부 서버를 연결할 수 있음
    • 외부 서버의 도구는 prefix 아래에서 같은 레지스트리에 병합됨
    • 지원 전송 방식은 stdio, SSE, Streamable HTTP
  • 샌드박스와 계획 승인 게이트

    • 모든 내장 도구는 실행 디렉터리로 샌드박스 처리됨
    • /plan은 세션을 읽기 전용 감사 게이트 뒤에 두며, 계획 승인 전에는 쓰기를 허용하지 않음
  • 조합 가능한 스킬

    • .reasonix/skills/<name>.md에 Markdown 파일을 넣어 스킬을 만들 수 있음
    • frontmatter는 runAs: subagent와 allowed-tools를 지원해 격리 실행을 설정할 수 있음
  • 리플레이와 이벤트

    • 모든 이벤트가 디스크에 기록됨
    • 과거 세션 리플레이, 토큰·캐시·비용 통계, 루프 동작 감사가 가능함
  • 파일 기반 설정

    • 확장, 메모리, 설정은 레지스트리 없이 일반 텍스트 파일과 디렉터리로 관리됨
    • 모든 구성은 읽기 가능하고, diff 가능하며, Git으로 추적 가능하도록 설계됨
    • /mcp는 외부 도구 서버를 연결하는 Model Context Protocol 구성을 담당함
    • /skills는 재사용 가능한 Markdown 플레이북을 담음
    • /memory는 프로젝트 및 전역 메모리를 관리함
    • /config는 전역 및 프로젝트 설정을 다룸
    • /slash는 TUI 단축 명령을 담음

MCP 구성

  • MCP는 Reasonix에 외부 기능을 연결하는 일급 채널이며, stdio, SSE, Streamable HTTP 전송을 지원함
  • 각 서버의 도구는 prefix 아래에서 통합 레지스트리에 병합되고, 모델에 투명하게 제공됨
  • --mcp 'name=cmd args' 형식으로 한 줄 마운트가 가능함
  • MCP 도구는 내장 도구와 같은 샌드박스를 공유함
  • /mcp는 마운트된 서버, 상태, 도구 목록을 보여줌
  • 실패 시 지수 백오프 방식으로 자동 재연결됨
  • 전역 설정 예시는 ~/.reasonix/config.json에 github, filesystem, postgres MCP 서버를 정의하는 방식임 { "model": "deepseek-v4-flash", "mcpServers": { "github": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-github"], "env": { "GITHUB_TOKEN": "ghp_***" } }, "filesystem": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-filesystem", "/data"] }, "postgres": { "transport": "sse", "url": "https://mcp.internal/pg/sse";, "headers": { "Authorization": "Bearer ***" } } } }
  • CLI 플래그로도 MCP 서버를 연결할 수 있음 reasonix code \ --mcp 'github=npx -y @modelcontextprotocol/server-github' \ --mcp 'pg=https://mcp.internal/pg/sse'

제품 진행 상황

  • 모든 마일스톤은 GitHub Discussions의 위시리스트에 있으며, 이슈 투표가 우선순위에 영향을 주고 PR이 진행 속도를 결정함
  • 출시 완료

    • Cache-First Loop와 바이트 안정 prefix
    • R1 Thought Harvest와 escaped tool call 수집
    • Tool-Call Repair와 스키마 인식 자가 복구
    • stdio, SSE, HTTP 기반 MCP 일급 지원
    • Markdown frontmatter 기반 Skills
    • 네이티브 Tauri 데스크톱
  • 진행 중

    • /skill new <name> 스캐폴더
    • 설정 마법사의 테마 선택기와 라이브 미리보기
    • "did you mean /…?" 퍼지 보정
    • 설치 출처를 인식하는 reasonix update
    • 카드 컴포넌트까지 확장되는 zh-CN 커버리지
  • 로드맵

    • reasonix init 프로젝트 스캐폴더 CLI
    • 기기 간 컨텍스트 동기화
    • .claude-plugin/ 호환 플러그인 시스템
    • 저장소 맵과 의미 기반 저장소 인덱스
    • TUI 라이트 테마

주요 FAQ

  • DeepSeek만 지원하는 이유

    • DeepSeek 전용은 한계가 아니라 설계 선택으로 제시됨
    • DeepSeek의 prefix cache가 프롬프트를 0번 바이트부터 fingerprint 처리하기 때문에 Reasonix 루프가 이 불변 조건에 맞춰 설계됨
    • Anthropic 호환 엔드포인트를 사용하면 저렴한 토큰은 얻을 수 있지만 cache_control 마커가 깨짐
    • Aider, Cline, Continue 같은 일반 백엔드는 히스토리를 압축해 바이트 안정성을 깨뜨린다고 설명됨
    • 하나의 백엔드에 결합하는 것이 기능으로 규정됨
  • 비용과 라이선스

    • Reasonix 자체는 MIT 라이선스이며 무료임
    • DeepSeek API 키는 유료임
    • V4-Flash 가격은 미캐시 입력 토큰 $0.07/Mtok, 캐시 입력 토큰 $0.014/Mtok
    • 긴 세션에서는 일반 도구 대비 청구액이 보통 약 1/3 수준으로 내려간다고 제시됨
  • IDE 플러그인 계획

    • IDE 플러그인은 계획되어 있지 않음
    • Reasonix는 터미널 우선 도구이며, 데스크톱은 CLI의 시각적 동반자이지 Cursor 대체품이 아님
  • 자체 호스팅 또는 사설 DeepSeek 엔드포인트

    • 0.30부터 자체 호스팅 DeepSeek 엔드포인트를 위해 표준이 아닌 키 prefix를 허용함
    • baseUrl을 내부 주소로 지정하면 루프, 캐시 전략, 도구 프로토콜은 그대로 유지됨
  • CLI와 데스크톱 관계

    • CLI와 데스크톱은 같은 루프, 같은 프로토콜, 같은 ~/.reasonix 설정을 사용함
    • 데스크톱은 Tauri 기반이며 자체 Node 런타임을 포함해 별도 npm 설치가 필요 없음
    • 멀티탭 세션, 해당 세션이 읽거나 쓴 파일을 보여주는 사이드 패널, 하단의 실시간 비용·캐시·토큰 미터를 제공함
  • 사용자 정의 스킬 작성

    • 원격 레지스트리 없이 파일을 직접 작성하는 방식임
    • TUI 안에서 /skill new my-skill로 프로젝트 로컬 스킬을 스캐폴딩할 수 있음
    • --global을 추가하면 ~/.reasonix/skills 아래에 만들어 여러 프로젝트에서 재사용 가능함
    • 스킬은 description, runAs, allowed-tools frontmatter를 가진 Markdown이며, runAs: subagent는 본문을 격리된 하위 루프에서 실행함
  • 도구 호출 안전성

    • read_file, write_file, edit_file, run_command 등 모든 내장 도구는 실행 디렉터리 또는 --dir로 지정한 디렉터리로 샌드박스 처리됨
    • SEARCH/REPLACE 편집은 pending 상태로 큐에 쌓이며, /apply 전에는 디스크에 반영되지 않음
    • /plan 모드는 읽기 전용 감사 게이트이며, 계획 승인 전에는 쓰기가 허용되지 않음
  • 세션 중 작업 디렉터리 변경

    • 세션 중 작업 디렉터리 변경은 지원하지 않음
    • 메모리 경로가 오래된 root와 얽힐 수 있으므로 종료 후 reasonix code --dir <path>로 다시 실행해야 함
Read Entire Article