{"id":"7e422d22-1cd9-4a7e-bd70-703901e9927e","slug":"clawhub-occupythemilkyway-argus-lite","name":"Argus Lite — Code Scanner (Free)","description":"Argus Lite â Code Scanner (Free). Scan a single Python file for the top 10 most critical security and bug patterns. A free preview of what Argus Pro does f...","canonicalUrl":"https://www.xpersona.co/agent/clawhub-occupythemilkyway-argus-lite","sourceUrl":"https://clawhub.ai/occupythemilkyway/argus-lite","homepage":"https://clawhub.ai/occupythemilkyway/skills/argus-lite","source":"CLAWHUB","vendor":{"slug":"clawhub","label":"Clawhub","url":"https://clawhub.ai/occupythemilkyway/skills/argus-lite"},"protocols":["OPENCLEW"],"capabilities":[],"trustScore":null,"trustConfidence":"unknown","artifactCount":0,"benchmarkCount":0,"lastRelease":"1.0.4","freshnessAt":"2026-10-11T16:03:25.651Z","freshnessLabel":"Oct 11, 2026","securityReviewed":true,"openapiReady":false,"stats":[{"label":"Trust score","value":"Unknown"},{"label":"Compatibility","value":"OpenClaw"},{"label":"Freshness","value":"Oct 11, 2026"},{"label":"Vendor","value":"Clawhub"},{"label":"Artifacts","value":"0"},{"label":"Benchmarks","value":"0"},{"label":"Last release","value":"1.0.4"}],"factsPreview":[{"factKey":"vendor","category":"vendor","label":"Vendor","value":"Clawhub","href":"https://clawhub.ai/occupythemilkyway/skills/argus-lite","sourceUrl":"https://clawhub.ai/occupythemilkyway/skills/argus-lite","sourceType":"profile","confidence":"medium","observedAt":"2026-10-11T16:03:25.664Z","isPublic":true},{"factKey":"protocols","category":"compatibility","label":"Protocol compatibility","value":"OpenClaw","href":"https://www.xpersona.co/api/v1/agents/clawhub-occupythemilkyway-argus-lite/contract","sourceUrl":"https://www.xpersona.co/api/v1/agents/clawhub-occupythemilkyway-argus-lite/contract","sourceType":"contract","confidence":"medium","observedAt":"2026-10-11T16:03:25.664Z","isPublic":true},{"factKey":"traction","category":"adoption","label":"Adoption signal","value":"1K downloads","href":"https://clawhub.ai/occupythemilkyway/argus-lite","sourceUrl":"https://clawhub.ai/occupythemilkyway/argus-lite","sourceType":"profile","confidence":"medium","observedAt":"2026-10-11T16:03:25.664Z","isPublic":true},{"factKey":"latest_release","category":"release","label":"Latest release","value":"1.0.4","href":"https://clawhub.ai/occupythemilkyway/argus-lite","sourceUrl":"https://clawhub.ai/occupythemilkyway/argus-lite","sourceType":"release","confidence":"medium","observedAt":"2026-05-24T04:32:18.929Z","isPublic":true},{"factKey":"handshake_status","category":"security","label":"Handshake status","value":"UNKNOWN","href":"https://www.xpersona.co/api/v1/agents/clawhub-occupythemilkyway-argus-lite/trust","sourceUrl":"https://www.xpersona.co/api/v1/agents/clawhub-occupythemilkyway-argus-lite/trust","sourceType":"trust","confidence":"medium","observedAt":null,"isPublic":true}],"highlights":["1K downloads","Trust evidence available"],"agentCard":{"name":"Argus Lite — Code Scanner (Free)","description":"Argus Lite â Code Scanner (Free). Scan a single Python file for the top 10 most critical security and bug patterns. A free preview of what Argus Pro does f...","source":"CLAWHUB","sourceId":"clawhub:s1757zbbgb226m951fdfmj4s6s860nkn:argus-lite","homepage":"https://clawhub.ai/occupythemilkyway/skills/argus-lite","repository":"https://clawhub.ai/occupythemilkyway/argus-lite","documentation":"https://www.xpersona.co/agent/clawhub-occupythemilkyway-argus-lite","protocols":["OPENCLEW"],"examples":[{"kind":"example","language":"bash","snippet":"pip3 install rich --break-system-packages --quiet"},{"kind":"example","language":"python","snippet":"import os, re\nfrom pathlib import Path\nfrom rich.console import Console\nfrom rich.table import Table\nfrom rich.panel import Panel\nfrom rich import box\n\nconsole = Console()\n\nSRC_PATH = os.environ.get(\"SOURCE_PATH\",\".\").strip()\nsrc      = Path(SRC_PATH)\n\n# Find a single Python file to scan\nif src.is_dir():\n    py_files = list(src.rglob(\"*.py\"))\n    if not py_files:\n        console.print(f\"[yellow]No .py files found in {SRC_PATH}[/yellow]\")\n        raise SystemExit(0)\n    target = py_files[0]\n    if len(py_files) > 1:\n        console.print(f\"[yellow]â¹ï¸  Lite scans 1 file at a time. Scanning: {target}\\n   (Upgrade to Pro to scan all {len(py_files)} files)[/yellow]\\n\")\nelif src.is_file():\n    target = src\nelse:\n    console.print(f\"[red]â Not found: {SRC_PATH}[/red]\")\n    raise SystemExit(1)\n\n# Top 10 critical/high rules only (Lite)\nRULES = [\n    (\"PY001\",\"critical\",\"security\", r\"\\beval\\s*\\(\",                           \"eval() executes arbitrary code â critical risk.\",         \"Use ast.literal_eval() for safe evaluation.\"),\n    (\"PY002\",\"critical\",\"security\", r\"\\bexec\\s*\\(\",                           \"exec() executes arbitrary strings as Python code.\",       \"Refactor to eliminate dynamic execution.\"),\n    (\"PY003\",\"critical\",\"security\", r\"\\bpickle\\.loads?\\s*\\(\",                 \"pickle.load() with untrusted data â code execution.\",     \"Use json.loads() instead.\"),\n    (\"PY004\",\"high\",\"security\",     r\"(?i)(password|secret|api_key|token)\\s*=\\s*['\\\"].+['\\\"]\",\"Hardcoded credential detected.\",          \"Move to environment variables.\"),\n    (\"PY005\",\"high\",\"security\",     r\"shell\\s*=\\s*True\",                      \"shell=True in subprocess â command injection risk.\",      \"Use list arguments: subprocess.run(['cmd','arg'])\"),\n    (\"PY006\",\"high\",\"security\",     r\"\\.execute\\s*\\(.*(%|\\.format\\(|f['\\\"])\", \"Potential SQL injection via string formatting.\",          \"Use parameterised queries: cursor.execute(sql,(val,))\"),\n    (\"PY009\",\"medium\",\"bug\",        r\"except\\s*"}]}}