84 lines
2.6 KiB
JSON
84 lines
2.6 KiB
JSON
|
|
{
|
|||
|
|
"name": "posimai-guard",
|
|||
|
|
"displayName": "Guard — AIコードセキュリティスキャナー",
|
|||
|
|
"description": "AIが生成したコードのセキュリティリスクをワークスペース内で直接検出します",
|
|||
|
|
"version": "0.1.0",
|
|||
|
|
"publisher": "posimai",
|
|||
|
|
"engines": { "vscode": "^1.85.0" },
|
|||
|
|
"categories": ["Linters", "Other"],
|
|||
|
|
"icon": "media/icon.png",
|
|||
|
|
"license": "MIT",
|
|||
|
|
"repository": { "type": "git", "url": "https://github.com/posimai/posimai-guard-ext" },
|
|||
|
|
"main": "./dist/extension.js",
|
|||
|
|
"activationEvents": [],
|
|||
|
|
"contributes": {
|
|||
|
|
"commands": [
|
|||
|
|
{
|
|||
|
|
"command": "guard.scanWorkspace",
|
|||
|
|
"title": "Guard: ワークスペースをスキャン",
|
|||
|
|
"icon": "$(shield)"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"command": "guard.scanFile",
|
|||
|
|
"title": "Guard: このファイルをスキャン"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"command": "guard.setApiKeys",
|
|||
|
|
"title": "Guard: APIキーを設定"
|
|||
|
|
},
|
|||
|
|
{
|
|||
|
|
"command": "guard.clearDiagnostics",
|
|||
|
|
"title": "Guard: 診断をクリア"
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
"menus": {
|
|||
|
|
"editor/title": [
|
|||
|
|
{
|
|||
|
|
"command": "guard.scanFile",
|
|||
|
|
"group": "navigation"
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
"commandPalette": [
|
|||
|
|
{ "command": "guard.scanWorkspace" },
|
|||
|
|
{ "command": "guard.scanFile" },
|
|||
|
|
{ "command": "guard.setApiKeys" },
|
|||
|
|
{ "command": "guard.clearDiagnostics" }
|
|||
|
|
]
|
|||
|
|
},
|
|||
|
|
"configuration": {
|
|||
|
|
"title": "Guard",
|
|||
|
|
"properties": {
|
|||
|
|
"guard.excludeDirs": {
|
|||
|
|
"type": "array",
|
|||
|
|
"default": ["node_modules", ".next", ".git", "dist", "build", "out", ".turbo", ".cache", "coverage", "__pycache__", ".venv", "venv"],
|
|||
|
|
"description": "スキャンから除外するディレクトリ名"
|
|||
|
|
},
|
|||
|
|
"guard.maxFiles": {
|
|||
|
|
"type": "number",
|
|||
|
|
"default": 80,
|
|||
|
|
"description": "一度にスキャンする最大ファイル数"
|
|||
|
|
},
|
|||
|
|
"guard.model": {
|
|||
|
|
"type": "string",
|
|||
|
|
"enum": ["gemini", "claude", "both"],
|
|||
|
|
"default": "gemini",
|
|||
|
|
"description": "使用するAIモデル(bothは両方使って精度向上)"
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
},
|
|||
|
|
"scripts": {
|
|||
|
|
"build": "esbuild src/extension.ts --bundle --outfile=dist/extension.js --external:vscode --platform=node --target=node18 --sourcemap",
|
|||
|
|
"watch": "npm run build -- --watch",
|
|||
|
|
"package": "vsce package --no-dependencies",
|
|||
|
|
"vscode:prepublish": "npm run build -- --minify"
|
|||
|
|
},
|
|||
|
|
"devDependencies": {
|
|||
|
|
"@types/node": "^18",
|
|||
|
|
"@types/vscode": "^1.85.0",
|
|||
|
|
"@vscode/vsce": "^2.24.0",
|
|||
|
|
"esbuild": "^0.20.0",
|
|||
|
|
"typescript": "^5"
|
|||
|
|
}
|
|||
|
|
}
|