MemoryLake
모든 글로 돌아가기
Pain Point2026년 5월 22일7 분 소요

왜 Devin이 내 코딩 스타일을 잊어버릴까?

지난 주 세션에서 Devin에게 함수형 컴포넌트, 결과 타입 및 TanStack Query를 사용하라고 말했습니다. 이번 주 세션에서는 하나의 PR에서 클래스 컴포넌트로, 다른 하나에서는 `useEffect` 데이터 가져오기로 돌아갔습니다. 당신의 스타일 가이드는 존재하지 않는 것과 마찬가지입니다.

이것은 Devin이 부주의해서가 아닙니다. 이는 그 지속성 레이어의 범위와 관련이 있으며, 스타일이 단일 세션을 초월하도록 만드는 방법이 있습니다.

간단한 답변

Devin이 당신의 코딩 스타일을 잊어버리는 이유는 각 Devin 세션이 이전 세션의 추론을 자동으로 상속하지 않는 자율 실행이기 때문이며, 지식 항목은 프로젝트별이 아니라 계정 전체에 걸쳐 적용되기 때문입니다. 세션 내에서 입력된 스타일 규칙은 해당 세션과 함께 살아있고 사라집니다. 해결책은 Devin이 세션 시작 시 읽는 프로젝트별 기억 레이어를 연결하는 것입니다.

Devin이 코딩 스타일을 잊어버리는 이유

Devin은 계획하고 코딩하며 관리된 샌드박스 내에서 테스트를 실행하는 Cognition의 자율 엔지니어링 에이전트입니다. 세 가지 설계 선택이 당신의 스타일 규칙을 다음 실행에서 밀어냅니다:

1. 세션이 작업 컨텍스트를 초기화합니다. 모든 Devin 실행은 새로운 샌드박스와 새로운 대화를 시작합니다. 세션 중에 제공한 스타일 지침 — "명명된 내보내기를 사용하고 기본 내보내기는 사용하지 마세요; cn()을 사용하고 clsx는 사용하지 마세요" — 는 해당 세션에 국한되며 다음 세션으로 로드되지 않습니다.

2. 지식 항목은 전역적 안내이며 프로젝트 규칙이 아닙니다. Devin의 지식 기능은 세션 간에 사실을 지속하지만, 이는 계정 전체에 적용됩니다. "항상 커밋 전에 린트를 실행하세요"에는 유용하지만, 동일한 계정의 두 개의 리포가 서로 다른 규칙을 가질 때는 덜 유용합니다.

3. 에이전트가 리포에서 스타일을 재유도합니다. Devin은 파일을 읽어 규칙을 유추하며, 이는 규칙이 일관될 때 합리적입니다. 활성 마이그레이션 중인 리포에서는 — 새로운 패턴으로 반전환된 경우 — Devin이 잘못된 절반을 선택하고 이를 코드화합니다. 공식 Devin 문서는 docs.devin.ai에서 세션 및 지식 모델에 대해 자세히 설명합니다.

결과적으로: 스타일은 세션의 지속 시간 동안 유지되며, 새로운 세션이 시작되는 순간 흐트러집니다.

Devin이 코딩 스타일을 잊어버릴 때 잃는 것

비용은 단순히 미적이지 않습니다 — 이는 리뷰와 배송 속도에 나타납니다:

  • 하나의 PR에서 혼합된 규칙. 세 개의 새로운 파일은 명명된 내보내기를 사용하고, 두 개는 기본 내보내기를 사용합니다. 두 개는 Result<T, E>를 사용하고, 하나는 예외를 발생시킵니다. 리뷰어는 논리 대신 스타일에 시간을 소비합니다.
  • 재논의된 결정. "우리는 배럴 파일을 삭제하기로 합의했습니다"는 Devin이 다음 세션에서 기꺼이 다시 제안하는 내용입니다. 왜냐하면 결정이 지속되지 않았기 때문입니다.
  • 인간 팀원과의 불일치. 당신의 팀은 스타일에 대해 합의했습니다. 에이전트는 그것에서 벗어납니다. PR은 인간과 에이전트의 차이 간의 줄다리기가 됩니다.

해결책은 "각 세션마다 더 엄격한 브리프를 작성하라"가 아닙니다 — Devin에게 자동으로 로드되는 스타일 규칙의 프로젝트 기억을 제공하는 것입니다.

Devin의 내장된 우회 방법

Cognition은 세 가지 지속성 도구를 제공합니다. 그 중 어느 것도 스타일을 프로젝트에 깔끔하게 고정하지 않습니다.

지식은 지속적인 규칙에 가장 가까운 것입니다. 이는 전역적이며 수동으로 유지되며 리포에 국한되지 않으므로 다중 프로젝트 팀은 조건부로 지식을 부풀리거나 ("리포 X에서는 Y를 수행") 스타일 강제 적용이 세션별로 이루어짐을 받아들여야 합니다.

리포 설정 스크립트는 린터와 포매터를 설치할 수 있으며, 이는 사후에 일부 스타일 위반을 잡아냅니다. 그러나 이는 Devin이 처음부터 코드를 작성하는 방식을 변경하지 않습니다.

링크된 PR 및 이전 세션은 새로운 브리프에서 이전 작업을 참조할 수 있게 해줍니다. 여전히 Devin을 올바른 세션으로 지목하고, 문서에서 올바른 스타일 단서를 추출하도록 신뢰해야 합니다.

