{"_id":"@dami_deleon/rikudo","_rev":"9-caa1e3ebb2b393594865c6a292a89419","name":"@dami_deleon/rikudo","dist-tags":{"alpha":"1.0.1-alpha.3","stable":"1.1.0","latest":"2.1.0"},"versions":{"1.0.1-alpha.0":{"name":"@dami_deleon/rikudo","version":"1.0.1-alpha.0","keywords":["git","ai","cli"],"author":{"name":"Damián De León"},"_id":"@dami_deleon/rikudo@1.0.1-alpha.0","maintainers":[{"name":"dami_deleon","email":"damideleon.dev@gmail.com"}],"bin":{"rikudo":"dist/index.js"},"dist":{"shasum":"e9367b9142a39093f646ef88976d004a721dbe28","tarball":"https://registry.npmjs.org/@dami_deleon/rikudo/-/rikudo-1.0.1-alpha.0.tgz","fileCount":26,"integrity":"sha512-sS/H6L+M5ae94zp7dvvFCiRUHFPRjMYwFoWMr2mg3iBmaaqEf5GqqaWYQ1DshDxbd1si2L3DceqD2Al7Vv2uDA==","signatures":[{"sig":"MEYCIQCruQkHKkuFFiu3ztXhfozd21HBBHQ3Ge6sWtvGskNoTQIhAOXtKhGagH8aHVROx1+p1TXqR0JPWQPHtyPc+lOxC2C/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60189},"main":"dist/index.js","type":"module","gitHead":"8a8106db117d8c685a61e7c99c16d56324573903","scripts":{"dev":"ts-node src/index.js","build":"tsc","start":"node dist/index.js","link-cli":"npm run build && npm link","test:conn":"npm run build && node dist/test/connection.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"dami_deleon","email":"damideleon.dev@gmail.com"},"_npmVersion":"11.6.2","description":"El Sabio de los Commits: AI Assistant con integración a Redmine","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"4.3.6","axios":"1.13.2","chalk":"5.6.2","dotenv":"17.2.3","figlet":"1.10.0","ollama":"0.6.3","openai":"6.18.0","commander":"14.0.2","clipboardy":"^5.2.1","simple-git":"3.30.0","@types/figlet":"1.7.0","@anthropic-ai/sdk":"0.74.0","@inquirer/prompts":"8.2.0","@google/generative-ai":"0.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"10.9.2","typescript":"5.9.3","@types/node":"25.0.9"},"_npmOperationalInternal":{"tmp":"tmp/rikudo_1.0.1-alpha.0_1770649490033_0.2213410277622163","host":"s3://npm-registry-packages-npm-production"}},"1.0.1-alpha.1":{"name":"@dami_deleon/rikudo","version":"1.0.1-alpha.1","keywords":["git","ai","cli"],"author":{"name":"Damián De León"},"_id":"@dami_deleon/rikudo@1.0.1-alpha.1","maintainers":[{"name":"dami_deleon","email":"damideleon.dev@gmail.com"}],"bin":{"rikudo":"dist/index.js"},"dist":{"shasum":"20f70929fc5831318a18ff2cbe95cc537e3c16f2","tarball":"https://registry.npmjs.org/@dami_deleon/rikudo/-/rikudo-1.0.1-alpha.1.tgz","fileCount":26,"integrity":"sha512-8hVCkc94wLdg7epQBKSYnh1UdgElxob9gE1GkcVfaQw9KfGlfSQZOpX0PmEF/YQE0gz0AzPFKQEB6W4GsKBj0w==","signatures":[{"sig":"MEUCIBjDnipLEQZXG5D7vC9VxabpObGB9Z3ULicZBxJ6sOZHAiEAuQBQj8FfPxG/0dpNSYc23AXy1I7LXhzIBJE/TXrDA7E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62676},"main":"dist/index.js","type":"module","gitHead":"eb09933f282562c97bb50c22acd02a0693cf42d4","scripts":{"dev":"ts-node src/index.js","build":"tsc","start":"node dist/index.js","link-cli":"npm run build && npm link","test:conn":"npm run build && node dist/test/connection.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"dami_deleon","email":"damideleon.dev@gmail.com"},"_npmVersion":"11.6.2","description":"El Sabio de los Commits: AI Assistant con integración a Redmine","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"4.3.6","axios":"1.13.2","chalk":"5.6.2","dotenv":"17.2.3","figlet":"1.10.0","ollama":"0.6.3","openai":"6.18.0","commander":"14.0.2","clipboardy":"^5.2.1","simple-git":"3.30.0","@types/figlet":"1.7.0","@anthropic-ai/sdk":"0.74.0","@inquirer/prompts":"8.2.0","@google/generative-ai":"0.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ts-node":"10.9.2","typescript":"5.9.3","@types/node":"25.0.9"},"_npmOperationalInternal":{"tmp":"tmp/rikudo_1.0.1-alpha.1_1770650731944_0.36618698940863736","host":"s3://npm-registry-packages-npm-production"}},"1.0.1-alpha.2":{"name":"@dami_deleon/rikudo","version":"1.0.1-alpha.2","keywords":["git","ai","cli"],"author":{"name":"Damián De León"},"_id":"@dami_deleon/rikudo@1.0.1-alpha.2","maintainers":[{"name":"dami_deleon","email":"damideleon.dev@gmail.com"}],"bin":{"rikudo":"dist/index.js"},"dist":{"shasum":"2529c3a2e175d16d8ee1084547ccfd9edf6a085d","tarball":"https://registry.npmjs.org/@dami_deleon/rikudo/-/rikudo-1.0.1-alpha.2.tgz","fileCount":26,"integrity":"sha512-f4F07x7/vnmT0qt+X7XG25m4VXMC5rXyUIv4+ezf3/i8h1V0pl6APUbaYylDU0vrkC+SPA3q3puV9qoHPRWyOg==","signatures":[{"sig":"MEYCIQCXqmz+FvPjTCudtIxBHcAw4+kYX7XvVhA7vcJathi9GAIhAMwTi/a7gUsjJF+ImaDcLDZyTgWB2CUYzt2VeFAMtfHt","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":62676},"main":"dist/index.js","type":"module","gitHead":"942789a62073021f2a75d97188ad996a66e4f3e5","scripts":{"dev":"ts-node src/index.js","build":"tsc","start":"node dist/index.js","link-cli":"npm run build && npm link","test:conn":"npm run build && node dist/test/connection.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"dami_deleon","email":"damideleon.dev@gmail.com"},"_npmVersion":"11.6.2","description":"El Sabio de los Commits: AI Assistant con integración a Redmine","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"4.3.6","axios":"1.13.2","chalk":"5.6.2","dotenv":"17.2.3","figlet":"1.10.0","ollama":"0.6.3","openai":"6.18.0","commander":"14.0.2","clipboardy":"^5.2.1","simple-git":"3.30.0","@types/figlet":"1.7.0","@anthropic-ai/sdk":"0.74.0","@inquirer/prompts":"8.2.0","@google/generative-ai":"0.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ts-node":"10.9.2","typescript":"5.9.3","@types/node":"25.0.9"},"_npmOperationalInternal":{"tmp":"tmp/rikudo_1.0.1-alpha.2_1770650909379_0.9060230724276515","host":"s3://npm-registry-packages-npm-production"}},"1.0.1-alpha.3":{"name":"@dami_deleon/rikudo","version":"1.0.1-alpha.3","keywords":["git","ai","cli"],"author":{"name":"Damián De León"},"_id":"@dami_deleon/rikudo@1.0.1-alpha.3","maintainers":[{"name":"dami_deleon","email":"damideleon.dev@gmail.com"}],"bin":{"rikudo":"dist/index.js"},"dist":{"shasum":"b54c2ae7b7d154f6310dfb0c9031d78d3307aabe","tarball":"https://registry.npmjs.org/@dami_deleon/rikudo/-/rikudo-1.0.1-alpha.3.tgz","fileCount":27,"integrity":"sha512-vglF2hEYcmOyEALuV34ebx5D2+kMWjqi9augfNfNRV3A/CuVFAFFMmEwkjGT9BFc4cjqkYsavXTum7uweqKs2A==","signatures":[{"sig":"MEUCIQCOUPuboTk9D6NroluifWkSgKdtnmszsCoayq918UUzTwIgGeMvxNXroltqbEvPY4XFBnPt2+FH5mgcUM9vxu+5dxo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63456},"main":"dist/index.js","type":"module","gitHead":"9a249d334d2f793b71e12a1f3ca4859f94b4d187","scripts":{"dev":"ts-node src/index.js","build":"tsc","start":"node dist/index.js","link-cli":"npm run build && npm link","test:conn":"npm run build && node dist/test/connection.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"dami_deleon","email":"damideleon.dev@gmail.com"},"_npmVersion":"11.6.2","description":"El Sabio de los Commits: AI Assistant con integración a Redmine","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"4.3.6","axios":"1.13.2","chalk":"5.6.2","dotenv":"17.2.3","figlet":"1.10.0","ollama":"0.6.3","openai":"6.18.0","commander":"14.0.2","clipboardy":"^5.2.1","simple-git":"3.30.0","@types/figlet":"1.7.0","@anthropic-ai/sdk":"0.74.0","@inquirer/prompts":"8.2.0","@google/generative-ai":"0.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ts-node":"10.9.2","typescript":"5.9.3","@types/node":"25.0.9"},"_npmOperationalInternal":{"tmp":"tmp/rikudo_1.0.1-alpha.3_1770660803461_0.9676711912552254","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@dami_deleon/rikudo","version":"1.1.0","keywords":["git","ai","cli"],"author":{"name":"Damián De León"},"_id":"@dami_deleon/rikudo@1.1.0","maintainers":[{"name":"dami_deleon","email":"damideleon.dev@gmail.com"}],"bin":{"rikudo":"dist/index.js"},"dist":{"shasum":"7457e15e87983d1ffff8259ac2ee5c8138e48316","tarball":"https://registry.npmjs.org/@dami_deleon/rikudo/-/rikudo-1.1.0.tgz","fileCount":27,"integrity":"sha512-THU48SDlsor95oVx9nUzbQpzRxwnSWg6vrIcHjV4U8ncYLrjLSJzqMa6yGAahy/xLtwStHUkBfkDyPVgbb4EiQ==","signatures":[{"sig":"MEUCIQCaDI8T1NcnsDvz/V6MsI1mUhXCEeWhvmPxFtN2EYwzbQIgTZBBThrNRYp5EnoZfCVD5232r+Wtl4/vwZP0KbBy6eY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63448},"main":"dist/index.js","type":"module","gitHead":"2184a00406b281a4c4fc363ee36b20fdaba834fd","scripts":{"dev":"ts-node src/index.js","build":"tsc","start":"node dist/index.js","link-cli":"npm run build && npm link","test:conn":"npm run build && node dist/test/connection.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"dami_deleon","email":"damideleon.dev@gmail.com"},"_npmVersion":"11.6.2","description":"El Sabio de los Commits: AI Assistant con integración a Redmine","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"4.3.6","axios":"1.13.2","chalk":"5.6.2","dotenv":"17.2.3","figlet":"1.10.0","ollama":"0.6.3","openai":"6.18.0","commander":"14.0.2","clipboardy":"^5.2.1","simple-git":"3.30.0","@types/figlet":"1.7.0","@anthropic-ai/sdk":"0.74.0","@inquirer/prompts":"8.2.0","@google/generative-ai":"0.24.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ts-node":"10.9.2","typescript":"5.9.3","@types/node":"25.0.9"},"_npmOperationalInternal":{"tmp":"tmp/rikudo_1.1.0_1770744690273_0.18381188195859965","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@dami_deleon/rikudo","version":"2.0.0","keywords":["git","ai","cli"],"author":{"name":"Damián De León"},"_id":"@dami_deleon/rikudo@2.0.0","maintainers":[{"name":"dami_deleon","email":"damideleon.dev@gmail.com"}],"bin":{"rikudo":"dist/index.js"},"dist":{"shasum":"dba2d322d347c28624450e8acbdd64ca9855220c","tarball":"https://registry.npmjs.org/@dami_deleon/rikudo/-/rikudo-2.0.0.tgz","fileCount":29,"integrity":"sha512-KfqWcV8wFiCS+DGjSRbWoP4hh87A1OKTBf1HHm0emYiDMc1sFX9MSU2SnWbr+4cVl/3rBfp6838hKj/+xrb2Dw==","signatures":[{"sig":"MEUCIH2hpq6khjlLbsReWONrd35UAucZ+oem5C/Zm6JQtFsSAiEApASUa0iA8N5ORrNzo84nJWR4kw38v9W5K19P1cRt/pU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78727},"main":"dist/index.js","type":"module","gitHead":"fe34c135d7b51daa0fc0980d7da9b2985e839202","scripts":{"dev":"ts-node src/index.js","build":"tsc","start":"node dist/index.js","link-cli":"npm run build && npm link","test:conn":"npm run build && node dist/test/connection.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"dami_deleon","email":"damideleon.dev@gmail.com"},"_npmVersion":"11.6.2","description":"El Sabio de los Commits: AI Assistant con integración a Redmine","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"4.3.6","axios":"1.13.2","chalk":"5.6.2","dotenv":"17.2.3","figlet":"1.10.0","ollama":"0.6.3","openai":"6.18.0","commander":"14.0.2","clipboardy":"^5.2.1","simple-git":"3.30.0","@types/figlet":"1.7.0","@anthropic-ai/sdk":"0.74.0","@inquirer/prompts":"8.2.0","@google/generative-ai":"0.24.1","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"10.9.2","typescript":"5.9.3","@types/node":"25.0.9"},"_npmOperationalInternal":{"tmp":"tmp/rikudo_2.0.0_1773944426106_0.9683708198675376","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@dami_deleon/rikudo","version":"2.0.1","keywords":["git","ai","cli"],"author":{"name":"Damián De León"},"_id":"@dami_deleon/rikudo@2.0.1","maintainers":[{"name":"dami_deleon","email":"damideleon.dev@gmail.com"}],"bin":{"rikudo":"dist/index.js"},"dist":{"shasum":"b729d3c6fa03eae47d9ba6a5c53c898cef06b22b","tarball":"https://registry.npmjs.org/@dami_deleon/rikudo/-/rikudo-2.0.1.tgz","fileCount":29,"integrity":"sha512-o9vjRnqW5OiWiVHxTotdsrm3CxzVutLykutYto2CB2UhLxq2DNDrokYfQW+YRtKL/cvLN09SG42akrs2Ny46vw==","signatures":[{"sig":"MEUCICF5C50vJqS8HJz7sFOsvENCVBEkuw+twrtE9iwVvxPyAiEAlKAmqX02uBKmhTAdsWqllp8BtZNzSKSGCiPkJjv4MZM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":78098},"main":"dist/index.js","type":"module","gitHead":"6472173ead0510c4f00c0bfb40e0201a14f1c66a","scripts":{"dev":"ts-node src/index.js","build":"tsc","start":"node dist/index.js","link-cli":"npm run build && npm link","test:conn":"npm run build && node dist/test/connection.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"dami_deleon","email":"damideleon.dev@gmail.com"},"_npmVersion":"11.6.2","description":"El Sabio de los Commits: AI Assistant con integración a Redmine","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"4.3.6","axios":"1.13.2","chalk":"5.6.2","dotenv":"17.2.3","figlet":"1.10.0","ollama":"0.6.3","openai":"6.18.0","commander":"14.0.2","clipboardy":"^5.2.1","simple-git":"3.30.0","@types/figlet":"1.7.0","@anthropic-ai/sdk":"0.74.0","@inquirer/prompts":"8.2.0","@google/generative-ai":"0.24.1","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"10.9.2","typescript":"5.9.3","@types/node":"25.0.9"},"_npmOperationalInternal":{"tmp":"tmp/rikudo_2.0.1_1773945293896_0.9427926767376738","host":"s3://npm-registry-packages-npm-production"}},"2.0.2":{"name":"@dami_deleon/rikudo","version":"2.0.2","keywords":["git","ai","cli"],"author":{"name":"Damián De León"},"_id":"@dami_deleon/rikudo@2.0.2","maintainers":[{"name":"dami_deleon","email":"damideleon.dev@gmail.com"}],"bin":{"rikudo":"dist/index.js"},"dist":{"shasum":"66138a08f81c1a6a7238e67920de444f7a2d131a","tarball":"https://registry.npmjs.org/@dami_deleon/rikudo/-/rikudo-2.0.2.tgz","fileCount":29,"integrity":"sha512-TiTgNdMeFaSZe9LtWyuB4QdV9BRBqLRIkjNHDlD30UJao6cirajhlbHhuEPUTJa1rB9O9CAsyj20+bxRbx7h6w==","signatures":[{"sig":"MEYCIQD3Mdo6rFrDT13YpIM5q2BFh+FmTSbjNvQY3Pngy5l3PAIhAK8lQF6uAvgmEoyKxF4r/lvIXOgwW0HllvnCeTqAF/Lr","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":79525},"main":"dist/index.js","type":"module","gitHead":"348b96453a241d203f44609e7aa4aac3302fd951","scripts":{"dev":"ts-node src/index.js","build":"tsc","start":"node dist/index.js","link-cli":"npm run build && npm link","test:conn":"npm run build && node dist/test/connection.js","prepublishOnly":"npm run build"},"_npmUser":{"name":"dami_deleon","email":"damideleon.dev@gmail.com"},"_npmVersion":"11.6.2","description":"El Sabio de los Commits: AI Assistant con integración a Redmine","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"4.3.6","axios":"1.13.2","chalk":"5.6.2","dotenv":"17.2.3","figlet":"1.10.0","ollama":"0.6.3","openai":"6.18.0","commander":"14.0.2","clipboardy":"^5.2.1","simple-git":"3.30.0","@types/figlet":"1.7.0","@anthropic-ai/sdk":"0.74.0","@inquirer/prompts":"8.2.0","@google/generative-ai":"0.24.1","@modelcontextprotocol/sdk":"^1.27.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"ts-node":"10.9.2","typescript":"5.9.3","@types/node":"25.0.9"},"_npmOperationalInternal":{"tmp":"tmp/rikudo_2.0.2_1773946556204_0.16539393780433986","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@dami_deleon/rikudo","version":"2.1.0","description":"El Sabio de los Commits: AI Assistant con integración a Redmine","main":"dist/index.js","type":"module","bin":{"rikudo":"dist/index.js"},"scripts":{"build":"tsc","prepublishOnly":"npm run build","start":"node dist/index.js","dev":"ts-node src/index.js","link-cli":"npm run build && npm link","test:conn":"npm run build && node dist/test/connection.js"},"publishConfig":{"access":"public"},"keywords":["git","ai","cli"],"author":{"name":"Damián De León"},"dependencies":{"@anthropic-ai/sdk":"0.74.0","@google/generative-ai":"0.24.1","@inquirer/prompts":"8.2.0","@modelcontextprotocol/sdk":"^1.27.1","@types/figlet":"1.7.0","axios":"1.13.2","chalk":"5.6.2","clipboardy":"^5.2.1","commander":"14.0.2","dotenv":"17.2.3","figlet":"1.10.0","ollama":"0.6.3","openai":"6.18.0","simple-git":"3.30.0","zod":"4.3.6"},"devDependencies":{"@types/node":"25.0.9","ts-node":"10.9.2","typescript":"5.9.3"},"gitHead":"c3dd9c20b4f2b560540076b5142583c3403fae00","_id":"@dami_deleon/rikudo@2.1.0","_nodeVersion":"22.14.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-VNQk43HX39XnJWvtkx9XBTFV4AALmDPtUpHkVkUHu+qY1iMqc6YMtlGtKNd8gne3xil0OlPxhEoYjPdcxEfMBw==","shasum":"e8243a9f82b3d5a4de5e0ce9809c993dbd8d0ca0","tarball":"https://registry.npmjs.org/@dami_deleon/rikudo/-/rikudo-2.1.0.tgz","fileCount":30,"unpackedSize":85341,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCpzVuZ6mx8xzOYRnUi8TslGRSoweWtgyOxFu02ed6BYAIgK9h+neaFev1+yOtGbnzaNdue4Opqco5oKUOlom6udVY="}]},"_npmUser":{"name":"dami_deleon","email":"damideleon.dev@gmail.com"},"directories":{},"maintainers":[{"name":"dami_deleon","email":"damideleon.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/rikudo_2.1.0_1773976429599_0.43429277974809377"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-09T15:04:49.915Z","modified":"2026-03-20T03:13:49.879Z","1.0.1-alpha.0":"2026-02-09T15:04:50.180Z","1.0.1-alpha.1":"2026-02-09T15:25:32.146Z","1.0.1-alpha.2":"2026-02-09T15:28:29.524Z","1.0.1-alpha.3":"2026-02-09T18:13:23.620Z","1.1.0":"2026-02-10T17:31:30.440Z","2.0.0":"2026-03-19T18:20:26.282Z","2.0.1":"2026-03-19T18:34:54.022Z","2.0.2":"2026-03-19T18:55:56.350Z","2.1.0":"2026-03-20T03:13:49.772Z"},"author":{"name":"Damián De León"},"keywords":["git","ai","cli"],"description":"El Sabio de los Commits: AI Assistant con integración a Redmine","maintainers":[{"name":"dami_deleon","email":"damideleon.dev@gmail.com"}],"readme":"# 🌀 Rikudo: El Sabio de los Commits\n\n**Rikudo** es una herramienta CLI potenciada por Inteligencia Artificial, agnóstica del proveedor de IA, diseñada para automatizar y estandarizar el flujo de trabajo de Git y la gestión de tareas en Redmine.\n\nInspirado en el Sabio de los Seis Caminos, Rikudo utiliza módulos especializados para observar tu código, entender el contexto de tus tareas y mantener la armonía en el repositorio siguiendo las convenciones del equipo.\n\n---\n\n## 🚀 Los 6 Caminos de Rikudo\n\n1.  **Camino Deva (Git):** Control total sobre el stage y los commits.\n2.  **Camino Humano (AI):** Inteligencia profunda para redactar mensajes técnicos precisos.\n3.  **Camino Animal (Redmine):** Invocación y sincronización con el Project Manager.\n4.  **Camino Preta (Summarizer):** Absorción y síntesis de archivos de gran tamaño.\n5.  **Camino Naraka (Cache):** Memoria persistente basada en hashes de Git para optimizar tokens.\n6.  **Camino Asura (Rate Limiter):** Gestión de poder para respetar los límites de las APIs.\n\n---\n\n## ✨ Dos Modos de Uso\n\nRikudo puede usarse de dos maneras:\n\n### Modo CLI\nInteractúa directamente desde la terminal con un menú interactivo o comandos directos.\n\n### Modo MCP (Model Context Protocol)\nActúa como servidor MCP, exponiendo herramientas y prompts para que agentes de IA externos (Claude Code, Gemini CLI, Cursor, etc.) puedan invocar sus funcionalidades.\n\n---\n\n## ✨ Características Principales\n\n* **🧠 Agnóstico de IA:** Tú eliges el cerebro. Soporte nativo para:\n  * **Google Gemini** (Rápido y eficiente)\n  * **OpenAI GPT-4o / GPT-3.5** (El estándar)\n  * **Anthropic Claude** (Gran capacidad de contexto)\n  * **Ollama** (Privacidad total con modelos locales como Llama 3)\n\n* **📝 Smart Commits:** Analiza tus `staged files` y genera mensajes siguiendo **Conventional Commits** basados en tus propias reglas.\n* **🚀 PR Generator:** Selecciona múltiples commits y genera una descripción de Pull Request completa siguiendo tu plantilla.\n* **⚙️ Configuración Flexible:** Define tus preferencias globales o por proyecto.\n* **🔍 Diagnóstico Integrado:** Herramienta `test` para verificar tus API Keys y conexión con servicios externos.\n* **🔌 Servidor MCP:** Actúa como skill library para agentes de IA externos mediante el protocolo MCP.\n\n## 📦 Instalación\n\n```bash\nnpm install -g @dami_deleon/rikudo\n```\n\n### Ejecución única (sin instalar)\n\n```bash\nnpx @dami_deleon/rikudo\n```\n\n---\n\n## 🚀 Uso Rápido\n\n### Modo CLI\n\nEjecuta el comando en tu terminal dentro de cualquier repositorio git:\n\n```bash\nrikudo\n```\n\nEsto abrirá el **Menú Interactivo** donde podrás elegir entre crear commits, PRs o configurar la herramienta.\n\n#### Comandos Directos\n\n* **Crear Commit:**\n```bash\nrikudo commit\n# O con ticket asociado:\nrikudo commit -t 1234\n```\n\n* **Crear Pull Request:**\n```bash\nrikudo pr\n# O con ticket asociado:\nrikudo pr -t 1234\n```\n\n* **Diagnóstico de Conexión:**\n```bash\nrikudo test\n```\n\n* **Ver Ticket:**\n```bash\nrikudo ticket 1234\n```\n\n* **Configuración:**\n```bash\nrikudo config\n```\n\n---\n\n### Modo MCP\n\nPara usar Rikudo como servidor MCP con cualquier agente de IA compatible:\n\n```bash\nrikudo mcp\n```\n\nEl servidor se comunica mediante **stdio**, permitiendo integrarse con cualquier cliente MCP.\n\n#### Herramientas Disponibles\n\n| Herramienta | Descripción |\n|------------|-------------|\n| `validate_configuration` | Verifica que las variables de entorno necesarias (Redmine, Gitea) estén configuradas correctamente. |\n| `get_ticket_context` | Obtiene el contexto completo de un ticket de Redmine (título, descripción, estado, prioridad, custom fields). |\n| `get_git_diff` | Retorna el diff de los archivos que están en staging (`git add`). |\n| `shift_left_start` | Flujo shift-left completo: checkout a rama objetivo, crea nueva rama, commit vacío y abre Draft PR en Gitea. Soporta parámetro `isWip` para usar prefijo \"WIP:\" en el título. |\n| `update_pm_redmine` | Agrega un comentario a un ticket de Redmine para notificar al Project Manager. |\n| `update_custom_fields` | Actualiza los campos personalizados (Custom Fields) de un ticket de Redmine. |\n\n#### Prompts Disponibles\n\n| Prompt | Descripción |\n|--------|-------------|\n| `start_feature` | Inicia el flujo de trabajo para una nueva feature. Obtiene contexto del ticket, genera nombre de rama y prepara el entorno en Gitea con PR en modo WIP. |\n| `review_and_comment` | Analiza los cambios staged, genera un comentario técnico y lo publica en Redmine. |\n\n#### Integración con Agentes IA\n\nRikudo es compatible con cualquier herramienta de IA que soporte el protocolo MCP, como:\n- **Claude Code / Claude Desktop**\n- **Gemini CLI**\n- **Cursor**\n- **Windsurf**\n- **Continue**\n- Y cualquier otro cliente MCP\n\nAgrega esto en la configuración de tu cliente MCP:\n\n```json\n{\n  \"mcpServers\": {\n    \"rikudo\": {\n      \"command\": \"rikudo\",\n      \"args\": [\"mcp\"]\n    }\n  }\n}\n```\n\n#### Variables de Entorno para MCP\n\n```env\n# Redmine\nRIKUDO_REDMINE_URL=https://redmine.tuempresa.com\nRIKUDO_REDMINE_API_KEY=tu_redmine_key\n\n# Gitea\nRIKUDO_GITEA_URL=https://gitea.tuempresa.com\nRIKUDO_GITEA_TOKEN=tu_gitea_token\nRIKUDO_GITEA_OWNER=tu_usuario_o_organizacion  # Opcional\nRIKUDO_GITEA_REPO=nombre_del_repositorio       # Opcional\n```\n\n#### Formato de Ramas\n\nAl usar `start_feature` o `shift_left_start`, el nombre de rama sigue el formato:\n\n```\n[numero-tarea]-[titulo-tarea-ingles-corto]\n```\n\nEjemplo: `1234-add-user-authentication`\n\n---\n\n## ⚙️ Configuración\n\nRikudo busca un archivo `.env` en la raíz de tu proyecto para las credenciales sensibles.\n\n```env\n# --- Configuración General ---\nRIKUDO_AI_PROVIDER=gemini  # Opciones: gemini, openai, claude, ollama\n\n# --- Credenciales de Proveedores (Solo necesitas la que uses) ---\nRIKUDO_GEMINI_API_KEY=tu_api_key_aqui\nRIKUDO_OPENAI_API_KEY=tu_api_key_aqui\nRIKUDO_CLAUDE_API_KEY=tu_api_key_aqui\n\n# --- Ollama (Local) ---\nRIKUDO_OLLAMA_URL=http://localhost:11434/api/generate\nRIKUDO_OLLAMA_MODEL=llama3\n\n# --- Integraciones ---\nRIKUDO_REDMINE_URL=https://redmine.tuempresa.com\nRIKUDO_REDMINE_API_KEY=tu_redmine_key\n\n# --- Gitea (para servidor MCP) ---\nRIKUDO_GITEA_URL=https://gitea.tuempresa.com\nRIKUDO_GITEA_TOKEN=tu_gitea_token\nRIKUDO_GITEA_OWNER=tu_usuario_o_organizacion  # Opcional: se obtiene del remote si no se especifica\nRIKUDO_GITEA_REPO=nombre_del_repositorio       # Opcional: se obtiene del remote si no se especifica\n```\n\n### Plantillas Personalizadas\n\n1. **`conventions.txt`**: Reglas para tus commits.\n2. **`pull-request-template.txt`**: Estructura para tus PRs.\n\n---\n\n## 🛠️ Solución de Problemas\n\n```bash\nrikudo test\n```\n\nEsto validará:\n\n1. Que las variables de entorno existan.\n2. Que la API Key sea válida conectando con el proveedor.\n3. Que tengas acceso a los servicios externos configurados.\n\n---\n\nHecho con ❤️ y TypeScript.\n","readmeFilename":"README.md"}