awesome-go — AGENTS.md
A curated list of awesome Go frameworks, libraries and software
avelino/awesome-go 167,259
# awesome-go · LLM Contribution Guide
This document summarizes the project context and the conventions that language models must follow when helping on this repository.
## Project Snapshot
- Purpose: maintain the curated `README.md` list of Go resources and generate the static site via `go run .`.
- Primary language: Go 1.23 (see `go.mod`). Supporting JavaScript exists only for the GitHub Action in `.github/scripts`.
- Key entry points:
- `main.go`: reads `README.md`, builds category pages, and writes artifacts to `out/` using templates in `tmpl/`.
- `pkg/markdown` and `pkg/slug`: helper packages used by the generator.
- `.github/workflows/`: CI pipelines for PR quality validation, stale checks, site deployment, and Go tests.
## When Modifying the Awesome List
- Read and respect `CONTRIBUTING.md` (alphabetical order, one item per PR, descriptions end with a period, etc.).
- Keep categories with at least three entries and verify surrounding entries still meet quality standards.
- Avoid promotional copy; descriptions must stay concise and neutral.
- Do not drop existing content unless removal is requested and justified.
## Coding Guidelines
- Go:
- Use standard formatting (`gofmt`) and idiomatic Go style.
- Favor small, testable functions; keep exported APIs documented with Go-style comments.
- Maintain ≥80% coverage for non-data packages and ≥90% for data packages when adding new testable code.
- JavaScript (GitHub Action script):
- Keep Node 20 compatibility.
- Uphold strict mode and existing patterns (async helpers, early returns, descriptive errors).
- Generated site output is not committed; do not add files under `out/`.
## Testing & Validation
- Preferred commands before submitting Go changes:
- `go test ./...`
- `go test -run ^TestStaleRepository$` (mirrors the scheduled workflow focus).
- For list-only modifications, run linting/formatting on touched files if tools are configured locally.
- The `PR Quality Checks` workflow will run `.github/scripts/check-quality.js`; ensure referenced links in PR bodies are reachable.
## CI Overview
- `tests.yaml`: runs `go test main_test.go main.go` on pushes/PRs.
- `pr-quality-check.yaml`: validates PR metadata (forge link, pkg.go.dev, Go Report Card, coverage).
- `run-check.yaml`: scheduled stale repository audit via `go test -run ^TestStaleRepository$`.
- `site-deploy.yaml`: builds and deploys the static site to Netlify on `main` pushes.
## Documentation & Housekeeping
- Update this `AGENTS.md` whenever repository conventions change.
- Keep documentation in English; follow American English spelling for code and comments.
- Remove unused files/modules when confirmed obsolete.
- Align rendered documentation (`README.md`, `COVERAGE.md`, etc.) with any behavior changes made to `main.go` or helper packages.
こちらもおすすめ
Frontend カテゴリの他のルール
もっとルールを探す
CLAUDE.md、.cursorrules、AGENTS.md、Image Prompts の全 157 ルールをチェック。



