{"_id":"@agent-aro/cli","_rev":"6-bca262539933ee768622845c64c0dfe3","name":"@agent-aro/cli","dist-tags":{"latest":"2.4.0"},"versions":{"2.0.0":{"name":"@agent-aro/cli","version":"2.0.0","keywords":["ai","agentic","debt","seo","readability","optimization","mcp"],"author":{"name":"Hasan Kemal Demirci"},"license":"MIT","_id":"@agent-aro/cli@2.0.0","maintainers":[{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"}],"homepage":"https://github.com/hasankemaldemirci/aro#readme","bugs":{"url":"https://github.com/hasankemaldemirci/aro/issues"},"bin":{"aro":"dist/bin/aro.js"},"dist":{"shasum":"e2a36f951076d18b00c90797fa672ced463fc475","tarball":"https://registry.npmjs.org/@agent-aro/cli/-/cli-2.0.0.tgz","fileCount":61,"integrity":"sha512-za8sp3h80VSiuIOveIKtqvfE44AUg2W1ieBVkh7Cn0LStl3MIEzRwe+hG7gEBC6c409hFeVHuZ2x1sKZN/PxIQ==","signatures":[{"sig":"MEYCIQDpWboW8zhL9DVmDXaUGvXEzsI5I8GjM2QMWJcyK34vdgIhAO+ADfK48NxyGhsRL/JOj86Ay2QcnxwJMsC3+DdP5NFu","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":128650},"jest":{"preset":"ts-jest","testEnvironment":"node","moduleNameMapper":{"^@src/(.*)$":"<rootDir>/src/$1"},"testPathIgnorePatterns":["/node_modules/","/temp_repos/","/dist/"],"modulePathIgnorePatterns":["/temp_repos/","/dist/"]},"main":"dist/src/core.js","types":"./dist/src/core.d.ts","gitHead":"1ceb787dad48413098bfdcbb32a9d1149ab75ed1","scripts":{"dev":"NODE_ENV=development ts-node bin/aro.ts","mcp":"ts-node src/mcp.ts","test":"jest","build":"tsc","analyze":"ts-node src/enterprise.ts","prepare":"husky"},"_npmUser":{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"},"repository":{"url":"git+https://github.com/hasankemaldemirci/aro.git","type":"git"},"_npmVersion":"10.8.2","description":"Agent Readability Optimizer - CLI toolkit for AI-ready codebases.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"chalk":"^4.1.2","fast-glob":"^3.2.11","@modelcontextprotocol/sdk":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","husky":"^9.1.7","ts-jest":"^29.1.2","ts-node":"^10.9.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^22.13.4","@types/chalk":"^2.2.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.0.0_1771324902739_0.6859944252456449","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@agent-aro/cli","version":"2.0.1","keywords":["ai","agentic","debt","seo","readability","optimization","mcp"],"author":{"name":"Hasan Kemal Demirci"},"license":"MIT","_id":"@agent-aro/cli@2.0.1","maintainers":[{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"}],"homepage":"https://github.com/hasankemaldemirci/aro#readme","bugs":{"url":"https://github.com/hasankemaldemirci/aro/issues"},"bin":{"aro":"dist/bin/aro.js"},"dist":{"shasum":"e5f9f564d6c856e8d98fbf892e48c08394c2f914","tarball":"https://registry.npmjs.org/@agent-aro/cli/-/cli-2.0.1.tgz","fileCount":61,"integrity":"sha512-wG7XxWWVYsmbnO9xlXej+Z0wYdyElZ24vfmegLUTW6tQWiRlEr6CmfJuXZt+Ta+g4M5edLAvzsjbu1G0ZiLadQ==","signatures":[{"sig":"MEUCIHX+I5sfpRFGCcCNUyZGE1YLiTZfyVK1NSYRvKdyw3kgAiEA49CNwqmP+lflGy1os3Erkl+XD+ZkdQdYWTu9jxjvShs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":128910},"jest":{"preset":"ts-jest","testEnvironment":"node","moduleNameMapper":{"^@src/(.*)$":"<rootDir>/src/$1"},"testPathIgnorePatterns":["/node_modules/","/temp_repos/","/dist/"],"modulePathIgnorePatterns":["/temp_repos/","/dist/"]},"main":"dist/src/core.js","types":"./dist/src/core.d.ts","gitHead":"ca6e6c5c2f4c5591670843c962c22b3799bbb0aa","scripts":{"dev":"NODE_ENV=development ts-node bin/aro.ts","mcp":"ts-node src/mcp.ts","test":"jest","build":"tsc","analyze":"ts-node src/enterprise.ts","prepare":"husky"},"_npmUser":{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"},"repository":{"url":"git+https://github.com/hasankemaldemirci/aro.git","type":"git"},"_npmVersion":"10.8.2","description":"Agent Readability Optimizer - CLI toolkit for AI-ready codebases.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"chalk":"^4.1.2","fast-glob":"^3.2.11","@modelcontextprotocol/sdk":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","husky":"^9.1.7","ts-jest":"^29.1.2","ts-node":"^10.9.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^22.13.4","@types/chalk":"^2.2.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.0.1_1771327085375_0.2668382881206881","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@agent-aro/cli","version":"2.1.0","keywords":["ai","agentic","debt","seo","readability","optimization","mcp"],"author":{"name":"Hasan Kemal Demirci"},"license":"MIT","_id":"@agent-aro/cli@2.1.0","maintainers":[{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"}],"homepage":"https://github.com/hasankemaldemirci/aro#readme","bugs":{"url":"https://github.com/hasankemaldemirci/aro/issues"},"bin":{"aro":"dist/bin/aro.js"},"dist":{"shasum":"8f763e246d473caa76020f22018e1d9f40c08cf8","tarball":"https://registry.npmjs.org/@agent-aro/cli/-/cli-2.1.0.tgz","fileCount":68,"integrity":"sha512-y+O6m6D4giImLnMHcPxz46k4yY3wrGUjCpSdbHzRgIiugpew7E5gdLQls/k3MnUebsoqsN9gpmqj6mAmgm9NMA==","signatures":[{"sig":"MEQCIDQQjJRRSmEth9KStxHUSoMGCXmPsBA3q2+22XgoJlJrAiAXqQ3x0rCKT5mMvygZYJ5JCFUw5uetAGjPhlMVslbOfQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":164252},"jest":{"preset":"ts-jest","testEnvironment":"node","moduleNameMapper":{"^@src/(.*)$":"<rootDir>/src/$1"},"testPathIgnorePatterns":["/node_modules/","/temp_repos/","/dist/"],"modulePathIgnorePatterns":["/temp_repos/","/dist/"]},"main":"dist/src/core.js","types":"./dist/src/core.d.ts","gitHead":"a73f4500201b8a1ae071e6484a7a088463ae2e28","scripts":{"dev":"NODE_ENV=development ts-node bin/aro.ts","mcp":"ts-node src/mcp.ts","test":"jest","build":"tsc","analyze":"ts-node src/enterprise.ts","prepare":"husky"},"_npmUser":{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"},"repository":{"url":"git+https://github.com/hasankemaldemirci/aro.git","type":"git"},"_npmVersion":"10.8.2","description":"Agent Readability Optimizer - CLI toolkit for AI-ready codebases.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"chalk":"^4.1.2","fast-glob":"^3.2.11","@modelcontextprotocol/sdk":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","husky":"^9.1.7","ts-jest":"^29.1.2","ts-node":"^10.9.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^22.13.4","@types/chalk":"^2.2.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.1.0_1771362347417_0.16442960306907395","host":"s3://npm-registry-packages-npm-production"}},"2.2.0":{"name":"@agent-aro/cli","version":"2.2.0","keywords":["ai","agentic","debt","seo","readability","optimization","mcp"],"author":{"name":"Hasan Kemal Demirci"},"license":"MIT","_id":"@agent-aro/cli@2.2.0","maintainers":[{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"}],"homepage":"https://github.com/hasankemaldemirci/aro#readme","bugs":{"url":"https://github.com/hasankemaldemirci/aro/issues"},"bin":{"aro":"dist/bin/aro.js"},"dist":{"shasum":"af74dbb14608714d547d96ec9567b99ac5212aa3","tarball":"https://registry.npmjs.org/@agent-aro/cli/-/cli-2.2.0.tgz","fileCount":71,"integrity":"sha512-m9yrhNIcDXqpoCHEeQ1h+Weh0nPE1gRMYN1vywJ0Fl+uqtpLUw9MSNOyhrso+RJim8OkaBw/gm+vUKXGgNAfjA==","signatures":[{"sig":"MEYCIQCK/JlYNuxl6xOrfC7Jkm49jP6UqgpXiIncceKtD6/U9AIhAKf6qAdbom8Dg5IBEhAAWdXIMi3zLVa7VEkO3QZweQ9N","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":178593},"jest":{"preset":"ts-jest","testEnvironment":"node","moduleNameMapper":{"^@src/(.*)$":"<rootDir>/src/$1"},"testPathIgnorePatterns":["/node_modules/","/temp_repos/","/dist/"],"modulePathIgnorePatterns":["/temp_repos/","/dist/"]},"main":"dist/src/core.js","types":"./dist/src/core.d.ts","gitHead":"7806f21e97294fd0c27975f3611b22b13da0b16d","scripts":{"dev":"NODE_ENV=development ts-node bin/aro.ts","mcp":"ts-node src/mcp.ts","test":"jest","build":"tsc","analyze":"ts-node src/enterprise.ts","prepare":"husky"},"_npmUser":{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"},"repository":{"url":"git+https://github.com/hasankemaldemirci/aro.git","type":"git"},"_npmVersion":"10.8.2","description":"Agent Readability Optimizer - CLI toolkit for AI-ready codebases.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"chalk":"^4.1.2","fast-glob":"^3.2.11","@modelcontextprotocol/sdk":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","husky":"^9.1.7","ts-jest":"^29.1.2","ts-node":"^10.9.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^22.13.4","@types/chalk":"^2.2.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.2.0_1771949234675_0.19488954783209622","host":"s3://npm-registry-packages-npm-production"}},"2.3.0":{"name":"@agent-aro/cli","version":"2.3.0","keywords":["ai","agentic","debt","seo","readability","optimization","mcp"],"author":{"name":"Hasan Kemal Demirci"},"license":"MIT","_id":"@agent-aro/cli@2.3.0","maintainers":[{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"}],"homepage":"https://github.com/hasankemaldemirci/aro#readme","bugs":{"url":"https://github.com/hasankemaldemirci/aro/issues"},"bin":{"aro":"dist/bin/aro.js"},"dist":{"shasum":"00b3dfe19388f37e75991cd2d46f10973f0145bf","tarball":"https://registry.npmjs.org/@agent-aro/cli/-/cli-2.3.0.tgz","fileCount":74,"integrity":"sha512-H7N0iLfMfhQWMZR5yR2H5rpv/ZuBmGTvHT4PtL6W4gDihqNTpYdjlxLc/bwdwcfKta2cI0d80xXG+MY3xO0xZw==","signatures":[{"sig":"MEUCIAVOJzppSE2uaSdi7kDJ4Kdonntyu8ophIzgx3/eFGh4AiEA76M3NRTRphmB2M3m+aSrokwmeWxlBD+gBR30zAkRMnM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":189560},"jest":{"preset":"ts-jest","testEnvironment":"node","moduleNameMapper":{"^@src/(.*)$":"<rootDir>/src/$1"},"testPathIgnorePatterns":["/node_modules/","/temp_repos/","/dist/"],"modulePathIgnorePatterns":["/temp_repos/","/dist/"]},"main":"dist/src/core.js","types":"./dist/src/core.d.ts","gitHead":"c9d47c79f800b8fc5423c40be2acbd428e827931","scripts":{"dev":"NODE_ENV=development ts-node bin/aro.ts","mcp":"ts-node src/mcp.ts","test":"jest","build":"tsc","analyze":"ts-node src/enterprise.ts","prepare":"husky"},"_npmUser":{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"},"repository":{"url":"git+https://github.com/hasankemaldemirci/aro.git","type":"git"},"_npmVersion":"10.8.2","description":"Agent Readability Optimizer - CLI toolkit for AI-ready codebases.","directories":{},"_nodeVersion":"20.19.5","dependencies":{"chalk":"^4.1.2","fast-glob":"^3.2.11","@modelcontextprotocol/sdk":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","husky":"^9.1.7","ts-jest":"^29.1.2","ts-node":"^10.9.2","typescript":"^5.3.3","@types/jest":"^29.5.12","@types/node":"^22.13.4","@types/chalk":"^2.2.0"},"_npmOperationalInternal":{"tmp":"tmp/cli_2.3.0_1772834356318_0.9273144018127875","host":"s3://npm-registry-packages-npm-production"}},"2.4.0":{"name":"@agent-aro/cli","version":"2.4.0","description":"Agent Readability Optimizer - CLI toolkit for AI-ready codebases.","main":"dist/src/core.js","repository":{"type":"git","url":"git+https://github.com/hasankemaldemirci/aro.git"},"bin":{"aro":"dist/bin/aro.js"},"scripts":{"build":"tsc","dev":"NODE_ENV=development ts-node bin/aro.ts","analyze":"ts-node src/enterprise.ts","mcp":"ts-node src/mcp.ts","test":"jest","prepare":"husky"},"keywords":["ai","agentic","debt","seo","readability","optimization","mcp"],"author":{"name":"Hasan Kemal Demirci"},"license":"MIT","dependencies":{"@modelcontextprotocol/sdk":"^1.1.0","chalk":"^4.1.2","fast-glob":"^3.2.11"},"devDependencies":{"@types/chalk":"^2.2.0","@types/jest":"^29.5.12","@types/node":"^22.13.4","husky":"^9.1.7","jest":"^29.7.0","ts-jest":"^29.1.2","ts-node":"^10.9.2","typescript":"^5.3.3"},"jest":{"preset":"ts-jest","testEnvironment":"node","testPathIgnorePatterns":["/node_modules/","/temp_repos/","/dist/"],"modulePathIgnorePatterns":["/temp_repos/","/dist/"],"moduleNameMapper":{"^@src/(.*)$":"<rootDir>/src/$1"}},"_id":"@agent-aro/cli@2.4.0","gitHead":"5e07e4def06c146e6e8b5ea8c283355b9d7a1da2","types":"./dist/src/core.d.ts","bugs":{"url":"https://github.com/hasankemaldemirci/aro/issues"},"homepage":"https://github.com/hasankemaldemirci/aro#readme","_nodeVersion":"20.19.5","_npmVersion":"10.8.2","dist":{"integrity":"sha512-6cHA6lxPFtfVGRjFc3fRvdcTqXGlLt5NbpsvBpxu6Apd3wQx0aFWbidsgDoNZrjrpQhhamLlPyPwz4kZ6F02vg==","shasum":"c9c16bf5236e439fccc3e52d6d30bf7acb7d96e3","tarball":"https://registry.npmjs.org/@agent-aro/cli/-/cli-2.4.0.tgz","fileCount":81,"unpackedSize":212203,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDWQwfEi7fKV81JprkAnM4+LC0fRfuvcOhE9mn1eoBLawIhALYwK4cMfsstXkp83aEMRgDa6SsGpxoKQ5VY1RUpkuk1"}]},"_npmUser":{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"},"directories":{},"maintainers":[{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_2.4.0_1774873110244_0.5578417469812802"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-17T10:41:42.619Z","modified":"2026-03-30T12:18:30.523Z","2.0.0":"2026-02-17T10:41:42.905Z","2.0.1":"2026-02-17T11:18:05.535Z","2.1.0":"2026-02-17T21:05:47.614Z","2.2.0":"2026-02-24T16:07:14.818Z","2.3.0":"2026-03-06T21:59:16.483Z","2.4.0":"2026-03-30T12:18:30.400Z"},"bugs":{"url":"https://github.com/hasankemaldemirci/aro/issues"},"author":{"name":"Hasan Kemal Demirci"},"license":"MIT","homepage":"https://github.com/hasankemaldemirci/aro#readme","keywords":["ai","agentic","debt","seo","readability","optimization","mcp"],"repository":{"type":"git","url":"git+https://github.com/hasankemaldemirci/aro.git"},"description":"Agent Readability Optimizer - CLI toolkit for AI-ready codebases.","maintainers":[{"name":"hasankemaldemirci","email":"hasankemal.demirci@gmail.com"}],"readme":"# ARO: Agent Readability Optimizer\n\n> \"SEO for your code, optimized for AI Agents.\"\n\n[![ARO Score][aro-badge]][aro-url]\n[![NPM Version][npm-badge]][npm-url]\n[![CI/CD Status][audit-badge]][audit-url]\n[![MCP Status][mcp-badge]][mcp-url]\n\nARO is a CLI toolkit designed to optimize your codebase for\nAI agents (Cursor, Windsurf, Devin). It eliminates the Hallucination Tax\nand ensures your code is understood by AI \"instantly\".\n\n## ⚡ Quick Start\n\nAnalyze any project instantly without installation:\n\n```bash\nnpx @agent-aro/cli audit\n# or if installed globally\naro audit\n```\n\n## 📦 Installation\n\nFor frequent use, install ARO globally:\n\n```bash\nnpm install -g @agent-aro/cli\n```\n\n## 🛠️ Usage\n\n### Audit & Analysis\n\nDeeply analyze your project structure and calculate AI financial debt.\n\n```bash\naro audit          # Standard audit\naro audit --silent # Output only the score (for CI/CD)\n```\n\n### Intelligent Refactoring\n\nAnalyze large files and get smart splitting suggestions. Optionally apply them automatically.\n\n```bash\naro refactor          # Analyze and generate refactoring plan\naro refactor --apply  # Auto-split classes and extract types (agentic mode)\n```\n\n### Rule Generation\n\nGenerate optimized configuration files for specific AI editors.\n\n```bash\naro rules          # Generates .cursorrules, .windsurfrules, etc.\n```\n\n### Badge Generation\n\nGenerate an ARO Score badge and automatically patch your README.md.\n\n```bash\naro badge --update\n```\n\n### CI/CD Automation\n\nInitialize a GitHub Action to automatically audit your project on every push/PR.\n\n```bash\naro init-ci\n```\n\n### MCP Server\n\nEnable live integration so AI Agents can query your project structure directly.\n\n```bash\naro mcp            # Starts the MCP server\n```\n\n> **💡 Tip:** All commands work with `npx @agent-aro/cli` if you haven't installed globally.\n>\n> **🔌 Local LLMs:** ARO's MCP server works with local LLMs like Ollama and LM Studio. See [examples/mcp-local-llm](./examples/mcp-local-llm) for setup instructions.\n\n## Key Features\n\n- **🎯 Real-time ARO Score**: Get a deterministic 0-100 rating of your code's AI-readiness.\n- **🤖 Agentic Refactoring**: Auto-split large files with `--apply` flag for instant optimization.\n- **📊 Context File Analysis**: Scores AI instruction files (AGENTS.md, .cursorrules) for quality.\n- **💰 Financial Analyzer**: Calculate the annual \"AI-Debt\" in USD and wasted developer hours.\n- **🛰️ MCP Server**: Native integration for AI Agents to query your structure directly.\n- **🛡️ Security Gate**: Integrated security checks for keys and dangerous functions.\n\n## Scoring Calculation\n\nThe score (0-100) is based on AI-Agent understanding efficiency:\n\n1. **Documentation (25pts)**: README quality and completeness.\n2. **Structure (20pts)**: Organized directories and entry points.\n3. **File Size (30pts)**: Avoiding truncation with manageable file sizes.\n4. **AI Context (25pts)**: Quality of agent instruction files (AGENTS.md, .cursorrules).\n\n---\n\n## Contributing\n\nWe welcome all PRs! Check our [CONTRIBUTING.md](./CONTRIBUTING.md) to get started.\n\nMIT (c) Hasan Kemal Demirci\n\n[aro-badge]: https://img.shields.io/badge/ARO_Score-100%2F100-brightgreen\n[aro-url]: https://github.com/hasankemaldemirci/aro\n[npm-badge]: https://img.shields.io/npm/v/@agent-aro/cli?color=red\n[npm-url]: https://www.npmjs.com/package/@agent-aro/cli\n[audit-badge]: https://github.com/hasankemaldemirci/aro/actions/workflows/aro.yml/badge.svg\n[audit-url]: https://github.com/hasankemaldemirci/aro/actions\n[mcp-badge]: https://img.shields.io/badge/MCP-Compatible-orange\n[mcp-url]: https://modelcontextprotocol.io/\n","readmeFilename":"README.md"}