본문으로 건너뛰기

© 2026 Molayo

Qiita헤드라인2026. 05. 14. 20:19

Claude Code가 독보적이라고 생각했는데, Devin for Terminal이라는 선택지가 생겼다

요약

Devin for Terminal은 Cognition에서 출시한 로컬 CLI 기반 코딩 에이전트로, 터미널 환경에 최적화된 강력한 기능을 제공합니다. 이 도구는 Rust로 작성된 커스텀 렌더링 라이브러리를 사용하며, `curl` 한 줄 설치와 `devin` 실행이라는 간편함으로 접근성이 높습니다. 특히 Claude Code의 스킬 정의 방식과 유사하게 커스텀 스킬 및 서브 에이전트 정의가 가능하여 기존 사용자들의 전환 비용을 최소화하도록 설계되었습니다.

핵심 포인트

  • Devin for Terminal은 로컬 CLI로 작동하며, 노트북을 닫아도 클라우드에서 작업을 지속할 수 있는 'Start Local, Hand Off to the Cloud' 설계 사상을 가집니다.
  • 커스텀 스킬 정의는 `.devin/skills/<스킬 이름>/SKILL.md`에 YAML Frontmatter를 포함한 Markdown 형식으로 이루어지며, Claude Code와 유사한 방식으로 작동합니다.
  • 서브 에이전트(Sub-agent)는 `.devin/agents/<프로필 이름>/AGENT.md`로 정의 가능하며, 심지어 `.claude/agents/*.md` 파일도 자동으로 임포트하여 사용할 수 있습니다.
  • 설정 범위(Scope)가 개인용(`.devin/config.local.json`), 프로젝트 공유용(`.devin/config.json`), 글로벌(`~/.config/devin/config.json`) 3단계로 나뉘어 관리됩니다.
  • Hooks 시스템이 `PreToolUse`, `PostToolUse` 등 Claude Code와 유사한 이벤트 모델을 지원하며, `.claude/settings.json`의 hooks도 읽어오는 기능이 있습니다.

이 기사가 도움이 되었다면, 화면의 「좋아요」나 스톡을 눌러주시면 다음 글을 쓰는 데 큰 힘이 됩니다. (건너뛰고 본문부터 읽으셔도 괜찮습니다)

「터미널에서 작동하는 코딩 CLI = Claude Code」, 저는 반년 정도 그렇게 단정 짓고 있었습니다.

그러던 2026년 4월 27일, Cognition이 devin 명령어를 내놓았습니다. Devin for Terminal. 공식 블로그에서는 터미널 UI를 위해 **Rust로 작성한 커스텀 렌더링 라이브러리 (Custom Rendering Library)**를 사용하고 있다고 언급된 로컬 CLI로, curl 한 번으로 설치할 수 있으며, 노트북을 닫아도 클라우드 측에서 작업을 계속해 준다고 적혀 있습니다.

「로컬 CLI라면 Claude Code로 충분하겠지」라며 처음에는 넘겼지만, 1주일 동안 병행해서 사용해 보니 상상 이상으로 기능이 잘 갖춰져 있었고, 게다가 Claude Code의 Subagent 설정이 그대로 작동한다는 것을 알게 되었을 때 생각이 바뀌었습니다.

이 기사는 Devin for Terminal의 기능을 공식 문서에 준하여 제대로 소개하면서, Claude Code와 병행해서 사용해 본 소감을 작성합니다.

공식 발표(2026/4/27)와 공식 문서 cli.devin.ai를 읽어보면, 대략 다음과 같은 위치를 차지하고 있습니다.

항목내용
설치'curl -fsSL https://cli.devin.ai/install.sh
실행프로젝트 디렉토리에서 devin
구현터미널 렌더링은 Rust 라이브러리 (공식 블로그). "VT-100에서도 작동한다"라고 데모에서 소개
대응 모델Opus 4.7 / GPT-5.5 / Cognition 자사의 SWE-1.6 전환 가능
설계 사상"Start Local, Hand Off to the Cloud"
WindsurfWindsurf Enterprise v1.9577.24 이후 버전부터 번들 제공

curl 한 줄로 설치하고 devin으로 실행하는 단순함은 Claude Code와 같은 감각으로 다룰 수 있습니다.

이 부분이 이 기사의 주제입니다. 「로컬 버전의 부가 기능일 뿐이겠지?」라고 생각하며 공식 문서를 열었더니, 상상했던 것보다 3배 정도 기능이 더 많았습니다.

