babarot/oksskolten

🏔️ The AI-native RSS reader

해결하는 문제

대부분의 RSS 리더는 피드가 제공하는 것(제목과 짧은 요약 정도)만 표시합니다. Miniflux나 FreshRSS 같은 일부 리더는 기사 전문을 가져올 수 있지만 피드별로 선택해야 하며 수동 구성이 필요합니다. Oksskolten은 이를 바꿉니다: 모든 피드 항목의 원본 기사를 자동으로 가져오고, Mozilla의 Readability와 500가지 노이즈 제거 패턴을 사용하여 전문을 추출하고, 깨끗한 Markdown으로 변환하여 로컬에 저장합니다. 피드별 토글도 CSS 선택자도 필요 없이 항상 완전한 기사를 얻을 수 있습니다. 전문이 항상 제공되므로 AI 요약과 번역이 의미 있는 콘텐츠에 대해 작동하고, 전체 텍스트 검색이 모든 것을 포괄하며, 기사를 읽기 위해 앱을 떠날 필요가 없습니다.

작동 방식

Oksskolten은 Fastify API, React 단일 페이지 앱, 임베디드 SQLite 데이터베이스(WAL 모드), 5분마다 피드를 가져오는 cron 스케줄러를 포함하는 단일 Node.js 프로세스로 실행됩니다. 콘텐츠 파이프라인은 다음과 같이 작동합니다: RSS 피드를 가져오고(적응형 피드별 스케줄링과 조건부 HTTP 요청 사용), RSS/Atom/RDF를 파싱하고, 각 기사의 원본 URL을 가져오고(봇 보호 사이트의 폴백으로 FlareSolverr 사용), 격리된 워커 스레드에서 Readability로 기사 콘텐츠를 추출하고, 약 500개의 노이즈 제거 패턴으로 정리하고, HTML을 Markdown으로 변환하고, 언어 감지와 OGP 이미지로 결과를 강화하고, 전체 텍스트 검색을 위해 Meilisearch에 인덱싱합니다.

스마트 페칭은 대역폭을 최소화합니다: 3계층 변경 감지(HTTP 304 → 콘텐츠 해시 → 전체 파싱)를 사용하고, 피드 활동에 따라 각 피드에 15분에서 4시간까지 자체 확인 간격을 설정하고, 속도 제한 시 Retry-After 헤더를 존중하며, 중복 제거 전에 60개 이상의 추적 매개변수를 제거합니다. Oksskolten은 또한 MCP 서버를 노출하므로 Claude Code 또는 모든 MCP 클라이언트가 앱을 열지 않고도 기사 아카이브를 검색, 요약, 조회할 수 있습니다. 모든 것이 단일 Docker 컨테이너에 패키징되어 있으며 RSS Bridge, FlareSolverr, Cloudflare Tunnel용 선택적 사이드카가 있습니다.

대상 사용자

Oksskolten은 전문 추출과 AI를 애드온이 아닌 기본값으로 취급하는 기능이 풍부한 RSS 리더를 원하는 자체 호스팅 사용자를 위한 것입니다. Docker가 실행되는 모든 곳(가정용 NAS, Raspberry Pi, 클라우드 VM)에서 실행되도록 설계되었습니다. 또한 앱 내에서 완전한 기사를 읽고 수동 구성 없이 요약, 번역, 채팅과 같은 AI 지원 기능을 선호하는 독자에게도 적합합니다.

하이라이트

  • Readability + 500가지 노이즈 제거 패턴을 사용한 모든 기사의 기본 전문 추출
  • Anthropic, Gemini 또는 OpenAI를 통한 내장 AI 요약 및 번역, SSE 스트리밍 지원
  • MCP 도구로 구동되는 대화형 다중 턴 AI 채팅 — 기사 검색, 통계 확인, 피드에 대한 질문
  • Meilisearch로 구동되는 전체 아카이브의 전체 텍스트 검색
  • 적응형 스케줄링, 3계층 변경 감지, 추적 매개변수 제거를 통한 스마트 페칭
  • PWA 지원: 오프라인 읽기, 백그라운드 동기화, 홈 화면에 추가
  • 다중 인증: 비밀번호, Passkey/WebAuthn, GitHub OAuth, 각각 독립적으로 구성 가능
  • 스마트 피드 관리: 자동 발견, RSS Bridge를 통한 CSS 선택자 피드, FlareSolverr를 통한 봇 우회, 비활성 피드 자동 비활성화
  • 기사 클리핑: 전체 콘텐츠 추출로 모든 URL을 기사로 저장
  • 14가지 내장 테마 + 사용자 정의 JSON 가져오기, 9가지 기사 글꼴, 8가지 코드 하이라이트 스타일
  • 단일 Docker 컨테이너에 API, SPA, cron 스케줄러 포함 — 외부 큐나 조정 불필요

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트