2.3 KiB
2.3 KiB
AnthoLume Agent Guide
1) Working Style
- Keep changes targeted.
- Do not refactor broadly unless the task requires it.
- Validate only what is relevant to the change when practical.
- If a fix will require substantial refactoring or wide-reaching changes, stop and ask first.
2) Hard Rules
- Never edit generated files directly.
- Never write ad-hoc SQL.
- For Go error wrapping, use
fmt.Errorf("message: %w", err). - Do not use
github.com/pkg/errors.
3) Generated Code
OpenAPI
Edit:
api/v1/openapi.yaml
Regenerate:
go generate ./api/v1/generate.gocd frontend && bun run generate:api
Notes:
- If you add response headers in
api/v1/openapi.yaml(for exampleSet-Cookie),oapi-codegenwill generate typed response header structs inapi/v1/api.gen.go; update the handler response values to populate those headers explicitly.
Examples of generated files:
api/v1/api.gen.gofrontend/src/generated/**/*.ts
SQLC
Edit:
database/query.sql
Regenerate:
sqlc generate
4) Backend / Assets
Common commands
- Dev server:
make dev - Direct dev run:
CONFIG_PATH=./data DATA_PATH=./data REGISTRATION_ENABLED=true go run main.go serve - Tests:
make tests - Tailwind asset build:
make build_tailwind
Notes
- The Go server embeds
templates/*andassets/*. - Root Tailwind output is built to
assets/style.css. - Be mindful of whether a change affects the embedded server-rendered app, the React frontend, or both.
- SQLite timestamps are stored as RFC3339 strings (usually with a trailing
Z); preferparseTime/parseTimePtrinstead of ad-hoctime.Parselayouts.
5) Frontend
For frontend-specific implementation notes and commands, also read:
frontend/AGENTS.md
6) Regeneration Summary
- Go API:
go generate ./api/v1/generate.go - Frontend API client:
cd frontend && bun run generate:api - SQLC:
sqlc generate
7) Updating This File
After completing a task, update this AGENTS.md if you learned something general that would help future agents.
Rules for updates:
- Add only repository-wide guidance.
- Do not add one-off task history.
- Keep updates short, concrete, and organized.
- Place new guidance in the most relevant section.
- If the new information would help future agents avoid repeated mistakes, add it proactively.