CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

stream

Stream overview, CLI, and router for Chat, Video, Feeds, Moderation, and Agents. Use for any Stream task: building or integrating Stream into web, iOS, Android, React Native, Flutter, Unity, or Unreal apps, building voice or text AI agents with Stream Agents, querying Stream data, running getstream CLI commands, looking up Stream SDK docs, or migrating (from Sendbird, or Feeds v2 to v3). Routes to the right skill.

Quality

94%

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

SKILL.md
Quality
Evals
Security

Quality

Content

88%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 dense, well-organized router skill: routing is an explicit first-match-wins decision procedure with validation checkpoints and concrete commands for every branch, and almost all content is non-obvious operational knowledge. Minor deductions for slight repetition in the Agents passages and references to .md files that are not present in the bundle.

Suggestions

State the 'an agent app is a Chat and Video app' point once (in the overview) and cross-reference it from the routing section instead of restating it.

Trim the CLI capability enumeration ('authenticating, onboarding a project (org, app, credentials), calling any API endpoint...') to the non-obvious cases, since the skill already directs readers to 'getstream -h' for the full picture.

Give a path or owning-skill context for integration-review.md and sendbird-data-migration.md, since neither file exists in this skill's bundle and the text does not say where to find them.

DimensionReasoningScore

Conciseness

Efficient overall — nearly every sentence carries Stream-specific operational knowledge (beta vs stable version formats, docs-command stdout pitfalls, platform tie-break rules) rather than concepts Claude already knows. Not 5 because of minor trimmable material: the CLI capability list ('authenticating, onboarding a project (org, app, credentials), calling any API endpoint...') largely duplicates what 'getstream -h' prints, and the agents-app-is-Chat-and-Video point is stated twice ('A session's conversation is a Chat channel and its voice is a Video call, so the app around an agent is a Chat and Video app like any other' and later 'its Chat UI kit renders the session's conversation and its Video SDK holds the call').

4 / 5

Actionability

Copy-paste ready commands throughout: both install scripts with 'getstream --version' verification and expected output format, the guarded docs pattern 'd=$(getstream docs <id>) && ls "$d"', and concrete command patterns for every routing branch ('getstream skills <name>', 'getstream api', 'getstream docs list', 'getstream agents init --template'). The common cases (routing, skill install, doc lookup, CLI version issues) are each covered with specific, executable guidance.

5 / 5

Workflow Clarity

'First match wins' gives an explicit ordered decision procedure with tie-break rules ('A framework beats an OS'), validation checkpoints are present (version check after install, the update-and-recheck loop when a command is missing, stdout check before ls), and there is an ask-when-ambiguous fallback ('Genuinely ambiguous: ask'). No destructive or batch operations, so no validation cap applies.

5 / 5

Progressive Disclosure

Good structure: a lean overview plus a router whose whole job is disclosure — details are delegated to the platform skills it routes to, and scenario files are clearly signaled one level deep ('read integration-review.md together with the platform skill', 'read sendbird-data-migration.md'). Not 5 because none of the referenced .md files (integration-review.md, sendbird-data-migration.md, stream-agents.md) exist in this skill's bundle and no path or owning-skill is given for two of them, leaving navigation slightly uncertain.

4 / 5

Total

18

/

20

Passed

Description

100%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 model router description: third-person, concrete, free of fluff and over-claims, and it explicitly states both its role and an exhaustive 'Use for' trigger list covering platforms, agents, CLI, docs, and migrations. Every clause adds trigger coverage rather than padding.

DimensionReasoningScore

Specificity

Enumerates multiple concrete actions — 'building or integrating Stream into web, iOS, Android, React Native, Flutter, Unity, or Unreal apps', 'building voice or text AI agents with Stream Agents', 'querying Stream data', 'running getstream CLI commands', 'looking up Stream SDK docs', 'migrating (from Sendbird, or Feeds v2 to v3)' — comprehensive coverage of the router's scope, matching the anchor-5 example's breadth. Not 4 because there is no noticeable gap: every major task category the body routes on is named.

5 / 5

Completeness

Explicitly answers both what ('Stream overview, CLI, and router for Chat, Video, Feeds, Moderation, and Agents... Routes to the right skill') and when ('Use for any Stream task:' followed by six concrete trigger phrases). Matches the anchor-5 pattern of a clear what plus an explicit 'Use when' clause with concrete triggers.

5 / 5

Trigger Term Quality

Comprehensive natural terms users would actually say: 'Stream', 'getstream CLI', 'Sendbird', 'Feeds v2 to v3', 'voice or text AI agents', 'Stream SDK docs', and all platform names (iOS, Android, React Native, Flutter, Unity, Unreal), including the getstream synonym. It exceeds the anchor-4 example ('PDF files, forms, document extraction') by covering synonyms and migration-specific phrasing.

5 / 5

Distinctiveness Conflict Risk

Clear niche (the Stream ecosystem) with distinct triggers; nothing here would fire for a non-Stream skill, and the overlap with the platform-specific skills it names is the router's intended behavior ('Routes to the right skill'), not a conflict. Far from the generic anchors at 1–3.

5 / 5

Total

20

/

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

metadata_version

'metadata.version' is missing

Warning

Total

15

/

16

Passed

Repository

GetStream/agent-skills

Path

skills/stream/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.