{"_id":"@anon1911/anon","_rev":"6-eaa5fa20962d93be65a7968ba0a4e3a7","name":"@anon1911/anon","dist-tags":{"latest":"1.0.9"},"versions":{"1.0.0":{"name":"@anon1911/anon","version":"1.0.0","keywords":["mcp","model-context-protocol","agent","developer-agent","guardrails","cli"],"author":"","license":"MIT","_id":"@anon1911/anon@1.0.0","maintainers":[{"name":"anon1911","email":"adiprabhawale@gmail.com"}],"bin":{"anon":"bin/anon.js"},"dist":{"shasum":"a461ae18dc9c52e64a88a80a4d2c28896aee43be","tarball":"https://registry.npmjs.org/@anon1911/anon/-/anon-1.0.0.tgz","fileCount":41,"integrity":"sha512-ds1pfk/BqsU2fuErRcEK5q3ZnaVTsHYI7wKMbfp2aGIMqPjFhrrJIANND/NEK8SF2VkiBlQK55j2zgGB2Zh1GQ==","signatures":[{"sig":"MEYCIQCTTOjEMjYW/eKKvc4+0uC475tJTQ/P68CqPtvGFGFCjAIhAMzxfa1RhRM7Tqcy20VpWsI/2tP3JsAgmgPsb9Fmiplv","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":141097},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","scripts":{"build":"tsc","watch":"tsc -w","prepublishOnly":"npm run build"},"_npmUser":{"name":"anon1911","email":"adiprabhawale@gmail.com"},"_npmVersion":"10.8.2","description":"A spec-driven senior developer agent CLI & MCP server","directories":{},"_nodeVersion":"20.19.1","dependencies":{"zod":"^3.22.4","commander":"^11.1.0","fast-glob":"^3.3.2","picocolors":"^1.0.0","@modelcontextprotocol/sdk":"^0.6.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.24"},"_npmOperationalInternal":{"tmp":"tmp/anon_1.0.0_1783578119590_0.8586429607836781","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@anon1911/anon","version":"1.0.1","keywords":["mcp","model-context-protocol","agent","developer-agent","guardrails","cli"],"author":"","license":"MIT","_id":"@anon1911/anon@1.0.1","maintainers":[{"name":"anon1911","email":"adiprabhawale@gmail.com"}],"bin":{"anon":"bin/anon.js"},"dist":{"shasum":"6adb0db5e8c71706cc58ed1e4192b050fa204d04","tarball":"https://registry.npmjs.org/@anon1911/anon/-/anon-1.0.1.tgz","fileCount":41,"integrity":"sha512-xoqIyIm3IXlI3fhhsnkAu77bXQkfwna5522v2NAXfAQB6VLYfyL0/iwUMLe6lYwf4g0fAqjC222s671dxviJLQ==","signatures":[{"sig":"MEUCIE/oaq3zYnZOX7H0tRLTOuQ8FVENt/5GbEpgxwe3yNaEAiEA1AlJEYhpWvIj6v1KdU0HTAc6RJBEwxn510qF+pOP8w8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":145774},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","scripts":{"build":"tsc","watch":"tsc -w","prepublishOnly":"npm run build"},"_npmUser":{"name":"anon1911","email":"adiprabhawale@gmail.com"},"_npmVersion":"10.8.2","description":"A spec-driven senior developer agent CLI & MCP server","directories":{},"_nodeVersion":"20.19.1","dependencies":{"zod":"^3.22.4","commander":"^11.1.0","fast-glob":"^3.3.2","picocolors":"^1.0.0","@modelcontextprotocol/sdk":"^0.6.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.24"},"_npmOperationalInternal":{"tmp":"tmp/anon_1.0.1_1783578269062_0.909363509354518","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@anon1911/anon","version":"1.0.2","keywords":["mcp","model-context-protocol","agent","developer-agent","guardrails","cli"],"author":"","license":"MIT","_id":"@anon1911/anon@1.0.2","maintainers":[{"name":"anon1911","email":"adiprabhawale@gmail.com"}],"bin":{"anon":"bin/anon.js"},"dist":{"shasum":"30c3695a8e5f8c3d117d0644d5d527a245860549","tarball":"https://registry.npmjs.org/@anon1911/anon/-/anon-1.0.2.tgz","fileCount":41,"integrity":"sha512-plss6ymaGkeoz8dwrfpA2P89IJhqVpG+CCqdn7It0iYYJwqbpXI44UQc59QyEzg9MJclxnRGD6CiX8l8rtvOgA==","signatures":[{"sig":"MEYCIQD6Io3+suuo1wVjWSrdzmhUP6quuCqH8sY27DO++70L7gIhAK1DyJsOtVDrfFxcjaTeI5Y2Vg994NUme1hOyB9Ur2EV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":145774},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","scripts":{"build":"tsc","watch":"tsc -w","prepublishOnly":"npm run build"},"_npmUser":{"name":"anon1911","email":"adiprabhawale@gmail.com"},"_npmVersion":"10.8.2","description":"A spec-driven senior developer agent CLI & MCP server","directories":{},"_nodeVersion":"20.19.1","dependencies":{"zod":"^3.22.4","commander":"^11.1.0","fast-glob":"^3.3.2","picocolors":"^1.0.0","@modelcontextprotocol/sdk":"^0.6.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.24"},"_npmOperationalInternal":{"tmp":"tmp/anon_1.0.2_1783578371004_0.525382350986459","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@anon1911/anon","version":"1.0.3","keywords":["mcp","model-context-protocol","agent","developer-agent","guardrails","cli"],"author":"","license":"MIT","_id":"@anon1911/anon@1.0.3","maintainers":[{"name":"anon1911","email":"adiprabhawale@gmail.com"}],"bin":{"anon":"bin/anon.js"},"dist":{"shasum":"4d2ddd697bd5dbb30970d40f2927117a300c1a17","tarball":"https://registry.npmjs.org/@anon1911/anon/-/anon-1.0.3.tgz","fileCount":45,"integrity":"sha512-txTzeyhXnBdas79AkGgA1SpzE05vEVqmx/EySb/PMBpd6BjR6mNHCN0yrSEeDCqJP6H0EdYyF1UvTsbHS9ZE3w==","signatures":[{"sig":"MEYCIQDnI86E99cMqY5naIrWYQqLPE790c4xliqOOv++U9VNNgIhALQt/wqjp+cNKXSD2eOsER5B7sJxGCwjT8M7vuezJ/Xs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":159195},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","scripts":{"build":"tsc","watch":"tsc -w","prepublishOnly":"npm run build"},"_npmUser":{"name":"anon1911","email":"adiprabhawale@gmail.com"},"_npmVersion":"10.8.2","description":"A spec-driven senior developer agent CLI & MCP server","directories":{},"_nodeVersion":"20.19.1","dependencies":{"zod":"^3.22.4","commander":"^11.1.0","fast-glob":"^3.3.2","picocolors":"^1.0.0","@modelcontextprotocol/sdk":"^0.6.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.24"},"_npmOperationalInternal":{"tmp":"tmp/anon_1.0.3_1783584661085_0.34463093275487333","host":"s3://npm-registry-packages-npm-production"}},"1.0.4":{"name":"@anon1911/anon","version":"1.0.4","keywords":["mcp","model-context-protocol","agent","developer-agent","guardrails","cli"],"author":"","license":"MIT","_id":"@anon1911/anon@1.0.4","maintainers":[{"name":"anon1911","email":"adiprabhawale@gmail.com"}],"bin":{"anon":"bin/anon.js"},"dist":{"shasum":"7eff4af7a6d000b8fd330a9f848f6de15220bc9c","tarball":"https://registry.npmjs.org/@anon1911/anon/-/anon-1.0.4.tgz","fileCount":45,"integrity":"sha512-5Sss+4BcxqYh4RK19LUWizWgGEkK8s5/0eWaj/LZ0s3hDW3lUAVQBePJHeabNP1yDcX9n4CJ6vk6kPewikNi7w==","signatures":[{"sig":"MEUCIQC7dcq27i7w7dcTvECN5qXHGdjyPfiAKweGZwhhZNq9TQIgOBwwq7uKjjucPebm1Vmsg1zsSU+fkoz916hp5WATmys=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":159195},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","scripts":{"build":"tsc","watch":"tsc -w","prepublishOnly":"npm run build"},"_npmUser":{"name":"anon1911","email":"adiprabhawale@gmail.com"},"_npmVersion":"10.8.2","description":"A spec-driven senior developer agent CLI & MCP server","directories":{},"_nodeVersion":"20.19.1","dependencies":{"zod":"^3.22.4","commander":"^11.1.0","fast-glob":"^3.3.2","picocolors":"^1.0.0","@modelcontextprotocol/sdk":"^0.6.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.3.3","@types/node":"^20.11.24"},"_npmOperationalInternal":{"tmp":"tmp/anon_1.0.4_1783584694234_0.9445686312969948","host":"s3://npm-registry-packages-npm-production"}},"1.0.9":{"name":"@anon1911/anon","version":"1.0.9","description":"A spec-driven senior developer agent CLI & MCP server","type":"module","main":"./dist/index.js","bin":{"anon":"bin/anon.js"},"scripts":{"build":"tsc","watch":"tsc -w","prepublishOnly":"npm run build"},"keywords":["mcp","model-context-protocol","agent","developer-agent","guardrails","cli"],"author":"","license":"MIT","dependencies":{"@modelcontextprotocol/sdk":"^0.6.0","commander":"^11.1.0","picocolors":"^1.0.0","zod":"^3.22.4","fast-glob":"^3.3.2"},"devDependencies":{"@types/node":"^20.11.24","typescript":"^5.3.3"},"_id":"@anon1911/anon@1.0.9","types":"./dist/index.d.ts","_nodeVersion":"20.19.1","_npmVersion":"10.8.2","dist":{"integrity":"sha512-jOoOddi1koNplAFIdePJn0PQK0zo5nzI/NvahU23cJPyvUNIEmbL6ksAf5SGWfkd8ubaFxfFJnp0nN66EjCQKA==","shasum":"0ac6128e82824673c2ece8ece2cca920ceea8586","tarball":"https://registry.npmjs.org/@anon1911/anon/-/anon-1.0.9.tgz","fileCount":47,"unpackedSize":173156,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDm1ebNSbESQJTFqENn1sdMo2LuUEhutvSdUrYfL3BjXQIgKp4MbK27+trULsTqp0Yj4sAzGgT5h0+Vi5yStZpUuyY="}]},"_npmUser":{"name":"anon1911","email":"adiprabhawale@gmail.com"},"directories":{},"maintainers":[{"name":"anon1911","email":"adiprabhawale@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/anon_1.0.9_1784617096494_0.9862094561085843"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-09T06:21:59.382Z","modified":"2026-07-21T06:58:16.789Z","1.0.0":"2026-07-09T06:21:59.753Z","1.0.1":"2026-07-09T06:24:29.200Z","1.0.2":"2026-07-09T06:26:11.160Z","1.0.3":"2026-07-09T08:11:01.226Z","1.0.4":"2026-07-09T08:11:34.392Z","1.0.9":"2026-07-21T06:58:16.622Z"},"license":"MIT","keywords":["mcp","model-context-protocol","agent","developer-agent","guardrails","cli"],"description":"A spec-driven senior developer agent CLI & MCP server","maintainers":[{"name":"anon1911","email":"adiprabhawale@gmail.com"}],"readme":"# 🕵️‍♂️ `@anon1911/anon`\n\n> The spec-driven Senior Developer agent CLI & MCP server who never sleeps, doesn't drink all your coffee, and actively prevents you from breaking production at 3 AM.\n\n---\n\n`@anon1911/anon` (pronounced *anon*, like that mysterious helper who fixes your bugs when you aren't looking) is a specification-driven developer agent that acts as an automated \"Senior Developer\" in your workspace. \n\nIt automatically detects your tech stack, enforces strict custom guardrails, writes highly-tailored editor instructions (`.cursorrules`, `.clinerules`, etc.), runs pre-flight regression audits, and exposes an **MCP (Model Context Protocol)** server gateway to bridge LLM clients (like Antigravity, Claude Desktop, Cursor) to your tools (Figma, Git, Jira).\n\n---\n\n## 🚀 Key Features\n\n*   **🕵️‍♂️ Stack Scanner (No-Config Detective):** Inspects your codebase to auto-detect languages (TypeScript, Rust, Go, Python), styling (Tailwind, Sass, CSS), databases, package managers, and test runners.\n*   **🛡️ Spec-Driven Guardrails:** Enforces rules defined in `.anon/config.json`. Will instantly block banned imports (looking at you, `axios`) or forbidden console logs before they reach staging.\n*   **🧠 Bespoke Editor Rules Generator:** Auto-writes precise instruction rules tailored exactly to your workspace for **Cursor** (`.cursorrules`), **Cline/Roo Code** (`.clinerules`), **GitHub Copilot** (`.github/copilot-instructions.md`), and **Antigravity** (`.antigravity/instructions.md`).\n*   **🌉 MCP Server Proxy Gateway:** Exposes local code standard tools to your editor LLMs, and proxies requests to sub-MCP tools (e.g. Figma, Git, Jira) so your agents have super-powers.\n*   **⚖️ Pre-Flight Regression Audits:** Run `anon audit` to find out if the compile errors on your branch are actually *your* fault, or if they were already broken on the base branch. Save hours of unnecessary debugging!\n\n---\n\n## 📦 Installation\n\nTo use `anon` globally anywhere on your machine:\n```bash\nnpm install -g @anon1911/anon\n```\n\nOr, install it as a devDependency in your repository:\n```bash\nnpm install --save-dev @anon1911/anon\n```\n\n---\n\n## ⚡ Quick Start\n\n### 1. Initialize `anon`\nScan your repository and set up configuration files:\n```bash\n# If installed globally:\nanon init\n\n# Or via npx:\nnpx -y @anon1911/anon init\n```\nThis launches a quick wizard to choose your favorite development platforms:\n```\nChoose target AI Platform(s) for development:\n  1 : VS Code + GitHub Copilot\n  2 : VS Code + Claude (Cline / Roo Code)\n  3 : Cursor\n  4 : Antigravity\n  5 : Claude Desktop (MCP)\n  6 : All Platforms\n  7 : None (only setup .anon config)\n```\nAfter choosing, it automatically writes:\n*   📁 `.anon/config.json`: Core stack settings and validation patterns.\n*   📄 Custom editor rule files (e.g., `.cursorrules`, `.clinerules`) so your AI assistant knows exactly what dependencies, design patterns, and naming conventions to respect.\n\n### 2. Verify Guardrails\nCheck if any files violate your rules:\n```bash\nanon verify\n```\nOr check specific files:\n```bash\nanon verify src/index.ts src/utils/config.ts\n```\n\n### 3. Generate Project Context Report\nNeed to catch an external LLM up on your project? Generate a beautiful text-based project tree and stack summary file:\n```bash\nanon context\n```\n*Creates a comprehensive summary report of your project's architecture, file structure, and stack.*\n\n---\n\n## 🛠️ CLI Command Reference\n\n| Command | Description |\n| :--- | :--- |\n| `anon init` | Scans the stack and initializes `.anon/config.json` and rules. |\n| `anon verify [files...]` | Checks workspace code against guardrails (fails on banned patterns). |\n| `anon context` | Generates a Markdown report & Visual Tree of your codebase structure. |\n| `anon build` | Compiles your project using the auto-detected compiler. |\n| `anon test` | Runs the test suites matching your auto-detected test runner. |\n| `anon feature <name>` | Scaffolds a new git feature branch, checklist, and ticket context. |\n| `anon fix <description>` | Diagnoses compilation/build bugs, and outputs a diagnostic manifest. |\n| `anon update <package>` | Upgrades a dependency and executes builds/tests to check for regression. |\n| `anon review [base]` | Compares your branch with a base branch (`main`) to review rules compliance. |\n| `anon sync [base]` | Pulls/merges changes from a base branch, flagging potential merge conflicts. |\n| `anon audit [base]` | Compares build/lint failures on your branch vs base branch to isolate regressions. |\n| `anon pr [base]` | Pushes your active branch and drafts a Pull Request. |\n| `anon design <figmaUrl>`| Imports assets/SVGs/fonts from Figma and scaffolds matching local components. |\n| `anon mcp start` | Starts the Model Context Protocol (MCP) server. |\n\n---\n\n## 🔌 MCP Server Gateway Configuration\n\nYou can easily register `anon` as an MCP server in your favorite IDE or client (Claude Desktop, VS Code Cline, VS Code Roo Code, or Cursor) either automatically via the CLI or manually.\n\n### ⚡ Automatic IDE Registration & De-confliction\n\nIf you have other MCP servers configured (e.g., a standalone Figma MCP server), they might conflict with `anon`'s integrated tools. You can prioritize `anon` and automatically set up the configurations using the CLI:\n\n```bash\n# Register in all detected IDE configurations\nanon mcp register-ide\n\n# Register in a specific IDE (claude, cline, roo, or cursor)\nanon mcp register-ide claude\n\n# Prioritize anon and disable conflicting servers (backs them up safely in config)\nanon mcp register-ide --clean\n```\n\n---\n\n### 🛠️ Manual Configuration\n\nIf you prefer to configure the server manually, add the following entry to your Claude Desktop config (`claude_desktop_config.json`), Cursor config (`mcp.json`), or VS Code extension settings (`cline_mcp_settings.json`):\n\n```json\n{\n  \"mcpServers\": {\n    \"anon\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@anon1911/anon\", \"mcp\", \"start\"]\n    }\n  }\n}\n```\n\n> [!TIP]\n> To route other servers (like Figma or Github) safely through `anon` to avoid duplication, define them under the `mcpGateways` field in your local `.anon/config.json` instead of placing them directly in your IDE settings.\n\n---\n\n### Exposed MCP Tools\nOnce configured, your AI assistant will gain access to these tools:\n*   `get_project_context`: Retrieve project configuration, stack details, and rules.\n*   `verify_code_standards`: Run guardrail checks & pattern validation on target files.\n*   `run_agent_command`: Safely run compilation, tests, or linters and return error reports.\n*   `setup_anon_config`: Automate scanning and configuring `.anon/config.json`.\n*   `create_feature_branch`: Generate feature branches and checklist manifests.\n*   `diagnose_and_scaffold_fix`: Compile and create diagnostic manifests for bugs.\n*   `upgrade_package_dependency`: Update dependencies and verify compatibility.\n*   `sync_and_resolve_conflicts`: Safely merge base branch updates.\n*   `audit_bug_regressions`: Differentiate between new regressions and pre-existing main branch issues.\n*   `push_and_create_pull_request`: Automate branch pushes and pull request setups.\n*   `scaffold_figma_design`: Retrieve Figma assets/styles and scaffold layouts.\n*   `scaffold_ui_component`: Scaffold semantic and structured UI component templates.\n*   `audit_wcag_accessibility`: Scan component code for accessibility issues and auto-patch them.\n*   `generate_frontend_tests`: Generate unit tests for React components using Vitest/Jest.\n*   `optimize_component_performance`: Detect and refactor rendering bottlenecks.\n\n---\n\n## ⚙️ Configuration File (`.anon/config.json`)\n\nCustomize `anon`'s behavior inside `.anon/config.json`. Below is an example structure:\n\n```json\n{\n  \"name\": \"my-awesome-app\",\n  \"techStack\": {\n    \"language\": \"typescript\",\n    \"framework\": \"nextjs\",\n    \"styling\": \"tailwindcss\",\n    \"database\": \"postgresql\"\n  },\n  \"guardrails\": {\n    \"bannedImports\": [\n      {\n        \"pattern\": \"^axios$\",\n        \"message\": \"Use standard native fetch utility instead of axios to reduce bundle size.\"\n      }\n    ],\n    \"patterns\": [\n      {\n        \"regex\": \"console\\\\.log\",\n        \"message\": \"Console logs are forbidden in production. Use our logging service instead.\"\n      }\n    ],\n    \"requiresTests\": true\n  },\n  \"mcpGateways\": {\n    \"figma\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@figma/mcp-server\"]\n    }\n  }\n}\n```\n\n---\n\n## 🛡️ License\n\nMIT. Go forth and write beautiful, regression-free code! 🚀\n","readmeFilename":"README.md"}