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 FTShare-Lab/FTShare-skill --skill etf-component-detailsgit clone --depth 1 https://github.com/FTShare-Lab/FTShare-skillWrote 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/ftshare-lab/ftshare-skill/etf-component-details)<a href="https://agentmods.dev/skills/ftshare-lab/ftshare-skill/etf-component-details"><img src="https://agentmods.dev/badge/skills/ftshare-lab/ftshare-skill/etf-component-details/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/ftshare-lab/ftshare-skill/etf-component-details"><img src="https://agentmods.dev/badge/skills/ftshare-lab/ftshare-skill/etf-component-details.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00063 | $0.00818 |
| Opus 5 | $0.00032 | $0.00409 |
| Sonnet 5 | $0.00013 | $0.00164 |
| Haiku 4.5 | $0.00006 | $0.00082 |
Grade A, and why
etf-component-details 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 yesterday.
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.
What it actually says
ETF 成分证券明细
1. 接口描述
| 项目 | 说明 |
|---|---|
| 接口名称 | ETF 成分证券明细(etf_component_details) |
| 外部接口 | GET /api/v2/market/data/etf-component-details |
| 请求方式 | GET(query 参数) |
| 适用场景 | 按 ETF 和交易日返回申赎清单中的全部成分证券及数量、成分类型、现金替代标志与替代金额 |
2. 请求参数
| 参数名 | 类型 | 是否必填 | 描述 | 取值示例 | 备注 |
|---|---|---|---|---|---|
| symbol | string | 是 | ETF 代码 | 510300.SH | 也支持 159915.SZ |
| trade_date | int | 否 | 交易日 | 20260908 | YYYYMMDD;不传时查询该 ETF 最新可用交易日 |
3. 响应说明
外层固定为 code / message / data。data 为成分证券明细数组(无分页,一次返回全部)。
数组元素:
| 字段名 | 类型 | 说明 |
|---|---|---|
| symbol | string | ETF 代码 |
| trade_date | int | 实际返回的交易日 YYYYMMDD |
| component_code | string | 成分证券代码,带 .SH/.SZ/.BJ/.HK 后缀 |
| component_name | string | 成分证券名称 |
| component_type | string / null | stock/bond/commodity/cash;无法识别时为 null |
| quantity | int / null | 成分证券数量(股) |
| cash_substitution_flag | int / null | 现金替代原始编码 |
| cash_substitution_type | string / null | prohibited/allowed/mandatory/refund |
| creation_substitution_amount | number / null | 申购替代金额 |
| redemption_substitution_amount | number / null | 赎回替代金额 |
| general_substitution_amount | number / null | 通用替代金额 |
现金替代编码:0=prohibited(禁止现金替代)、1=allowed(允许)、2/4/6/8=mandatory(必须)、3/5/7=refund(退补)。
4. 调用方式
python <RUN_PY> etf-component-details --symbol 510300.SH
python <RUN_PY> etf-component-details --symbol 510300.SH --trade-date 20260908
<RUN_PY> 为主 SKILL.md 同级 run.py 的绝对路径。输出 JSON;HTTP 错误输出到 stderr 并以非零状态退出。
5. 注意事项
- 数据范围 20250501 年至今。
trade_date为精确查询条件:该日期没有数据时成功返回空数组,不向前回退。- 现金占位成分会保留,
component_type标记为cash。 - 不同交易所的现金替代编码语义可能存在差异;需要精确区分时以
cash_substitution_flag为准。 - 本接口不返回成分权重。
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.
- yesterday First seen · 62 lines · 63 tokens per session scan A b304e85e14a9
etf-component-details is a skill published in the GitHub repository FTShare-Lab/FTShare-skill (64 stars, last pushed yesterday), licensed MIT. It adds 63 tokens to every session and 818 once invoked, about $0.0003 per session on Opus 5. 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-09-11.
Other skills, from other repositories
defeatbeta-earnings-analysis
Create professional equity research earnings update reports (8-12 pages, 3,000-5,000 words) analyzing quarterly results for companies already under coverage. Fast-turnaround format focusing on beat/miss analysis, key metrics, updated estimates, and revised thesis. Includes 1-3 summary tables and 8-12 charts. Use when…
sprr
Single PR reviewer for awesome-quant. Use when the user asks to review, validate, comment on, label, close, or merge one specific pull request that adds README.md entries. Triggers include "sprr", "review PR", "check PR", and "validate contribution".
bprr
Bulk PR reviewer for awesome-quant. Use when the user asks to review all open PRs, review unreviewed PRs, bulk review, or mentions "bprr". Reviews open PRs lacking the reviewed label and presents a summary before any merge/comment/label action.
update-pypi-dates
Refresh tracked PyPI last-updated dates in awesome-quant README.md. Use when the user asks to update PyPI dates, refresh PyPI metadata, or run update-pypi-dates.
defeatbeta-earnings-preview
Build pre-earnings analysis with normalized baselines, weighted decision models, company-specific veto gates, scenario frameworks, catalysts, historical reactions, and options-implied moves. Use before a company reports quarterly earnings to prepare positioning notes or bilingual three-page PDF reports.
defeatbeta-analyst
Professional financial analysis using 60+ market data APIs. Use for: company fundamentals (revenue, margins, EPS, balance sheet), valuation (P/E, P/B, P/S, PEG, DCF, intrinsic value), profitability (ROE, ROA, ROIC), growth trends (YoY revenue/earnings/FCF), earnings transcripts (key data, changes, guidance), industry…