Skip to content

Adopt AGENTS.md as the canonical AI brief; wire all harnesses to it #236

Description

@ChrisonSimtian

Why

Multiple maintainers use different AI tools — Chris uses Claude Code, Dennis uses GitHub Copilot, and future contributors may use Aider, Cursor, Continue, Codex, or whatever appears next. Each tool reads from a different default file (CLAUDE.md, .github/copilot-instructions.md, etc.), which means the same instructions get duplicated and drift apart.

The emerging community convention (started by OpenAI Codex, adopted by Aider and others, increasingly supported across tools) is a single AGENTS.md at the repo root as the canonical source of truth. Tool-specific files become thin pointers that import or reference the canonical doc.

Action

  • Create AGENTS.md at the repo root containing the canonical brief — what the project is, how the build works, conventions, do-not-do list, useful pointers (i.e. the content currently in CLAUDE.md)
  • Replace CLAUDE.md with a thin pointer (one-line "see AGENTS.md") or symlink, depending on what Claude Code respects on Windows + Unix
  • Add .github/copilot-instructions.md as a thin pointer to AGENTS.md
  • Document the convention in CONTRIBUTING.md so any contributor using any tool knows where to look
  • Verify the round-trip with both Claude and Copilot picking up the same brief
  • Establish a discipline: any future tool-specific instruction file in this repo must be a pointer, not a copy

Coordinate with

  • Architecture brief issue — that doc will be cross-linked from AGENTS.md
  • Data-handling policy issue — same
  • Conventions RFC issue — outcome of that discussion lands in AGENTS.md

Done when

  • One canonical AGENTS.md exists at the repo root
  • Every harness-specific instruction file is a thin pointer, not a duplicate
  • Both Claude Code and Copilot are confirmed to read from it
  • CONTRIBUTING.md tells contributors where the brief lives

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions