mksglu/context-mode

출처
GitHub
처음 오른 날
분야
에이전트
GitHub 별 수
28,827
주 언어
TypeScript
웹사이트
context-mode.com (새 탭에서 열림)

외부 오픈소스 저장소를 소개하는 글입니다. HDATF 제품이 아닙니다.

mksglu/context-mode

무엇을 하나

Context Mode는 AI 코딩 에이전트를 쓰는 개발자용 MCP 서버이자 hook 플러그인으로, 큰 도구 출력을 context window 밖에 두고 대화 압축(compaction) 뒤 작업 상태를 되살립니다. MCP 도구 11개 가운데 ctx_execute, ctx_batch_execute, ctx_execute_file은 12개 언어의 코드를 별도 subprocess에서 실행하고 출력 결과만 context에 넘깁니다. ctx_index, ctx_search, ctx_fetch_and_index는 Markdown과 가져온 웹 페이지를 SQLite FTS5 색인에 저장하고, BM25로 순위를 매긴 일치 부분만 돌려줍니다. hook은 curl, wget, web fetch 호출을 이 도구들로 돌리고 파일 수정, git 작업, 오류, 사용자 결정을 프로젝트별 SQLite 데이터베이스에 기록하며, README는 --continue 없이 새 세션을 시작하면 이전 세션 데이터를 지운다고 적습니다. 대화 압축 뒤에는 분류별 요약과 검색 호출을 담은 재개용 snapshot을 넣으며, 고정한 commit의 코드는 README가 밝힌 2 KB 제한을 무시합니다. Node.js 22.5 이상이나 Bun이 필요하고, Claude Code는 marketplace에서 플러그인으로 설치하며, 다른 클라이언트는 설정 파일에 MCP 서버와 hook 항목을 넣거나 전용 플러그인을 씁니다. MCP 서버만 설치하면 자동 routing 없이 도구만 쓸 수 있고, 세션 이어가기는 Claude Code 등에서 전체, Cursor, Codex CLI, Kiro에서 일부만 되며 Antigravity IDE와 Zed에는 없습니다. README는 기기 밖으로 나가는 데이터와 telemetry가 없다고 밝히지만, 서버는 시작할 때 npm registry에서 최신 버전을 확인하고 ctx_insight는 context-mode.com의 Insight 대시보드를 엽니다. README에 설명이 없는 hooks/platform-bridge.mjs는 platform.json에 API key와 서버 주소가 있으면 일부 비밀값 형식, 이메일, 홈 폴더 경로를 가린 뒤 모든 세션 이벤트를 설정된 Insight 서버로 보냅니다. ctx_execute_file은 프로젝트 폴더로 제한되지만, README는 ctx_execute와 ctx_batch_execute가 프로세스의 파일 접근 권한으로 임의 코드를 실행한다며 호스트 수준 sandbox를 켜 두라고 권합니다. 사용자의 permission deny 규칙은 sandbox 도구에도 적용되며, ctx_fetch_and_index는 CTX_FETCH_STRICT=1을 설정하기 전까지 로컬과 사설망 주소를 허용합니다. LICENSE 파일은 Elastic License 2.0(ELv2)으로 사용, 수정, 재배포를 허용하고, 제3자에게 호스팅이나 관리형 서비스로 제공하는 것과 라이선스 고지 삭제를 금지합니다.

라이선스

자체 라이선스 표준이 아닌 자체 라이선스입니다. 재사용 전에 라이선스 파일을 직접 읽어야 합니다.

