chore: consolidate agent context into .hermes/#18
Conversation
AGENTS.md, CLAUDE.md, GEMINI.md were 90% identical with minor wording differences. Canonicalized into single .hermes/agent-context.md with thin pointer files at root for agent discovery. Added .hermes/index.md entry for agent-context.md.
|
Warning Rate limit exceeded
Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 5 minutes and 57 seconds. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (5)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Code Review
This pull request introduces comprehensive agent documentation for the diffguard project, including a new canonical agent context file and updated pointers in root-level files. The review identified inconsistencies in the architecture diagram and crate purpose table within the new documentation, suggesting updates to align with the project's established style guide.
| diffguard (CLI) I/O boundary: clap, file I/O, git subprocess, env vars | ||
| │ | ||
| ▼ | ||
| diffguard-core Engine: run_check(), render_markdown_for_receipt(), compute verdicts |
There was a problem hiding this comment.
The description for diffguard-core in the architecture diagram is inconsistent with the project's style guide. The style guide mentions that diffguard-core orchestrates run_check and run_sensor, and renders outputs. The current description is missing run_sensor() and uses a more specific render_markdown_for_receipt() instead of the general render outputs.
To maintain consistency with the style guide and provide accurate information, please update the description.
| diffguard-core Engine: run_check(), render_markdown_for_receipt(), compute verdicts | |
| diffguard-core Engine: run_check(), run_sensor(), compute verdicts, render outputs |
References
- The style guide (line 18) defines
diffguard-coreas the engine that orchestrates check runs (run_check,run_sensor), computes verdicts, and renders outputs. (link)
| | Crate | Purpose | | ||
| |-------|---------| | ||
| | `diffguard-types` | Serializable DTOs, severity/scope enums, built-in rule definitions | | ||
| | `diffguard-diff` | Parse unified diff format, handle binary/submodule/rename detection | | ||
| | `diffguard-domain` | Compile rules, evaluate lines, preprocess (mask comments/strings) | | ||
| | `diffguard-core` | Engine: check runs, verdicts, render markdown/annotations | | ||
| | `diffguard` | CLI binary: arg parsing, config loading, git invocation, file output | | ||
| | `diffguard-lsp` | LSP server for editor integration | | ||
| | `diffguard-analytics` | Trend history and analytics | | ||
| | `diffguard-testkit` | Shared test utilities, fixtures, proptest strategies | | ||
| | `xtask` | Repo automation (ci, schema, conformance) | |
There was a problem hiding this comment.
The descriptions for diffguard-types and diffguard-core in the crate purpose table are incomplete or inconsistent compared to the project's style guide.
diffguard-types: The description is missing that it also contains JSON schemas, andbuilt-in rule definitionsis inaccurate as it only defines the rule structures.diffguard-core: The description is missing that it also orchestratesrun_sensorand the more generalrenders outputsis preferred over the specificrender markdown/annotations.
To ensure the documentation is accurate and aligned with the style guide, please update these descriptions.
| | Crate | Purpose | | |
| |-------|---------| | |
| | `diffguard-types` | Serializable DTOs, severity/scope enums, built-in rule definitions | | |
| | `diffguard-diff` | Parse unified diff format, handle binary/submodule/rename detection | | |
| | `diffguard-domain` | Compile rules, evaluate lines, preprocess (mask comments/strings) | | |
| | `diffguard-core` | Engine: check runs, verdicts, render markdown/annotations | | |
| | `diffguard` | CLI binary: arg parsing, config loading, git invocation, file output | | |
| | `diffguard-lsp` | LSP server for editor integration | | |
| | `diffguard-analytics` | Trend history and analytics | | |
| | `diffguard-testkit` | Shared test utilities, fixtures, proptest strategies | | |
| | `xtask` | Repo automation (ci, schema, conformance) | | |
| | Crate | Purpose | | |
| |-------|---------| | |
| | `diffguard-types` | Serializable DTOs, enums, and JSON schemas | | |
| | `diffguard-diff` | Parse unified diff format, handle binary/submodule/rename detection | | |
| | `diffguard-domain` | Compile rules, evaluate lines, preprocess (mask comments/strings) | | |
| | `diffguard-core` | Engine: orchestrates check and sensor runs, computes verdicts, renders outputs | | |
| | `diffguard` | CLI binary: arg parsing, config loading, git invocation, file output | | |
| | `diffguard-lsp` | LSP server for editor integration | | |
| | `diffguard-analytics` | Trend history and analytics | | |
| | `diffguard-testkit` | Shared test utilities, fixtures, proptest strategies | | |
| | `xtask` | Repo automation (ci, schema, conformance) | |
References
- The style guide defines the purpose of
diffguard-core(line 18) as orchestrating check and sensor runs and rendering outputs, anddiffguard-types(line 21) as containing DTOs, enums, and JSON schemas. The table's descriptions are inconsistent with these definitions. (link)
Consolidated AGENTS.md, CLAUDE.md, GEMINI.md into single . Root files are now thin pointers.