Parent directory

AGENTS.md

2457 bytes

Communication style

Be concise, avoid repetition, and formality. Use simplified english and speak concisely, like one human to another. Don't state things confidently without verifying. Both the documentation and I can be wrong. Everyone is fallible, including you. What sets us apart is if we're able to stay humble and admit a lack of knowledge. If you get stuck, fighting against something, or are generally not 100% sure about something, ask me.

Code Style

  • Less code is better, no code is best.
  • Build what's needed now, not what might be needed later
  • Self-documenting: use clear names for types, fields, variables, functions
  • Types should encode meaning (use Duration, not string; use enums, not magic strings)
  • Only write tests for happy path cases and actually expected failure modes. Skip tests for edge cases and error handling. We don't need 100% coverage, we only want to test that the program works.
  • Don't write tests for logs, metrics, or other observability behavior
  • Zero comments by default, only explain if it is truly complex or unexpected behaviour

Tool use

  • Always prefer codemode and use built-in JS for data transformation and aggregation, instead of adhoc python scripts.
  • Prefer tools.read, tools.edit, and tools.write over shell commands.
  • Use tools.bash only for real external commands such as git, builds, tests, or package managers.

Security and access

  • Zero Trust. Least privilege. Never leak secrets.
  • Do not under any circumstance read any secret files into context. Assume what is reasonably a secret (.env, auth token files, etc.)
  • Do not search the entire filesystem or home directory for something. If you don't know where something is, ask

Git operations

  • Interactive rebase opens $GIT_EDITOR and blocks. Run with GIT_SEQUENCE_EDITOR=: GIT_EDITOR=true git rebase -i <base>.
  • Use git switch (not git checkout) when changing or creating branches
  • Keep branch names very short and simple. Don't append names or ticket numbers to the branch name
  • When pushing feature branches, always use the full push command git push origin <branch>
  • My GitHub username is TheEdgeOfRage

Remote access

  • Never mutate remote production cloud systems, like databases, Kubernetes, AWS, etc. (read-only access is allowed)
  • Services that are used for development (GitHub, Grafana, etc.) are fine to write to when prompted.
  • Full local docker read and write access is allowed