CtrlK
BlogDocsLog inGet started
Tessl Logo

tushare

tushare是一个财经数据接口包,拥有丰富的数据内容,如股票、基金、期货、数字货币等行情数据,公司财务、基金经理等基本面数据。该模块通过标准化API方式统一了数据资产的对外服务方式,以帮助有需要的技术用户更实时、简洁、轻量的使用相关数据。

56

Quality

70%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Failed to scan

The risk profile of this skill

Fix and improve this skill with Tessl

tessl review fix ./agent/src/skills/tushare/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

71%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a well-structured, genuinely actionable index: an executable quick start, a categorized table routing to 229 real one-level-deep reference documents, and separated example scripts. The main weaknesses are redundancy — the overview duplicates the description verbatim and many table descriptions restate their titles — and a broken import in the example script that keeps it from being copy-paste runnable.

Suggestions

Delete the 概述 section (it duplicates the frontmatter description word-for-word) and trim table descriptions that merely restate the title, keeping only rows where the description adds information such as update cadence, record limits, or history coverage (conciseness).

Fix `scripts/stock_data_example.py` and `scripts/fund_data_example.py` to read the token via `os.getenv('TUSHARE_TOKEN') or ts.get_token()` like the inline example, instead of the missing `src.config.accessor` import, so the linked examples are executable (actionability).

Add a short '常见错误' (common errors) note covering the main failure modes — token missing/invalid, 单次最大行数 limits requiring date-windowed retries, and permission errors — to give the workflow an explicit feedback loop (workflow_clarity).

DimensionReasoningScore

Conciseness

The 概述 section repeats the frontmatter description verbatim, and many interface-table descriptions merely restate the row title ('可转债基础信息' → '获取可转债基本信息'), adding hundreds of redundant tokens. The quick-start and parameter-format sections are tight, so it is 'mostly efficient but could be tightened' (anchor 3) rather than noticeably padded (2) or clean (4).

3 / 5

Actionability

The quick start gives an executable pip install, a token environment-variable setup, and a complete runnable `pro.stock_basic` snippet, and every interface row links to a reference file with full input/output parameter tables. Not level 5 because `scripts/stock_data_example.py` imports `from src.config.accessor import get_env_config`, a module not present in the bundle, so the linked examples are not copy-paste runnable.

4 / 5

Workflow Clarity

A clear, ordered sequence (install → register and set TUSHARE_TOKEN → find the interface in the docs → query with Python) with concrete commands at each step, and the example scripts include try/except error reporting. Not level 5 because the body offers no explicit feedback-loop guidance (e.g. what to do on rate-limit or permission errors), though for read-only queries the missing checkpoints are minor.

4 / 5

Progressive Disclosure

Textbook hub-and-spoke structure: SKILL.md is an overview plus a categorized index, all per-interface detail is split into one-level-deep `references/` files (verified present on disk), and runnable-length examples live in `scripts/`. Each row links directly to its detail file, so navigation is unambiguous and nothing is nested more than one level deep.

5 / 5

Total

16

/

20

Passed

Description

60%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description clearly identifies the tushare package and its data domain with natural trigger keywords and low conflict risk, but it reads as marketing copy rather than a capability statement: no concrete actions are stated, there is no 'use when' trigger guidance, and phrases like '更实时、简洁、轻量的使用相关数据' add fluff. Rewriting it as 'does X, Y, Z; use when...' would lift the two weakest dimensions.

Suggestions

Replace the marketing phrasing ('通过标准化API方式统一了数据资产的对外服务方式...更实时、简洁、轻量的使用相关数据') with concrete third-person actions, e.g. '获取股票、基金、期货、数字货币行情数据及公司财务、基金经理等基本面数据,返回pandas DataFrame' (specificity).

Add an explicit trigger clause, e.g. 'Use when the user asks for A股/港股/美股行情、财务报表、基金净值、宏观经济指标等中国财经数据,或提及 tushare/Tushare Pro' (completeness, trigger_term_quality).

Include the natural synonyms users actually say — A股、港股、美股、量化、K线、财务报表 — alongside 股票/基金/期货 (trigger_term_quality).

DimensionReasoningScore

Specificity

The description richly enumerates the domain ("股票、基金、期货、数字货币等行情数据,公司财务、基金经理等基本面数据") but states no concrete actions — "统一了数据资产的对外服务方式" is generic and "更实时、简洁、轻量的使用相关数据" is marketing fluff rather than a capability. It matches the anchor 'names the domain but actions are minimal or generic' rather than level 3, which requires 1-2 explicitly stated actions.

2 / 5

Completeness

The 'what' is clear — a standardized financial-data API package covering named data categories — but there is no 'Use when...' clause or any equivalent trigger guidance, which caps completeness at 3 per the judging guidelines. It is not level 4 because 'when' is entirely absent rather than merely imprecise.

3 / 5

Trigger Term Quality

Contains natural terms a Chinese-speaking user would say when needing this skill (tushare, 财经数据, 股票, 基金, 期货, 数字货币, 行情数据, 公司财务, API), giving good keyword coverage. Not level 5 because common variations and synonyms (A股/港股/美股, 量化, 金融数据) are absent.

4 / 5

Distinctiveness Conflict Risk

Names a specific niche package (tushare, Chinese financial-market data via standardized API) with domain-specific triggers (股票/基金/期货行情, 基金经理, 公司财务), making conflict with other skills minimal — it clearly matches the 'clear niche with distinct triggers' anchor.

5 / 5

Total

14

/

20

Passed

Validation

81%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 33 missing, 229 deeper-than-1-level

Warning

referenced_paths_exist

Referenced path issues: 8 missing

Warning

Total

13

/

16

Passed

Repository
HKUDS/Vibe-Trading
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.