{"_id":"@code-warden/plugins","_rev":"4-dd5b13c30bbcc7c626968cc77a1092a2","name":"@code-warden/plugins","dist-tags":{"latest":"1.0.1"},"versions":{"0.1.0":{"name":"@code-warden/plugins","version":"0.1.0","_id":"@code-warden/plugins@0.1.0","maintainers":[{"name":"jenish-lad","email":"ladjenish0529@gmail.com"}],"dist":{"shasum":"eb7f7e1daea7d28282442322f37826db053f86d1","tarball":"https://registry.npmjs.org/@code-warden/plugins/-/plugins-0.1.0.tgz","fileCount":13,"integrity":"sha512-rgpuaPKQVdmGv4At9WnnTr+6LfnTXHMVSzkw10KgYelFqwt4KD1NX7g7tnzYksyurxvqDq8kXV69JGu6tvPHnw==","signatures":[{"sig":"MEUCIQDxA5xgMn4lmZ9fDhgWP1iJPGOA6lhrwZ0XTXgqsd4YfAIgeLGn5A4royepbuEdiTXSRPiHc0NmIr3nVywmA59dT5g=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":7390},"main":"./dist/index.js","type":"module","_from":"file:code-warden-plugins-0.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","lint":"eslint src/","build":"tsup src/index.ts --format cjs,esm --dts","clean":"rm -rf dist .turbo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"jenish-lad","email":"ladjenish0529@gmail.com"},"_resolved":"C:\\Users\\Admin\\AppData\\Local\\Temp\\99ca193c29add7f3862f33e858eea0bc\\code-warden-plugins-0.1.0.tgz","_integrity":"sha512-rgpuaPKQVdmGv4At9WnnTr+6LfnTXHMVSzkw10KgYelFqwt4KD1NX7g7tnzYksyurxvqDq8kXV69JGu6tvPHnw==","_npmVersion":"11.12.1","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/plugins_0.1.0_1786275572345_0.1958619393872587","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@code-warden/plugins","version":"0.2.0","_id":"@code-warden/plugins@0.2.0","maintainers":[{"name":"jenish-lad","email":"ladjenish0529@gmail.com"}],"dist":{"shasum":"52fc8fcb15391c05a051b067aa80d47e7ea9aec7","tarball":"https://registry.npmjs.org/@code-warden/plugins/-/plugins-0.2.0.tgz","fileCount":14,"integrity":"sha512-uTaf5GLZfiFTG24yTIC4xTKeiAkaK4wnuvHgmpi39HnjS4yqusGMPMkwJqdVY5OfqPDDZ0b8D1CBYbZFLOhgpA==","signatures":[{"sig":"MEYCIQCWO3S+suWPwHkN2OjalJgkbSFYsBJ+RUBR4IMgPp8dSQIhAIb6/xPmUyFxSZdR0uktTRJ+08D/Ebt/JEKUPO4j5/ut","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8568},"main":"./dist/index.js","type":"module","_from":"file:code-warden-plugins-0.2.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","lint":"eslint src/","build":"tsup src/index.ts --format cjs,esm --dts","clean":"rm -rf dist .turbo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"jenish-lad","email":"ladjenish0529@gmail.com"},"_resolved":"C:\\Users\\Admin\\AppData\\Local\\Temp\\fd883b3ee364a35f453bfc02b7e5fdf7\\code-warden-plugins-0.2.0.tgz","_integrity":"sha512-uTaf5GLZfiFTG24yTIC4xTKeiAkaK4wnuvHgmpi39HnjS4yqusGMPMkwJqdVY5OfqPDDZ0b8D1CBYbZFLOhgpA==","_npmVersion":"11.12.1","description":"The extensibility layer for Code Warden. This package allows you to write custom static analysis rules and consensus constraints specific to your company's internal guidelines.","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/plugins_0.2.0_1786284861419_0.4382124405032972","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@code-warden/plugins","version":"1.0.0","_id":"@code-warden/plugins@1.0.0","maintainers":[{"name":"jenish-lad","email":"ladjenish0529@gmail.com"}],"dist":{"shasum":"ab475f11fcc675e9b4a7fffc299714a68ff06c41","tarball":"https://registry.npmjs.org/@code-warden/plugins/-/plugins-1.0.0.tgz","fileCount":14,"integrity":"sha512-whz/oNcc8pBFAN90UCMembMe9FlSxCgnH1HpBwqYzVhOB5zYUCNnMxvyxBOx8FIkT2GwKgGnC783ilFqMeKz4w==","signatures":[{"sig":"MEYCIQCFBSPP2APGa0Di52qGtvQQxrINojmf/b43nIauQ39RmwIhAOeKdat2+Ib94XbbgTbfY9M/fgS8RlcuV5FXob0Wph2i","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":8568},"main":"./dist/index.js","type":"module","_from":"file:code-warden-plugins-1.0.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs"}},"scripts":{"dev":"tsup src/index.ts --format cjs,esm --dts --watch","lint":"eslint src/","build":"tsup src/index.ts --format cjs,esm --dts","clean":"rm -rf dist .turbo","typecheck":"tsc --noEmit"},"_npmUser":{"name":"jenish-lad","email":"ladjenish0529@gmail.com"},"_resolved":"C:\\Users\\Admin\\AppData\\Local\\Temp\\c6401649eaa1d12c86db105dedc67a74\\code-warden-plugins-1.0.0.tgz","_integrity":"sha512-whz/oNcc8pBFAN90UCMembMe9FlSxCgnH1HpBwqYzVhOB5zYUCNnMxvyxBOx8FIkT2GwKgGnC783ilFqMeKz4w==","_npmVersion":"11.12.1","description":"The extensibility layer for Code Warden. This package allows you to write custom static analysis rules and consensus constraints specific to your company's internal guidelines.","directories":{},"_nodeVersion":"24.11.0","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.2","typescript":"^5.7.0"},"_npmOperationalInternal":{"tmp":"tmp/plugins_1.0.0_1786296808228_0.26906250416079724","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@code-warden/plugins","version":"1.0.1","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":"./dist/index.js","require":"./dist/index.cjs","types":"./dist/index.d.ts"}},"devDependencies":{"tsup":"^8.0.2","typescript":"^5.7.0"},"scripts":{"build":"tsup src/index.ts --format cjs,esm --dts","dev":"tsup src/index.ts --format cjs,esm --dts --watch","lint":"eslint src/","typecheck":"tsc --noEmit","clean":"rm -rf dist .turbo"},"_id":"@code-warden/plugins@1.0.1","description":"The extensibility layer for Code Warden. This package allows you to write custom static analysis rules and consensus constraints specific to your company's internal guidelines.","_integrity":"sha512-A9uPh4uSTFq/YNBiPUt8bPOoCc7yEy24flJaBF6q6rB+3aG7r7JMkll5wYJLq06DAxnxGiRwWCGM9MrUTS2gOg==","_resolved":"C:\\Users\\Admin\\AppData\\Local\\Temp\\a6275c52c8d63093979c65d8e42297c5\\code-warden-plugins-1.0.1.tgz","_from":"file:code-warden-plugins-1.0.1.tgz","_nodeVersion":"24.11.0","_npmVersion":"11.12.1","dist":{"integrity":"sha512-A9uPh4uSTFq/YNBiPUt8bPOoCc7yEy24flJaBF6q6rB+3aG7r7JMkll5wYJLq06DAxnxGiRwWCGM9MrUTS2gOg==","shasum":"7bf16748ca044113eeeeef5d22686d864b89ec47","tarball":"https://registry.npmjs.org/@code-warden/plugins/-/plugins-1.0.1.tgz","fileCount":14,"unpackedSize":8568,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIGM89TA6toxmF/SCzjPQBQzYj0cc6WwP7JWazL7GtiQsAiEA3L4BXtHekn8Jn0fHCEJTMiDGobJCSx1m5UINBe6CNzk="}]},"_npmUser":{"name":"jenish-lad","email":"ladjenish0529@gmail.com"},"directories":{},"maintainers":[{"name":"jenish-lad","email":"ladjenish0529@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/plugins_1.0.1_1786298844134_0.33507513139616796"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-09T11:39:32.144Z","modified":"2026-08-09T18:07:24.460Z","0.1.0":"2026-08-09T11:39:32.469Z","0.2.0":"2026-08-09T14:14:21.563Z","1.0.0":"2026-08-09T17:33:28.370Z","1.0.1":"2026-08-09T18:07:24.286Z"},"description":"The extensibility layer for Code Warden. This package allows you to write custom static analysis rules and consensus constraints specific to your company's internal guidelines.","maintainers":[{"name":"jenish-lad","email":"ladjenish0529@gmail.com"}],"readme":"# @code-warden/plugins\r\n\r\nThe extensibility layer for Code Warden. This package allows you to write custom static analysis rules and consensus constraints specific to your company's internal guidelines.\r\n\r\n## Writing a Custom Plugin\r\n\r\nAll custom rules must implement the `Plugin` interface:\r\n\r\n```typescript\r\nimport { BasePlugin, Finding, Severity } from '@code-warden/plugins';\r\n\r\nexport class NoConsoleLogPlugin extends BasePlugin {\r\n  name = 'no-console-log';\r\n  description = 'Blocks the use of console.log in production code';\r\n\r\n  async scan(filePath: string, content: string): Promise<Finding[]> {\r\n    const findings: Finding[] = [];\r\n    \r\n    if (content.includes('console.log')) {\r\n      findings.push({\r\n        ruleId: this.name,\r\n        severity: Severity.WARNING,\r\n        message: 'console.log found. Use the official logger instead.',\r\n        file: filePath\r\n      });\r\n    }\r\n\r\n    return findings;\r\n  }\r\n}\r\n```\r\n\r\n## Registering your Plugin\r\n\r\nIn your `code-warden.config.ts`:\r\n\r\n```typescript\r\nimport { NoConsoleLogPlugin } from './my-plugins';\r\n\r\nexport default {\r\n  plugins: [\r\n    new NoConsoleLogPlugin()\r\n  ]\r\n};\r\n```\r\n","readmeFilename":"README.md"}