{ "name": "projscan", "mcpName": "io.github.abhiyoheswaran1/projscan", "version": "5.0.3", "description": "Local code intelligence for agent-assisted engineering. Focused daily workflows for repo orientation before edits, proof before handoff or commit, and release-candidate review, with AST-backed evidence through an MCP server and CLI. Runs locally by default.", "type": "module", "main": "./dist/index.js", "types": "./dist/index.d.ts", "bin": { "projscan": "dist/cli/index.js" }, "files": [ "dist", "README.md", "docs/2.0-MIGRATION.md", "docs/GUIDE.md", "docs/integrations/baseframe-suite-v1.md", "docs/PLUGIN-AUTHORING.md", "docs/PLUGIN-GALLERY.md", "docs/ROADMAP.md", "docs/demos/projscan-4-1-demo.html", "docs/demos/projscan-mission-control.tape", "docs/demos/projscan-mission-proof.tape", "docs/plugin.schema.json", "docs/examples/adoption-workflows.md", "docs/examples/swarm-coordination.md", "docs/projscan-mission-control.png", "docs/projscan-mission-control.gif", "docs/projscan-proof-cards.png", "docs/projscan-proof-router.png", "docs/projscan-agent-change-passport.png", "docs/projscan-live-guard.png", "docs/projscan-mission-proof.gif", "docs/examples/plugins", "scripts/capture-readme-assets.mjs", "scripts/capture-vhs-demos.mjs", "public/brand/baseframe-labs", "public/.well-known/security.txt", "CONTRIBUTING.md", "SECURITY.md", "PRIVACY.md", "TELEMETRY.md", "DISCLAIMER.md", "TRADEMARKS.md", "THIRD-PARTY-NOTICES.md", "public/projscan-icon.svg" ], "scripts": { "build": "tsc && node scripts/copy-wasm.mjs && node scripts/generate-tool-manifest.mjs", "dev": "tsc --watch", "typecheck": "tsc --noEmit", "typecheck:public-types": "tsc -p tsconfig.public-types.json", "test": "vitest run --exclude '.worktrees/**' --test-timeout 180000 --hook-timeout 180000 --maxWorkers 2", "test:watch": "vitest --exclude '.worktrees/**' --test-timeout 60000 --hook-timeout 60000", "lint": "eslint src/", "format": "prettier --write .", "bench": "node scripts/bench.mjs", "bench:references": "node scripts/bench-references.mjs", "docs:screenshots": "node scripts/capture-readme-assets.mjs", "docs:demos": "npm run build && node scripts/capture-vhs-demos.mjs", "docs:assets": "npm run docs:screenshots && npm run docs:demos", "smoke:packed-install": "node scripts/packed-install-smoke.mjs", "check:stability": "node scripts/check-stability.mjs", "release:check": "node scripts/release-check.mjs", "security:release-gate": "node scripts/release-gate.mjs", "sbom:generate": "node scripts/generate-sbom.mjs", "prepack": "npm run build", "check:graph-corpus": "node scripts/check-graph-corpus.mjs", "test:trust-smoke": "vitest run --exclude '.worktrees/**' tests/cli/privacyCheck.test.ts tests/cli/start.test.ts tests/cli/preflight.test.ts tests/mcp/start.test.ts tests/mcp/preflight.test.ts tests/mcp/fileChangedNotifications.test.ts tests/core/repositoryScanner.gitignore.test.ts tests/core/issueEngine.trustConfig.test.ts tests/utils/changedFiles.test.ts tests/core/auditRunner.offline.test.ts tests/core/upgradePreview.checkRegistry.test.ts tests/core/telemetry.test.ts tests/analyzers/securityCheck.test.ts --test-timeout 60000 --hook-timeout 60000" }, "keywords": [ "cli", "developer-tools", "codebase-analysis", "project-health", "architecture", "linting", "devtools", "code-quality", "analyzer", "project-scanner", "dev-tools", "dx", "python", "tree-sitter", "multi-language" ], "author": "Abhi Yoheswaran", "license": "MIT", "repository": { "type": "git", "url": "git+https://github.com/abhiyoheswaran1/projscan.git" }, "homepage": "https://github.com/abhiyoheswaran1/projscan#readme", "bugs": { "url": "https://github.com/abhiyoheswaran1/projscan/issues" }, "engines": { "node": ">=18" }, "dependencies": { "@babel/parser": "^7.29.2", "@babel/types": "^7.29.0", "chalk": "^5.3.0", "commander": "^12.1.0", "fast-glob": "^3.3.2", "ora": "^8.1.0", "web-tree-sitter": "^0.26.8" }, "peerDependencies": { "@xenova/transformers": "^2.17.0" }, "peerDependenciesMeta": { "@xenova/transformers": { "optional": true } }, "devDependencies": { "@eslint/js": "^10.0.1", "@types/node": "^22.0.0", "@xenova/transformers": "^2.17.0", "agentflight": "^0.4.1", "agentloopkit": "^0.47.1", "eslint": "^10.0.3", "prettier": "^3.8.4", "tree-sitter-c-sharp": "^0.23.5", "tree-sitter-cli": "^0.26.8", "tree-sitter-cpp": "^0.23.4", "tree-sitter-go": "^0.25.0", "tree-sitter-java": "^0.23.5", "tree-sitter-kotlin": "^0.3.8", "tree-sitter-php": "^0.23.12", "tree-sitter-python": "^0.25.0", "tree-sitter-ruby": "^0.23.1", "tree-sitter-rust": "^0.23.3", "tree-sitter-swift": "^0.7.1", "typescript": "^5.6.0", "typescript-eslint": "^8.57.0", "vite": "^8.0.16", "vitest": "^4.1.8" }, "overrides": { "protobufjs": "^7.5.9", "picomatch": ">=2.3.2 <3 || >=4.0.4", "brace-expansion": ">=2.0.2 <3 || >=5.0.6", "flatted": "^3.4.2", "postcss": "^8.5.10" } }