.devin/skills/<스킬 이름>/SKILL.md와 같이 스킬 이름의 디렉토리 하위SKILL.md를 두어 커스텀 스킬을 정의합니다. YAML 프론트매터 (YAML Frontmatter)가 포함된 Markdown 형식으로, Claude Code의 Skills와 거의 동일한 방식으로 작성합니다. allowed-tools에 사용할 수 있는 것은 공식적으로 열거된 소문자 도구 이름(read, edit, grep, glob, exec 등)입니다.

---
name: deploy-staging
description: 스테이징 환경으로 배포
...

배치 장소의 예시(공식 Skills Overview에 따른 대표적인 예)입니다.

장소스코프 (Scope)
.devin/skills/ 또는 .agents/skills/프로젝트 고유 (git 관리 대상)
~/.config/devin/skills/글로벌 (모든 프로젝트에서 사용)
~/.codeium/<channel>/skills/채널 의존적 글로벌 (windsurf / windsurf-next / windsurf-insiders 등)

/skill-name으로 사용자가 직접 호출할 수도 있고, 에이전트(Agent)가 문맥에 따라 자동으로 호출할 수도 있습니다.

이 부분이 개인적으로 가장 놀라운 점입니다.

Devin for Terminal의 커스텀 서브 에이전트 (Sub-agent)는 .devin/agents/<프로필 이름>/AGENT.md (예: reviewer/AGENT.md)로 정의할 수 있습니다. 게다가 **.claude/agents/*.md**도 자동으로 임포트(Import)하여 사용할 수 있다는 점이 공식 문서에 명시되어 있습니다. 차이점은 「tools 필드」 vs 「allowed-tools 필드」 정도이며, 두 필드는 자동으로 매핑됩니다. 이는 전환 비용을 노골적으로 낮추기 위한 전략입니다.

MCP 서버의 추가 방법은 다음과 같습니다.

# stdio 서버 (공식 예제에서는 npx에 -y를 붙이는 경우가 많음)
devin mcp add github -- npx -y @modelcontextprotocol/server-github
# HTTP 서버 (OAuth 대응)
...

설정 범위(Scope)도 3단계로 나뉩니다.

파일용도
.devin/config.local.json개인용 (git 제외)
.devin/config.json프로젝트 공유
~/.config/devin/config.json글로벌

주의할 점은 "Streamable HTTP만 지원하며, SSE 트랜스포트(SSE Transport)는 지원하지 않는다"라고 공식적으로 명시되어 있다는 것입니다. 새로운 서버를 선택할 때 이 부분을 유의해야 합니다.

Hooks의 공식 문서(Official Documentation)에 따르면, PreToolUse / PostToolUse / PermissionRequest 등 Claude Code와 동일한 이벤트 모델을 통해 커맨드나 프롬프트를 삽입할 수 있다고 설명되어 있습니다. .devin/hooks.v1.json 및 각종 설정(config)의 hooks 키 외에도, 기본적으로 read_config_from.claude가 활성화되어 있을 때 .claude/settings.json의 hooks도 읽어온다는 내용이 적혀 있습니다. 세션 중에는 /hooks 명령어로 읽어온 목록을 확인할 수 있습니다.

Claude Code의 권한 모드(Permission mode)에 상응하는 기능이 4단계로 존재합니다.

Mode자동 승인 범위권장 용도
Normal (기본값)현재 디렉토리 내 읽기 등 읽기 계열은 자동 승인하며, 쓰기나 쉘(Shell)은 확인일반적인 작업
Accept Edits워크스페이스 내 파일 편집은 자동, 쉘은 확인편집 중심의 태스크
Bypass모든 툴 콜(Tool call)을 자동 승인신뢰할 수 있는 상황
Autonomous--sandbox 사용 시에만 가능. OS 레벨 샌드박스(OS-level sandbox)에서 쉘을 격리한 후 자동 승인방치해두고 돌리고 싶은 상황

핵심은 Autonomous 모드입니다. Bypass처럼 머신 전체를 방치하는 것이 아니라, OS 레벨의 샌드박스에서 쉘 실행을 격리합니다. 공식적인 Bypass와의 대비표를 보면, edit / write 계열은 Autonomous에서도 계속해서 프롬프트가 뜨며(스코프 확대로 허용), 네트워크는 샌드박스의 allow/deny로 필터링하는 방식으로 정리되어 있습니다. "완전히 방치하고 돌리고 싶지만, 정말로 무엇이든 건드리는 것은 무섭다"라는 딜레마에 대한 공식적인 하나의 해답이 되어 줍니다.

권한 모드(Permission mode)와는 별개로, 에이전트의 동작을 바꾸는 모드도 있습니다.

Mode실행동작
Normal기본값코드 변경을 포함한 일반 모드
Plan/plan계획 수립에 집중하며, 코드를 변경하지 않음
Ask/ask <질문>질문 응답만 수행하며, 코드를 작성하지 않음

Claude Code의 Plan mode와 동일한 발상입니다.

이 부분이 Claude Code와의 가장 큰 차이점입니다. 로컬에서 실행하던 세션을 /handoff 명령어 하나로 Devin Cloud에 넘길 수 있습니다.

/handoff에는 다음과 같은 특징이 있습니다.

  • 인자 없이 실행하면 현재 대화를 자동으로 요약하여 클라우드 측으로 전달합니다.
  • 로컬의 git diff도 함께 전송됩니다 (커밋되지 않은 변경 사항이 보이는 상태로 클라우드가 넘겨받습니다).
  • &를 빈 프롬프트로 입력하는 것만으로 handoff 모드에 진입할 수 있는 단축키가 있습니다 (!로 bash 모드에 진입하는 것과 같은 감각).

클라우드 측은 자체 VM에서 동작하므로, 로컬 머신을 종료해도 작업은 계속됩니다. 이는 Claude Code에는 대응하는 기능이 없는 부분입니다.

일상적인 사용을 위한 편리한 기능들도 제대로 갖춰져 있습니다.

조작내용
/mode <name>permission mode 전환
/loop <prompt>자동 diff 리뷰를 포함하여 프롬프트 실행
/workspace워크스페이스 디렉터리 목록
/help모든 명령어 표시
/hooks로드된 Hooks 목록
Shift+Tabmode를 순차적으로 전환
@파일명을 보완하여 컨텍스트에 추가
Ctrl+V클립보드에서 이미지 붙여넣기
Ctrl+G외부 에디터에서 편집
devin -c직전 세션 재개 (resume)
devin -r재개하고 싶은 세션을 목록에서 선택

Shift+Tab으로 mode를 전환하는 감각은 Claude Code와 매우 흡사합니다.

지금까지 소개한 기능들을 Claude Code와 비교하면 다음과 같습니다.

기능Claude CodeDevin for Terminal
실행claudedevin
대응 모델Anthropic 모델 중심Opus 4.7 / GPT-5.5 / SWE-1.6 전환 가능
Skills.claude/skills/<이름>/SKILL.md.devin/skills/<이름>/SKILL.md 등 (.agents/skills/도 가능)
Subagents.claude/agents/*.md.devin/agents/<이름>/AGENT.md + Claude 형식을 자동 임포트
MCP✅ (OAuth 대응, Streamable HTTP만 가능)
Permission modedefault / acceptEdits / plan / bypassPermissions 등 (--dangerously-skip-permissions는 바이패스 계열)Normal / Accept-Edits / Bypass / Autonomous (--sandbox 사용 시)
Plan mode/plan
클라우드 연동없음/handoff로 Devin Cloud에 인계
멀티 에이전트 병렬Subagentsworktree 없이 동일 리포지토리에 여러 개 실행
HooksPreToolUse✅ Claude Code와 동일한 형식 (.devin/hooks.v1.json 또는 .claude에서 로드 가능)

1주일간 사용하면서 특히 이 4가지 점에서 "Claude Code가 아니어도 괜찮겠다"라고 느꼈습니다.

.claude/agents/를 정성껏 구축해 놓은 프로젝트에서 devin을 실행하면, 기존의 agent가 그대로 선택지에 나타났습니다. 교체가 아니라 **병행 (parallel run)**이 가능하다는 점은 매우 큽니다. 저의 경우 "탐색(Explore)형 agent"와 "PR Reviewer형 agent"를 Claude Code 측에 작성해 두었는데, 이를 그대로 사용할 수 있었다는 점은 솔직히 놀라웠습니다.

"방치하여 돌리고 싶지만, 정말 무엇이든 실행되는 것은 두렵다"는 점은 Claude Code에서도 오랫동안 지속된 딜레마였습니다. --dangerously-skip-permissions는 강력하지만, 네트워크나 외부 쓰기까지 자유로워집니다.

Devin for Terminal의 Autonomous는 --sandbox를 통해 OS 레벨의 격리를 적용한 상태에서 셸 실행 등을 자동 승인하는 설계입니다. 공식 설명에 따르면 edit / write 계열은 프롬프트가 남으며, 네트워크는 샌드박스의 도메인 제어 하에 다뤄집니다. Bypass만큼 "터미널 상의 모든 것이 암묵적으로 승인"되는 방식이 아니라는 점에서, 밤샘 작업 시의 안심감이 다릅니다.

Claude Code는 Anthropic 모델 중심의 세계관입니다. 반면 Devin for Terminal은 Opus 4.7과 GPT-5.5, 그리고 Cognition 자사의 SWE-1.6을 하나의 CLI 내에서 전환하며 사용할 수 있습니다.

「이 리팩터링은 Opus로, 이 대량 생성은 GPT-5.5로」와 같이 도구를 전환하지 않고 용도에 맞춰 사용할 수 있다는 점은 효율적입니다.

이는 Claude Code에는 없는, Devin for Terminal만의 가장 큰 독자적인 기능입니다. 무거운 처리만 /handoff를 통해 클라우드로 넘겨서 로컬 환경을 가볍게 유지할 수 있습니다.

「밤중에 대량의 테스트 코드를 다시 작성하고 싶지만, 내 MacBook은 닫고 잠들고 싶다」는 상황에서, /handoff를 입력한 뒤 Mac을 닫으면, 태스크에 따라서는 아침이 되었을 때 Devin Cloud 측에서 PR(Pull Request)까지 완료되어 있는 경우도 있습니다 (보증된 것은 아니며 개인적인 소감입니다).

솔직히 말하면, 여전히 Claude Code 측이 유리한 부분도 있습니다.

관점Claude Code가 유리한 이유
에코시스템(Ecosystem)·문헌의 두께Skills / Subagents / Hooks / Auto Mode를 조합한 기사, 사례, 팀 운영의 축적은 현시점에서 Claude Code가 앞서 있는 경향이 있음 (Devin 측도 Hooks는 Claude 호환으로 불러올 수 있지만, 검색 시 히트되는 매뉴얼의 양에서 차이가 나기 쉬움)
클라우드 버전 Devin의 독자 기능을 CLI에서 사용할 수 없음Knowledge / Playbooks / Secrets는 현재 Devin for Terminal에서 미지원. 공식 Quickstart에서는 순차적인 지원을 위해 개발 중이라고 명시됨

특히 마지막 점은 중요한데, 「Devin의 진가는 Knowledge와 Playbook에 있다」는 기존의 평가 기준에서 본다면, CLI만으로 Devin을 평가하기에는 아직 이르다고도 할 수 있습니다.

시나리오권장 사항이유
Anthropic 모델 중심의 대화형 개발Claude Code에코시스템이 두터움 / 이미 .claude/agents/를 구축해 놓은 경우
Devin for Terminal그대로 사용할 수 있으면서 클라우드 연동 기능도 얻을 수 있음
GPT-5.5나 SWE-1.6를 시도하고 싶을 때Devin for Terminal멀티 모델 전환이 공식 기능임
밤중에 방치하여 돌리고 싶을 때Devin for TerminalAutonomous (--sandbox) + OS sandbox + 클라우드 핸드오프 (Cloud Handoff)
...

솔직히 처음에는 「Claude Code면 충분하잖아」라고 생각하며 devin 명령어를 테스트해 보았습니다.

일주일 후, 제가 기존에 사용하던 .claude/agents/가 그대로 작동하고, --sandbox를 통해 안전하게 밤샘 작업을 돌릴 수 있게 되었으며, /handoff로 무거운 처리만 클라우드로 넘길 수 있게 되었습니다. Claude Code를 버린 것이 아니라, 터미널 CLI에 선택지가 늘어났다는 감각입니다.

「터미널에서 동작하는 코딩 CLI = Claude Code」라고 믿고 있던 반년 전의 나에게, 「devin이라는 것이 2026/4/27에 나오니까 한번 써봐」라고 말하고 싶을 정도입니다. 그만큼 뒤처짐이 없으며, 부분적으로는 앞서 나가는 기능도 있습니다.

두 가지 모두 설치하여 태스크에 따라 나누어 사용하는 것이 2026년 5월 시점의 최적해라고 생각합니다.

  • Devin for Terminal (제품 페이지)
  • Cognition Blog - Devin for Terminal: Start Local, Hand Off to the Cloud
  • Devin for Terminal Docs - Essential Commands
  • Devin for Terminal Docs - Skills Overview
  • Devin for Terminal Docs - Subagents
  • Devin for Terminal Docs - MCP Configuration
  • Devin for Terminal Docs - Hooks

AI 자동 생성 콘텐츠

본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0