Implements dependency injection in Golang using samber/do. Apply this skill when working with dependency injection, setting up service containers, managing service lifecycles, or when you see code using github.com/samber/do/v2. Also use when refactoring manual dependency injection, implementing health checks, graceful shutdown, or organizing services into scopes/modules.
87
86%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Quality
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is an excellent skill description that clearly identifies a specific library (samber/do) in a specific language (Golang), lists concrete actions and use cases, and provides explicit trigger guidance. It uses proper third-person voice and covers both broad conceptual triggers (dependency injection) and specific technical triggers (github.com/samber/do/v2). The description is comprehensive yet concise.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: implementing dependency injection, setting up service containers, managing service lifecycles, refactoring manual dependency injection, implementing health checks, graceful shutdown, and organizing services into scopes/modules. | 3 / 3 |
Completeness | Clearly answers both 'what' (implements dependency injection in Golang using samber/do) and 'when' with an explicit 'Apply this skill when...' clause listing multiple trigger scenarios including code patterns, refactoring tasks, and specific features. | 3 / 3 |
Trigger Term Quality | Includes strong natural trigger terms users would say: 'dependency injection', 'service containers', 'samber/do', 'github.com/samber/do/v2', 'health checks', 'graceful shutdown', 'scopes/modules', 'Golang'. These cover both the library-specific and conceptual terms a user would naturally use. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive due to the specific library (samber/do), language (Golang), and narrow domain (dependency injection). The mention of the exact GitHub package path makes it very unlikely to conflict with other skills. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
72%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This is a well-structured, highly actionable skill with excellent code examples and good progressive disclosure. Its main weaknesses are moderate verbosity in the best practices explanations and the lack of explicit validation/verification steps in the workflow. The quick reference tables and cross-references add significant practical value.
Suggestions
Trim the best practice explanations to just the bolded rule — Claude already understands why interface-based design and single responsibility matter.
Add a validation step after container setup, e.g., `do.HealthCheck[T]()` or a startup verification pattern, to catch misconfigured providers before the server starts.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Generally efficient with good code examples, but includes some unnecessary filler like the persona block, the 'This skill is not exhaustive' disclaimer, and explanatory comments after best practices that Claude would already understand. The best practices explanations after the dashes add moderate bloat. | 2 / 3 |
Actionability | Provides fully executable, copy-paste ready Go code examples for every major operation: registration, invocation, dependencies, aliasing, named services, package organization, and full application setup. The quick reference tables are immediately usable. | 3 / 3 |
Workflow Clarity | The numbered steps (Define/Register, Invoke, Dependencies) provide a reasonable sequence, and the full application setup shows the composition root pattern. However, there are no explicit validation checkpoints or error recovery steps — e.g., no guidance on what to do when provider registration fails or how to verify the container is correctly wired before starting the server. | 2 / 3 |
Progressive Disclosure | Excellent structure with a clear overview in the main file, well-signaled one-level-deep references to advanced.md and testing.md, cross-references to related skills, and a quick reference table for discoverability. Content is appropriately split between core usage here and advanced topics in separate files. | 3 / 3 |
Total | 10 / 12 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 — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
metadata_field | 'metadata' should map string keys to string values | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 9 / 11 Passed | |
b88f91d
Table of Contents
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.