golang-uber-dig SKILL.md skillA

golang-uber-dig from yzfly/skills is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add yzfly/skills/golang-uber-dig@v1.1.0

Pins v1.1.0 in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 17 of 17 checks passed
Kind
SKILL.md skill
Repository
yzfly/skills
Path
skills/cto/references/payload/backend/golang/golang-uber-dig/SKILL.md
Versions recorded
1
Latest version
v1.1.0, committed May 3, 2026
Size
10,213 bytes
Repository stars
12
License
a license file GitHub does not identify

Implements dependency injection in Golang using uber-go/dig — reflection-based container, Provide/Invoke, dig.In/dig.Out parameter and result objects, named values, value groups, optional dependencies, scopes, and Decorate. Apply when using or adopting uber-go/dig, when the codebase imports `go.uber.org/dig`, or when wiring an application graph at startup. For higher-level lifecycle and modules, see `samber/cc-skills-golang@golang-uber-fx` skill.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

**Persona:** You are a Go architect wiring an application graph with dig. You keep the container at the composition root, depend on interfaces not concrete types, and treat constructor errors as first-class failures.

# Using uber-go/dig for Dependency Injection in Go

Reflection-based DI toolkit, designed to power application frameworks (it is the engine behind `uber-go/fx`) and resolve object graphs during startup.

**Official Resources:**

- [pkg.go.dev/go.uber.org/dig](https://pkg.go.dev/go.uber.org/dig)
- [github.com/uber-go/dig](https://github.com/uber-go/dig)

This skill is not exhaustive. Please refer to library documentation and code examples for more information. Context7 can help as a discoverability platform.

```bash
go get go.uber.org/dig
```

## dig vs. fx

fx is built on dig and shares the same container engine — the DI primitives (`Provide`, `Invoke`, `In`/`Out` structs, named values, value groups) are identical. `fx.In`/`fx.Out` are re-exports of `dig.In`/`dig.Out`.

What fx adds on top of dig:

| Concern | dig | fx |
| --- | --- | --- |
| DI container | ✅ `dig.New()` | ✅ (embedded) |
| Lifecycle hooks | ❌ | ✅ `fx.Lifecycle` OnStart/OnStop |
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add yzfly/skills/golang-uber-dig@sha256:d4c15b4b5fe72578

The line at the top of this page pins the label v1.1.0, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_u6wll2vkyf7jwv7e.svg)](https://markdownregistry.com/a/art_u6wll2vkyf7jwv7e)

4 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 1 version of this file, committed on May 3, 2026.

versioncommittedcommitsizeaudit
v1.1.0 latest2026-05-03 c091e90 10,213 BA view

Audit of the latest version

A  17 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (10213 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

yzfly/skills · 12 stars · license a license file GitHub does not identify · pushed 2026-09-26 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_u6wll2vkyf7jwv7e
GET https://markdownregistry.com/api/v1/resolve?ref=yzfly/skills/golang-uber-dig
GET https://markdownregistry.com/api/v1/blob/d4c15b4b5fe7257844efaa0c5b1a9787c99978766dffea181b158286e06f7b56

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from yzfly/skills

anti-ai-copy SKILL.md skill
yzfly/skills · skills/anti-ai-copy/SKILL.md · 软件界面文案(UI copy / microcopy / UX writing)写作与去 AI 味。当用户要写、改、审界面文案时使用:按钮、页面标题、表单标签、占位符、空状态、Toast /…
v1.0.0 · audit A · 12 stars
brand-narrative SKILL.md skill
yzfly/skills · skills/brand-narrative/SKILL.md · 品牌叙事策略。当用户要做品牌叙事 / 品牌故事 / 品牌定位 / 品牌策略、问「我们的品牌到底围绕什么」「该讲产品还是讲文化」、想判断某个新品 / 联名 / 内容「符不符合品牌」、或为 0–1…
v1.0.0 · audit A · 12 stars
breathing-brand SKILL.md skill
yzfly/skills · skills/breathing-brand/SKILL.md · 出海 / 国际化品牌的极简呼吸感视觉全案。当用户说要做品牌 VI、品牌视觉、logo 与周边、独立站视觉、社区 / 组织 / 产品的品牌形象,或抱怨自己的品牌「看起来廉价」「太满太乱」「不够国际化 /…
v1.0.0 · audit A · 12 stars
cto SKILL.md skill
yzfly/skills · skills/cto/SKILL.md · Startup / AI-startup CTO who is also a top-tier individual contributor. Two modes: (1) greenfield — turn fuzzy business…
git:20260504.146b163 · audit A · 12 stars
golang-benchmark SKILL.md skill
yzfly/skills · skills/cto/references/payload/backend/golang/golang-benchmark/SKILL.md · Golang benchmarking, profiling, and performance measurement. Use when writing, running, or comparing Go benchmarks…
v1.1.3 · audit A · 12 stars
golang-cli SKILL.md skill
yzfly/skills · skills/cto/references/payload/backend/golang/golang-cli/SKILL.md · Golang CLI application development. Use when building, modifying, or reviewing a Go CLI tool — especially for command…
v1.1.3 · audit A · 12 stars
golang-code-style SKILL.md skill
yzfly/skills · skills/cto/references/payload/backend/golang/golang-code-style/SKILL.md · Golang code style, formatting and conventions. Use when writing Go code, reviewing style, configuring linters, writing…
v1.1.2 · audit A · 12 stars
golang-concurrency SKILL.md skill
yzfly/skills · skills/cto/references/payload/backend/golang/golang-concurrency/SKILL.md · Golang concurrency patterns. Use when writing or reviewing concurrent Go code involving goroutines, channels, select…
v1.1.3 · audit A · 12 stars
golang-context SKILL.md skill
yzfly/skills · skills/cto/references/payload/backend/golang/golang-context/SKILL.md · Idiomatic context.Context usage in Golang — creation, propagation, cancellation, timeouts, deadlines, context values…
v1.1.1 · audit A · 12 stars
golang-continuous-integration SKILL.md skill
yzfly/skills · skills/cto/references/payload/backend/golang/golang-continuous-integration/SKILL.md · Provides CI/CD pipeline configuration using GitHub Actions for Golang projects. Covers testing, linting, SAST, security…
v1.2.0 · audit A · 12 stars
golang-data-structures SKILL.md skill
yzfly/skills · skills/cto/references/payload/backend/golang/golang-data-structures/SKILL.md · Golang data structures — slices (internals, capacity growth, preallocation, slices package), maps (internals, hash…
v1.1.1 · audit A · 12 stars
golang-database SKILL.md skill
yzfly/skills · skills/cto/references/payload/backend/golang/golang-database/SKILL.md · Comprehensive guide for Go database access. Covers parameterized queries, struct scanning, NULLable column handling…
v1.1.2 · audit A · 12 stars

Every file in yzfly/skills

Other files named golang-uber-dig

golang-uber-dig SKILL.md skill
samber/cc-skills-golang · skills/golang-uber-dig/SKILL.md · Implements dependency injection in Golang using uber-go/dig — reflection-based container, Provide/Invoke…
v1.2.2 · audit A · 3,523 stars

Browse by kind, by grade A, or by owner.