Devin의 내장된 기억이 부족한 부분

더 깊은 문제는 코딩 스타일이 프로젝트 자산이라는 것입니다. 이는 프로젝트와 함께 존재해야 하며, 프로젝트와 함께 버전 관리되고, 팀이 사용하는 모든 도구 — Devin, Cursor, Claude Code, ChatGPT — 에게 이동해야 합니다.

지식 항목은 전역적 선호를 처리합니다. 다중 프로젝트, 다중 도구 스타일 강제 적용은 에이전트 위에 레이어가 필요합니다.

MemoryLake가 Devin이 코딩 스타일을 잊어버리는 문제를 해결하는 방법

MemoryLake는 Devin이 세션 시작 시 REST를 통해 읽는 크로스 모델 기억 레이어입니다. 스타일 규칙을 전역 지식에 중복 저장하는 대신, 프로젝트에 고정된 기억으로 저장하고 모든 세션이 관련된 것만 검색하도록 합니다.

  • 프로젝트 범위의 기억으로서의 스타일. "명명된 내보내기, 결과 타입, TanStack Query"는 프로젝트 내에서 구조화된 기억으로 존재합니다. 서로 다른 리포는 전역 지식을 오염시키지 않고 서로 다른 규칙을 가집니다.
  • 인간과 에이전트 간 동일한 규칙. Cursor 또는 Claude Code에서 개발자가 사용하는 동일한 스타일 기억이 Devin이 세션 시작 시 가져오는 것입니다. 인간과 에이전트 코드 간의 드리프트가 없습니다.
  • 원시 프롬프트의 10,000배 검색 범위. MemoryLake의 엔진은 수십억 개의 프로젝트 기억에서 읽고 Devin이 편집하는 파일과 관련된 스타일 규칙만 반환합니다.

MemoryLake는 2026년 기준으로 LoCoMo 장기 컨텍스트 벤치마크에서 94.03%를 기록했으며, 밀리초 검색 및 AES-256 종단 간 암호화를 제공합니다.

MemoryLake를 Devin에 연결하는 3단계

  1. 프로젝트를 생성하고 컨텍스트를 로드합니다. MemoryLake에 로그인하고 프로젝트 관리로 이동하여 프로젝트 생성 버튼을 클릭하고 이름을 "Devin — Acme 웹 스타일"로 지정합니다. 스타일 가이드, ESLint 구성, ADR 및 규칙 문서를 문서 드라이브를 통해 업로드합니다. 명시적인 규칙 — "명명된 내보내기만 사용", "기본 내보내기 금지", "실패 가능한 코드에 대한 결과 타입" — 를 기억으로 추가합니다.
  2. MCP 서버 엔드포인트를 생성합니다. 프로젝트 내의 MCP 서버 탭을 열고 MCP 서버 추가 버튼을 클릭한 후 이름을 "Devin 스타일 기억"으로 지정하고 생성 버튼을 클릭합니다. MemoryLake는 API 키 ID, 비밀 및 엔드포인트 URL을 반환합니다. Bearer 토큰을 즉시 복사하세요 — 한 번만 표시됩니다.
  3. REST를 통해 Devin을 연결합니다. MemoryLake의 REST 엔드포인트를 호출하는 설정 또는 세션 전 훅을 Devin 워크플로우에 추가하여 프로젝트의 스타일 기억을 가져오고 실행 시작 전에 작업 브리프 또는 지식에 기록합니다. 이제 모든 세션은 에이전트 앞에 프로젝트의 스타일 규칙을 열어줍니다.

자주 묻는 질문

Devin이 세션 간에 코딩 규칙을 기억하나요?

Devin의 지식 기능은 사실을 전역적으로 지속하지만, 특정 프로젝트에 국한되지 않습니다. 단일 세션 내에서 전달된 규칙은 자동으로 다음 세션으로 지속되지 않습니다.

Devin이 내 코딩 스타일을 일관되게 따르도록 하려면 어떻게 해야 하나요?

MemoryLake와 같은 기억 레이어를 REST를 통해 Devin에 연결하세요. 프로젝트의 스타일 규칙을 기억으로 저장하고 Devin이 세션 시작 시 작업 브리프에 가져오도록 하세요.

왜 Devin이 하나의 PR에서 코딩 스타일을 혼합하나요?

Devin이 읽는 파일에서 스타일을 유추하기 때문입니다. 혼합된 규칙이나 활성 마이그레이션이 있는 리포에서는 잘못된 패턴을 선택하고 이를 재현할 수 있습니다. 프로젝트 기억은 에이전트에게 명시적인 규칙을 제공하여 추측하지 않도록 합니다.

프로젝트별 스타일 규칙에 지식 항목을 사용할 수 있나요?

사용할 수 있지만, 지식은 계정 전체에 적용됩니다. "리포 X에서는 Y를 수행하고, 리포 Z에서는 W를 수행"과 같은 조건부를 작성하게 됩니다. 프로젝트 범위의 기억 레이어가 더 깔끔하고 프로젝트와 함께 이동합니다.

MemoryLake가 Devin과 내 개발자의 편집기 간에 스타일 규칙을 공유할 수 있나요?

네. MemoryLake는 도구 중립 형식으로 스타일 기억을 저장합니다. Devin이 세션 시작 시 읽는 동일한 규칙이 개발자의 Cursor 및 Claude Code 세션에서도 보입니다.