AI 도구를 위해 지저분한 웹페이지를 깔끔한 마크다운으로 변환하는 CLI 도구를 만들었습니다
요약
웹페이지의 불필요한 요소(내비게이션, 광고 등)를 제거하고 핵심 콘텐츠만 마크다운 형식으로 추출하는 CLI 도구인 grabctx를 소개합니다. Mozilla의 Readability 알고리즘을 활용하여 LLM 사용 시 발생하는 토큰 낭비를 획기적으로 줄여줍니다.
핵심 포인트
- 웹페이지의 노이즈를 제거하여 Claude나 ChatGPT 입력 시 토큰 효율성을 극대화함
- Mozilla의 Readability 알고리즘을 사용하여 주요 콘텐츠를 정확하게 추출
- Wikipedia 테스트 결과, 기존 대비 약 78%의 토큰 절감 효과 확인
- TypeScript, Node.js, Turndown 등을 활용한 경량 CLI 도구
문제점
Claude나 ChatGPT에 웹페이지를 붙여넣을 때마다 내비게이션 바, 푸터(footer), 광고, 그리고 불필요한 쓰레기 데이터 때문에 토큰(token)을 낭비하게 됩니다.
내가 만든 것
grabctx - 모든 불필요한 요소들을 제거하고 오직 주요 콘텐츠만을 깔끔한 마크다운(markdown) 형태로 제공하는 CLI 도구입니다.
작동 방식
npm install -g grabctx
grabctx https://any-article.com --copy
이 도구는 페이지를 가져온 뒤, Mozilla의 Readability 알고리즘(Firefox의 읽기 도구 뷰에서 사용하는 것과 동일)을 사용하여 주요 콘텐츠를 추출하고, 이를 마크다운으로 변환하며, 절약된 토큰 양을 보여줍니다.
결과
Wikipedia 페이지 테스트 결과:
이전: 91,461 토큰 (tokens)
이후: 19,757 토큰 (tokens)
절약됨: 78%
기술 스택 (Tech Stack)
TypeScript
Node.js
@mozilla/readability
linkedom
turndown
commander
gpt-tokenizer
링크
npm: https://www.npmjs.com/package/grabctx
GitHub: https://github.com/AnalShaju/grabctx
커뮤니티의 피드백을 기다립니다!
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기