mirror of
https://github.com/NomaDamas/k-skill.git
synced 2026-06-24 02:04:11 +00:00
Issue #108 needs a dedicated read-only skill that can browse, search, and inspect GeekNews posts using the public feed alone. The implementation adds a fixture-backed Atom helper, skill/docs surfaces, and install/README wiring, then verifies the helper against the live GeekNews feed. Constraint: Must stay RSS-first and avoid new dependencies or unofficial APIs Constraint: Skill development requires syncing the skill into ~/.claude/skills and ~/.agents/skills during verification Rejected: Fetch article pages directly for v1 | expands scope beyond the approved RSS-driven workflow Rejected: Use XML parser modules | current python3 environment has expat issues, so regex + HTML parsing is safer here Confidence: high Scope-risk: narrow Reversibility: clean Directive: Keep the root helper and geeknews-search/scripts copy behaviorally identical because the installed skill must remain self-contained Tested: PYTHONPATH=.:scripts python3 -m unittest scripts.test_geeknews_search; node --test scripts/skill-docs.test.js; python3 scripts/geeknews_search.py list --limit 3; python3 scripts/geeknews_search.py search --query Claude --limit 3; python3 scripts/geeknews_search.py detail --id 28439; npm run ci Not-tested: Non-default feed mirrors or future Atom schema changes beyond the current public GeekNews feed shape Related: Issue #108
2 KiB
2 KiB
긱뉴스 조회 가이드
이 기능으로 할 수 있는 일
- GeekNews 공개 RSS/Atom 피드에서 최신 글 목록 조회
- 제목/요약/작성자 기준 키워드 검색
- 특정 항목의 RSS 기반 요약/링크/작성자/게시 시각 확인
먼저 필요한 것
- 공통 설정 가이드 완료
python3사용 가능 환경- 인터넷 연결
v1 범위
이 기능은 RSS-first / 읽기 전용 범위로 제공된다.
- 공개 피드(
https://feeds.feedburner.com/geeknews-feed)만 사용한다. - 최신 글/검색/상세 조회까지만 다룬다.
- 댓글, 투표, 로그인, 개인화 상태는 다루지 않는다.
기본 흐름
- 최신 글을 훑을 때는 목록 조회부터 실행한다.
- 원하는 주제가 있으면 제목/요약/작성자 기준 검색으로 좁힌다.
- 특정 글을 확인할 때는 링크/id/토픽 번호 일부로 상세 조회한다.
예시
최신 글 목록:
python3 scripts/geeknews_search.py list --limit 5
검색:
python3 scripts/geeknews_search.py search --query Claude --limit 5
상세:
python3 scripts/geeknews_search.py detail --id 28439
오프라인 fixture 또는 저장된 feed로 검증할 때:
python3 scripts/geeknews_search.py list \
--feed-file scripts/fixtures/geeknews-feed.xml \
--limit 3
출력에서 확인할 점
source.feed_url이 GeekNews RSS feed를 가리키는지items[].title,items[].link,items[].author_name,items[].summary가 함께 내려오는지- 상세 조회에서
item.content_html과item.summary가 모두 포함되는지 - 검색 결과가 제목/요약/작성자 기준으로 보수적으로 매칭되는지
주의할 점
- RSS 피드 기반이라 원문 전체/댓글/메타데이터는 제한적일 수 있다.
- FeedBurner 응답이 느리거나 실패하면 재시도하거나 직접 링크를 여는 fallback이 필요하다.
- 상세 조회는 feed에 포함된
content범위까지만 보장한다.