CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

golang-samber-ro

Reactive streams and event-driven programming in Golang using samber/ro — ReactiveX implementation with 150+ type-safe operators, cold/hot observables, 5 subject types (Publish, Behavior, Replay, Async, Unicast), declarative pipelines via Pipe, 40+ plugins (HTTP, cron, fsnotify, JSON, logging), automatic backpressure, error propagation, and Go context integration. Apply when using or adopting samber/ro, when the codebase imports github.com/samber/ro, or when building asynchronous event-driven pipelines, real-time data processing, streams, or reactive architectures in Go. Not for finite slice transforms (→ See `samber/cc-skills-golang@golang-samber-lo` skill).

68

Quality

86%

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

78%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 well-structured overview body: dense comparison tables, a runnable example, mistake/best-practice checklists, and clean one-level-deep delegation to four real reference files. It falls just short of top marks for re-teaching generic ReactiveX concepts in Core Concepts, overlapping decision tables, and having only a single inline code example.

Suggestions

Trim the Core Concepts section to library-specific facts only (NewObserver callbacks, .Wait()/.Unsubscribe(), typed Pipe variants) and drop the generic Observable/Observer definitions Claude already knows, merging the "When to use which tool" and "lo vs ro" tables into one.

Add one or two more short inline code examples for the highest-frequency cases — a subject fan-out and an error-handling/retry pipeline — so the main body is executable guidance rather than operator-name tables for those flows.

Provide a brief numbered workflow for constructing a pipeline (choose cold vs hot → build with typed Pipe → handle all three observer callbacks → bound the stream/teardown) so the sections read as a sequenced process rather than parallel reference material.

DimensionReasoningScore

Conciseness

The body is dense and table-driven with no padded filler, but "Core Concepts" re-explains generic ReactiveX notions ("a data source that emits values over time") Claude already knows, and the "When to use which tool" and "lo vs ro" tables partially overlap — minor over-explanation that could be trimmed.

4 / 5

Actionability

Provides an executable, copy-paste-ready Go example (Pipe2 + NewObserver + Collect) and a concrete install command, but only one full code sample — subjects, error recovery, and teardown appear as bare operator names in tables, deferring usage detail to the reference files.

4 / 5

Workflow Clarity

No destructive or batch operations, so no validation checkpoints are required; the tool-selection table, Common Mistakes, and numbered Best Practices form a coherent decision framework with implicit checkpoints, but no explicitly sequenced pipeline-building workflow ties the sections together.

4 / 5

Progressive Disclosure

SKILL.md is a true overview: the 150+ operator catalog, plugin details, subject guide, and real-world patterns are each split into a real one-level-deep file under ./references/, clearly signaled with descriptive links (all four verified to exist with their own table of contents).

5 / 5

Total

17

/

20

Passed

Description

92%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: comprehensive, concrete capability enumeration paired with an explicit "Apply when..." trigger clause and an explicit negative boundary against the sibling slice-transform skill. The only weakness is a handful of missing natural trigger synonyms (observables, pub/sub, RxGo).

DimensionReasoningScore

Specificity

The description explicitly enumerates concrete capabilities — "150+ type-safe operators, cold/hot observables, 5 subject types (Publish, Behavior, Replay, Async, Unicast), declarative pipelines via Pipe, 40+ plugins (HTTP, cron, fsnotify, JSON, logging), automatic backpressure, error propagation, and Go context integration" — with comprehensive coverage and no apparent gaps, matching the level-5 anchor.

5 / 5

Completeness

Both what (full capability list) and when are explicitly stated — "Apply when using or adopting samber/ro, when the codebase imports github.com/samber/ro, or when building asynchronous event-driven pipelines..." — plus a negative boundary ("Not for finite slice transforms"), matching the level-5 anchor exactly.

5 / 5

Trigger Term Quality

Trigger phrasing includes natural terms ("reactive streams", "event-driven", "real-time data processing", "streams", "reactive architectures in Go") plus the import path "github.com/samber/ro", giving good coverage; a few natural phrasings users might say (e.g., "observables", "pub/sub", "RxGo") are missing, keeping it below level 5.

4 / 5

Distinctiveness Conflict Risk

A clear niche (reactive streams in Go via a named library) with an explicit exclusion clause redirecting finite-slice transforms to the sibling samber/lo skill, minimizing conflict with adjacent skills.

5 / 5

Total

19

/

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

allowed_tools_field

'allowed-tools' contains unusual tool name(s)

Warning

metadata_field

'metadata' should map string keys to string values

Warning

relative_links

Relative link issues: 3 missing

Warning

Total

13

/

16

Passed

Repository

samber/cc-skills-golang

Path

skills/golang-samber-ro/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.