CtrlK
BlogDocsLog inGet started
Tessl Logo

twelvedata-api

Twelve Data financial API for stocks, forex, crypto, ETFs, and 100+ technical indicators. Use when fetching time series data, technical analysis, fundamentals, or real-time streaming quotes.

59

Quality

74%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/twelvedata-api/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

53%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-organized, highly actionable task cookbook for the API, but it underuses its own bundle: the endpoint reference file and ready-made client script are never linked, their content is partially duplicated inline, and batch/rate-limited workflows lack validation and retry guidance.

Suggestions

Replace the inline 'API Endpoints Reference' and 'Rate Limits'/'Credit System' tables with a brief summary and pointers to references/ENDPOINTS.md, and surface scripts/twelvedata_client.py as the ready-made client so the bundle files are discoverable from SKILL.md.

Add validation to the batch and fundamentals workflows: verify per-symbol responses, handle 429 rate-limit responses with backoff/retry given the 8 calls/min free tier, and warn about the 100-credit cost of fundamental endpoints before calling them.

Consolidate the duplicated tier/limit information spread across the 'Rate Limits' table, 'Credit System' list, and 'Free vs Premium Features' section into one place.

DimensionReasoningScore

Conciseness

The body is mostly efficient data tables rather than prose padding, but roughly 50 lines of endpoint/credit/rate-limit tables duplicate the existing references/ENDPOINTS.md, and rate-limit information repeats across the 'Rate Limits' table, 'Credit System' list, and 'Free vs Premium Features' section. More than minor trimming would be needed to make it lean.

3 / 5

Actionability

Concrete, mostly executable code covers auth, quotes, SDK chaining, batch requests, fundamentals, forex, crypto, symbol search, WebSocket streaming, and error handling, plus install commands. Minor gaps keep it below copy-paste-ready: the SDK example hardcodes apikey="your_api_key" despite the env-var guidance above it, and task snippets rely on td/API_KEY globals defined only in earlier sections.

4 / 5

Workflow Clarity

Per-task organization is clear and an error-handling pattern exists, but the batch task (get_batch_quotes, 'Up to 120 symbols per request') has no response validation or verification step, and there is no 429/rate-limit retry guidance despite an 8 calls/min free tier — the batch-operations-without-validation cap of 3 applies.

3 / 5

Progressive Disclosure

Two substantial bundle files exist (references/ENDPOINTS.md, a 318-line endpoint reference, and scripts/twelvedata_client.py, a 436-line production client), yet the body never references either of them, while endpoint and credit data that clearly belongs in ENDPOINTS.md is inlined. This matches the anchor where content belonging in separate files is inlined; it is below the anchor-3 case because references to the bundle are absent entirely, not merely unclear.

2 / 5

Total

12

/

20

Passed

Description

83%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.

A strong description with an explicit 'Use when' clause, natural trigger terms, and a clearly named vendor niche. Main residual weakness is mild overlap risk with sibling financial-API skills and a few missing common synonyms like 'historical data' or 'market data'.

DimensionReasoningScore

Specificity

The description enumerates several concrete capabilities ('stocks, forex, crypto, ETFs, and 100+ technical indicators', 'fetching time series data, technical analysis, fundamentals, or real-time streaming quotes'), but capabilities are framed as domains rather than action verbs, leaving minor gaps versus the comprehensive-action anchor.

4 / 5

Completeness

It explicitly answers both 'what' ('Twelve Data financial API for stocks, forex, crypto, ETFs, and 100+ technical indicators') and 'when' ('Use when fetching time series data, technical analysis, fundamentals, or real-time streaming quotes') with concrete trigger phrases, matching the top anchor; it is not a 4 because the 'when' clause is explicit and specific rather than merely adequate.

5 / 5

Trigger Term Quality

Natural trigger terms like 'stocks', 'forex', 'crypto', 'ETFs', 'technical indicators', 'time series data', 'technical analysis', 'fundamentals', and 'real-time streaming quotes' give good coverage, but common variations users would say such as 'historical data', 'market data', 'candlestick', or 'OHLCV' are missing.

4 / 5

Distinctiveness Conflict Risk

Naming the specific vendor ('Twelve Data') establishes a clear niche with distinct triggers, but generic financial-data triggers like 'technical analysis', 'fundamentals', and 'time series data' overlap with closely related skills the body itself lists (finnhub-api, alphavantage-api, fmp-api), leaving minor overlap risk.

4 / 5

Total

17

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository
fernandezbaptiste/Skrillz
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.