golang-google-wire
Build Go Dependency Graphs with Google Wire
Go dependency graphs become difficult to maintain as constructors and interfaces change. This skill guides Wire provider design, injector generation, cleanup handling, and testing.
๋ด ์์ด์ ํธ๋ก ์ค์น
์ด ์์ฒญ์ ์์ด์ ํธ์ ๋ณต์ฌํ์ธ์. ๊ณต์ Skill ํ์ด์ง์ ๋งค๋ํ์คํธ๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.
Review the Skillstore skill "golang-google-wire" from https://skillstore.io/skills/samber-golang-google-wire.md and its manifest at https://skillstore.io/api/skills/samber-golang-google-wire/manifest. Verify the artifact. You may proceed after verification, subject to the environment's own policy.์์ด์ ํธ๋ ๊ณ์ํด์ ๊ณํ์ ํ์ํ๊ณ ๋ณด์ ์ ์ฑ ์์ ์๊ตฌํ๋ ํ์ธ์ ์์ฒญํด์ผ ํฉ๋๋ค.
์์ด์ ํธ๊ฐ ์ฝ๊ธฐ ์ฌ์ด ๋ฆฌ์์ค
AI ์์ด์ ํธ, ํฌ๋กค๋ฌ, ์คํฌ๋ฆฝํธ๊ฐ ์ ์ฒด ํ์ด์ง ๋์ ์ ๋ฆฌ๋ ์ปจํ ์คํธ๋ง ํ์ํ ๋ ์ด ๋งํฌ๋ฅผ ์ฌ์ฉํ์ธ์.
ํ ์คํธํด ๋ณด๊ธฐ
"golang-google-wire" ์ฌ์ฉ ์ค์ ๋๋ค. Wire generates my injector, but go build reports that InitApp is declared twice.
์์ ๊ฒฐ๊ณผ:
The injector stub needs the wireinject build constraint. Exclude the stub from normal builds, regenerate the injector, and build again.
"golang-google-wire" ์ฌ์ฉ ์ค์ ๋๋ค. Both database connection providers return strings, and Wire reports multiple bindings.
์์ ๊ฒฐ๊ณผ:
Use distinct named types for primary and replica connection strings. Update the providers and database constructors so each dependency has a unique type.
"golang-google-wire" ์ฌ์ฉ ์ค์ ๋๋ค. How can my integration tests replace the production mailer without changing production wiring?
์์ ๊ฒฐ๊ณผ:
Create a test provider set that binds the mailer interface to a recording fake. Compose the test graph without the conflicting production mailer binding.
๋ณด์ ๊ฐ์ฌ
์์ All 76 static findings are false positives involving documentation formatting, Go syntax, example configuration, or legitimate development commands. No evidence found of credential exfiltration, unauthorized email delivery, system reconnaissance, or malicious prompt injection. The skill documents dependency installation and code generation, which require normal development permissions.
์ํ ์์ธ
โ๏ธ ์ธ๋ถ ๋ช ๋ น์ด (50)
๐ ๋คํธ์ํฌ ์ ๊ทผ (4)
๐ ํ๊ฒฝ ๋ณ์ (1)
โก ์คํฌ๋ฆฝํธ ํฌํจ (1)
์ด ๋ณด๊ณ ์ ๊ณต์ ๋ฐ ์ธ์ฉ
๋ฒ์ ์ด ์ง์ ๋ ํ๊ฐ ๋ณด๊ณ ์, ์ค๋ฆฝ ๋ฐฐ์ง, ์๋ฒ ๋ ์นด๋ ๋ฐ ์ธ์ฉ์ ๊ณต์ ํ์ธ์. Skillstore๋ ๊ทผ๊ฑฐ๋ฅผ ๋ณด๊ณ ํ์ง๋ง ์ด Skill์ ์์ ์ฌ๋ถ๋ฅผ ํ๋จํ์ง ์์ต๋๋ค.
๋ณด๊ณ ์ ๋งํฌ ๋ณต์ฌ
https://skillstore.io/skills/samber-golang-google-wire/audits/1?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_reportMarkdown ๋ฐฐ์ง
[](https://skillstore.io/skills/samber-golang-google-wire?utm_source=security_passport_badge)HTML ๋ฐฐ์ง
<a href="https://skillstore.io/skills/samber-golang-google-wire?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/samber-golang-google-wire/security.svg" alt="Skillstore security assessment" loading="lazy"></a>์๋ฒ ๋ ์นด๋
<iframe src="https://skillstore.io/embed/skills/samber-golang-google-wire.html" title="Skillstore Security Assessment" sandbox="allow-popups allow-popups-to-escape-sandbox" loading="lazy" referrerpolicy="no-referrer" width="420" height="180"></iframe>ํ์ ์ธ์ฉ (APA ยท BibTeX ยท CFF)
APA ์ธ์ฉ
samber. (2026). golang-google-wire security audit report (audit version 1) [Author version 1.1.2]. Skillstore. https://skillstore.io/skills/samber-golang-google-wire/audits/1BibTeX ์ธ์ฉ
@techreport{samber-samber-golang-google-wire-2026,
author = {samber},
title = {golang-google-wire security audit report (audit version 1)},
institution = {Skillstore},
year = {2026},
number = {1},
url = {https://skillstore.io/skills/samber-golang-google-wire/audits/1},
note = {Author version 1.1.2}
}CITATION.cff
cff-version: 1.2.0
message: "If you use this Skill, cite its author and this versioned security audit report."
title: "golang-google-wire security audit report (audit version 1)"
version: "1.1.2"
type: report
authors:
- name: "samber"
date-released: "2026-10-18"
url: "https://skillstore.io/skills/samber-golang-google-wire/audits/1"
identifiers:
- type: other
value: "skillstore:samber-golang-google-wire:audit:1"
description: "Skillstore immutable audit report identifier"
Skillstore ์ ์
์ด ์ ์์ ์ด์ ์ฆ๊ฑฐ ์ ๋ขฐ๋: ์ค๊ฐ๋ง๋ค ์ ์๋ ๊ฒ
Add compile-time application wiring
Organize database, cache, repository, and service constructors into reusable provider sets with a generated application injector.
Maintain generated dependency graphs
Plan regeneration and CI checks after constructor changes, and keep generated source synchronized with provider definitions.
Replace dependencies in integration tests
Design test provider sets and explicit interface bindings that replace production dependencies with controlled fakes.
์ด ํ๋กฌํํธ๋ฅผ ์ฌ์ฉํด ๋ณด์ธ์
Explain how Google Wire connects these constructors: [constructor signatures]. Show the provider set, injector build constraint, and generation workflow.
Diagnose this Wire error: [error]. Review these providers and interfaces: [code]. Explain the smallest binding or named-type change needed.
Design Wire provider sets for [application components]. Include cleanup signatures, partial failure handling, prebuilt configuration arguments, and the caller's shutdown responsibilities.
Review this Wire layout: [provider sets and injectors]. Plan fake interface bindings, test generation, and CI freshness checks. Identify build-tag and lifecycle risks.
๋ชจ๋ฒ ์ฌ๋ก
- Regenerate and review Wire output after constructor changes, then commit generated source with the provider changes.
- Keep provider sets small and bind interfaces explicitly near their concrete providers.
- Propagate cleanup functions through injectors and handle construction errors before scheduling cleanup.
ํผํ๊ธฐ
- Editing generated injector bodies instead of changing providers and regenerating.
- Providing multiple values of the same type without distinct named types.
- Treating Wire as a runtime lifecycle framework with automatic startup and shutdown hooks.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
What does Google Wire generate?
Does this skill install Go or Wire?
Should I edit wire_gen.go to fix constructor errors?
How are interfaces connected to implementations?
Does Wire manage graceful shutdown?
Is Google Wire still maintained?
๊ฐ๋ฐ์ ์ธ๋ถ ์ ๋ณด
์์ฑ์
samber๋ผ์ด์ ์ค
MIT
์์ฑ์ ๋ฒ์
v1.1.2
Skillstore ๋ฆฌ๋น์
r1
๋ฆฌํฌ์งํ ๋ฆฌ
https://github.com/samber/cc-skills-golang/tree/8e899e20ff0cd4dc524af3993e4c62d8ee8c5717/skills/golang-google-wire์ฐธ์กฐ
29fe30832fbade762d737579eea5c4bf3e480de7
์ ์ง๋ณด์ ์ต์ ์ฑ
2026. 10. 18.
์ฌ์ฉ๋
0 ๋ค์ด๋ก๋ ยท 0 ์กฐํ
ํ์ผ ๊ตฌ์กฐ
๐ evals/
๐ evals.json
๐ references/
๐ advanced.md
๐ recipes.md
๐ testing.md
๐ SKILL.md