본문으로 건너뛰기

© 2026 Molayo

Zenn헤드라인2026. 05. 17. 06:33

사내 독자 LLM으로도 Claude Code 같은 에이전트 개발을 하고 싶다 — Continue + AGENTS.md라는 해법

요약

본 문서는 외부 AI 서비스 사용이 불가능한 기업 환경에서, 사내 독자 LLM(OpenAI 호환 API)을 활용하여 Claude Code와 유사한 에이전틱 개발 경험을 구축하는 방법을 안내합니다. VS Code 확장 OSS AI 어시스턴트인 Continue를 사용하여, 사내 LLM 프록시에 접속하고 Agent 모드에서 파일 편집 및 명령어 실행 같은 자율적인 작업을 수행할 수 있습니다. 또한, Continue의 기본 기능을 넘어선 'Skills' 기능까지 재현하는 노하우도 다룹니다.

핵심 포인트

  • Continue는 VS Code/JetBrains용 오픈 소스 AI 어시스턴트로, 연결 가능한 LLM을 자유롭게 선택할 수 있다는 것이 강점입니다.
  • 사내 독자 LLM 프록시를 사용하려면 Continue의 `model_defaults`와 YAML Anchor 기능을 활용하여 공통 설정을 관리하고, `.env` 파일에 API 키를 등록해야 합니다.
  • Continue는 Agent 모드에서 도구 호출(Tools)을 통해 자율적인 개발 작업을 수행할 수 있으며, 이를 통해 외부 AI 서비스 없이도 에이전틱한 경험을 구현할 수 있습니다.
  • 모델의 용도별로 `roles` (chat, autocomplete, edit, embed)를 구분하여 할당하는 것이 중요합니다.

외부 AI를 사용할 수 없는 기업에서, 에이전틱(Agentic)한 개발 경험을 원한다면

최근 Claude Code나 Cursor와 같이 "AI가 자율적으로 도구를 호출하고, 파일을 편집하며, 명령어를 실행하는" 에이전틱(Agentic)한 개발 경험이 급격히 보급되었습니다. 한 번 이 경험에 익숙해지면, 다시 예전의 채팅형 AI로는 돌아갈 수 없습니다.

반면, 기업 현장에서는 다음과 같은 상황이 많을 것입니다.

  • 보안 및 컴플라이언스 문제로 외부 AI 서비스(ChatGPT / Claude / Cursor 등)를 사용할 수 없음
  • 단, 사내에는 **OpenAI 호환 API를 가진 독자 LLM 프록시(Proxy)**가 있음
  • 최소한 사내 환경 내에서 Claude Code에 가까운 경험을 재현하고 싶음

이 기사는 그러한 환경에서 **Continue(VS Code 확장 OSS AI 어시스턴트)**를 활용하여, 사내 독자 LLM으로도 에이전틱한 개발 환경을 구축하기까지의 실전 메모입니다. 아울러, Continue에는 없는 "Skills" 기능을 AGENTS.md로 의사적으로 재현한 노하우도 소개합니다.

Continue란 — 무엇을 해결할 수 있는가

Continue는 VS Code / JetBrains용 오픈 소스 AI 어시스턴트 확장입니다. Claude Code와 유사한 작업을 수행할 수 있으며, 연결할 LLM을 자유롭게 선택할 수 있다는 점이 최대 강점입니다.

서두에 언급한 과제에 대해서는 다음과 같은 점이 유효합니다.

과제Continue를 통한 해결
외부 AI를 사용할 수 없음임의의 OpenAI 호환 엔드포인트(Endpoint)에 접속 가능. 사내 LLM 프록시를 그대로 지정할 수 있음
에이전틱하게 동작시키고 싶음Agent 모드에서 도구를 자율 실행 (파일 편집 · 명령어 실행 · MCP 서버 호출)
프로젝트 고유의 규칙을 지키게 하고 싶음Rules 기능으로 시스템 메시지(System Message)를 상시 주입
정형화된 태스크를 편하게 하고 싶음Prompts 기능(슬래시 명령어)으로 템플릿 호출

요컨대 "Claude Code의 경험을 내가 선택한 LLM으로 실현할 수 있는 것"이 Continue입니다.

Continue의 주요 기능 간략 정리

상세한 내용은 공식 문서에 맡기고, 여기서는 "이것만 파악하면 움직일 수 있다"는 수준으로 정리합니다.

