Creates, updates, or optimizes an AGENTS.md file for a repository with minimal, high-signal instructions covering non-discoverable coding conventions, tooling quirks, workflow preferences, and project-specific rules that agents cannot infer from reading the codebase. Use when setting up agent instructions or Claude configuration for a new repository, when an existing AGENTS.md is too long, generic, or stale, when agents repeatedly make avoidable mistakes, or when repository workflows have changed and the agent configuration needs pruning. Applies a discoverability filter—omitting anything Claude can learn from README, code, config, or directory structure—and a quality gate to verify each line remains accurate and operationally significant.
85
94%
Does it follow best practices?
Impact
72%
1.14xAverage score across 5 eval scenarios
Passed
No known issues
Set up agent configuration for our Go service repository so that AI assistants can help our engineers effectively.
We want a single AGENTS.md file at the repo root. Read the files provided below to understand the project, then write the file. Focus on information that an AI assistant genuinely needs and cannot easily discover on its own — things that would cause it to make mistakes or waste time if it did not know them.
Makefile.PHONY: test build run db-reset lint
test:
go test ./...
build:
go build -o bin/svc ./cmd/svc
run:
go run ./cmd/svc
db-reset:
psql $(DATABASE_URL) -f scripts/drop_all.sql
psql $(DATABASE_URL) -f scripts/schema.sql
psql $(DATABASE_URL) -f scripts/seed_dev.sql
lint:
golangci-lint run ./...go.modmodule github.com/acme/paymentsvc
go 1.22
require (
github.com/gin-gonic/gin v1.9.1
github.com/jackc/pgx/v5 v5.5.4
github.com/stretchr/testify v1.9.0
go.uber.org/zap v1.27.0
)README.md# paymentsvc
Internal payments microservice for the ACME platform.
## Prerequisites
- Go 1.22+
- PostgreSQL 15
- `golangci-lint` (install via `brew install golangci-lint` or the official installer)
## Setup
1. Copy `config/local.yaml.example` to `config/local.yaml` and fill in your local values.
2. Run `make db-reset` to initialise the database.
3. Run `make run` to start the service.
## Testing
Run `make test` to execute the full test suite. CI runs the same command.
## Building
Run `make build` to produce a binary at `bin/svc`..github/workflows/ci.ymlname: CI
on:
push:
branches: ["main"]
pull_request:
jobs:
build-and-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: "1.22"
- name: Test
run: make test
- name: Build
run: make buildINTERNAL_NOTES.md# Internal notes — not for external distribution
## billing/ package
The `billing/` package is maintained by the Billing Platform team and operates on its own release cadence. It is vendored here for import convenience but ownership remains with that team.
**Any PR that touches files under `billing/` must be routed to the Billing Platform team for review.** The main-team engineers must not merge such PRs themselves, even if CI is green and the change looks trivial.
## Auth service config
The internal auth service URL is hardcoded in `config/local.yaml`. This value points to the internal dev instance of the auth service and must stay that way for local development. Do not change it to a staging URL — doing so will route local dev traffic through the staging auth service, which has caused incidents in the past (leaked test tokens into staging logs, rate-limit exhaustion).Produce only the AGENTS.md file. Do not modify any of the input files.