arxiv-paper-tracker
이는 설정 가능한 arXiv 논문 추적을 위한 에이전트 대상 기술(Agent-facing skill)입니다. 이 저장소가 SKILL.md를 지원하는 에이전트 시스템에 클론되면, 사용자가 arXiv 논문을 검색, 추적, 중복 제거, 요약 또는 주기적으로 모니터링하고자 할 때 에이전트는 이 기술을 사용해야 합니다.
적합한 사용 사례는 다음과 같습니다:
- 에이전트가 생성한 임시 설정을 사용한 일회성 arXiv 검색.
- 지속적인 seen-state 파일을 통한 주기적인 논문 추적.
- 저자, 기관, 키워드, arXiv 카테고리, 날짜 범위, 결과 제한 등 쿼리 조건의 조합 모니터링.
- 외부 알림 시스템, 이메일 파이프라인, 스케줄러 또는 채팅 봇이 전송할 수 있는 마크다운 다이제스트 생성.
이 파일의 예시는 단지 예시일 뿐입니다. 주제, 저자, 기관, 카테고리, 시간 범위 및 결과 제한은 모두 config.yaml에서 설정 가능합니다.
이 기술이 하는 일
이 기술은 다음을 수행할 수 있습니다:
- arXiv 쿼리.
- 저자, 기관, 키워드 및 카테고리별로 논문 필터링.
- arXiv ID로 논문 중복 제거.
- 로컬 seen-state 파일 유지로 반복 알림 방지.
- 마크다운 다이제스트 생성.
- 로컬 설정 파일에서 활성화된 경우 선택적으로 이메일 알림 전송.
이 기술은 다음을 수행하지 않습니다:
- 전체 논문 자동 번역.
- PDF 다운로드 및 심층 읽기.
- 논문 품질이나 관련성에 관한 사용자의 판단 대체.
- 이메일 비밀번호, 앱 비밀번호, API 키 또는 기타 비밀 정보 저장 및 관리.
설치
현재 에이전트 런타임에 패키지가 설치되지 않은 경우, 저장소 루트에서 다음을 실행하십시오:
python -m pip install -e .
이렇게 하면 다음 콘솔 명령이 설치됩니다:
arxiv-paper-tracker
콘솔 명령을 사용할 수 없는 경우, 동등한 모듈 진입점은 다음과 같습니다:
python -m arxiv_paper_tracker.cli
권장 사용법
로컬 설정 파일을 생성합니다:
arxiv-paper-tracker init-config config.yaml
동등한 명령:
python -m arxiv_paper_tracker.cli init-config config.yaml
config.yaml을 편집한 후, 스캔을 실행합니다:
arxiv-paper-tracker scan \
--config config.yaml \
--state outputs/arxiv_tracker/state.json \
--output outputs/arxiv_tracker/latest.md
동등한 명령:
python -m arxiv_paper_tracker.cli scan \
--config config.yaml \
--state outputs/arxiv_tracker/state.json \
--output outputs/arxiv_tracker/latest.md
에이전트 사용 지침
사용자가 완전한 설정 파일을 제공하지 않은 경우, 에이전트는 사용자 요청에 기반하여 임시 로컬 설정 파일을 생성할 수 있습니다. 아래 필드는 설명용이며, 요청된 주제, 저자, 기관, 카테고리, 시간 범위 및 결과 제한에 맞게 변경되어야 합니다:
queries:
authors: []
categories: []
keywords: []
institutions: []
limits:
max_results_per_query: 20
days_back: 7
state:
path: outputs/arxiv_tracker/state.json
email:
enabled: false
그런 다음 실행합니다:
arxiv-paper-tracker scan \
--config config.yaml \
--state outputs/arxiv_tracker/state.json \
--output outputs/arxiv_tracker/latest.md
사용자가 장기 추적 대신 일회성 검색만 원하는 경우, 에이전트는 임시 경로를 사용할 수 있습니다:
arxiv-paper-tracker scan \
--config /tmp/arxiv_tracker_config.yaml \
--state /tmp/arxiv_tracker_state.json \
--output /tmp/arxiv_tracker_digest.md
출력 처리
scan 명령은:
- 다이제스트를 표준 출력으로 출력합니다.
--output이 제공되면 다이제스트를 마크다운 파일에 씁니다.
에이전트는 표준 출력이나 --output 파일을 읽은 다음, 터미널, 웹 UI, 이메일, Feishu, DingTalk, Slack, Discord 또는 기타 채팅 인터페이스와 같은 대상 표면에 맞게 마크다운을 조정해야 합니다.
스케줄링
이 저장소는 특정 에이전트 프레임워크에 종속되지 않습니다. 주기적 실행을 위해서는 cron, GitHub Actions 등 모든 스케줄러 또는 자동화 런타임에서 scan 명령을 트리거하십시오. 예:
- OpenClaw 또는 기타 스킬 인식 에이전트 런타임.
- Claude Code 또는 기타 로컬 코딩 에이전트.
- 다른 에이전트 스케줄러.
- cron.
- GitHub Actions.
- 사용자 정의 스케줄러.
스케줄러는 scan 명령을 실행하고 생성된 마크다운 다이제스트를 자체 알림 채널을 통해 전달하기만 하면 됩니다.
안전 규칙
- 공개 저장소는
config.example.yaml만 제공합니다. - 개인
config.yaml파일을 커밋하지 마십시오. - 이메일 알림은 기본적으로 비활성화되어 있습니다.
- 이메일이 활성화된 경우, SMTP 사용자 이름과 앱 비밀번호는 로컬 설정 파일에만 있어야 합니다.
- 로컬 설정 파일은 git에서 무시되어야 합니다.
- 이메일 앱 비밀번호, API 키, 쿠키 또는 토큰을 프롬프트, 로그, GitHub 이슈 또는 공개 출력에 노출하지 마십시오.