같은 분야 저장소

  • T-Auto/dsh-ops
    dsh-ops는 DeepSeek Harness(DSH)용 제3자 플러그인으로, Windows의 AI 에이전트에게 전용 bash, PowerShell 7, Rust 파일 도구를 주어 PowerShell 오류 반복에 드는 토큰과 시간을 줄이려 합니다. 0.3.0 버전은 Windows x64만 지원하고 DSH 0.2.0-rc.2를 대상으로 하며, Node.js 22.19 이상(22 계열)이나 24 이상이 필요하고 DSH 플러그인 marketplace나 npx 명령으로 설치합니다. 기본으로 켜지는 shell component는 ops_bash를 공개하고 호스트 pwsh 도구가 번들된 PowerShell 7을 쓰게 하며, 시스템 기본 터미널과 PATH는 그대로 둡니다. 역시 기본으로 켜지는 file component는 파일 도구를 별도 Rust worker에서 실행하고, 수정에는 dry run과 원자적 교체를 제공합니다. 기본으로 꺼진 두 component 가운데 background는 danger-full-access 세션에서만 긴 작업을 다루고, PTC는 도구를 코드에서 SDK로 부르는 PTC-only 세션에서만 ops_batch를 더합니다. ops_batch는 SHA-256 검사, 작업 전 항목별 상태 기록, 중단 뒤 재개를 갖추고 복사, 이동, 삭제를 실행하며, 감사 기록은 workspace 소유자가 고칠 수 있는 .dsh-ops 폴더의 일반 로컬 기록입니다. DSH의 read-only와 workspace-write 모드에서는 임의 Bash와 PTC 코드가 제한 없는 대체 경로 없이 OS 격리(confinement) 안에서 실행되지만, Windows 호스트는 이 격리를 partial로 보고합니다. danger-full-access는 설계상 이 격리를 건너뛰며, 플러그인은 현재 사용자가 소유한 workspace 최상위 폴더의 원래 권한을 백업한 뒤 그 폴더에만 WRITE_OWNER 권한을 더합니다. 번들된 bash와 PowerShell 7은 압축 기준 161.2 MB와 107.6 MB의 선택 npm 패키지로 들어오며, registry mirror에 이 패키지가 없어도 설치는 경고 없이 종료 코드 0으로 끝납니다. README의 토큰 97퍼센트와 65퍼센트 감소는 저자 자체 benchmark 값이며, PTC 설계 문서는 고정된 절감 수치나 실제 모델 턴 benchmark를 내세운 것이 없다고 밝힙니다. LICENSE는 플러그인을 MIT로, FastCtx를 Apache-2.0으로 두고 번들 셸은 GPL(Git for Windows)과 MIT(PowerShell)를 따르며, PROVENANCE.md는 GPL 소스 제공 의무를 아직 검토하지 못했다고 적습니다. 문서에는 DSH 버전별 실제 설치가 확인되지 못했고 2026-10-08에 이전 버전이 도구 등록 충돌로 새 DSH 세션을 모두 실패하게 만들었다고 적혀 있으며, 지금 설계는 자기 도구만 등록해 이를 피합니다.
  • rociiu/talorys
    Talorys는 한 사람이 자기 Cloudflare 계정에 배포해 쓰는 개인 AI 비서로, 채팅, 기억, 할 일, 노트, 프로젝트, 알림을 브라우저 앱 하나에 모으며 저장소는 0.1.4 버전을 설명합니다. 가입 절차 없이 주인 한 명이 쓰는 구조이고, 주인 비밀번호는 로컬에서 PBKDF2-SHA256으로 해시해 Cloudflare 비밀값으로 저장하며, 공개된 pages.dev 주소는 이 비밀번호와 SameSite=Strict 세션 쿠키, 로그인 실패 잠금으로 보호합니다. 요청은 React 화면을 담은 Cloudflare Pages 앱에서 공개 주소가 없는 비공개 Worker로 넘어가고, Cloudflare Agents SDK로 만든 Durable Object 하나가 대화, 기억, 할 일, 노트, 프로젝트, 자동화, 설정, 사용량을 SQLite에 보관하며, 주인은 세션과 인증 정보를 뺀 백업 파일을 내려받을 수 있습니다. 입력은 채팅 창에 쓰는 글이고, 답은 Workers AI(기본 모델 @cf/zai-org/glm-4.7-flash)가 만든 Markdown으로 생성되는 대로 바로 표시되며, 화면에 어떤 도구를 부르는지도 함께 나옵니다. 기억은 주인이 보고 고치고 지울 수 있는 사실과 선호이며, 한 턴에 최대 8개가 들어가는데 본문 단어 검색에 맞는 항목을 먼저 넣고 최근 선호를 4개까지 채우며, @cf/baai/bge-m3를 쓰는 의미 검색은 기본으로 꺼져 있고 켜면 기본으로 하루 임베딩 500회 한도가 걸립니다. 할 일, 노트, 프로젝트는 화면과 채팅에서 모두 고칠 수 있고, 채팅으로 할 일, 노트, 기억 삭제를 요청하면 삭제 제안으로 올라와 주인이 앱에서 Approve를 눌러야 실행됩니다. 자동화는 한 번 보내는 알림과 반복 알림, AI 없이 마감이 다가오거나 지난 할 일을 정리하는 할 일 요약, 읽기 전용 도구만 쓰고 200단어 안으로 답하는 AI 프롬프트 실행으로 나뉘고, 매일, 고른 요일, 매월, 15분에서 31일 사이 간격으로 Durable Object 알람에 맞춰 실행되며, 결과는 앱 안 알림 센터로 오고 읽은 코드에서 푸시나 메일 발송 기능은 확인하지 못했습니다. 기본 한도는 한 턴에 출력 1,024 토큰, 도구 호출 6회, context 6,000 토큰(넘으면 오래된 대화를 요약)과 하루 AI 요청 200회, 예약 AI 실행 6회이며 각각 정해진 상한까지 늘릴 수 있고, AI 한도를 다 쓴 뒤에도 할 일, 노트, 기억, 알림은 계속 동작합니다. 배포는 Node.js 22 이상에서 npx create-talorys@latest를 실행해 브라우저 Cloudflare 로그인이나 Workers Scripts Edit, Cloudflare Pages Edit, Workers AI Read, Account Settings Read 권한을 가진 API 토큰으로 진행하며, 데이터는 사용 통계 전송 없이 주인 계정에 남지만 채팅 메시지와 프롬프트에 들어간 기억은 Workers AI 추론을 위해 Cloudflare가 처리합니다. README는 Workers 무료 플랜에 맞춰 설계했으며 사용량은 Cloudflare가 정하고 바꿀 수 있는 한도 안에 있다고 적고, 작성 시점 Cloudflare 기준 Workers AI는 하루 10,000 Neurons까지 제공되므로 무료 플랜에서는 이를 다 쓰면 UTC 00:00 초기화까지 채팅이 멈추고, 유료 플랜은 월 최소 5달러에 추가 Neurons를 1,000개당 0.011달러로 청구합니다.
  • onehumanbeing/esp32-iphone-agent
    ESP32 iPhone Agent는 Python 서버와 Arduino 펌웨어로 이뤄진 MIT 라이선스 프로젝트로, AI 비전 모델이 Mac, Xcode, 개발자 계정, 휴대폰 앱, 탈옥 없이 실제 iPhone을 조작하게 합니다. 사람이 쓰는 경로인 화면과 포인터로 iPhone을 자동화하려는 개발자와 취미 제작자가 대상이며, README는 본인 소유이거나 사용 허락을 받은 기기와 계정만 자동화하고 각 앱의 약관을 지키라고 요청합니다. 휴대폰 화면은 AirPlay로 macOS나 Linux 컴퓨터의 UxPlay에 미러링되고 GStreamer가 JPEG 프레임으로 바꾸며, USB 단자에 꽂은 ESP32-S3 보드는 표준 USB 마우스와 키보드로 인식됩니다. iOS AssistiveTouch(화면에 포인터를 띄우는 손쉬운 사용 설정)를 켜면 클릭은 탭이, 끌기는 스와이프가 되고, 보드는 2.4GHz Wi-Fi로 받은 click, type 같은 한 줄 명령만 수행합니다. 모든 판단은 컴퓨터의 FastAPI 서버가 맡는데, 이 코드에서 웹 API와 보드 포트는 기본 설정으로 로그인 절차 없이 모든 네트워크 인터페이스에서 열리고 명령은 TCP 위에서 평문으로 오갑니다. 사용자가 8890번 포트의 웹 화면에 목표를 넣으면 planner 모델이 최대 6단계의 계획을 쓰고, actor 모델이 새 화면 사진마다 tap, swipe 같은 동작을 0부터 1000까지의 좌표로 최대 6개 돌려줍니다. 포인터는 상대 이동이라 서버가 포인터를 살짝 흔들어 미러링 화면에서 찾아 보정하고, 동작마다 화면이 바뀌었는지 확인해 모델에 알리며, 효과 없는 같은 동작이 되풀이되면 계획을 다시 세웁니다. 한 번의 실행은 40단계나 연속 오류 3번에서 끝나고, 웹 화면은 결정마다 근거가 된 화면 사진 위에 동작을 그린 step wall과 Esc 키로도 작동하는 긴급 정지를 보여 줍니다. 준비물은 펌웨어를 올린 ESP32-S3 보드(시험 보드는 약 7달러인 Seeed XIAO ESP32S3), USB-C iPhone이나 카메라 어댑터를 쓴 Lightning iPhone, Python 3.10 이상입니다. 모델은 이미지를 받는 OpenAI 호환 채팅 API면 되고 planner와 actor에 다른 모델을 쓸 수 있으며, 호출마다 현재 화면 사진이 가므로 클라우드 API를 쓰면 휴대폰 화면 내용이 그 제공자에게 전달됩니다. 개발과 시간 측정은 NVIDIA DGX Spark 두 대의 로컬 모델로 했고(동작당 약 1.3초, 계획당 2초), 함께 든 serve 폴더의 서버는 전체 에이전트 실행 시험을 아직 거치지 못한 실험용입니다. README가 밝힌 한계는 iOS가 암호 입력, Apple Pay, DRM 영상을 미러링에서 빼 에이전트가 볼 수 없고, 휴대폰이 잠기면 미러링이 멈추며, 입력은 ASCII만 되고 가로 화면 앱은 지원 대상 밖이라는 점입니다.
  • FeiZhuLulu/DeepSeek-Bot
    DeepSeek-Bot(DS Bot)은 DeepSeek Harness(DSH)에 설치하는 봇 플러그인으로, 이름과 역할을 가진 여러 봇을 만들어 대화하고 그룹으로 일을 맡기는 기능을 더합니다. 여러 AI 봇에게 일을 나눠 맡기려는 DSH 사용자가 대상이며, 저장소는 DeepSeek 공식 제품과 별개인 독립 커뮤니티 프로젝트라고 밝힙니다. 각 봇은 이름, 역할, 지시문, 모델을 따로 가진 DSH 세션이고, message_bot, create_bot, update_bot, ask_user 도구로 서로 메시지를 주고받으며 기본 봇 Chief가 다른 봇을 관리합니다. 그룹 대화에서는 관리자 봇이 기본으로 답하고, 멘션으로 다른 봇에게 차례를 넘기거나 PASS 표시로 발언을 건너뛰며, 구성원마다 그룹별 숨은 세션을 둡니다. 봇은 DSH의 대화 압축 대신, context 사용률이 0.8에 이르면 별도의 작은 모델 호출로 체크포인트를 남깁니다. 기억은 봇별 범위와 팀 범위로 나뉘어 remember, forget, recall 도구와 매 턴 뒤 검토로 관리되며, 항목당 300자와 MEMORY.md 4,000자 같은 상한이 있고 비밀값처럼 보이는 내용은 거부합니다. 웹 검색은 프로필에 지정한 제공자, 모델 경로의 검색, 공개 Bing과 DuckDuckGo 결과 페이지 순서로 시도하고, Desktop의 봇 브라우저는 봇마다 분리된 읽기 전용 화면에서 비밀번호와 카드 입력란을 건너뛰고 페이지를 Markdown으로 읽습니다. request_secret은 사용자 입력 카드로 받은 값을 셸 변수로만 전달하고 state.json과 로그에서는 제외한다고 설명하지만, 그대로 복사된 값만 가려지고 인코딩하거나 나눈 값은 새어 나갈 수 있으며, Windows에서는 파일 권한 600이 효과가 없고 http로 연 화면에서는 값이 평문으로 전송됩니다. 설치는 DSH Desktop(Windows, macOS)의 Plugins 메뉴에서 Add plugin으로 하거나, DSH Web에서 Node.js 22.19 이상과 pnpm으로 설정 묶음을 구성하는 방식이며, DSH 설치와 플러그인 연결은 별개 단계입니다. 문서는 v0.1 초기 공개판이라 기능, 도구, 저장 형식이 바뀔 수 있고 Linux의 dsh 0.2.1-alpha.1에서 시험했다고 밝히며, 데이터는 기본으로 사용자 폴더의 .dsh/bot 아래에 저장되고 사용량 화면은 비용 없이 토큰만 보여 줍니다.
  • docker/docker-agent
    docker-agent는 Docker가 만든 AI agent 실행 도구로, YAML 파일에 agent를 정의하고 docker agent 명령으로 실행합니다. YAML에는 모델, 지시문, toolset, 하위 agent, 대체 모델, 반복 횟수 상한, skill을 적습니다. 도구는 Docker MCP Gateway, 로컬 stdio, 원격 HTTP 방식의 MCP 서버로 붙이고, think, todo, memory 같은 내장 도구도 씁니다. memory는 사용자 홈 폴더의 SQLite 파일에 남고, RAG는 BM25와 embedding을 섞은 검색과 reranking을 지원합니다. 모델은 OpenAI, Anthropic, Gemini, Bedrock 같은 외부 provider나 Docker Model Runner의 로컬 모델에서 고르고, API 키는 사용자가 직접 설정합니다. 설치는 Docker Desktop 4.63 이상에 포함된 plugin을 쓰거나 Homebrew와 배포 파일로 합니다. 부작용이 있는 도구는 실행 전에 사용자 확인을 받는 것이 기본이고, 거부, 허용, 확인 순서로 적용되는 권한 규칙을 둘 수 있습니다. --yolo 옵션은 모든 도구를 자동 승인하며, sandbox 실행에는 Docker Sandboxes를 따로 설치해야 하고 작업 폴더는 쓰기 가능한 상태로 연결됩니다. PATH에 설치된 claude, codex 같은 CLI에 일을 넘기는 기능, 세션 DB를 둔 REST API 서버, OCI registry를 통한 공유, 저장된 세션을 다시 실행하는 평가 기능도 있습니다. 사용 정보 수집(telemetry)이 기본으로 켜져 있고, 문서는 수집 자료에 비밀이나 개인정보가 없다고 가정하지 말라고 안내합니다.

Trendshift 순위 목록에 오른 저장소만 담았고, 목록은 후보를 찾는 데만 썼습니다. 순위 숫자는 옮기지 않았습니다. 설명과 라이선스, 별 수는 각 GitHub 저장소에서 확인했습니다. 해설은 우리의 판단입니다. 이 프로젝트들을 직접 시험한 것은 아니며, 상승 목록에 올랐다고 품질이 증명되지는 않습니다.

GitHub에서 보기 (새 탭에서 열림)