St991Cup's Blog

Steelcup, St991cup, steelcup


Tips

  • Docker Desktop 대체제: 오픈소스 Rancher Desktop 소개 및 데이터 이주 방법

    컨테이너 기반 로컬 개발 환경에서 가장 널리 사용되던 도구는 Docker Desktop이다. 그러나 기업 환경에서의 라이선스 정책 변경으로 인해 대안 도구에 대한 검토가 필요해졌다. 본 글에서는 완전 오픈소스 기반의 대체제인 Rancher Desktop의 특징과 라이선스 정보, 그리고 기존 컨테이너 환경의 핵심 구성요소(이미지, 볼륨, Compose 소스)를 이주하는 방법을 다룬다. 1. 개요 및 도입 배경 Docker Inc.의 구독 라이선스… Continue reading

  • OpenCode V2 Auto-Compaction 메커니즘과 Buffer 설정 가이드

    OpenCode V2는 장시간 이어지는 코딩 세션에서 컨텍스트 윈도우 한도를 초과하지 않도록 자동 압축(Auto-Compaction) 기능을 기본 제공한다. 이전 대화 기록을 손실 없이 영구 저장하면서도 모델이 바라보는 활성 컨텍스트를 구조화된 요약본(Checkpoint)으로 치환하여 가용 토큰을 확보하는 방식이다. 본 글에서는 OpenCode V2의 컴팩션 동작 원리와 통합 트리거 수식을 살펴보고, 컨텍스트 관리 및 오버플로우 방지의 기준점이 되는 buffer와 limit.input의 역할… Continue reading

  • OpenCode에서 Qwen3.8 27B xhigh 추론 토큰 한계와 Auto-Compaction 최적화 설정

    OpenCode 환경에서 vLLM 기반 OpenAI 호환 엔드포인트를 연결하여 사용할 때, 모델의 추론(Reasoning/Thinking) 강도와 토큰 제한 설정에 따라 예기치 않은 중단 현상이 발생할 수 있다. 특히 Qwen3.8 27B 모델의 xhigh reasoning 모드를 활용하여 복잡한 코드 수정을 요청할 경우, 60,000 토큰 이상의 대규모 추론 연산이 발생한다. 본 글에서는 기존 32k 출력 제한 환경에서 발생한 무응답 대기 문제의… Continue reading

  • opencode에서 vLLM Reasoning Effort(variants) 설정 및 TUI 단축키(Ctrl+T) 전환 가이드

    OpenCode는 터미널 환경에서 대규모 언어 모델(LLM)을 활용할 수 있도록 지원하는 AI 코딩 CLI 도구다. 최근 DeepSeek-R1, DeepSeek V4 Flash, Qwen3.8 등 추론(Reasoning / Thinking) 특화 모델의 활용이 보편화되면서, 수행하려는 작업 난이도에 맞춰 추론 강도(Thinking Budget, 사고 예산)를 유연하게 조절해야 할 필요성이 커졌다. 단순한 코드 포맷팅이나 사소한 오타 수정 시에는 추론 강도를 낮춰 토큰 소모와 응답… Continue reading

  • Hermes Agent 운영 팁 — Cron 세션 무한 증식 막기

    Hermes Agent를 게이트웨이(Slack 등)로 24시간 운용하며 다수의 Cron Job을 등록할 때 발생하는 세션 DB 무한 증식 문제의 진단 과정과 해결 방안을 정리한다. 1. 증상 및 배경 Hermes Agent는 세션(대화 기록)을 SQLite DB에 영구 저장한다. 주요 특징 및 문제는 다음과 같다. 자동 삭제 기능 부재: config.yaml 내 max_sessions, auto_prune, Retention 관련 옵션 자체가 존재하지 않음. 컨텍스트… Continue reading

  • Antigravity MCP 연동 실패 시 커스텀 플러그인(Plugin) 패키징 및 적용 가이드

    Google Antigravity(AGY) 환경에서 외부 도구나 API 서비스를 연동하기 위해 MCP(Model Context Protocol)를 활용하는 경우가 많다. 그러나 일반적인 MCP 서버 등록 방식은 로컬 파이썬 가상환경, Node.js 전역 경로, 샌드박스 권한 문제 등으로 인해 연동이 실패하거나 에러가 발생하는 상황이 자주 생긴다. 이러한 문제를 해결하는 가장 안정적인 방법은 Antigravity 커스텀 플러그인(Plugin) 구조로 패키징하여 적용하는 것이다. 본 포스팅에서는 일반… Continue reading

  • Windows Gemini CLI 한글 깨짐 방지를 위한 터미널 인코딩 설정

    Windows Gemini CLI 한글 깨짐 방지를 위한 터미널 인코딩 설정

    Gemini CLI 사용 중 쉘 출력에서 한글이 깨지는 현상은 기본 인코딩이 UTF-8이 아닌 CP949(한국어 확장 완성형)로 설정되어 있기 때문임. 이를 해결하기 위해 터미널 환경을 UTF-8(CP65001)로 변경하는 방법을 기술함. 0. 증상 Windows Powershell에서 gemini cli를 사용하는 경우. gemini가 shell 명령어를 사용해 받는 메세지는 인코딩이 깨져서 보인다. 단순히 화면에서만 깨져서 보인다면 문제가 없으나, gemini도 깨진 글자로 인식한다.… Continue reading

  • Git Worktree 정리

    브랜치 전환 없이 병렬 개발하기, 그리고 Claude Code에서의 활용 Part 1. Git Worktree 1.1 개념 Git worktree는 하나의 git 저장소에서 여러 브랜치를 동시에 서로 다른 디렉토리에 체크아웃할 수 있게 해주는 git 기본 기능임. Git 2.5(2015년)에 도입됨 기존 방식에서 브랜치를 전환하려면 아래와 같은 과정을 거쳐야 함 worktree를 사용하면 브랜치마다 독립된 디렉토리가 생기므로 전환 자체가 필요 없음… Continue reading

  • [Vim] 코드 사이를 순간이동하는 ‘마크(Mark)’ 활용법

    Vim에서 긴 코드를 수정할 때 마우스 휠 대신 마크(Mark) 기능을 사용하면 작업 효율이 비약적으로 상승함. 1. 마크(Mark)란? 문서 내 특정 위치에 **’보이지 않는 북마크’**를 남기는 기능. 알파벳을 이용해 위치를 저장하고 단축키로 즉시 복귀할 수 있음. 2. 기본 사용법 위치 기억하기 (Marking) m + 알파벳: 현재 위치를 해당 알파벳으로 기억 (예: ma) 위치로 이동하기 (Jumping) ‘… Continue reading

  • Vim 단축키

    Vim 단축키

    기본 모드 모드 전환 방법 키 설명 i Insert 모드 (커서 위치) I Insert 모드 (줄 맨 앞) a Insert 모드 (커서 다음) A Insert 모드 (줄 맨 뒤) o Insert 모드 (아래 새 줄) O Insert 모드 (위에 새 줄) Esc Normal 모드로 돌아가기 Ctrl+[ Normal 모드로 (Esc 대체) v Visual 모드 (문자 단위)… Continue reading

워드프레스닷컴으로 이처럼 사이트 디자인
시작하기