기능역할
Models사용하는 LLM의 정의. 하나의 Config에 여러 모델을 등록하여 용도(chat / autocomplete / edit / embed)별로 나누어 사용 가능
RulesAgent / Chat / Edit의 모든 요청 시스템 메시지에 추가되는 고정 규칙. 언어 · 스타일 · 동작을 상시 적용하고 싶을 때 사용
Prompts/명령어이름으로 호출할 수 있는 커스텀 프롬프트(Prompt) 템플릿
Tools (MCP)Agent 모드에서 모델이 외부 도구를 호출하는 기능. MCP (Model Context Protocol) 서버에 대응
Configs위 항목들을 통합하여 정의하는 config.yaml. 프로젝트별 / 글로벌로 전환 가능

Config 파일은 두 종류의 위치에 둘 수 있습니다.

종류위치용用途
글로벌 (Local Config)~/.continue/config.yaml모든 프로젝트 공통 기본 설정
프로젝트 고유.continue/agents/<이름>.yaml프로젝트별 설정. 여러 개 등록 가능, Configs 드롭다운에서 전환

시크릿(Secret, API 키 등)은 ${{ secrets.KEY_NAME }} 형식으로 참조하며, 실제 값은 .continue/.env에 기재합니다 (.gitignore 필수).

이후부터는 실제로 "사내 LLM 프록시에 접속하기" → **"의사 Skills로 에이전트를 똑똑하게 만들기"**라는 흐름으로 실전 진행을 해보겠습니다.

실전 ①: 사내 LLM (OpenAI 호환 API) 접속

사내에 https://internal-llm.example.com/openai/v1와 같은 OpenAI 호환 엔드포인트가 있다는 전제하에, Continue에서 접속하는 설정을 만듭니다.

.continue/agents/local.yaml 생성하기

단계 1: 프로젝트 루트에 .continue/agents/local.yaml을 생성하고, 다음과 같이 기술합니다.

%YAML 1.1
---
model_defaults: &model_defaults
...

포인트는 두 가지입니다.

model_defaults (YAML Anchor)를 사용하여 공통 설정을 DRY하게 관리

여러 모델에서 동일한 apiBase나 인증 헤더 (Authentication Header)를 사용하는 경우, YAML 1.1의 앵커 (Anchor) 기능을 통해 공통화할 수 있습니다. <<: *model_defaults를 통해 각 모델에 전개됩니다. 파일 상단의 %YAML 1.1 선언은 앵커 기능을 사용할 때 필수이므로 잊지 마세요.

roles로 용도를 구분

chat은 채팅 및 에이전트 (Agent), autocomplete는 탭 보완 (Tab Completion), edit은 인라인 코드 편집, embed는 코드베이스 검색 (Embedding)에 사용됩니다. 모델의 특기에 맞춰 할당하세요.

.continue/.env에 API 키 등록

단계 2: .continue/.env를 생성하고 API 키를 기재합니다.

INTERNAL_LLM_API_KEY=(실제 API 키)

이 파일은 반드시 .gitignore에 추가해 주세요.

단계 3: Configs 드롭다운에서 선택

.continue/agents/local.yaml을 저장하면, Continue 화면 상단의 Configs 드롭다운에 local이 자동으로 표시됩니다. 선택하면 연결이 완료됩니다.

반영되지 않을 경우 Configs의 Reload를 실행해 주세요.

이로써 채팅 및 에이전트 (Agent) 모드 모두 사내 LLM으로 동작하게 됩니다.

실전 ②: 「Skills」가 없는 Continue에, AGENTS.md로 유사 Skills 구현하기

연결이 완료되었다면 다음은 「똑똑하게 동작시키기」 단계입니다. 여기서부터가 본 기사의 핵심입니다.

배경: 컨텍스트 최적화가 중요한 시대

LLM의 정밀도 향상 및 토큰 소비 절감을 위해, 최근에는 컨텍스트 최적화 (Context Optimization) 가 중요하게 여겨지고 있습니다. Claude Code의 Skills나 hooks처럼 "필요한 타이밍에 필요한 컨텍스트만 로드하는" 메커니즘이 각 AI 도구에 속속 추가되고 있습니다.

