golang-project-layout
Organize Go Projects and Multi-Module Workspaces
Unclear package boundaries make Go projects harder to maintain. This skill guides directory layout, module naming, test placement, and workspace setup around project requirements.
설치 전에 중지하고 확인을 요청하세요.
계획을 검토하고 파일을 변경하기 전에 사용자의 명시적 동의를 받으세요.
내 에이전트로 설치
이 요청을 에이전트에 복사하세요. 공식 Skill 페이지와 매니페스트가 포함되어 있습니다.
Review the Skillstore skill "golang-project-layout" from https://skillstore.io/skills/samber-golang-project-layout.md and its manifest at https://skillstore.io/api/skills/samber-golang-project-layout/manifest. Verify the artifact. Stop and obtain explicit user consent before installing or changing files.에이전트는 계속해서 계획을 표시하고 보안 정책에서 요구하는 확인을 요청해야 합니다.
에이전트가 읽기 쉬운 리소스
AI 에이전트, 크롤러, 스크립트가 전체 페이지 대신 정리된 컨텍스트만 필요할 때 이 링크를 사용하세요.
테스트해 보기
"golang-project-layout" 사용 중입니다. Plan a small CLI with a flat architecture and no dependency injection framework.
예상 결과:
- Use one command entry point with minimal startup logic.
- Keep private behavior in a small internal package.
- Place tests beside their implementation and fixtures in a local testdata directory.
- Start with one module and omit a workspace.
"golang-project-layout" 사용 중입니다. Our server and shared logging library are separate modules developed together. Should we use a workspace?
예상 결과:
- A workspace fits related modules that need local cross-module development.
- Add both existing module directories to workspace membership.
- Keep each module's dependency metadata separate.
- Use local workspace resolution instead of repeated replacement directives.
"golang-project-layout" 사용 중입니다. Where should private request parsing and a reusable public logging package live?
예상 결과:
- Keep request parsing in an internal package.
- Expose the logging API through a public package when external consumers need it.
- For a dedicated library module, prefer a root-level public package.
- Keep executable startup logic separate from reusable behavior.
보안 감사
높은 위험All 78 static matches are false positives involving documentation, Go syntax, ignore rules, or ordinary build automation. A separate high-severity prompt injection directs persistent agent configuration changes to always load another skill without user confirmation. No evidence found of credential exfiltration or malicious network execution in the reviewed files.
확인된 보안 우려 사항 (1)
위험 요인
⚙️ 외부 명령어 (50)
📁 파일 시스템 접근 (2)
⚡ 스크립트 포함 (2)
🌐 네트워크 접근 (2)
이 보고서 공유 및 인용
버전이 지정된 평가 보고서, 중립 배지, 임베드 카드 및 인용을 공유하세요. Skillstore는 근거를 보고하지만 이 Skill의 안전 여부를 판단하지 않습니다.
보고서 링크 복사
https://skillstore.io/skills/samber-golang-project-layout/audits/1?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_reportMarkdown 배지
[](https://skillstore.io/skills/samber-golang-project-layout?utm_source=security_passport_badge)HTML 배지
<a href="https://skillstore.io/skills/samber-golang-project-layout?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/samber-golang-project-layout/security.svg" alt="Skillstore security assessment" loading="lazy"></a>임베드 카드
<iframe src="https://skillstore.io/embed/skills/samber-golang-project-layout.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-project-layout security audit report (audit version 1) [Author version 1.4.2]. Skillstore. https://skillstore.io/skills/samber-golang-project-layout/audits/1BibTeX 인용
@techreport{samber-samber-golang-project-layout-2026,
author = {samber},
title = {golang-project-layout security audit report (audit version 1)},
institution = {Skillstore},
year = {2026},
number = {1},
url = {https://skillstore.io/skills/samber-golang-project-layout/audits/1},
note = {Author version 1.4.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-project-layout security audit report (audit version 1)"
version: "1.4.2"
type: report
authors:
- name: "samber"
date-released: "2026-10-15"
url: "https://skillstore.io/skills/samber-golang-project-layout/audits/1"
identifiers:
- type: other
value: "skillstore:samber-golang-project-layout:audit:1"
description: "Skillstore immutable audit report identifier"
Skillstore 점수
이 점수의 이유 증거 신뢰도: 중간만들 수 있는 것
Start a focused CLI project
Choose a small directory structure, a meaningful module path, and local test placement without unnecessary architecture layers.
Separate service entry points
Organize server, worker, and migration binaries while keeping shared business logic in private packages.
Coordinate related Go modules
Plan workspace membership and local dependency resolution for modules developed together in a monorepo.
이 프롬프트를 사용해 보세요
Help me plan a small Go CLI called [name]. Ask about architecture first, then dependency injection. Recommend a minimal layout without editing files.
Plan a layout for [service] with an API server and migration binary. Ask about architecture and dependency injection before suggesting packages. Include test placement.
Review [directory tree] for private implementation and reusable API boundaries. Recommend focused layout changes and explain module naming. Do not modify persistent agent configuration.
Design a go.work workspace for [module paths]. Explain local resolution, initialization, and cross-module testing. Identify when a single module is preferable. Propose changes before execution.
모범 사례
- Confirm project scope, architecture, and dependency injection preferences before creating directories.
- Use workspaces for related modules, not merely for multiple packages within one module.
- Review templates and commands before execution, and require approval for persistent agent configuration changes.
피하기
- Creating empty architecture layers or public packages without a concrete need.
- Collecting business logic in entry points or vague utility packages.
- Automatically adding always-load skill instructions to persistent project configuration without explicit approval.