fiber/AGENTS.md
RW 9c123ce957
Update conditional instructions for startup skip (#3475)
Clarify conditional startup script skip
2025-05-24 21:31:47 +02:00

45 lines
1.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# AGENTS.md
## Agent Instructions
> **Note for the AI agent:** Before running the startup script, verify that all dependencies and CLI tools are already available. If a `vendor/` directory exists **or** `go list -m -mod=readonly all` succeeds (indicating modules are cached), you may skip the entire startup script—including all `go mod` commands and `go install` steps. Otherwise run the script as listed below.
---
## Startup script (reference only do not run)
- Fetch dependencies:
```bash
go mod tidy && go mod download && go mod vendor
```
- Install CLI tools referenced in Makefile:
```bash
go install gotest.tools/gotestsum@latest # test runner
go install golang.org/x/vuln/cmd/govulncheck@latest # vulnerability scanner
go install mvdan.cc/gofumpt@latest # code formatter
go install github.com/tinylib/msgp@latest # msgp codegen
go install github.com/vburenin/ifacemaker@975a95966976eeb2d4365a7fb236e274c54da64c # interface impls
go install github.com/dkorunic/betteralign/cmd/betteralign@latest # struct alignment
go mod tidy # clean up go.mod & go.sum
```
## Makefile commands
Use `make help` to list all available commands. Common targets include:
- **audit**: run `go mod verify`, `go vet`, and `govulncheck` for quality checks.
- **benchmark**: run benchmarks with `go test`.
- **coverage**: generate a coverage report.
- **format**: apply formatting using `gofumpt`.
- **lint**: execute `golangci-lint`.
- **test**: run the test suite with `gotestsum`.
- **longtest**: run the test suite 15 times with shuffling enabled.
- **tidy**: clean and tidy dependencies.
- **betteralign**: optimize struct field alignment.
- **generate**: run `go generate` after installing msgp and ifacemaker.
These targets can be invoked via `make <target>` as needed during development and testing.