CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

x-api

X/Twitter API integration for posting tweets, threads, reading timelines, search, and analytics. Covers OAuth auth patterns, rate limits, and platform-native content posting. Use when the user wants to interact with X programmatically.

Quality

83%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

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.

A solid, code-first skill body: nearly every operation ships executable Python against real endpoints, and the posting workflow includes an approval validation gate. The main weaknesses are the complete absence of progressive disclosure (everything inlined in one file) and minor redundancy/example-specific values that keep the code from being fully copy-paste ready.

Suggestions

Split the per-endpoint detail (core operations, media upload v1.1 recipe, voice-modeling query examples) into a references/ file (e.g. references/api.md) and keep SKILL.md as an overview with clearly signaled one-level-deep links, e.g. '**Timeline/user endpoints**: See [api.md](references/api.md)'.

Deduplicate the near-identical recent-search snippets ('Search Tweets' and 'Pull Recent Original Posts for Voice Modeling') into one example plus a one-line note on the modified query, and drop the 'When to Activate' list that repeats the frontmatter description.

Make examples generically copy-paste ready: replace the hardcoded 'affaanmustafa' with a {username} placeholder, define `headers`/`oauth` once at the top or note the dependency, and show a backoff/retry loop for 429s instead of only raising an exception.

DimensionReasoningScore

Conciseness

The body is lean and code-forward with almost no concept explanation ('Best for: read-heavy operations, search, public data' is the typical prose density), but it spends tokens redundantly: 'Search Tweets' and 'Pull Recent Original Posts for Voice Modeling' are near-duplicate snippets, and the 'When to Activate' section repeats the frontmatter description. This fits the 'efficient with minor instances that could be trimmed' anchor, not the 5 anchor where every token earns its place, and not 3 since there is no padded or unnecessary concept explanation.

4 / 5

Actionability

Concrete, mostly executable code with real endpoints, params, and payloads ('https://api.x.com/2/tweets/search/recent', 'tweet.fields', the thread chaining loop, the v1.1 media upload two-step). It falls short of fully copy-paste ready due to ambient `headers`/`oauth` variables defined only in earlier snippets, hardcoded personal example values ('from:affaanmustafa', 'image.png'), and the thread function omitting the error checking shown in other sections — minor gaps, matching anchor 4 rather than 5.

4 / 5

Workflow Clarity

The content-engine integration workflow is a clear 7-step sequence with explicit checkpoints — 'Validate length and thread structure', 'Return the draft for approval', 'Post via X API only after approval' — and the Error Handling section covers 429/403 responses, satisfying the validation requirement for the write/post flow. It is not 5 because error recovery raises exceptions rather than demonstrating a backoff/retry feedback loop (the rate-limit snippet only prints the wait), leaving minor validation gaps at anchor 4.

4 / 5

Progressive Disclosure

This is a monolithic single-file skill: ~225 lines of endpoint reference inlined with no reference files at all and no one-level-deep pointers. Sections are well organized with clear headers, which keeps it above anchor 2, but it exceeds the under-50-line simple-skill exception and content that could live in a separate reference (full API operations, voice-modeling recipe, related-skill integration) is inline, matching anchor 3.

3 / 5

Total

15

/

20

Passed

Description

86%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 that names concrete capabilities with good natural trigger coverage and an explicit Use-when clause. The only soft spot is that the activation clause is one general condition rather than multiple concrete trigger phrases.

DimensionReasoningScore

Specificity

The description lists several concrete actions — 'posting tweets, threads, reading timelines, search, and analytics' plus 'OAuth auth patterns, rate limits' — but coverage has minor gaps (no mention of media upload, DMs, or user data), matching the anchor for several specific actions with minor gaps rather than the comprehensive anchor at 5.

4 / 5

Completeness

Both 'what' (posting tweets, threads, reading timelines, search, analytics, OAuth, rate limits) and an explicit 'Use when the user wants to interact with X programmatically' clause are present. It falls short of the top anchor because the 'when' is a single general trigger rather than concrete trigger phrases, matching anchor 4 ('when' could be more explicit or specific) rather than 3, since the Use-when clause is explicit.

4 / 5

Trigger Term Quality

Natural user vocabulary is comprehensively covered with synonyms: 'X', 'Twitter', 'tweets', 'threads', 'timelines', 'search', 'analytics', and 'interact with X' — no common natural term a user would say is missing, so it fits the comprehensive-coverage anchor rather than the 'a few natural terms missing' anchor at 4.

5 / 5

Distinctiveness Conflict Risk

The X/Twitter API is a clear niche with distinct, platform-specific triggers ('tweets', 'X', 'Twitter API', 'timelines'), giving minimal conflict risk with other skills — a clean match for the clear-niche anchor.

5 / 5

Total

18

/

20

Passed

Validation

100%

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

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

ysyecust/everything-claude-code

Path

.agents/skills/x-api/SKILL.md

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.