Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.sigilix.ai/llms.txt

Use this file to discover all available pages before exploring further.

Sigilix reads sigilix.yaml from the root of the repository on every review. If absent, defaults apply. This page documents the full schema.

Minimal example

# sigilix.yaml — minimal configuration
specialists:
  spark: false   # Skip the performance specialist on this repo

ignore:
  paths:
    - "dist/**"
    - "node_modules/**"
    - "**/*.generated.ts"

Full schema

# Specialists — enable or disable individual specialists.
# Default: all four enabled. Core (synthesizer) is always on.
specialists:
  glyph: true       # Architecture
  warden: true      # Security
  spark: true       # Performance
  weave: true       # Semantics

# Severity thresholds — see /how-it-works/confidence-scoring.
thresholds:
  critical_min_score: 5
  warning_min_score: 4
  info_min_score: 2
  score1_cap: 5             # Max score-1 nits aggregated in summary
  block_merge_at: critical  # Verdict cutoff: critical | warning | none

# Ignore — paths and patterns to skip.
ignore:
  paths:
    - "dist/**"
    - "node_modules/**"
    - "vendor/**"
    - "**/*.generated.*"
    - "**/__snapshots__/**"
    - "package-lock.json"
    - "yarn.lock"
    - "pnpm-lock.yaml"
    - "Cargo.lock"
  # Patterns within files (regex on each line)
  patterns:
    - "// sigilix-ignore"  # Lines marked with this comment are skipped

# Review — how Sigilix posts.
review:
  comment_style: greptile     # greptile | minimal | verbose
  show_advisory_nits: true    # Show the "Advisory nits" line in the summary
  show_specialist_attribution: true  # Each finding shows [Glyph], [Warden], etc.
  approve_when_clean: true    # Submit APPROVE when no blocking findings
  request_changes_when_blocking: true  # Submit REQUEST_CHANGES when a blocker exists

# Mentions — @sigilix behavior.
mentions:
  enabled: true
  reply_in_thread: true      # Reply within the comment thread vs. top-level

# Rate limits — per-tier defaults; can be overridden if your plan allows.
rate_limit:
  window_hours: 5
  max_reviews: 4              # Free tier default; Pro is 8-10, Max is 15-20

# Custom rules — team-specific heuristics injected into specialist prompts.
custom_rules:
  glyph:
    - "Domain code in `src/domain/` may not import from `src/infra/`."
    - "Repository pattern: data access lives only in `src/repositories/`."
  warden:
    - "All routes accepting POST/PUT/DELETE must use requireCsrf middleware."
  spark: []
  weave:
    - "Function names with side effects must include a verb describing the side effect."

Per-section reference

specialists

Enable or disable individual specialists. All default to true.
specialists:
  glyph: true
  warden: true
  spark: false   # Disable performance specialist
  weave: true
Disabling a specialist saves a model call per review. Note: disabling Warden on a security-sensitive codebase isn’t recommended — see the Ensemble for why redundant coverage matters.

thresholds

Tune what counts as Critical / Warning / Info. See Confidence Scoring for the score-to-severity mapping.
thresholds:
  critical_min_score: 5    # Only score-5 findings block merge
  warning_min_score: 4
  info_min_score: 2
  score1_cap: 5            # Aggregate up to 5 nits in summary
  block_merge_at: critical  # critical | warning | none
block_merge_at: warning means score-4 findings will also REQUEST_CHANGES — useful for high-bar codebases. block_merge_at: none means Sigilix never blocks merge — only ever submits APPROVE or COMMENT.

ignore.paths

Glob patterns relative to the repo root. Files matching are skipped before specialists run. Defaults already include node_modules/**, common build outputs, and lockfiles. Add team-specific patterns here.

ignore.patterns

Lines matching these regex patterns are skipped during specialist analysis. Useful for marking specific lines as “Sigilix-suppressed”:
ignore:
  patterns:
    - "// sigilix-ignore"
    - "# noqa: sigilix"
A line containing // sigilix-ignore won’t be flagged by any specialist.

review

Controls how the review is posted to GitHub. comment_style: greptile is the default. Each inline finding leads with **category:** (e.g., **security:**). Other options:
  • minimal — no category prefix
  • verbose — includes severity badge + category prefix

mentions

Whether Sigilix responds to @sigilix mentions on PR comments. If false, mentions are ignored.

rate_limit

Per-tier defaults are set by your plan and can’t be exceeded. You can lower the limit (e.g., for a low-traffic repo) but not raise it above your tier.

custom_rules

Team-specific heuristics injected into the relevant specialist’s system prompt. Each rule is a single sentence describing the rule. Custom rules are applied additively to Sigilix’s default checks — they don’t replace them.

Validation

Sigilix validates sigilix.yaml on every review. If the file has invalid syntax or unknown keys, the review proceeds with defaults and logs a warning in the summary footer:
_⚠️ sigilix.yaml validation: unknown key `specialist` (did you mean `specialists`?)._
A standalone config linter (sigilix lint) ships with the public CLI later in 2026 — until then Sigilix’s per-review validation is the source of truth.

Ignore Patterns

Deeper guide on what to ignore and why.

Custom Rules

How to write effective team-specific heuristics.