{"_id":"@alcinanet/ralph-rlm","_rev":"17-4d46f7bf25de3c0a464481cb379622be","name":"@alcinanet/ralph-rlm","dist-tags":{"latest":"4.2.3"},"versions":{"3.0.0":{"name":"@alcinanet/ralph-rlm","version":"3.0.0","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.0.0","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/alcinaNet/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/alcinaNet/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"a896251ba66287452444a162aea18364d1957102","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.0.0.tgz","fileCount":144,"integrity":"sha512-Ltvbf2dIZhuJwnC7miRy73eL+44NZwKTbyd3VVO9xLEVsWxOUt6Q2vaD0lvNaHh1t8M+jhxuIdZQu7fedbWRHQ==","signatures":[{"sig":"MEUCIBN/pV1aFbFOv1gQjdnjtFMaMUrv5VTAaf4WoTu2uBghAiEAhngSx9LcRpETiWs27B0wGd70ypDQBuqeM3hidt/ETik=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299227},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"8cb43cd759ee1d0fddfaba524e37ace925617f99","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/alcinaNet/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"10.9.4","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.0.0_1772524729990_0.8157270192191084","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@alcinanet/ralph-rlm","version":"3.0.1","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.0.1","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/alcinaNet/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/alcinaNet/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"c38a8b81cf352c1ad21d985656e8d58ab57e90d9","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.0.1.tgz","fileCount":144,"integrity":"sha512-7+KZYukWdrTech16pGud2Blfv8gXkYXzmGVxOgf4dJav7PGM8JccPiJVqfnonyb6aEPROwxxvOaqjNIplQlEEw==","signatures":[{"sig":"MEUCIBXQ4fF3XhpfrnBhc/UPZ7+C+LT9wKbYHoW/TlHG5cf6AiEA/04jlwCPSa5f+NEU1XahQpuWyA9skX7XWcIvADQF+9E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":301125},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"8cb43cd759ee1d0fddfaba524e37ace925617f99","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/alcinaNet/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"10.9.4","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.0.1_1772569527042_0.26780376797287175","host":"s3://npm-registry-packages-npm-production"}},"3.0.2":{"name":"@alcinanet/ralph-rlm","version":"3.0.2","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.0.2","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/alcinaNet/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/alcinaNet/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"a24016f8c603143352c0b1644c9f5b2f98aa2b3e","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.0.2.tgz","fileCount":144,"integrity":"sha512-uWEUuvufbttUEFqVkWaWNa8M6sUB7f9D3RIXMVrPGsOnsNbHJEaxej4cl+fEx1jVUxREfDhT1+/43cOUccLmPg==","signatures":[{"sig":"MEUCIBwpjiez9eFYRyDClILns5dFJoBIUEgNPgkW1rpBk2l6AiEA7qSxPZXQiTUXBFTlFOnmLE1Mo8l3m3YuacC/DUS6kYA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":299698},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"8cb43cd759ee1d0fddfaba524e37ace925617f99","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/alcinaNet/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"10.9.4","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.0.2_1772571427189_0.06683356657718975","host":"s3://npm-registry-packages-npm-production"}},"3.0.3":{"name":"@alcinanet/ralph-rlm","version":"3.0.3","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.0.3","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/alcinaNet/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/alcinaNet/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"52ff184a7fd1916dbff18f41cf70fa5324d57820","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.0.3.tgz","fileCount":144,"integrity":"sha512-zHQZE5ZtIRifo6yLzZWWLjWWvNsvqjVvBO+FEFHk3I83FpO179GnJIZ+AlVr+wfp/pBHB3xwykTfB7aQWc8fjw==","signatures":[{"sig":"MEUCIDz09Xkhm3SkQU81WLrJZ+cg/TuJcGZxPmSI5iwg+OysAiEAtm76ArPhYrJpRilQaBA7uGNUlMM2zm9UqzNnna3y6kY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":300108},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"8cb43cd759ee1d0fddfaba524e37ace925617f99","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/alcinaNet/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"10.9.4","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.0.3_1772571941334_0.37018791596584144","host":"s3://npm-registry-packages-npm-production"}},"3.0.4":{"name":"@alcinanet/ralph-rlm","version":"3.0.4","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.0.4","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/alcinaNet/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/alcinaNet/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"8c8347a33b8b0969b8a0ca9ecd6a161af5804f60","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.0.4.tgz","fileCount":144,"integrity":"sha512-A1/rZDyzTKFSJxqxwBnWdqGuChXTNv4TLWwiCrb5Nf5INMnHQMQqPdV7Mp6R3UX3lqjOm9fv29hKdzDLGR9uvw==","signatures":[{"sig":"MEUCIQChECl4E/W2OvDFqZ2O3HlsjRZoiEYvFqCdYPclAU/FCQIgSq6UcIP/p4536yCWv9gzesguOXw8aaXvRklt5p9wi8c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":300029},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"8cb43cd759ee1d0fddfaba524e37ace925617f99","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/alcinaNet/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"10.9.4","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.0.4_1772572407066_0.05053435149269925","host":"s3://npm-registry-packages-npm-production"}},"3.0.5":{"name":"@alcinanet/ralph-rlm","version":"3.0.5","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.0.5","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/alcinaNet/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/alcinaNet/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"4584598f41212585a08955dede261c6b8f1ee7d2","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.0.5.tgz","fileCount":148,"integrity":"sha512-oU6bZ+RSgNW+h8buvlqE6tK4ZS3XPCwcnHoVpIjOqZ0vwdZHMOhfoQc2BczyqC0ZSGZEiuKUdbVVEbjjsZ898w==","signatures":[{"sig":"MEYCIQDbMQXD4rDh3tbYoo0wrmuR0B617icV7iy3S7zKW5H5TwIhAKJZPtG5D6vP5F9MYCdLRCp85N/iyjsrBjPmHlBDeD1A","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":302407},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"8cb43cd759ee1d0fddfaba524e37ace925617f99","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/alcinaNet/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"10.9.4","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.0.5_1772573522879_0.34846313185179745","host":"s3://npm-registry-packages-npm-production"}},"3.0.6":{"name":"@alcinanet/ralph-rlm","version":"3.0.6","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.0.6","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/alcinaNet/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/alcinaNet/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"6078d018981e8cf21e31cf6a4a7cfb1005c9ac31","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.0.6.tgz","fileCount":148,"integrity":"sha512-9G7oYcs+OykjRupqBnjvsvF5biN/1HcQXikRhtJE3iy8CtvGRWpwIyfQsRpsHGgYRxk+ByDX3MGq6YCPWX1GoQ==","signatures":[{"sig":"MEUCIB7SIhScGdaQnnd3I9hmbYNt6wxCaWFiHbn1ZH+636YlAiEAkscULcNlAdWSA2amgf4DbZJxycWqMJkKV8EeVEvRsoU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":304739},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"8cb43cd759ee1d0fddfaba524e37ace925617f99","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/alcinaNet/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"10.9.4","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.0.6_1772576441757_0.4936654259394506","host":"s3://npm-registry-packages-npm-production"}},"3.0.7":{"name":"@alcinanet/ralph-rlm","version":"3.0.7","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.0.7","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/alcinaNet/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/alcinaNet/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"904d2aa046f68314e4187e25b65d841631be913d","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.0.7.tgz","fileCount":148,"integrity":"sha512-6alyUf3GzAmZDfnbZiWUR+/bSH5rrIebp5S7AR/ydNhIf41BM/Z8GwXBZy1hPDKb00OEMCpoYrHGoZP0e271uw==","signatures":[{"sig":"MEYCIQCNFTcli1Jo8FuMfZx0AAfGGU0swTvUO9XPcH3cpi54QAIhAKE90tqn3ZWEkQ1bS8aYY6ShVxLMCGc2gByYtIa0/799","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":309415},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"8cb43cd759ee1d0fddfaba524e37ace925617f99","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/alcinaNet/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"10.9.4","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.0.7_1772583693897_0.7608844407731163","host":"s3://npm-registry-packages-npm-production"}},"3.0.8":{"name":"@alcinanet/ralph-rlm","version":"3.0.8","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.0.8","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/alcinaNet/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/alcinaNet/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"ae7c6038b6f6d6abe8a707e832360e229926e803","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.0.8.tgz","fileCount":148,"integrity":"sha512-wde3GbWbe2HEWEAAcu8fN0BG1HtRE3PVswxpy74cOmyzJr03u71pZ3aiq4PCF42MX2xSw5ul92b1xoip6oSCPQ==","signatures":[{"sig":"MEUCIFxL89PonKXCa+8/ks15NLX6ZFGtDjOBxQOPHBY/WmobAiEA7MSGgAuu36QzGX7saANa0Tl+ADSa0xjo2HEfE6WitKA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":309294},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"8cb43cd759ee1d0fddfaba524e37ace925617f99","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/alcinaNet/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"10.9.4","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.0.8_1772583967744_0.10169704617986786","host":"s3://npm-registry-packages-npm-production"}},"3.1.0":{"name":"@alcinanet/ralph-rlm","version":"3.1.0","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.1.0","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/alcinaNet/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/alcinaNet/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"61779e2b58be3ab5dd97de56a031e3762a15a970","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.1.0.tgz","fileCount":156,"integrity":"sha512-100VS3eXxU5TAh7NP++LQMf5G3d9LQMLiKPRb3zbxlGgTkhsfEDNsJpNrozVglgZRyanSG3NHbq+KmQv6FDomA==","signatures":[{"sig":"MEYCIQDLTS4MMexx8L0CzxXcv9tZJN1n6ZlDHEhFuvnxxbR4eQIhAIjFWGtWxAe05ea+PBdMpPriD34PopLwmFT2iujqEMjK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":377717},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"d97809af887c32680ecd2cef70bd9675aa74a7dc","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/alcinaNet/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"10.9.4","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"22.22.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.1.0_1772662520958_0.9637565090769804","host":"s3://npm-registry-packages-npm-production"}},"3.2.0":{"name":"@alcinanet/ralph-rlm","version":"3.2.0","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.2.0","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/Was85/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/Was85/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"2ef7e25549acf843e500f73781ceda7dc3258bd2","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.2.0.tgz","fileCount":251,"integrity":"sha512-cZorrttbVTCVM2dJK1sJn52746wOZ2dNAod7mPiYaHpLIIQQyMvaT099gdBQQtdlTTRCiJXZs5Pyz5Z2aFoz7w==","signatures":[{"sig":"MEYCIQDiU40RdDud91GNKMdAy+x0mOV6FNvq+9bzoXyEMwWUwwIhAPKlOHvJGcEXRYoLzGOMvp9q71ddQ3tH/31vzP2op+zq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":722396},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"1ac3d578d3898e501dbc1642ebc5e8b1988f0019","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/Was85/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"11.9.0","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.2.0_1772840463818_0.05830900701483932","host":"s3://npm-registry-packages-npm-production"}},"3.2.1":{"name":"@alcinanet/ralph-rlm","version":"3.2.1","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.2.1","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/Was85/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/Was85/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"56ce16fc32861a5e82ebb52e59853e1e8ad7f29b","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.2.1.tgz","fileCount":251,"integrity":"sha512-y9WBcTDLZfI15zGxIuYPd2bIgR5Z0OP62uNUNHcpebDMW5n0QvtSlS4aBszsEynNVKryJ59RrAQN7pK4wY8TjA==","signatures":[{"sig":"MEUCIQCG5Pu0E35sd5FhdPzLrYUs3NOdr1VMODeB2lapc5hZvgIgebP9ZWaJx/8Jm/Km5I8BRqFhWR7FSvtfDjX/HbeTG6M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":724395},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"e366f1ead07cba074b2c11af8bccc71de65b079f","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/Was85/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"11.9.0","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Three-phase iterative coding: PRD -> features -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.2.1_1773083205303_0.7715354271772108","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"@alcinanet/ralph-rlm","version":"3.3.0","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@3.3.0","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/Was85/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/Was85/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"8427b96b7bfea0b9dadb630ad974b26767a46cb4","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-3.3.0.tgz","fileCount":260,"integrity":"sha512-Fw79P1KL6zfe6psVCm5mYAKhMBlNaNhLGe1tFkBGGD89s9eD6b2wgOr26dKgVmueLKuzyWyoPafSuf2ObyRb0Q==","signatures":[{"sig":"MEQCIBcRBYoOvuVKWOI5GWbSfNzni7u0USFaJli6ek3TJTYaAiAfqiNs4hkXz6YzftDTxPAZlbFf+XzhBF7weleIbKFdiA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":749549},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"3e169d1b8aecc60430a43c423f846352506aa7aa","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/Was85/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"11.9.0","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Four-phase iterative coding: PRD -> features -> optimize -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_3.3.0_1773935006489_0.7311602261409778","host":"s3://npm-registry-packages-npm-production"}},"4.0.0":{"name":"@alcinanet/ralph-rlm","version":"4.0.0","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@4.0.0","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/Was85/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/Was85/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"dcbe16dc17a8fa2f0a8199d860157ac721492545","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-4.0.0.tgz","fileCount":294,"integrity":"sha512-vZK8Ru8Z/4k/rQMDaDtyK9rIoLH5i8+JDkwXxu5L6zsWiszvxJAyTqS5Zw0TBZ0k6EILxA7S9gPMmaHhZIGRLQ==","signatures":[{"sig":"MEQCIE6KLBHdQ0W5P1FMmX2789yv1se+UEbnh4B+5UTGiMjMAiAp5GJ+iVtR4c0O74ndlwZCiioyujDI/EowQ5N1ynBdpQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":920579},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"c32430a587133bda9937429e3918ccd72e95d37e","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","smoke:todo":"node ./scripts/smoke-todo.mjs --mode all","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build","smoke:todo:team":"node ./scripts/smoke-todo.mjs --mode team","smoke:todo:sequential":"node ./scripts/smoke-todo.mjs --mode sequential"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/Was85/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"11.9.0","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Four-phase iterative coding: PRD -> features -> optimize -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_4.0.0_1774822608914_0.2692652625520857","host":"s3://npm-registry-packages-npm-production"}},"4.1.0":{"name":"@alcinanet/ralph-rlm","version":"4.1.0","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@4.1.0","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/Was85/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/Was85/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"ad9d0918ae27d49688f4068fb6d876df85485df6","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-4.1.0.tgz","fileCount":294,"integrity":"sha512-8mMi7waiOQGPkNbgVE/qF69efSJurx8YLcRt9s2QHP/7q3OzaZjojWuLoFnxyE39c64h6szzouFYmnN20pPPLQ==","signatures":[{"sig":"MEYCIQCuazBwsf2l01M69Xg/qYhM8hMi9AGNTYMnIOwe73pPcwIhAKMI+oAH5MprKIzG/h+UDs1EVCKGaGfFyKfmqa8HaL+G","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":921173},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"c32430a587133bda9937429e3918ccd72e95d37e","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","smoke:todo":"node ./scripts/smoke-todo.mjs --mode all","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build","smoke:todo:team":"node ./scripts/smoke-todo.mjs --mode team","smoke:todo:sequential":"node ./scripts/smoke-todo.mjs --mode sequential"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/Was85/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"11.9.0","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Four-phase iterative coding: PRD -> features -> optimize -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_4.1.0_1774910581148_0.18874637040518882","host":"s3://npm-registry-packages-npm-production"}},"4.2.0":{"name":"@alcinanet/ralph-rlm","version":"4.2.0","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","_id":"@alcinanet/ralph-rlm@4.2.0","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"homepage":"https://github.com/Was85/ralph-rlm-agent-framework#readme","bugs":{"url":"https://github.com/Was85/ralph-rlm-agent-framework/issues"},"bin":{"ralph":"dist/cli.js"},"dist":{"shasum":"0957b6b57de77533193294e25376605e3a3085e8","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-4.2.0.tgz","fileCount":294,"integrity":"sha512-QRtCS/XLzKy9ufPZ+5iIcgvp16sSsGOivxk1EQ16ggLE+QCG7wu9Q0FORMZ1VG9AkPUYKClnE7uaUqEixZfnpw==","signatures":[{"sig":"MEQCIEmRV9uMspJyO3tgxwt72trKC00UVS+O5/ysqStBaH0RAiBqthdp9uD7+sEO1WFnon524lc0tQizP3DiLjGes9HB/g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":921570},"main":"./dist/cli.js","type":"module","types":"./dist/cli.d.ts","engines":{"node":">=18"},"gitHead":"20cf34b6808511e8b5a785a446e8ce7d74022244","scripts":{"lint":"tsc --noEmit","test":"vitest run","build":"tsc","smoke:todo":"node ./scripts/smoke-todo.mjs --mode all","test:watch":"vitest","test:coverage":"vitest run --coverage","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build","smoke:todo:team":"node ./scripts/smoke-todo.mjs --mode team","smoke:todo:sequential":"node ./scripts/smoke-todo.mjs --mode sequential"},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"repository":{"url":"git+https://github.com/Was85/ralph-rlm-agent-framework.git","type":"git"},"_npmVersion":"11.9.0","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Four-phase iterative coding: PRD -> features -> optimize -> implementation. Supports Claude Code and GitHub Copilot.","directories":{},"_nodeVersion":"24.14.0","dependencies":{"chalk":"^5.4.1","yargs":"^17.7.2","proper-lockfile":"^4.1.2"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^3.0.5","typescript":"^5.7.3","@types/node":"^22.13.0","@types/yargs":"^17.0.33","@types/proper-lockfile":"^4.1.4"},"_npmOperationalInternal":{"tmp":"tmp/ralph-rlm_4.2.0_1775081674518_0.6173830275763079","host":"s3://npm-registry-packages-npm-production"}},"4.2.3":{"name":"@alcinanet/ralph-rlm","version":"4.2.3","description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Four-phase iterative coding: PRD -> features -> optimize -> implementation. Supports Claude Code and GitHub Copilot.","type":"module","main":"./dist/cli.js","bin":{"ralph":"dist/cli.js"},"scripts":{"build":"tsc","prepublishOnly":"node -e \"require('fs').copyFileSync('../README.md','README.md')\" && npm test && npm run build","smoke:todo":"node ./scripts/smoke-todo.mjs --mode all","smoke:todo:sequential":"node ./scripts/smoke-todo.mjs --mode sequential","smoke:todo:team":"node ./scripts/smoke-todo.mjs --mode team","test":"vitest run","test:watch":"vitest","test:coverage":"vitest run --coverage","lint":"tsc --noEmit"},"keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"author":{"name":"Waseem"},"license":"MIT","homepage":"https://github.com/Was85/ralph-rlm-agent-framework#readme","repository":{"type":"git","url":"git+https://github.com/Was85/ralph-rlm-agent-framework.git"},"bugs":{"url":"https://github.com/Was85/ralph-rlm-agent-framework/issues"},"engines":{"node":">=18"},"dependencies":{"chalk":"^5.4.1","proper-lockfile":"^4.1.2","yargs":"^17.7.2"},"devDependencies":{"@types/node":"^22.13.0","@types/proper-lockfile":"^4.1.4","@types/yargs":"^17.0.33","typescript":"^5.7.3","vitest":"^3.0.5"},"gitHead":"7266a998421e8e759a9dab2783cfd564facbafc6","types":"./dist/cli.d.ts","_id":"@alcinanet/ralph-rlm@4.2.3","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-rreFaGFddJsdMD8bGn31Wem2X6c9xPWT4wy1Q8Bw7sQy+Po1yvEcpwx3yNUHCrrvQqdUnbxrBVyVmmANywWTtg==","shasum":"602ed60e75047f41b12c314553003b9af198791a","tarball":"https://registry.npmjs.org/@alcinanet/ralph-rlm/-/ralph-rlm-4.2.3.tgz","fileCount":294,"unpackedSize":937476,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFmZD9OJ+FBHidJzMzBn9evSwEhRDTnXApKjH4bsV6EAAiEAhOLzae79xXJbqhT/fIISg68unGw4sJsBxsRD+s3bbi8="}]},"_npmUser":{"name":"alcinanet","email":"waseem.alaabed@gmail.com"},"directories":{},"maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ralph-rlm_4.2.3_1779053578115_0.3604719815141155"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-03T07:58:49.883Z","modified":"2026-05-17T21:32:58.410Z","3.0.0":"2026-03-03T07:58:50.144Z","3.0.1":"2026-03-03T20:25:27.222Z","3.0.2":"2026-03-03T20:57:07.358Z","3.0.3":"2026-03-03T21:05:41.466Z","3.0.4":"2026-03-03T21:13:27.250Z","3.0.5":"2026-03-03T21:32:03.040Z","3.0.6":"2026-03-03T22:20:41.943Z","3.0.7":"2026-03-04T00:21:34.067Z","3.0.8":"2026-03-04T00:26:07.917Z","3.1.0":"2026-03-04T22:15:21.113Z","3.2.0":"2026-03-06T23:41:03.997Z","3.2.1":"2026-03-09T19:06:45.513Z","3.3.0":"2026-03-19T15:43:26.696Z","4.0.0":"2026-03-29T22:16:49.145Z","4.1.0":"2026-03-30T22:43:01.351Z","4.2.0":"2026-04-01T22:14:34.727Z","4.2.3":"2026-05-17T21:32:58.309Z"},"bugs":{"url":"https://github.com/Was85/ralph-rlm-agent-framework/issues"},"author":{"name":"Waseem"},"license":"MIT","homepage":"https://github.com/Was85/ralph-rlm-agent-framework#readme","keywords":["ai","claude","copilot","autonomous","development","ralph","prd","code-generation","agent","cli"],"repository":{"type":"git","url":"git+https://github.com/Was85/ralph-rlm-agent-framework.git"},"description":"Ralph-RLM Framework — AI-driven autonomous development orchestrator. Four-phase iterative coding: PRD -> features -> optimize -> implementation. Supports Claude Code and GitHub Copilot.","maintainers":[{"name":"alcinanet","email":"waseem.alaabed@gmail.com"}],"readme":"# ralph-rlm\r\n\r\nRalph is an AI development harness that turns a PRD into working software through a framework-owned loop instead of a chat-owned loop.\r\n\r\nYou describe the whole project in `prd.md`. Ralph decomposes it into small features, validates coverage, sharpens weak stories, then runs each ready feature through a strict `planner -> implementer -> verifier` pipeline. Code is only accepted after merge verification passes on the branch Ralph was started from.\r\n\r\nThis repository now reflects the smoke-proven redesign:\r\n- framework-owned state transitions\r\n- full backlog visibility\r\n- per-feature artifacts under `.ralph/features/<id>/`\r\n- resumable runtime state under `.ralph/runtime/`\r\n- one clean feature commit per approved feature\r\n- post-merge verification before the next feature unlocks\r\n\r\nBased on Geoffrey Huntley's Ralph Wiggum technique, with a stronger long-running harness design and durable repo artifacts.\r\n\r\n## Changelog\r\n\r\n### v4.2.3\r\n\r\nRun-harness usability — found and fixed by running `ralph run` on a real .NET project end-to-end (F001+F002 now implement → verify → merge → complete):\r\n\r\n- **Fix: rejections are no longer silent** — when a feature is blocked, retried, or fails merge/post-merge verification, `ralph run` now prints the reason to the console immediately. Previously the reason was written only to `feature_list.json`/runtime state, so a user saw agents \"approved\" then an opaque exit. The post-run report also shows `last_error` for in-progress features (was blocked-only) and no longer truncates the actionable detail at 80 chars.\r\n- **Fix: honest terminal output** — every exit path (complete / blocked / iteration-budget / corrupt) now prints a POST-RUN REPORT and a clear \"what to do next\" line. \"Max iterations reached → exit 1 with no info\" is now \"Stopped at the iteration budget (N) — X/Y complete, Z still open, not finished but resumable\".\r\n- **Fix: no dirty leftover** — framework-owned state (`feature_list.json`, `claude-progress.txt`, `.ralph/`) is now committed on all exit paths, not just full completion, so a subsequent run never starts from a dirty tree.\r\n- **Fix: retry is no longer blind** — planner/implementer/evaluator prompts now require resolving `assignment.last_error`, and the verifier must cover every contract `acceptance_check` one-to-one, so a retry resolves the prior failure instead of repeating it.\r\n- **Fix: Ralph can commit its own artifacts in projects that gitignore `.ralph`** — new `forceAddAndCommit` helper uses `git add -f` for Ralph-owned paths. A plain `git add` aborted on the gitignored `.ralph` and crashed the run the first time the merge path was reached.\r\n\r\n### v4.2.2\r\n\r\n- **Fix: preflight CLI detection on Windows** — `checkCli`/`checkRunnerAuth` used `where`/`execFile` without a shell, which on Windows cannot resolve PATH or run the `.cmd` shims that `npm install -g` produces for `claude`/`copilot`. `ralph init` reported \"CLI not found\" even when the runner was installed. Detection now runs through a shell (matching `shell-spawn.ts`), so npm-installed runners are found.\r\n- **Fix: REST pagination no longer misclassified as UI / too-broad** — quality gates matched bare `page`/`all pages`, so backend features like \"fetches one page of GET /api/v1/x\" or \"paginates all pages into a list\" were rejected as needing Playwright E2E or as \"too broad\", hard-failing `ralph init` for API projects. Pagination is now detected by context (`paginate`, `page number/size`, `page(s) of <api>`) without masking genuine UI features that merely call an endpoint.\r\n\r\n## What Ralph Does\r\n\r\nRalph is for this workflow:\r\n\r\n1. Write a real requirements document.\r\n2. Let Ralph generate a feature backlog.\r\n3. Let Ralph validate and improve that backlog.\r\n4. Let Ralph implement one ready feature at a time, or multiple ready features in team mode.\r\n5. Require proof, not claims, before marking work complete.\r\n\r\nRalph is not just \"ask Claude to keep going\". The framework owns:\r\n- feature scheduling\r\n- feature status changes\r\n- artifact lifecycle\r\n- worktree isolation\r\n- merge policy\r\n- verification policy\r\n- runtime recovery state\r\n\r\nThe coding agent writes plans, code, and review artifacts. Ralph decides what counts as success.\r\n\r\n## Core Model\r\n\r\nEach feature goes through these steps:\r\n\r\n1. Planner reads `assignment.json` and writes `contract.json`.\r\n2. Evaluator reviews that contract and writes `contract-review.json`.\r\n3. Implementer makes the code change, creates exactly one feature-scoped commit, and writes `implementation-report.json`.\r\n4. Verifier reviews the real code and reruns the expected checks, then writes `verification-report.json`.\r\n5. Ralph merges the approved work.\r\n6. Ralph reruns build and test commands on the branch Ralph was started from and writes `post-merge-verification.json`.\r\n\r\nIf any of that fails, Ralph retries or blocks the feature. It does not silently mark success.\r\n\r\n## Why This Version Is Different\r\n\r\nThe current redesign fixed the weak parts of the earlier framework:\r\n\r\n- Ralph no longer hides unrelated features just to force sequencing. It keeps the full backlog visible and selects the next ready work by dependency, priority, and attempts.\r\n- The coding agent no longer owns the lifecycle. Ralph owns status transitions in `feature_list.json`.\r\n- The verifier is separate from the implementer.\r\n- Completion requires a real commit, real artifact files, and real rerunnable verification.\r\n- Runtime state survives interruption and can be resumed from repo files alone.\r\n- Sequential and team mode are both validated against a real todo CRUD sample.\r\n\r\n## Requirements\r\n\r\n- Node.js 18+\r\n- Git\r\n- One supported AI runner installed globally:\r\n  - Claude Code\r\n  - GitHub Copilot CLI\r\n\r\nClaude is the default runner.\r\n\r\n## Install\r\n\r\nInstall from npm:\r\n\r\n```bash\r\nnpm install -g @alcinanet/ralph-rlm\r\n```\r\n\r\nThen use:\r\n\r\n```bash\r\nralph --help\r\n```\r\n\r\nFor framework development in this repo:\r\n\r\n```bash\r\ncd ralph-rlm\r\nnpm install\r\nnpm run build\r\n```\r\n\r\n## Quick Start\r\n\r\n```bash\r\ncd your-project\r\ngit init\r\n\r\nralph scaffold\r\nralph author\r\n# or write prd.md manually\r\n\r\nralph auto --optimize\r\n```\r\n\r\nThat runs:\r\n\r\n1. `init`\r\n2. `validate`\r\n3. `optimize`\r\n4. `run`\r\n\r\nIf you prefer to drive phases explicitly:\r\n\r\n```bash\r\nralph init\r\nralph validate\r\nralph optimize\r\nralph run\r\nralph status\r\n```\r\n\r\n### Fastest Way To Start\r\n\r\nIf you are new to Ralph, do not start with every phase manually. The shortest usable path is:\r\n\r\n1. Run `scaffold` once.\r\n2. Write a real `prd.md`.\r\n3. Run `auto --optimize`.\r\n4. Check `status`.\r\n\r\nFor Claude:\r\n\r\n```bash\r\ncd your-project\r\ngit init\r\nralph scaffold\r\n# write prd.md\r\nralph auto --optimize\r\nralph status\r\n```\r\n\r\nFor Copilot:\r\n\r\n```bash\r\ncd your-project\r\ngit init\r\nralph scaffold --runner copilot\r\n# write prd.md\r\nralph auto --runner copilot --optimize\r\nralph status\r\n```\r\n\r\nStart in sequential mode first. After that, use team mode only when the backlog has multiple independent ready features:\r\n\r\n```bash\r\nralph run --team --teammates 3\r\n```\r\n\r\nYou do not need to edit `.ralph/` files directly unless you are debugging a blocked run.\r\n\r\n## Recommended Workflow\r\n\r\n### 1. Scaffold\r\n\r\n`ralph scaffold` creates the project support files Ralph expects, including:\r\n- a PRD template\r\n- runner-specific AI instructions\r\n- project prompt override directories\r\n\r\nUse it once per project.\r\n\r\nIn this framework repo, the canonical examples Ralph ships from live under\r\n`ralph-rlm/scaffold-assets/templates/` and `ralph-rlm/scaffold-assets/claude/`.\r\nRepo-root `prd.md`, `templates/`, `.claude/`, and `.ralph/` copies are local\r\nproject scaffolding, not the framework source of truth.\r\n\r\n### 2. Write the PRD\r\n\r\nWrite the whole project in `prd.md`, not just the next endpoint.\r\n\r\nGood PRDs include:\r\n- user-facing behavior\r\n- error handling\r\n- validation rules\r\n- expected tests\r\n- technical constraints\r\n\r\nRalph works best when the PRD is concrete and complete.\r\n\r\n### 3. Generate the Backlog\r\n\r\n`ralph init` reads `prd.md` and writes `feature_list.json`.\r\n\r\nThe generated stories are expected to be:\r\n- atomic\r\n- traceable to the PRD\r\n- small enough for one implementation attempt\r\n- explicit about files, tests, and build commands\r\n\r\n### 4. Validate Coverage\r\n\r\n`ralph validate` checks that the PRD is actually covered by the backlog.\r\n\r\nIf coverage is incomplete, Ralph adds missing stories or blocks the run if the PRD is too ambiguous.\r\n\r\n### 5. Optimize Story Quality\r\n\r\n`ralph optimize` sharpens vague stories before implementation starts.\r\n\r\nIt improves:\r\n- acceptance criteria\r\n- dependency ordering\r\n- story sizing\r\n- missing coverage\r\n\r\nRalph also applies framework-side quality gates so weak output does not reach `run`.\r\n\r\n### 6. Run the Harness\r\n\r\n`ralph run` executes the implementation harness over the next ready features.\r\n\r\nSequential mode:\r\n- one ready feature at a time\r\n- isolated worktree\r\n- merge\r\n- post-merge verification\r\n- next feature\r\n\r\nTeam mode:\r\n- multiple ready features in parallel worktrees\r\n- serialized merge and verification boundary on the branch Ralph was started from\r\n- retry and conflict handling\r\n\r\n### 7. Check Runtime State\r\n\r\n`ralph status` shows:\r\n- feature progress\r\n- validation status\r\n- runtime session state\r\n- active features\r\n- last completed feature\r\n- whether the run is resumable\r\n\r\n## Commands\r\n\r\n### `ralph scaffold`\r\n\r\nSets up Ralph files in the current project.\r\n\r\nTypical use:\r\n\r\n```bash\r\nralph scaffold\r\nralph scaffold --runner copilot\r\n```\r\n\r\n### `ralph author`\r\n\r\nInteractive PRD assistant.\r\n\r\nTypical use:\r\n\r\n```bash\r\nralph author\r\nralph author --runner copilot\r\n```\r\n\r\n### `ralph init`\r\n\r\nPhase 1. Reads `prd.md` and creates `feature_list.json`.\r\n\r\nTypical use:\r\n\r\n```bash\r\nralph init\r\nralph init --runner copilot\r\n```\r\n\r\n### `ralph validate`\r\n\r\nPhase 2. Validates PRD coverage against the feature list.\r\n\r\nTypical use:\r\n\r\n```bash\r\nralph validate\r\nralph validate -c 95\r\n```\r\n\r\n### `ralph optimize`\r\n\r\nPhase 3. Refines the feature list before implementation.\r\n\r\nTypical use:\r\n\r\n```bash\r\nralph optimize\r\n```\r\n\r\n### `ralph run`\r\n\r\nPhase 4. Runs the implementation harness.\r\n\r\nTypical use:\r\n\r\n```bash\r\nralph run\r\nralph run --team --teammates 3\r\nralph run --runner copilot\r\n```\r\n\r\nOptions that matter most:\r\n- `--team`: enable parallel worktree mode\r\n- `--teammates`: number of parallel harnesses in team mode\r\n- `--skip-review`: skip final verifier approval after implementation\r\n- `--runner`: `claude` or `copilot`\r\n\r\n### `ralph auto`\r\n\r\nRuns the full top-level pipeline.\r\n\r\nTypical use:\r\n\r\n```bash\r\nralph auto\r\nralph auto --optimize\r\n```\r\n\r\n### `ralph status`\r\n\r\nShows current project and runtime state.\r\n\r\nTypical use:\r\n\r\n```bash\r\nralph status\r\n```\r\n\r\n### `ralph skill ...`\r\n\r\nInternal subcommands used by agent skills and scaffolding.\r\n\r\nThese are framework support commands, not the primary user workflow.\r\n\r\n## Files Ralph Owns\r\n\r\n### Project Root\r\n\r\n- `prd.md`\r\n- `feature_list.json`\r\n- `validation-state.json`\r\n- `claude-progress.txt`\r\n\r\n### Feature Artifacts\r\n\r\nFor each feature:\r\n\r\n```text\r\n.ralph/features/F001/\r\n  assignment.json\r\n  contract.json\r\n  contract-review.json\r\n  implementation-report.json\r\n  verification-report.json\r\n  post-merge-verification.json\r\n```\r\n\r\nMeaning:\r\n- `assignment.json`: the feature handoff Ralph prepared\r\n- `contract.json`: the planner's implementation contract\r\n- `contract-review.json`: evaluator approval or rejection of that contract\r\n- `implementation-report.json`: implementer summary of what changed and what commands were run\r\n- `verification-report.json`: verifier replay and acceptance decision\r\n- `post-merge-verification.json`: framework verification after merge on main\r\n\r\n### Runtime State\r\n\r\nRalph persists long-running execution state under:\r\n\r\n```text\r\n.ralph/runtime/\r\n  session-state.json\r\n  events.json\r\n  features/\r\n    F001.json\r\n```\r\n\r\nMeaning:\r\n- `session-state.json`: current run, mode, phase, summary, active features, resumed lineage\r\n- `events.json`: append-only runtime event log\r\n- `features/<id>.json`: per-feature runtime history, attempts, worktree info, merge info, verification info\r\n\r\n## Feature Quality Rules\r\n\r\nRalph now rejects weak stories before implementation.\r\n\r\nThe backlog is expected to satisfy these rules:\r\n- every feature has `priority`\r\n- every feature has `depends_on`, even if empty\r\n- every feature has `source_requirement`\r\n- every feature has `related_files`\r\n- related files are safe relative paths\r\n- stories stay small, typically 1-4 files\r\n- dependency ordering must make sense\r\n- build and test commands must be represented\r\n- non-UI work must carry real unit or integration test evidence\r\n- UI work must carry real E2E evidence\r\n\r\nThis matters because it keeps `run` focused on implementable work instead of vague backlog cleanup.\r\n\r\n## Scheduling\r\n\r\nRalph does not hide the rest of the backlog anymore.\r\n\r\nScheduling behavior:\r\n- full backlog stays visible\r\n- only ready features can run\r\n- priority and attempts influence ordering\r\n- blocked dependencies prevent downstream work from being dispatched\r\n- if no ready work remains, Ralph stops as `blocked` instead of spinning until max iterations\r\n\r\n## Sequential Mode\r\n\r\nSequential mode is the simplest and safest path.\r\n\r\nWhat it does:\r\n- picks the next ready feature\r\n- creates a disposable worktree\r\n- runs planner, review, implementation, and verifier\r\n- merges approved work\r\n- reruns verification on main\r\n- moves to the next ready feature\r\n\r\nWhat it guarantees:\r\n- feature-scoped isolation\r\n- explicit retry boundaries\r\n- no silent status mutation by the coding agent\r\n\r\n## Team Mode\r\n\r\nTeam mode parallelizes ready features using git worktrees.\r\n\r\nWhat team mode does:\r\n- creates one worktree per active feature\r\n- runs the same harness in each worktree\r\n- merges one approved result at a time\r\n- reruns build and tests after each merge\r\n- reverts failed post-merge verification\r\n\r\nWhat team mode does not do:\r\n- it does not let concurrent harnesses write directly to the main checkout\r\n- it does not skip the verifier or post-merge verification boundary\r\n\r\n## Verification Rules\r\n\r\nRalph now requires real proof before completion.\r\n\r\nExamples of enforced checks:\r\n- planner must write a valid `contract.json`\r\n- contract reviewer must write a valid `contract-review.json`\r\n- implementer must create exactly one feature-scoped commit\r\n- commit subject must match the contract\r\n- implementation report commit SHA must match HEAD\r\n- changed files must stay within approved scope\r\n- required commands must appear in the report\r\n- verifier must write a valid `verification-report.json`\r\n- verifier must include required command results and acceptance results\r\n- main-branch verification must pass after merge\r\n\r\nIf any of these fail, the feature is retried or blocked.\r\n\r\n## Runtime Recovery\r\n\r\nRalph is built to survive interrupted runs.\r\n\r\nRecovery behavior:\r\n- session state is written continuously\r\n- per-feature runtime history is persisted\r\n- `status` can detect resumable runs\r\n- resumed sessions track `resumed_from_run_id`\r\n- worktrees use per-attempt names to avoid resume collisions\r\n\r\nIf a run is interrupted, resume with:\r\n\r\n```bash\r\nralph run\r\n```\r\n\r\nor:\r\n\r\n```bash\r\nralph run --team\r\n```\r\n\r\ndepending on the original mode.\r\n\r\n## Smoke Validation In This Repo\r\n\r\nThis repository includes a real todo CRUD smoke harness for framework development.\r\n\r\nRun from the package directory:\r\n\r\n```bash\r\ncd ralph-rlm\r\nnpm run smoke:todo\r\n```\r\n\r\nVariants:\r\n\r\n```bash\r\nnpm run smoke:todo:sequential\r\nnpm run smoke:todo:team\r\nnpm run smoke:todo -- --runner copilot\r\nnpm run smoke:todo -- --keep-workdir\r\n```\r\n\r\nWhat it does:\r\n- builds the current Ralph CLI from source\r\n- creates a fresh sequential todo repo from the checked-in PRD fixture\r\n- runs `init`, `validate`, `optimize`, `run`, and `status`\r\n- verifies the finished repo with `npm run build` and `npm test`\r\n- creates a team-mode continuation repo from a proven baseline fixture\r\n- runs `ralph run --team`\r\n- verifies the finished repo with `npm run build` and `npm test`\r\n\r\nImportant note:\r\n- the smoke wrapper is a real end-user run, so team mode can take a long time if the AI runner is slow\r\n- `--keep-workdir` is useful when you want to inspect the generated repos after the smoke finishes\r\n- the smoke assertions follow the actual completed feature ids, not a hardcoded final feature like `F008`\r\n\r\n## Proven State Of The Framework\r\n\r\nThe current redesign is not just theory. It has been validated on real todo CRUD smoke repos.\r\n\r\nSmoke-proven outcomes:\r\n- fresh sequential Claude smoke completes end to end\r\n- fresh sequential Copilot smoke completes end to end\r\n- team Claude smoke completes end to end from the preserved baseline fixture\r\n- fresh team Copilot smoke completes end to end from the preserved baseline fixture\r\n- the final sequential and team repos both reach `8/8` complete in the current todo fixture\r\n- the final sequential and team repos both pass `status`\r\n- the final sequential and team repos both pass `npm run build`\r\n- the final sequential and team repos both pass `npm test`\r\n\r\n## Customization\r\n\r\nRalph prefers project-local prompt overrides in:\r\n\r\n```text\r\n.ralph/prompts/\r\n```\r\n\r\nIf those files do not exist, it falls back to the framework defaults packaged with Ralph.\r\n\r\nThis lets you tune:\r\n- planner behavior\r\n- implementer instructions\r\n- evaluator behavior\r\n- initializer and optimizer prompts\r\n\r\nwithout changing the framework itself.\r\n\r\n## Troubleshooting\r\n\r\n### A feature is blocked\r\n\r\nCheck:\r\n- `feature_list.json`\r\n- `.ralph/features/<id>/`\r\n- `.ralph/runtime/features/<id>.json`\r\n\r\nLook for:\r\n- bad contract\r\n- weak or missing evidence\r\n- merge failure\r\n- failed post-merge verification\r\n- true requirement ambiguity\r\n\r\n### `status` says the run is blocked\r\n\r\nThat usually means one of these:\r\n- all remaining features are blocked\r\n- dependencies are blocked\r\n- no ready work remains\r\n\r\nRalph now reports this explicitly instead of failing as a fake iteration timeout.\r\n\r\n### A retry keeps failing\r\n\r\nInspect the feature artifacts and runtime history, then either:\r\n- fix the underlying codebase issue\r\n- sharpen the feature definition\r\n- split the story\r\n- reset the feature after manual correction\r\n\r\n### Team mode feels slow\r\n\r\nThat is usually the runner, not the orchestrator. Team mode still enforces merge and post-merge verification boundaries, so it is intentionally safer than \"let all agents write to main\".\r\n\r\n## Exit Codes\r\n\r\nHigh-level behavior:\r\n- `0`: success\r\n- `1`: failed\r\n- `2`: blocked and needs human intervention\r\n\r\n## Summary\r\n\r\nRalph is now a durable implementation harness, not a prompt convention.\r\n\r\nIt gives you:\r\n- PRD-driven planning\r\n- story quality gates\r\n- full backlog scheduling\r\n- planner / implementer / verifier separation\r\n- feature-scoped artifacts\r\n- resumable runtime state\r\n- sequential and team execution\r\n- real smoke-proven verification\r\n\r\nIf you want one command to build from a PRD, use:\r\n\r\n```bash\r\nralph auto --optimize\r\n```\r\n\r\nIf you want the most control, use the phases explicitly and inspect `status` plus `.ralph/` artifacts as Ralph progresses.\r\n","readmeFilename":"README.md"}