CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

akka-net-best-practices

Critical Akka.NET best practices including EventStream vs DistributedPubSub, supervision strategies, error handling, Props vs DependencyResolver, work distribution patterns, and cluster/local mode abstractions for testability.

Quality

75%

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/akka-best-practices/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.

A well-organized, dense Akka.NET best-practices reference with strong concrete code examples and useful decision trees, written at the right altitude for a competent reader. Its main defect is that all three of its referenced deep-dive files are missing from the bundle, so the progressive-disclosure structure is broken and those topics remain incomplete.

Suggestions

Add the three referenced files (work-distribution-patterns.md, cluster-local-abstractions.md, async-cancellation-patterns.md) to the bundle, or inline their essential content into SKILL.md, so 'See X for full code samples' does not dead-end.

Trim the Section 6 'Common Mistakes Summary' table or the Section 7 decision trees — they largely recapitulate Sections 1-4 and could be consolidated into one quick-reference section.

Complete the illustrative code snippets (declare _log, _httpClient, and helper methods like ParseFeed) so the samples are copy-paste ready.

DimensionReasoningScore

Conciseness

The body assumes Akka.NET competence and spends its tokens on non-obvious domain facts ('EventStream is LOCAL ONLY', 'Supervision is for CHILDREN', 'Don't inject ILogger<T> into actors') with tight code samples. However, the Section 6 'Common Mistakes Summary' table and the Section 7 'Quick Reference' decision trees substantially restate Sections 1-4, which is more than a trivial amount of recap.

4 / 5

Actionability

Seven of ten sections contain concrete, near-executable C# (DistributedPubSub mediator setup, OneForOneStrategy with decider switch, try-catch ReceiveAsync handler, Props.Create vs resolver.Props<T>, ILoggingAdapter usage). Not anchor 5: several snippets omit field declarations (e.g. _log, _httpClient, ParseFeed in RssFeedPollerActor) and sections 5, 8, and 10 defer 'full code samples' to reference files that are not present in the bundle, leaving those topics without complete detail.

4 / 5

Workflow Clarity

This is a best-practices reference rather than a linear procedure, and its three decision trees ('Need to communicate between actors?', 'Exception occurred in actor?', 'Creating actor Props?') give unambiguous branch-by-condition guidance covering the main decision points. Not anchor 5 because the anchors' validation checkpoints and error-recovery loops have no equivalent here, though the skill involves no destructive or batch operations that would cap the score.

4 / 5

Progressive Disclosure

The body is well sectioned and its references are clearly signaled and only one level deep ('See [work-distribution-patterns.md](work-distribution-patterns.md) for full code samples'), but none of the three referenced files (work-distribution-patterns.md, cluster-local-abstractions.md, async-cancellation-patterns.md) exist in the bundle — the actual bundle contains only SKILL.md. The apparent content split is therefore illusory: navigation leads to dead links and the detailed material is unreachable, which sits between 'references mostly clear, minor gaps' (4) and 'references present but not clearly signaled' (3).

3 / 5

Total

15

/

20

Passed

Description

70%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 specific, distinctive third-person description that names concrete Akka.NET topic areas rather than hiding behind generic language. Its weakness is the absent 'Use when...' trigger clause, which caps completeness, and the omission of the most natural user vocabulary ('actor', 'actor system').

Suggestions

Add an explicit trigger clause, e.g. 'Use when building or debugging Akka.NET actor systems, configuring supervision or pub/sub, or deciding between Props and DI-based actor creation.'

Include the natural trigger words 'actor', 'actor system', and 'actor model' — the terms users most plausibly say when they need this skill.

DimensionReasoningScore

Specificity

Quotes several specific concrete capabilities: 'EventStream vs DistributedPubSub', 'supervision strategies', 'Props vs DependencyResolver', 'cluster/local mode abstractions for testability' — matching anchor 4 (lists several specific actions, minor gaps). Not anchor 5 because the 'best practices including' framing names topics rather than concrete actions and 'error handling' is generic without the try-catch vs supervision distinction the body actually teaches.

4 / 5

Completeness

The 'what' is clear (a list of specific best-practice areas), but there is no 'Use when...' clause or equivalent explicit trigger guidance anywhere in the description, capping this at 3 per the judging guidelines. It matches anchor 3: clear 'what' with 'when' missing.

3 / 5

Trigger Term Quality

Good coverage of natural domain terms a user would say: 'Akka.NET', 'EventStream', 'DistributedPubSub', 'supervision', 'Props', 'DependencyResolver', 'cluster'. Not anchor 5 because the most natural trigger words — 'actor', 'actor system', 'actor model' — never appear, and no synonyms or related terms (e.g. Akka.Hosting, sharding) are included.

4 / 5

Distinctiveness Conflict Risk

Names a clear niche — Akka.NET-specific APIs ('EventStream vs DistributedPubSub', 'Props vs DependencyResolver', 'supervision strategies') — with distinct triggers and minimal overlap risk with any other skill, matching anchor 5.

5 / 5

Total

16

/

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

relative_links

Relative link issues: 6 missing

Warning

Total

15

/

16

Passed

Repository

Aaronontheweb/dotnet-skills

Path

skills/akka-best-practices/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.