Initial example of custom agents#126
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces two new agent configurations, 'bare-agent' and 'reidbaker-agent', along with a comprehensive 'code-review' skill and a 'grill-me' interview skill. The code review skill includes detailed workflows, criteria, and a Python script for splitting large diffs. Feedback was provided to fix a hardcoded absolute file path in the documentation, improve the robustness of a regex for parsing diff headers, and ensure consistent file encoding when writing split diffs.
| After performing subdivided reviews, use the **Synthesis** step to create the final output: | ||
| 1. **Deduplicate**: Ensure that the same issue found in multiple passes or files is not reported multiple times unless it manifests differently. | ||
| 2. **Prioritize**: Group comments by severity. Ensure critical and high-severity issues are highlighted at the top. | ||
| 3. **Cohesiveness**: Ensure the tone and style of all comments are consistent, following the [natural-writing](file:///Users/gspencer/code/cheats/agents/skills/natural-writing/SKILL.md) skill. |
There was a problem hiding this comment.
The link to the natural-writing skill uses a hardcoded absolute path (file:///Users/gspencer/...). This should be replaced with a relative path to ensure the documentation is portable and works for all users across different environments.
| 3. **Cohesiveness**: Ensure the tone and style of all comments are consistent, following the [natural-writing](file:///Users/gspencer/code/cheats/agents/skills/natural-writing/SKILL.md) skill. | |
| 3. **Cohesiveness**: Ensure the tone and style of all comments are consistent, following the [natural-writing](../../natural-writing/SKILL.md) skill. |
| # Try to find file name | ||
| match = re.search(r"^diff --git a/(.*?) b/", file_diff, re.MULTILINE) | ||
| if not match: | ||
| match = re.search(r"^--- a/(.*?)$", file_diff, re.MULTILINE) |
There was a problem hiding this comment.
The regex r"^--- a/(.*?)$" is too broad and will capture trailing timestamps or tab characters often found in unified diff headers (e.g., --- a/file.txt\t2023-10-27...). This can lead to invalid filenames when creating the split diff files. Using \S+ to capture only the non-whitespace path is more robust.
| match = re.search(r"^--- a/(.*?)$", file_diff, re.MULTILINE) | |
| match = re.search(r"^--- a/(\S+)", file_diff, re.MULTILINE) |
| file_name = safe_name | ||
|
|
||
| file_path = os.path.join(output_dir, safe_name) | ||
| with open(file_path, "w") as f: |
There was a problem hiding this comment.
Custom agent that includes the skills and prompts I have been using to develop and a bare-agent that includes nothing both as a control and as an escape hatch of skills are making work harder.
Pre-launch Checklist
///).If you need help, consider asking for advice on the #hackers-new channel on Discord.