VulnCheck 오프라인은 API나 인터넷 연결 없이도 다양한 CLI 명령을 실행할 수 있도록 합니다.
이 기능은 조회 성능을 크게 향상시키며 제한적 또는 오프라인 환경에서도 사용할 수 있습니다.
오프라인을 사용하려면 로컬에서 사용할 인덱스를 동기화해야 합니다.
이는 offline sync 명령어로 수행됩니다.
처음으로 vulncheck offline sync를 매개변수 없이 실행하면, 어떤 인덱스를 캐시할지 선택할 수 있는 대화형 프롬프트가 나타납니다.
x 또는 space로 인덱스를 선택할 수 있으며, /로 특정 인덱스를 검색할 수 있습니다.인덱스를 동기화한 후에는 지원되는 모든 명령을 실행할 수 있습니다.
현재 지원되는 명령어 목록은 vulncheck offline을 실행하면 확인할 수 있습니다.
예: SBOM 스캔 실행 → vulncheck scan --offline
인덱스를 선택하고 동기화한 이후, vulncheck offline sync는 오래된 인덱스를 업데이트합니다.
vulncheck offline sync 실행을 권장합니다.vulncheck offline status 명령은 어떤 인덱스가 동기화되었는지와 마지막 업데이트 시간을 시각적으로 보여줍니다.필요한 인덱스를 잘 모르겠다면, 오프라인 명령을 실행하세요. CLI가 필요한 인덱스를 알려주거나 에러 메시지로 알려줍니다.
인덱스를 관리하는 여러 명령이 있습니다:
vulncheck offline sync --choose → 대화형 모드로 돌아가기vulncheck offline sync --purge → 로컬 캐시에서 모든 인덱스를 제거vulncheck offline sync --add index1,index2 → 특정 인덱스를 프롬프트 없이 추가가능합니다. vulncheck 1.0.0부터 offline sync와 offline status는 전역 --json 플래그를 지원하며 --no-interactive를 준수합니다. --json 모드에서는 taskin 진행 UI가 억제되고 sync는 stdout에 구조화된 요약을 출력합니다:
vulncheck offline sync --add vulncheck-nvd2,vulncheck-kev --json --no-interactive
# {"schema_version": 1, "action": "sync", "selected": ["vulncheck-nvd2","vulncheck-kev"], "elapsed_seconds": 47.3}
vulncheck offline status --json
# [{"name": "vulncheck-nvd2", ...}, ...]
--no-interactive 상태에서 --add / --remove / --purge 없이 실행하면 다중 선택 프롬프트를 실행하지 않고 종료 코드 2로 실패합니다.