컨텍스트 엔지니어링 도구, Contexty를 개발하며

    안녕하세요, 부산소프트웨어마이스터고등학교 소프트웨어개발과 3학년 이준호입니다.

    여러분들은 AI도구를 사용하는데 있어 이런 경험 있지 않으신가요?

    • 컨텍스트가 쌓일수록 성능이 저하되는 느낌
    • 그렇다고 새 채팅을 만들기에는 이전의 전제를 모두 설명해야 해서 막막함
    • /compact 를 쓰자니 너무 잃는 컨텍스트가 많음
    • AI가 도대체 어느 부분 코드를 보고 이런 주장을 하는건지 모르겠음

    구글의 시니어 엔지니어링 리더 Addy Osmani가 쓴 책 『바이브 코딩 너머 개발자 생존법』 에서도 70% 문제, 모래성 코드, 제자리걸음 패턴 등 유사한 문제점을 지적하고 있었습니다.

    결국 핵심은 “AI가 어떤 컨텍스트를 보고 있는지 우리가 모른다”는 것이었습니다. 그래서 저희 학교 팀원들과 이 문제를 직접 해결해 보기로 했습니다.


    그렇게 개발 중인 컨텍스트 엔지니어링 도구, Contexty를 소개합니다.

    https://github.com/ttalkkak-lab/opencode-contexty

    Contexty는 “AI가 알아서”가 아니라, “개발자가 직접 확인하고 통제하는” 환경을 만듭니다. VSCode 확장을 통해 현재 AI의 컨텍스트에 어떤 파일과 코드 라인이 들어있는지 트리 형태로 훤히 들여다볼 수 있습니다.

    설치방법

    설치방법은 명령어 한줄이면 됩니다. 실행한 이후, 시각화 플러그인을 설치할 IDE를 고르면 자동으로 OpenCode 확장 + IDE확장이 같이 설치됩니다.

    npx @ttalkkak-lab/opencode-contexty init

    Contexty의 주요 기능

    HSCMM — AI가 보고 있는 컨텍스트 시각화

    HSCMM 기능, 컨텍스트가 VSCode 상에 시각화 된 모습을 표현한 이미지
    HSCMM, 컨텍스트를 직접 수정하는 장면

    Human-supervised Context Management의 약자로, AI가 참조하는 컨텍스트를 직접 볼 수 있고, 직접 제어할 수 있는 시스템입니다.

    VSCode 확장과 연동하여 Context Explorer 패널에서 현재 AI의 컨텍스트에 어떤 파일, 어떤 코드 라인이 포함되어 있는지 트리 형태로 확인할 수 있습니다. 불필요한 컨텍스트는 즉시 제거하고, 필요한 파일이나 코드 선택 영역은 직접 추가할 수 있습니다. 에디터 상에서도 컨텍스트에 포함된 라인이 하이라이트되어 시각적으로 구분됩니다.

    핵심은 “AI가 알아서”가 아니라 “내가 확인하고 결정한다”는 것입니다.

    AASM — 프롬프트가 올바른지 검사하는 Sub-Agent

    Active Agent-supervised Model. AI가 코드를 작성하기 전, 프롬프트 단계에서 아키텍처 안티패턴을 감지하는 시스템입니다.

    초보자도 쉽게 빠질 수 있는 실수 — 모든 로직을 하나의 파일에 몰아넣기, 모든 책임을 담당하는 God Object 만들기, 전역 가변 상태 사용 등 — 를 AI가 실행하기 전에 차단하거나 경고합니다.

    이건 마치 시니어 개발자가 옆에서 “잠깐, 그 구조는 나중에 문제가 될 거야”라고 말해주는 것과 같아요. 빠른 코드 생성은 AI가 잘하지만, 아키텍처 품질은 결국 사람이 지켜줘야 하는 영역이니까요.

    DCP — 컨텍스트를 자동으로 투명하게 압축

    기존의 OpenCode Dynamic Context Pruning 플러그인 내용을 HSCMM에 녹여내면서, 투명성을 확보한 버전입니다.

    컨텍스트가 한계에 도달하기 전에 자동으로 압축을 진행하고, 어떤 부분이 압축되었는지, 얼마나 토큰이 절약되었는지 상태를 확인할 수 있습니다. 압축된 컨텍스트를 필요에 따라 복원(decompress)할 수도 있습니다.

    자동화의 편리함은 유지하면서, 사용자가 언제든 “지금 뭘 버렸지?”를 확인할 수 있는 구조입니다.

    ACPM — 에이전트 권한 프리셋

    AI가 접근할 수 있는 도구 카테고리와 파일 경로를 직접 관리합니다.

    file-read, file-write, shell, web 등 도구 단위로 권한을 켜고 끌 수 있고, 경로별로 denied, read-only, read-write를 지정할 수 있습니다. 프리셋으로 저장해두고 프로젝트마다 다른 권한 설정을 불러올 수도 있습니다.


    마무리

    현재 Contexty는 OpenCode 생태계에서 동작하는 플러그인 형태로 개발 중이며, VSCode 확장과의 연동을 통해 시각적 컨텍스트 관리를 제공합니다.

    물론, VSCode 없이 CLI로만 사용하여도 대부분의 기능을 사용하실 수 있습니다.

    AI 코딩 도구는 빠르게 발전하고 있지만, “AI가 무엇을 보고 무엇을 놓치고 있는지”를 사용자가 파악할 수 있는 도구는 아직 부족하다고 생각합니다.

    관심 있으신 분들은 언제든 피드백 주시면 감사하겠습니다. 긴 글 읽어주셔서 감사합니다!


    게시됨

    카테고리

    작성자

    태그:

    Obtuse의 테크 블로그 더 알아보기

    이 블로그에 새 글이 나올 때 마다 이메일로 알림을 받아보는 건 어때요?


    ※구독 버튼을 클릭하면 obtuse.kr의 개인정보 처리방침의 광고성 정보 수신에 동의하는 것으로 간주합니다.

    댓글

    답글 남기기

    이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

    This site uses Akismet to reduce spam. Learn how your comment data is processed.