Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add eddmpython/dartlab --skill gathergit clone --depth 1 https://github.com/eddmpython/dartlabWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/eddmpython/dartlab/gather)<a href="https://agentmods.dev/skills/eddmpython/dartlab/gather"><img src="https://agentmods.dev/badge/skills/eddmpython/dartlab/gather/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/eddmpython/dartlab/gather"><img src="https://agentmods.dev/badge/skills/eddmpython/dartlab/gather.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Privilege Escalation · line 176 Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.Fix: Remove references to credential paths. Use environment variables or secrets managers. For docs, use placeholder paths (e.g., /path/to/config). Never load .env or token files in production code paths.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00000 | $0.10605 |
| Opus 5.5 | $0.00000 | $0.04242 |
| Sonnet 5.5 | $0.00000 | $0.02121 |
| Haiku 4.5 | $0.00000 | $0.01060 |
Grade A, and why
gather scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 532 lines — stays where its author put it; the contents beside it link to each section on GitHub.
엔진 역할
gather는 분석 엔진이 쓰는 외부/보조 데이터를 가져오는 L1 성격의 실행 엔진이다. 가격, 컨센서스, 수급, 뉴스, 배당/분할, 섹터, 내부자거래, 주요주주, 기관 보유, peer, 매크로 원자료를 다룬다.
gather는 원자료 수집과 snapshot 생성이 목적이다. 재무 해석은 analysis, 시장 매크로 해석은 macro, 후보 발굴은 scan이 담당한다.
공개 호출 방식
dartlab.gather 는 두 가지 형태로 쓴다 — 형태 A 가 권장 진입점, 형태 B 는 Gather 클래스 메서드를 직접 부를 때.
# 형태 A — 모듈 callable (권장). dartlab.gather 는 GatherEntry 인스턴스라 axis 디스패치.
import dartlab
dartlab.gather() # 가이드 DataFrame (전체 axis 목록)
dartlab.gather("price", "005930") # KR OHLCV
dartlab.gather("price", "AAPL") # US OHLCV (자동 판정)
dartlab.gather("flow", "005930") # 수급
dartlab.gather("flow", "005930", limit=30) # 최근 30거래일 수급
dartlab.gather("flow", "005930", start="2010-01-04", end="2010-01-08", sleepSec=1.0) # 과거 수급 저속 백필
dartlab.gather("flow", "005930", all=True, sleepSec=1.0) # 가능한 전체 수급 이력
dartlab.gather("flow", "005930", all=True, sleepSec=1.0, proxy="http://user:pass@host:port") # 사용자 프록시 경유
dartlab.gather("flow", targets=["005930", "000660"], limit=30, parallel=2, proxy="http://user:pass@host:port") # 종목 단위 병렬 수급
dartlab.gather("macro") # KR 거시지표 wide
dartlab.gather("macro", "FEDFUNDS") # FRED 자동 감지
dartlab.gather("news", "삼성전자") # Google News RSS
dartlab.gather("narrative", market="KR", days=30) # 뉴스 내러티브 archive
dartlab.gather("krxIndex", "close", market="KOSPI") # 시장군 지수
dartlab.gather("research", "005930") # 증권사 리서치 메타 인덱스
# 네이버 분류/목록 (로컬 개인용 — 재배포 금지). 계약은 아래 "naver* 축" 절.
dartlab.gather("naverTheme") # 전 테마 결합 (7일 로컬 저장·재호출 직독)
dartlab.gather("naverTheme", "list") # 테마 목록만 ("리튬"=해당 테마 · refresh=True=강제 재크롤)
dartlab.gather("naverIndustry", "반도체") # 네이버 업종 분류
dartlab.gather("naverEtf", "KODEX") # ETF 목록 (종목명 필터)
dartlab.gather("naverEtn") # ETN 목록
# 정기공시 due 는 Company.calendar — gather("calendar") 는 0.10 폐기
dartlab.Company("005930").calendar(horizonDays=30) # DART_API_KEY
c = dartlab.Company("005930")
c.gather("price") # 종목코드/market 자동 주입
# 형태 B — Gather 클래스 메서드 (dividends/majorShareholders 같은
# axis 미등록 메서드, snapshot=True 등 세밀한 옵션 필요할 때).
from dartlab.gather import getDefaultGather
g = getDefaultGather()
g.price("005930", market="KR")
g.price("005930", snapshot=True) # PriceSnapshot (현재가)
g.dividends("005930")
g.majorShareholders("005930")
g.collect("005930") # 전체 도메인 병렬 수집 → GatherSnapshot
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago Changed cdd1242ac5e3
- 2mo ago First seen · 532 lines · 0 tokens per session scan A d8e5bb16354f
gather is a skill published in the GitHub repository eddmpython/dartlab (227 stars, last pushed 6d ago), licensed Apache-2.0. It costs nothing until one of its globs matches a file; then it loads 10,605 tokens. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
gather compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| gathereddmpython/dartlab | Skill | 227 | 6d ago | Apache-2.0 | A | 0 | Claude Code, Codex |
| sas-fas-analystBTspaceC/SAS-FAS-analyst | Skill | 2 | 1mo ago | MIT | A | 90 | Codex |
| tradingagents-korea-analysismalda231125/TradingAgents-KR | Skill | 8 | 4mo ago | Apache-2.0 | A | 150 | Claude Code |
| vnpy-exportHKUDS/Vibe-Trading | Skill | 38k | yesterday | MIT | A | 40 | Claude Code, Codex |
| connect-recommendstripe/ai | Skill | 2.0k | yesterday | MIT | A | 151 | Claude Code, Codex |
| miniqmt-to-bigqmtlitaolemo/xtquant_big_convert | Skill | 808 | 10d ago | MIT | A | 144 | Claude Code, Codex |
| zenith-executionwinstonkoh87/Athena-Public | Skill | 620 | yesterday | MIT | A | 55 | Claude Code |