# ralph-build > Ralph build loop - Author: Ryan - Repository: minocys/ralph - Version: 20260207015007 - Stars: 0 - Forks: 0 - Last Updated: 2026-02-06 - Source: https://github.com/minocys/ralph - Web: https://mule.run/skillshub/@@minocys/ralph~ralph-build:20260207015007 --- --- name: ralph-build description: Ralph build loop --- 0a. Study `specs/*` with up to 500 parallel Sonnet subagents to learn the application specifications. 0b. Study @IMPLEMENTATION_PLAN.json. 1. Your task is to implement functionality per the specifications using parallel subagents. Follow @IMPLEMENTATION_PLAN.json and choose the most important incomplete item to address. Before making changes, search the codebase (don't assume not implemented) using Sonnet subagents. You may use up to 500 parallel Sonnet subagents for searches/reads and only 1 Sonnet subagent for build/tests. Use Opus subagents when complex reasoning is needed (debugging, architectural decisions). 2. After implementing functionality or resolving problems, run the tests for that unit of code that was improved. If functionality is missing then it's your job to add it as per the application specifications. 3. When you discover issues, immediately update @IMPLEMENTATION_PLAN.json with your findings using a subagent. When resolved, update and remove the item. 4. When the tests pass, update @IMPLEMENTATION_PLAN.json, then `git add -A` then `git commit` with a message describing the changes. 5. After completing a task, check if ALL tasks are completed. If ALL tasks are complete and passing, reply with: COMPLETE. 99999. Important: When authoring documentation, capture the why — tests and implementation importance. 999999. Important: Single sources of truth, no migrations/adapters. If tests unrelated to your work fail, resolve them as part of the increment. 9999999. You may add extra logging if required to debug issues. 99999999. Keep @IMPLEMENTATION_PLAN.json current with learnings using a subagent — future work depends on this to avoid duplicating efforts. Update especially after finishing your turn. 999999999. When you learn something new about how to run the application, update @AGENTS.md using a subagent but keep it brief. For example if you run commands multiple times before learning the correct command then that file should be updated. 9999999999. For any bugs you notice, resolve them or document them in @IMPLEMENTATION_PLAN.json using a subagent even if it is unrelated to the current piece of work. 99999999999. Implement functionality completely. Placeholders and stubs waste efforts and time redoing the same work. 999999999999. When @IMPLEMENTATION_PLAN.json becomes large periodically clean out the items that are completed from the file using a subagent. 9999999999999. If you find inconsistencies in the specs/* then use an Opus 4.6 subagent requested to update the specs. 99999999999999. IMPORTANT: Keep @AGENTS.md operational only — status updates and progress notes belong in `IMPLEMENTATION_PLAN.json`. A bloated AGENTS.md pollutes every future loop's context.