그중에서도 Skills는 다음과 같은 점에서 운영 면에서도 매우 우수한 메커니즘입니다.

  • 작업과 관계없는 정보를 항상 컨텍스트에 포함하지 않음
  • 특정 조작 절차, API 규칙, 보안 제약을 한곳에 집약할 수 있음
  • 새로운 조작을 추가할 때는 SKILL.md 파일을 하나 만드는 것만으로 완결됨

하지만 Continue에는 Skills가 없다

여기서 아쉬운 소식이 있습니다. Continue에는 현재 시점에서 Skills에 해당하는 기능이 없습니다.

  • Prompts (/명령어)는 명시적으로 호출하지 않으면 발화하지 않음 - "작업 내용에 따라 자동으로 읽어오는" 동작은 불가능함

그래서 생각해낸 것이 AGENTS.md를 사용한 유사 Skills입니다.

핵심: Continue는 AGENTS.md를 자동으로 Rule로서 읽어 들인다

공식 문서에는 명시적인 기재가 (집필 시점 기준으로) 보이지 않지만, 실제 동작으로서 프로젝트 루트의 AGENTS.md가 Continue에 의해 자동으로 Rule로서 읽혀지는 것을 확인할 수 있습니다.

AGENTS.md / agents.md를 기본 규칙 파일로 자동 검출하는 것으로 보입니다. 즉, AGENTS.md에 "이 작업 시에는 대응하는 SKILL.md를 읽고 진행하라"라는 규칙을 써두면, AI 측에서 자율적으로 SKILL.md를 참조하러 가는 동작을 만들 수 있습니다.

구성 예시

스킬은 .github/skills/ 하위에 폴더별로 배치합니다 (장소는 프로젝트 관례에 따라 .continue/skills/도 가능합니다).

.github/skills/
wiki-get/ SKILL.md
wiki-update/ SKILL.md
...

SKILL.md는 프론트매터 (Frontmatter) + 필요 정보의 구성입니다.

---
name: wiki-get
description: 사내 Wiki 페이지 취득 및 하위 페이지 목록 취득이 필요할 때 사용함.
...

AGENTS.md에 정의하기

그리고 AGENTS.md 측에 스킬(Skill) 목록과 이용 타이밍을 표 형식으로 정의합니다.

# 스킬(Skills) 규칙 — Continue 전용
> **이 섹션은 Continue 확장 기능 전용 규칙입니다.
> 다른 AI 도구(GitHub Copilot 등)에는 적용되지 않습니다.**
...

실제 동작

이것을 설정한 상태에서, 예를 들어 채팅으로 "Wiki의 〇〇라는 페이지를 확인해줘"라고 요청하면, AI 측이 AGENTS.md의 규칙에 따라 자율적으로 .github/skills/wiki-get/SKILL.md를 읽어 들여, 그곳에 적힌 인증 방법·엔드포인트(Endpoint)·보안 규칙에 따라 처리를 진행해 줍니다.

복잡한 분기가 있는 동작이라면 정밀도가 다소 떨어지지만, 심플한 태스크(Task)라면 대체로 의도한 대로 기능하고 있습니다. Claude Code의 Skills에는 미치지 못하지만, "없는 것보다는 훨씬 낫다"라는 수준에는 도달했습니다.

AGENTS.md를 편집했다면 Reload를 잊지 말 것

AGENTS.md를 수정한 경우에는 Continue의 Configs에서 Reload를 실행하지 않으면 반영되지 않습니다. 빠지기 쉬운 함정이므로 주의하십시오.

요약

수행한 내용효과
Continue를 .continue/agents/local.yaml로 사내 LLM에 연결외부 AI를 사용할 수 없는 환경에서도 VS Code 상에서 에이전틱(Agentic)한 개발 경험 제공
AGENTS.md + .github/skills/*/SKILL.md로 유사 Skills 구현Claude Code Skills에 상당하는 "자동 컨텍스트 로드(Automatic Context Load)" 재현

"외부 AI를 사용할 수 없다 / 하지만 사내 LLM은 있다 / Claude Code 같은 경험은 포기하고 싶지 않다"라고 생각하는 사람에게, Continue + AGENTS.md의 조합은 현시점에서 가장 현실적인 해답이라고 느낍니다.

참고로, 사내 프록시(Proxy) 환경에서 Continue를 실행하려고 하면 self signed certificate in certificate chain 에러로 막히는 경우가 있습니다. 이 대처법은 별도의 글로 정리할 예정입니다.

AI 자동 생성 콘텐츠

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

원문 바로가기
0

댓글

0