Skip to content

Configuration

Configuration

Skrypt reads configuration from a .skrypt.yaml file in your project root. You can also pass options via CLI flags — flags override config file values.

Minimal config

version: 1

source:
  path: ./src

output:
  path: ./docs
  format: mdx

llm:
  model: claude-sonnet-4-6
YAML

Full reference

source

Defines where Skrypt scans for code.

source:
  path: ./src
  include:
    - "**/*.ts"
    - "**/*.py"
    - "**/*.go"
  exclude:
    - "**/node_modules/**"
    - "**/__pycache__/**"
    - "**/dist/**"
    - "**/vendor/**"
YAML
FieldTypeDefaultDescription
pathstring./srcRoot directory to scan
includestring[]All supported extensionsGlob patterns for files to include
excludestring[]Common build directoriesGlob patterns for files to skip

Supported languages: TypeScript, JavaScript, Python, Go, Rust, Java, Kotlin, Swift, PHP, C#, Ruby.

Multi-source (v2)

Scan multiple directories or repositories:

version: 2

sources:
  - path: ./packages/core
    label: Core
    include: ["**/*.ts"]
  - path: ./packages/api
    label: API
    include: ["**/*.ts"]
  - path: ./sdk/python
    label: Python SDK
    include: ["**/*.py"]
YAML

Or via CLI with the dir:Label syntax:

Terminal
skrypt generate ./packages/core:Core ./packages/api:API ./sdk/python:"Python SDK"

output

Controls where and how documentation is written.

output:
  path: ./docs
  format: mdx  # "markdown" or "mdx"
YAML
FieldTypeDefaultDescription
pathstring./docsOutput directory for generated docs
formatstringmarkdownOutput format: markdown or mdx

llm

Configures the LLM model used for documentation generation.

llm:
  model: claude-sonnet-4-6
YAML
FieldTypeDefaultDescription
modelstringclaude-sonnet-4-6Model to use (all calls go through Skrypt's proxy)

license

Optional license identifier included in generated docs.

license: MIT
YAML

CLI flags

CLI flags override config file values:

Terminal
skrypt generate ./src \
  --output ./docs \
  --model claude-sonnet-4-6 \
  --public-only \
  --by-topic \
  --multi-lang \
  --llms-txt \
  --project-name "My Project"

.skryptignore

Create a .skryptignore file (same syntax as .gitignore) to exclude files from scanning:

# Skip test files
**/*.test.ts
**/*.spec.ts

# Skip generated code
**/generated/**

# Skip specific directories
internal/
scripts/

Environment variables

VariablePurpose
SKRYPT_API_KEYSkrypt API key (from skrypt login or dashboard)
Was this helpful?