Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/NVIDIA/SkillSpector
/ types & classes
Types & classes
379 in github.com/NVIDIA/SkillSpector
⨍
Functions
2,044
◇
Types & classes
379
↳
Endpoints
141
↓ 81 callers
Class
Finding
Finding model for graph state and report output (shape aligned with to_dict).
src/skillspector/models.py:65
↓ 75 callers
Class
Batch
One unit of work for an LLM call (single file or file-chunk).
src/skillspector/llm_analyzer_base.py:128
↓ 61 callers
Class
AnalyzerFinding
Common finding type produced by any analyzer (static, behavioral, MCP, semantic). Converted to Finding for graph state; use severity, locatio
src/skillspector/models.py:47
↓ 45 callers
Class
LLMAnalysisResult
Structured LLM response containing discovered findings.
src/skillspector/llm_analyzer_base.py:111
↓ 38 callers
Class
LLMFinding
A single finding discovered by an LLM analyzer. Field names intentionally mirror :class:`~skillspector.models.Finding` so that :meth:`to_find
src/skillspector/llm_analyzer_base.py:55
↓ 38 callers
Class
LLMMetaAnalyzer
Per-file LLM filter/enrichment of static findings. Uses :class:`MetaAnalyzerResult` as the structured output schema so the LLM response is va
src/skillspector/nodes/meta_analyzer.py:314
↓ 36 callers
Class
LLMAnalyzerBase
Per-file / per-chunk LLM analyzer. Subclass, supply an ``analyzer_prompt`` string, and optionally override :meth:`build_prompt` / :meth:`pars
src/skillspector/llm_analyzer_base.py:252
↓ 31 callers
Class
Location
Location of a finding within a file (used by all analyzers).
src/skillspector/models.py:38
↓ 27 callers
Class
InputHandler
Handles input resolution for different source types. Normalizes all inputs to a local directory path for scanning.
src/skillspector/input_handler.py:84
↓ 16 callers
Class
BedrockProvider
AWS Bedrock provider — SigV4 auth via boto3, bundled-YAML metadata.
src/skillspector/providers/bedrock/provider.py:58
↓ 15 callers
Class
MetaAnalyzerFinding
A single finding evaluated by the meta-analyzer LLM (filter/enrich mode).
src/skillspector/nodes/meta_analyzer.py:52
↓ 15 callers
Class
SuppressionRule
A glob-based suppression rule. Empty rules (no field set) never match.
src/skillspector/suppression.py:107
↓ 14 callers
Class
AgentCLIError
Raised when an agent CLI call fails for any reason (fail-closed).
src/skillspector/providers/_agent_cli.py:104
↓ 14 callers
Class
NvBuildProvider
build.nvidia.com credentials + bundled-YAML metadata provider.
src/skillspector/providers/nv_build/provider.py:38
↓ 13 callers
Class
Baseline
Loaded baseline: glob rules plus exact fingerprint suppressions.
src/skillspector/suppression.py:144
↓ 13 callers
Class
GapFillAnalyzer
LLM analyzer covering the 8 gap-fill rules for non-English skills. Extends :class:`~skillspector.llm_analyzer_base.LLMAnalyzerBase` with a la
contrib/multilingual/gap_fill.py:156
↓ 13 callers
Class
OpenAIProvider
Stock OpenAI credentials + bundled-YAML metadata provider.
src/skillspector/providers/openai/provider.py:46
↓ 12 callers
Class
AnthropicProxyProvider
Anthropic proxy provider for Vertex-style raw-predict endpoints.
src/skillspector/providers/anthropic_proxy/provider.py:206
↓ 10 callers
Class
AnthropicProvider
Anthropic credentials + bundled-YAML metadata provider.
src/skillspector/providers/anthropic/provider.py:42
↓ 8 callers
Class
ClaudeCLIProvider
Claude CLI provider (no API key; uses the local ``claude`` login). No model is pinned: ``claude`` runs with the user's own default model and
src/skillspector/providers/claude_cli/provider.py:36
↓ 7 callers
Class
CodexCLIProvider
Codex CLI provider (no API key; uses the local ``codex`` login). No model is pinned: ``codex`` runs with the account's own default model (som
src/skillspector/providers/codex_cli/provider.py:37
↓ 7 callers
Class
MetaAnalyzerResult
Top-level structured response from the meta-analyzer LLM.
src/skillspector/nodes/meta_analyzer.py:97
↓ 5 callers
Class
MultiSkillDetectionResult
Result of scanning a directory for multiple skills.
src/skillspector/multi_skill.py:43
↓ 5 callers
Class
SarifMessage
SARIF message object (required: text).
src/skillspector/sarif_models.py:62
↓ 5 callers
Class
SkillDirectory
A detected skill within a multi-skill directory.
src/skillspector/multi_skill.py:34
↓ 4 callers
Class
AntigravityCLIProvider
Antigravity CLI provider (registered but disabled; fail-closed). ``agy`` cannot be captured from a pipe (TTY-only print mode) — see the module
src/skillspector/providers/antigravity_cli/provider.py:39
↓ 4 callers
Class
ApiKey
A single API key with concurrency and rate-limit metadata. Attributes ---------- key : API key string (e.g. ``"sk-or-xxx"``).
contrib/multilingual/api_pool.py:81
↓ 4 callers
Class
CliSpec
Everything provider-specific about one agent CLI, behind one lookup.
src/skillspector/providers/_agent_cli.py:558
↓ 4 callers
Class
PooledChatModel
LangChain-compatible chat model wrapper with transparent key switching. Each :meth:`invoke` / :meth:`ainvoke` call acquires a key from the pool,
contrib/multilingual/api_pool.py:397
↓ 4 callers
Class
VulnResult
A single vulnerability found for a package.
src/skillspector/nodes/analyzers/osv_client.py:61
↓ 4 callers
Class
_TempAttributeOverride
Context manager to temporarily replace / delete an attribute on an object. Usage:: with _TempAttributeOverride(LLMAnalysisResult, "model
contrib/multilingual/tests/test_monkeypatch_fragility.py:81
↓ 3 callers
Class
ApiKeyPool
Thread-safe pool of API keys with per-key concurrency slots. Each key has *max_concurrent* slots (default 5). :meth:`acquire` picks the leas
contrib/multilingual/api_pool.py:131
↓ 3 callers
Class
ProviderResult
Tiny schema used to validate provider structured-output wiring.
tests/provider/test_provider_endpoint.py:33
↓ 3 callers
Class
SarifArtifactLocation
Reference to an artifact (file) in the run.
src/skillspector/sarif_models.py:38
↓ 3 callers
Class
SarifLocation
Result location (physical and/or logical).
src/skillspector/sarif_models.py:54
↓ 3 callers
Class
SarifPhysicalLocation
Physical location (artifact + optional region).
src/skillspector/sarif_models.py:45
↓ 3 callers
Class
SarifRegion
Region within an artifact (line/column range).
src/skillspector/sarif_models.py:27
↓ 3 callers
Class
SarifResult
A single analysis result (finding).
src/skillspector/sarif_models.py:75
↓ 3 callers
Class
_FakeLLM
tests/unit/test_llm_utils.py:137
↓ 2 callers
Class
GapFillFinding
A single vulnerability finding from a gap-fill LLM call.
contrib/multilingual/gap_fill.py:55
↓ 2 callers
Class
SarifDriver
Tool driver (required: name; optional: version, rules).
src/skillspector/sarif_models.py:101
↓ 2 callers
Class
SarifLog
Top-level SARIF log (SARIF 2.1.0).
src/skillspector/sarif_models.py:162
↓ 2 callers
Class
SarifRun
A single run (one tool invocation).
src/skillspector/sarif_models.py:151
↓ 2 callers
Class
SarifTool
Tool that produced the run.
src/skillspector/sarif_models.py:109
↓ 2 callers
Class
_ProxyTransport
Sync httpx transport that rewrites Anthropic SDK requests for the proxy.
src/skillspector/providers/anthropic_proxy/provider.py:94
↓ 2 callers
Class
_RawTextAnalyzer
Test analyzer for raw-string mode.
tests/nodes/test_llm_analyzer_base.py:169
↓ 2 callers
Class
_TaintedVar
src/skillspector/nodes/analyzers/behavioral_taint_tracking.py:210
↓ 1 callers
Class
AgentCLIChatModel
Minimal ``ChatOpenAI``-compatible adapter backed by a CLI provider. Implements only the surface the analyzers use: ``invoke`` (returns an obj
src/skillspector/llm_utils.py:191
↓ 1 callers
Class
FakeMatch
tests/nodes/analyzers/test_static_yara.py:433
↓ 1 callers
Class
GapFillResult
Structured LLM response for the gap-fill analyzer.
contrib/multilingual/gap_fill.py:87
↓ 1 callers
Class
GeminiCLIProvider
Gemini CLI provider (no API key; uses the local ``gemini`` login).
src/skillspector/providers/gemini_cli/provider.py:33
↓ 1 callers
Class
SarifInvocation
Describes a single tool invocation (SARIF ``run.invocations[]``). ``executionSuccessful`` is required by the SARIF spec. SkillSpector keeps it
src/skillspector/sarif_models.py:134
↓ 1 callers
Class
SarifNotification
A notification about a condition encountered during tool execution. Used to surface a degraded LLM stage (requested but every call failed) in
src/skillspector/sarif_models.py:121
↓ 1 callers
Class
SarifReportingDescriptor
Rule metadata (SARIF reportingDescriptor).
src/skillspector/sarif_models.py:89
↓ 1 callers
Class
SarifSuppression
SARIF suppression object — marks a result as suppressed (e.g. via a baseline).
src/skillspector/sarif_models.py:68
↓ 1 callers
Class
SuppressedFinding
A finding paired with the reason it was suppressed.
src/skillspector/suppression.py:129
↓ 1 callers
Class
_AgentCLIMessage
Minimal stand-in for a LangChain message: exposes ``.content``.
src/skillspector/llm_utils.py:119
↓ 1 callers
Class
_CapturingTransport
tests/unit/test_anthropic_proxy_provider.py:145
↓ 1 callers
Class
_ChatAnthropicProxy
``ChatAnthropic`` subclass that routes requests through a custom proxy.
src/skillspector/providers/anthropic_proxy/provider.py:156
↓ 1 callers
Class
_FakePopen
Stand-in for ``subprocess.Popen`` that ``run_agent_cli``'s bounded reader (`_run_bounded`) can drive: stdin/stdout/stderr streams plus wait/kill.
tests/unit/test_agent_cli.py:80
↓ 1 callers
Class
_ProxyAsyncTransport
Async httpx transport that rewrites Anthropic SDK requests for the proxy.
src/skillspector/providers/anthropic_proxy/provider.py:120
↓ 1 callers
Class
_StructuredAgentCLIModel
Mimics ``ChatOpenAI.with_structured_output(schema)`` for a CLI provider. ``invoke`` augments the prompt with the schema, calls the provider's
src/skillspector/llm_utils.py:157
Class
AgentCLICapable
Optional extension for providers that drive a local agent CLI. Providers that implement these two methods opt in to the CLI transport path in
src/skillspector/providers/base.py:84
Class
AgentCLIProviderBase
Base for providers that drive a local agent CLI (no API key needed).
src/skillspector/providers/_agent_cli_base.py:33
Class
AnalyzerNodeResponse
Strict analyzer update payload for graph state.
src/skillspector/state.py:113
Class
AnalyzerPlugin
Analyzer plugin protocol: name/stage/availability and an ``analyze`` entry point.
src/skillspector/models.py:113
Class
ChatModelProvider
Anything that can construct its native LangChain chat model.
src/skillspector/providers/base.py:72
Class
CredentialsProvider
Anything that can supply ``(api_key, base_url)`` for the LLM client. Implementations return ``None`` when the relevant environment is not con
src/skillspector/providers/base.py:61
Class
FormatChoice
Output format choices for the CLI.
src/skillspector/cli.py:74
Class
LLMCallRecord
One LLM-stage telemetry record (an entry in ``llm_call_log``).
src/skillspector/state.py:94
Class
LLMProvider
Complete provider surface used by SkillSpector's LLM stack.
src/skillspector/providers/base.py:113
Class
MetaAnalyzerResponse
Strict meta-analyzer update payload for graph state.
src/skillspector/state.py:122
Class
ModelMetadataProvider
Provider-side knowledge about models — token budgets and defaults. ``get_context_length`` / ``get_max_output_tokens`` return ``None`` to sign
src/skillspector/providers/base.py:37
Class
OverallAssessment
Overall risk assessment for the analyzed file.
src/skillspector/nodes/meta_analyzer.py:90
Class
PatternCategory
Categories of vulnerability patterns.
src/skillspector/nodes/analyzers/pattern_defaults.py:24
Class
SarifArtifact
Artifact (file) analyzed in the run.
src/skillspector/sarif_models.py:115
Class
Severity
Severity levels for findings (used by all analyzers).
src/skillspector/models.py:28
Class
SkillspectorState
Graph state shared by all nodes.
src/skillspector/state.py:28
Class
TestARunBatches
tests/nodes/test_llm_analyzer_base.py:396
Class
TestAcquireRelease
#5: release(success=True) uses real flow, not manual state injection.
contrib/multilingual/tests/tests-pro/test_api_pool.py:71
Class
TestAcquireTimeout
#7: acquire(timeout=...) path — previously zero coverage.
contrib/multilingual/tests/tests-pro/test_api_pool.py:186
Class
TestAgentCliFullScan
End-to-end graph scan driven by a CLI provider (expensive; claude only). The graph integration path (``AgentCLIChatModel`` -> meta_analyzer) is
tests/integration/test_agent_cli_live.py:103
Class
TestAgentCliLive
Smoke tests that drive each real CLI through the hardened runner.
tests/integration/test_agent_cli_live.py:72
Class
TestAllowlistConfiguration
Allowlists contain expected hosts.
tests/unit/test_input_handler_ssrf.py:190
Class
TestAnalyzerRegistry
Registry matches the expected node set and order.
tests/nodes/analyzers/test_registry.py:51
Class
TestAnnotateFindings
#27: Coverage for the annotation layer Max praised.
contrib/multilingual/tests/tests-pro/test_annotation.py:47
Class
TestAnthropicProvider
Anthropic provider — Claude credentials + bundled YAML metadata.
tests/unit/test_providers.py:243
Class
TestAnthropicProxyProviderChatModel
Chat model creation tests.
tests/unit/test_anthropic_proxy_provider.py:74
Class
TestAnthropicProxyProviderCredentials
Credential resolution tests.
tests/unit/test_anthropic_proxy_provider.py:53
Class
TestAnthropicProxyProviderMetadata
Token-budget metadata and model resolution tests.
tests/unit/test_anthropic_proxy_provider.py:94
Class
TestAntiRefusalAR1
AR1: refusal suppression.
tests/nodes/analyzers/test_static_patterns_anti_refusal.py:35
Class
TestAntiRefusalAR2
AR2: disclaimer / caveat suppression.
tests/nodes/analyzers/test_static_patterns_anti_refusal.py:54
Class
TestAntiRefusalAR3
AR3: safety / policy nullification.
tests/nodes/analyzers/test_static_patterns_anti_refusal.py:66
Class
TestAntiRefusalKnownEvasions
Obfuscations a simple regex engine does not yet catch (under-detection).
tests/nodes/analyzers/test_static_patterns_anti_refusal.py:143
Class
TestAntiRefusalKnownFalsePositives
Benign prose that currently fires (over-detection).
tests/nodes/analyzers/test_static_patterns_anti_refusal.py:127
Class
TestAntiRefusalNode
The analyzer node runs over graph state and returns findings.
tests/nodes/analyzers/test_static_patterns_anti_refusal.py:106
Class
TestAntiRefusalSafeContent
Benign content must not trip the analyzer.
tests/nodes/analyzers/test_static_patterns_anti_refusal.py:83
Class
TestAntigravityCLIProvider
Antigravity CLI provider — registered but disabled; must fail closed.
tests/unit/test_providers.py:432
Class
TestAntigravityDisabled
`agy` is registered but disabled (TTY-only, uncapturable): fail closed.
tests/unit/test_agent_cli.py:703
Class
TestApiVersionConfiguration
Tests for ANTHROPIC_PROXY_API_VERSION env var.
tests/unit/test_anthropic_proxy_provider.py:215
next →
1–100 of 379, ranked by callers