자율적 클로드 코드 세션을 위한 디스코드 브리지

한 개발자가 Claude가 도구 실행이나 CLI 입력 시에만 작동하는 풀 기반 제약을 해결하기 위해 자율적인 Claude Code 세션을 위한 Discord 브릿지를 구축했습니다. 이 시스템은 WebSocket을 통한 실시간 양방향 채팅을 가능하게 하며, 로컬 파일 큐잉과 중단/오류 이벤트 시 푸시 알림을 제공합니다.
아키텍처
인바운드 흐름: Discord → WebSocket → bridge.js → discord-inbox.jsonl → PostToolUse 훅 → Claude
아웃바운드 흐름: Claude → Discord MCP → #claude-code-chat → 휴대폰 푸시 알림
구성 요소
- bridge.js (약 50줄, discord.js v14): 전용 채널을 수신하고 API 폴링 없이 메시지를 JSONL 형식으로 로컬 인박스 파일에 기록하는 Discord 게이트웨이에 대한 지속적인 WebSocket입니다.
- PostToolUse 훅: 네트워크 호출이나 스로틀링 없이 모든 도구 호출 시 로컬 인박스를 읽습니다 — 이전에 사용된 2분 폴링 간격 대비 마이크로초 단위로 걸리는 파일 읽기만 수행합니다.
- PreToolUse 훅: 모든 세션의 첫 번째 도구 호출 시 브릿지를 자동 시작하며, 이미 실행 중일 경우 자동으로 아무 작업도 하지 않습니다.
- 아웃바운드 웹훅: 중단/오류 이벤트 시 구조화된 STATUS 업데이트를 전송하며, Discord의 thread_name 매개변수를 통해 세션별 명명된 스레드가 자동 생성됩니다 (channel_id를 반환받으려면 ?wait=true 필요 — 기본값은 빈 204 응답을 반환합니다).
주요 설계 결정
주요 아키텍처 전환은 API 폴링 대신 로컬 파일 큐를 사용한 것입니다. 원자적 잘림 기능이 있는 JSONL은 경쟁 조건을 방지합니다. 브릿지는 세션에 독립적입니다 — Discord 기록은 충돌과 재시작을 거쳐도 유지되며, 여러 에이전트가 동일한 채널을 공유할 수 있습니다.
제한 사항
권한 승인 프롬프트(1/2/3)는 Claude가 해당 시점에 유휴 상태이고 도구가 실행되지 않기 때문에 여전히 터미널 입력이 필요합니다. 이는 활성 실행 중 리디렉션에는 작동하지만, 중단된 프롬프트에 응답하는 데는 작동하지 않습니다.
테스트 결과
27,000줄을 밤새 두 개의 병렬 세션에서 분석하여 테스트했으며, 15개의 버그를 발견하고 오전 5시 42분에 6개월 로드맵을 제공했습니다. 설정에는 세 개의 bash 파일과 약 20분이 필요합니다.
📖 전체 소스 읽기: r/LocalLLaMA
👀 See Also

SwiftUI 및 Swift 6.2를 사용한 iOS 26 개발을 위한 23가지 에이전트 스킬
한 개발자가 iOS 26+와 Swift 6.2를 대상으로 하는 23개의 에이전트 스킬을 만들어, 더 이상 사용되지 않는 API와 구식 패턴으로 인한 환각 문제를 해결했습니다. 이 스킬들은 SwiftUI, SwiftData, StoreKit 2, 푸시 알림, 네트워킹, 동시성, 접근성, 현지화, WidgetKit, MapKit 등을 다룹니다.

소나리: AI 기반 생산 알림 분류 및 해결
Sonarly는 프로덕션 환경에서 알림을 효과적으로 처리하고 해결하기 위해 설계된 AI 에이전트입니다. 이는 중복을 그룹화하고 근본 원인 분석을 수행하여 알림을 분류함으로써 노이즈를 줄이고 중요한 문제에 집중합니다.

GitHub 코믹 봇: 커밋을 매일의 중세 기사 만화로 변환하기
GitHub 커밋을 읽어 무표정한 중세 기사가 등장하는 4컷 만화를 생성하는 봇으로, Claude Code와 Gemini로 구축되었으며 GitHub Actions에서 무료 티어 비용으로 실행됩니다.

클로드 코드를 컴파일러로: AI 개발을 위한 실용적 재구성
레딧 게시글은 클로드 코드가 영어를 작동하는 소프트웨어로 번역하는 컴파일러 역할을 한다고 주장하며, 그레이스 호퍼의 A-0과 포트란 같은 역사적인 컴퓨팅 혁신과 유사점을 그립니다. 저자는 3문단의 영어 설명으로부터 6개 파일에 걸쳐 400줄을 생성하고, 25분 만에 두 가지 문제를 발견했다고 설명합니다.