{"id":23060,"library":"cycode","title":"Cycode CLI","description":"Cycode CLI (v3.15.0) is a security scanning tool for SAST, SCA, Secrets, and IaC scanning, integrating into developer workflows via CLI or CI/CD. It requires Python >=3.9 and is actively maintained with frequent releases.","status":"active","version":"3.15.0","language":"python","source_language":"en","source_url":"https://github.com/cycodehq/cycode-cli","tags":["security","devsecops","sast","sca","secrets","iac","cli"],"install":[{"cmd":"pip install cycode","lang":"bash","label":"Install Cycode CLI from PyPI"}],"dependencies":[{"reason":"Used for Git operations","package":"gitpython","optional":true},{"reason":"JWT token handling","package":"pyjwt","optional":false},{"reason":"Syntax highlighting in output","package":"pygments","optional":true}],"imports":[{"wrong":"from cycode.cli.client import CycodeClient","symbol":"CycodeClient","correct":"from cycode import CycodeClient"}],"quickstart":{"code":"import os\nfrom cycode.cli.client import CycodeClient\n\nclient = CycodeClient(\n    client_id=os.environ.get('CYCODE_CLIENT_ID', ''),\n    client_secret=os.environ.get('CYCODE_CLIENT_SECRET', '')\n)\n# Example: scan a file (requires auth)\nresult = client.scan_file(path='main.py')\nprint(result)","lang":"python","description":"Initialize the Cycode client with environment variables and perform a scan."},"warnings":[{"fix":"Review your usage of Cycode API endpoints; migrate to v4 endpoints as documented in the changelog.","message":"In v3.14.0, Cycode API v4 was exposed through CLI commands. API v3 endpoints may be deprecated. Update any custom integrations.","severity":"breaking","affected_versions":">=3.14.0"},{"fix":"Set environment variables: export CYCODE_CLIENT_ID='your_id' CYCODE_CLIENT_SECRET='your_secret'","message":"The CLI must be authenticated before scanning. Many users forget to set CYCODE_CLIENT_ID and CYCODE_CLIENT_SECRET environment variables.","severity":"gotcha","affected_versions":"all"},{"fix":"Add --stop-on-error flag to cycode scan commands to stop file collection on errors.","message":"Scanning large repositories may slow down due to file collection and upload. Use --stop-on-error flag to handle scan errors gracefully.","severity":"gotcha","affected_versions":">=3.12.1"}],"env_vars":null,"search_vec":"'3.9':29 'activ':32 'ci/cd':25 'cli':2,4,23,43 'cycod':1,3 'develop':20 'devsecop':38 'frequent':35 'iac':16,42 'integr':18 'maintain':33 'python':28 'releas':36 'requir':27 'sast':12,39 'sca':13,40 'scan':9,17 'secret':14,41 'secur':8,37 'tool':10 'v3.15.0':5 'via':22 'workflow':21","created_at":"2026-05-01T06:02:13.492826+00:00","updated_at":"2026-05-01T06:02:13.492826+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\nImportError: cannot import name 'CycodeClient' from 'cycode' (/tmp/tmpl35_5ht3/venv/lib/python3.12/site-packages/cycode/__init__.py)"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"3.16.2","cli_name":"cycode","cli_version":"Usage: cycode [OPTIONS] COMMAND [ARGS]...","type":"library","homepage":"https://cycode.com","github":"https://github.com/cycodehq/cycode-cli","docs":null,"changelog":null,"pypi":"https://pypi.org/project/cycode/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops","testing"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"import_fail","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-07-10","install_tag":null}}