refactor(naming): remove @ prefix from on-disk filenames (#131)

* refactor(naming): remove @ prefix from on-disk filenames

BREAKING CHANGE: Renames @fix_plan.md → fix_plan.md and @AGENT.md → AGENT.md

This change improves POSIX compliance and compatibility with command-line tools.
The @ prefix was originally used to avoid naming conflicts, but with the .ralph/
folder structure introduced in v0.10.0, this convention is no longer necessary.

Changes:
- Update all scripts to use new naming (fix_plan.md, AGENT.md)
- Update migration script to handle both old and new naming conventions
- Update templates to use new naming
- Update all documentation references
- Update all 420 tests to expect new naming (TDD approach)

Migration:
- Existing projects with @-prefixed files will be automatically renamed
  when running ralph-migrate
- Projects already using the new naming will continue to work unchanged

* docs(claude): update file naming conventions section

* fix(migrate): prevent orphaned @-prefixed files during migration

When both root/@fix_plan.md and .ralph/@fix_plan.md exist, the root file
now takes priority and the .ralph/@fix_plan.md is removed (backup exists).
This prevents orphaned legacy files after migration.

---------

Co-authored-by: Test User <test@example.com>
This commit is contained in:
Frank Bria 2026-01-26 15:40:27 -07:00 committed by GitHub
parent 05c57207f3
commit c7e7a1c6a3
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
32 changed files with 288 additions and 236 deletions

View file

@ -123,7 +123,7 @@ You are Ralph, an autonomous AI development agent working on a Task Management A
## Current Objectives
1. Study specs/* to learn about the project specifications
2. Review @fix_plan.md for current priorities
2. Review fix_plan.md for current priorities
3. Implement the highest priority item using best practices
4. Use parallel subagents for complex tasks (max 100 concurrent)
5. Run tests after each implementation
@ -134,7 +134,7 @@ You are Ralph, an autonomous AI development agent working on a Task Management A
- Search the codebase before assuming something isn't implemented
- Use subagents for expensive operations (file searching, analysis)
- Write comprehensive tests with clear documentation
- Update @fix_plan.md with your learnings
- Update fix_plan.md with your learnings
- Commit working changes with descriptive messages
## 🧪 Testing Guidelines (CRITICAL)
@ -145,13 +145,13 @@ You are Ralph, an autonomous AI development agent working on a Task Management A
- Focus on CORE functionality first, comprehensive testing later
## Current Task
Follow @fix_plan.md and choose the most important item to implement next.
Follow fix_plan.md and choose the most important item to implement next.
EOF
}
# Sample @fix_plan.md
# Sample fix_plan.md
create_sample_fix_plan() {
local file=${1:-"@fix_plan.md"}
local file=${1:-"fix_plan.md"}
local total=${2:-10}
local completed=${3:-3}
@ -203,9 +203,9 @@ EOF
EOF
}
# Sample @AGENT.md
# Sample AGENT.md
create_sample_agent_md() {
local file=${1:-"@AGENT.md"}
local file=${1:-"AGENT.md"}
cat > "$file" << 'EOF'
# Agent Build Instructions
@ -260,7 +260,7 @@ Created the following files:
Running tests...
✓ All tests passed (5/5)
Updating @fix_plan.md...
Updating fix_plan.md...
Completed: Set up basic project structure
Ready for next task.
@ -365,8 +365,8 @@ create_test_project() {
# Create Ralph files in .ralph/ subdirectory
create_sample_prompt ".ralph/PROMPT.md"
create_sample_fix_plan ".ralph/@fix_plan.md" 10 3
create_sample_agent_md ".ralph/@AGENT.md"
create_sample_fix_plan ".ralph/fix_plan.md" 10 3
create_sample_agent_md ".ralph/AGENT.md"
# Create state files in .ralph/
echo "0" > .ralph/.call_count