Skip to content

Commit 3e0930f

Browse files
authored
Reorganize documentation as self-contained markdown (no GitHub Pages) (#42)
* feat: Updates Docs
1 parent 8553e81 commit 3e0930f

44 files changed

Lines changed: 4869 additions & 1300 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/scan-skills.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -187,7 +187,7 @@ jobs:
187187
188188
- name: Upload SARIF to Code Scanning
189189
if: inputs.upload_sarif && inputs.format == 'sarif' && hashFiles('results.sarif') != ''
190-
uses: github/codeql-action/upload-sarif@v3
190+
uses: github/codeql-action/upload-sarif@v4
191191
with:
192192
sarif_file: results.sarif
193193

README.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ Skill Scanner is a detection tool. It identifies known and probable risk pattern
3737

3838
- **No findings ≠ no risk.** A scan that returns "No findings" indicates that no known threat patterns were detected. It does not guarantee that a skill is secure, benign, or free of vulnerabilities.
3939
- **Coverage is inherently incomplete.** The scanner combines signature-based detection, LLM-based semantic analysis, behavioral dataflow analysis, optional cloud services, and configurable rule packs. While this approach improve coverage, no automated tool can detect every technique, especially novel or zero-day attacks.
40-
- **False positives and false negatives can occur.** Consensus modes and meta-analysis reduce noise, but no configuration eliminates all incorrect classifications. Tune the [scan policy](docs/scan-policy.md) to your risk tolerance.
40+
- **False positives and false negatives can occur.** Consensus modes and meta-analysis reduce noise, but no configuration eliminates all incorrect classifications. Tune the [scan policy](docs/user-guide/custom-policy-configuration.md) to your risk tolerance.
4141
- **Human review remains essential.** Automated scanning is one component of a defense-in-depth strategy. High-risk or production deployments should pair scanner results with manual code review and/or threat modeling.
4242

4343
---
@@ -46,18 +46,18 @@ Skill Scanner is a detection tool. It identifies known and probable risk pattern
4646

4747
| Guide | Description |
4848
|-------|-------------|
49-
| [Quick Start](docs/quickstart.md) | Get started in 5 minutes |
50-
| [Architecture](docs/architecture.md) | System design and components |
51-
| [Threat Taxonomy](docs/threat-taxonomy.md) | Complete AITech threat taxonomy with examples |
52-
| [LLM Analyzer](docs/llm-analyzer.md) | LLM configuration and usage |
53-
| [Meta-Analyzer](docs/meta-analyzer.md) | False positive filtering and prioritization |
54-
| [Behavioral Analyzer](docs/behavioral-analyzer.md) | Dataflow analysis details |
55-
| [Scan Policy](docs/scan-policy.md) | Custom policies, presets, and tuning guide |
56-
| [Policy Quick Reference](docs/POLICY.md) | Compact reference for policy sections and knobs |
57-
| [Rule Authoring](docs/AUTHORING.md) | How to add signature, YARA, and Python rules |
49+
| [Quick Start](docs/getting-started/quick-start.md) | Get started in 5 minutes |
50+
| [Architecture](docs/architecture/index.md) | System design and components |
51+
| [Threat Taxonomy](docs/architecture/threat-taxonomy.md) | Complete AITech threat taxonomy with examples |
52+
| [LLM Analyzer](docs/architecture/analyzers/llm-analyzer.md) | LLM configuration and usage |
53+
| [Meta-Analyzer](docs/architecture/analyzers/meta-analyzer.md) | False positive filtering and prioritization |
54+
| [Behavioral Analyzer](docs/architecture/analyzers/behavioral-analyzer.md) | Dataflow analysis details |
55+
| [Scan Policy](docs/user-guide/custom-policy-configuration.md) | Custom policies, presets, and tuning guide |
56+
| [Policy Quick Reference](docs/reference/policy-quick-reference.md) | Compact reference for policy sections and knobs |
57+
| [Rule Authoring](docs/architecture/analyzers/writing-custom-rules.md) | How to add signature, YARA, and Python rules |
5858
| [GitHub Actions](docs/github-actions.md) | Reusable workflow for CI/CD integration |
59-
| [API Reference](docs/api-server.md) | REST API documentation |
60-
| [Development Guide](docs/developing.md) | Contributing and development setup |
59+
| [API Reference](docs/user-guide/api-server.md) | REST API documentation |
60+
| [Development Guide](docs/development/setup-and-testing.md) | Contributing and development setup |
6161

6262
---
6363

@@ -180,7 +180,7 @@ skill-scanner configure-policy
180180
```
181181

182182
**LLM provider note:** `--llm-provider` currently accepts `anthropic` or `openai`.
183-
For Bedrock, Vertex, Azure, Gemini, and other LiteLLM backends, set provider-specific model strings and environment variables (see `docs/llm-analyzer.md`).
183+
For Bedrock, Vertex, Azure, Gemini, and other LiteLLM backends, set provider-specific model strings and environment variables (see [LLM Analyzer docs](docs/architecture/analyzers/llm-analyzer.md)).
184184

185185
### Python SDK
186186

docs/README.md

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
# Skill Scanner Documentation
2+
3+
Security scanning for AI agent skills. Detects prompt injection, data exfiltration, and malicious code patterns with multi-engine analysis.
4+
5+
## Getting Started
6+
7+
- [Quick Start](getting-started/quick-start.md) -- Install, configure, and run your first scan
8+
9+
## Architecture
10+
11+
- [Overview](architecture/index.md) -- System design, scanning pipeline, and risk model
12+
- [Scanning Pipeline](architecture/scanning-pipeline.md) -- How files flow through the analysis stages
13+
- [Threat Taxonomy](architecture/threat-taxonomy.md) -- AITech threat taxonomy with examples
14+
- [Binary Handling](architecture/binary-handling.md) -- How compiled and binary files are processed
15+
16+
### Analyzers
17+
18+
- [Analyzer Overview](architecture/analyzers/index.md) -- Summary of all available analyzers
19+
- [Static Analyzer](architecture/analyzers/static-analyzer.md) -- YAML + YARA pattern matching
20+
- [Behavioral Analyzer](architecture/analyzers/behavioral-analyzer.md) -- AST dataflow analysis
21+
- [LLM Analyzer](architecture/analyzers/llm-analyzer.md) -- LLM-as-a-judge semantic analysis
22+
- [Meta-Analyzer](architecture/analyzers/meta-analyzer.md) -- False positive filtering and prioritization
23+
- [Meta & External Analyzers](architecture/analyzers/meta-and-external-analyzers.md) -- AI Defense, VirusTotal, and meta-analysis
24+
- [AI Defense Analyzer](architecture/analyzers/aidefense-analyzer.md) -- Cisco AI Defense cloud analyzer
25+
- [Writing Custom Rules](architecture/analyzers/writing-custom-rules.md) -- Author YAML signatures, YARA rules, and Python checks
26+
27+
## Concepts
28+
29+
- [Security Model](concepts/security-model.md) -- Threat model and security assumptions
30+
- [Remote Skills Analysis](concepts/remote-skills-analysis.md) -- Scanning skills fetched from remote sources
31+
32+
## Features
33+
34+
- [Feature Overview](features/index.md) -- All scanner capabilities at a glance
35+
36+
## User Guide
37+
38+
- [User Guide Overview](user-guide/index.md) -- Getting the most out of Skill Scanner
39+
- [Installation & Configuration](user-guide/installation-and-configuration.md) -- Setup and environment
40+
- [CLI Usage](user-guide/cli-usage.md) -- Command-line interface
41+
- [Python SDK](user-guide/python-sdk.md) -- Programmatic scanning
42+
- [API Server](user-guide/api-server.md) -- REST API server
43+
- [API Operations](user-guide/api-operations.md) -- API usage patterns
44+
- [API Endpoints Detail](user-guide/api-endpoints-detail.md) -- Endpoint reference
45+
- [API Rationale](user-guide/api-rationale.md) -- Design decisions behind the API
46+
- [Scan Policies Overview](user-guide/scan-policies-overview.md) -- Policy presets and tuning
47+
- [Custom Policy Configuration](user-guide/custom-policy-configuration.md) -- Writing your own policy YAML
48+
49+
## Guides
50+
51+
- [Examples & How-To](guides/examples-and-how-to.md) -- Common workflows and recipes
52+
53+
## Reference
54+
55+
- [Reference Overview](reference/index.md) -- Quick links to all reference material
56+
- [CLI Command Reference](reference/cli-command-reference.md) -- All commands and options
57+
- [API Endpoint Reference](reference/api-endpoint-reference.md) -- REST API endpoints
58+
- [Configuration Reference](reference/configuration-reference.md) -- Environment variables and config
59+
- [Output Formats](reference/output-formats.md) -- JSON, SARIF, Markdown, HTML, and table formats
60+
- [Policy Quick Reference](reference/policy-quick-reference.md) -- Compact policy section and knob reference
61+
- [Dependencies & LLM Providers](reference/dependencies-and-llm-providers.md) -- Supported providers and extras
62+
63+
## Development
64+
65+
- [Development Overview](development/index.md) -- Contributing to Skill Scanner
66+
- [Setup & Testing](development/setup-and-testing.md) -- Dev environment and test suite
67+
- [Integrations](development/integrations.md) -- CI/CD, GitHub Code Scanning, and more

0 commit comments

Comments
 (0)