Skip to content
workspaceguardrails
  • Home
  • Open Source[4]
  • System Policies[0]
  • Git Hooks[21]
  • Anti-Patterns[293]
  • Hook Configs[20]
  • Sandbox Configs[27]
  • Tools & Scripts[14]
  • AI Governance[20]
  • LLM Gateway
  • Static Analysis
  • Playground
  • Integration Guide
  1. Home
  2. Hook Configs
    The Digital and AI Workspace Guardrails Platform2026 ◆ Independent AI Labs
    Skip to content
    workspaceguardrails
    • Home
    • Open Source[4]
    • System Policies[0]
    • Git Hooks[21]
    • Anti-Patterns[293]
    • Hook Configs[20]
    • Sandbox Configs[27]
    • Tools & Scripts[14]
    • AI Governance[20]
    • LLM Gateway
    • Static Analysis
    • Playground
    • Integration Guide
    1. Home
    2. Hook Configs
      The Digital and AI Workspace Guardrails Platform2026 ◆ Independent AI Labs
      Skip to content
      workspaceguardrails
      • Home
      • Open Source[4]
      • System Policies[0]
      • Git Hooks[21]
      • Anti-Patterns[293]
      • Hook Configs[20]
      • Sandbox Configs[27]
      • Tools & Scripts[14]
      • AI Governance[20]
      • LLM Gateway
      • Static Analysis
      • Playground
      • Integration Guide
      1. Home
      2. Hook Configs

        Hook Configs

        YAML configuration files and their field-level documentation. Each config may have an associated schema that documents required and optional fields.

        20 of 20 configs

        banned_words

        Universal banned-pattern rules and exceptions; the single source of truth for content bans.

        Content Rules

        banned_words.yaml

        Universal banned-pattern rules and exceptions; the single source of truth for content bans.

        versionstringRequired

        Schema version of the banned-words config. Bumped when the YAML shape changes.

        Current: [HOVER TO SHOW VALUE]
        universal_exceptionslistOptional

        Path-scoped exemptions applied to every project. Each entry whitelists patterns under specific paths so legitimate uses are not flagged.

        Current: [HOVER TO SHOW VALUE]
        universal_exceptions[].pathslist<string>Required

        Glob/regex paths the exemption block applies to (e.g. 'tests/', '\.toml$').

        universal_exceptions[].patternslist<string>Required

        Banned patterns that are exempted under the matching paths.

        bannedlistOptional

        The universal banned-pattern list. Every entry is enforced across all projects unless covered by a universal or per-project exception.

        Current: [HOVER TO SHOW VALUE]
        banned[].patternstringRequired

        Regex pattern to match in file contents. Compiled by the banned-words scanner.

        banned[].reasonstringRequired

        Human-readable explanation of why the pattern is banned; surfaced to the developer on violation and rendered in the wiki pattern library.

        banned[].categorystringOptional

        Pattern category ID (e.g. 'linter-suppression', 'ai-slop'). Drives wiki categorization. See config/pattern_categories.yaml for the full list.

        directory_rulesmapOptional

        Per-directory pattern overrides. Each key is a directory name; the value is a list of {pattern, reason} entries scoped to that directory.

        Current: [HOVER TO SHOW VALUE]
        directory_rules.<dir>[]listOptional

        Banned-pattern entries scoped to the named directory (e.g. 'tests').

        directory_rules.<dir>[].patternstringRequired

        Regex pattern scoped to the directory.

        directory_rules.<dir>[].reasonstringRequired

        Reason the directory-scoped pattern is banned.

        filename_ruleslistOptional

        Patterns matched against file basenames rather than file contents. Catches versioned, backup, and temporary filenames.

        Current: [HOVER TO SHOW VALUE]
        filename_rules[].patternstringRequired

        Regex matched against the file basename (e.g. '_v[0-9]+').

        filename_rules[].reasonstringRequired

        Reason the filename pattern is banned.

        Share feedback

        You voted thumbs down

        blocked_commit_patterns

        Regex patterns blocked in commit messages; checked case-insensitively during commit-msg and pre-push stages.

        Content Rules

        blocked_commit_patterns.yaml

        Regex patterns blocked in commit messages; checked case-insensitively during commit-msg and pre-push stages.

        blockedlistRequired

        List of blocked regex patterns and their reasons. Each entry is checked case-insensitively against the full commit message body.

        Current: [HOVER TO SHOW VALUE]
        blocked[].patternstringRequired

        Regex pattern matched against the commit message. Examples include co-author attribution lines and AI-generated attribution strings.

        blocked[].reasonstringRequired

        Human-readable explanation of why the pattern is blocked; surfaced to the developer on violation.

        Share feedback

        You voted thumbs down

        coverage_thresholds

        Test coverage thresholds per test suite type; enforced by the coverage devolution checker to prevent regression.

        Quality Gates

        coverage_thresholds.yaml

        Test coverage thresholds per test suite type; enforced by the coverage devolution checker to prevent regression.

        unitmapRequired

        Configuration for the unit test suite. Unit tests have a high coverage floor (90%) because they are fast and deterministic.

        Current: [HOVER TO SHOW VALUE]
        unit.pathstringRequired

        Directory path where unit tests live.

        unit.min_coverageintegerRequired

        Minimum coverage percentage required for the suite to pass. Devolution is flagged when coverage drops below this threshold.

        unit.source_pathstringRequired

        Source directory measured for coverage (the code under test).

        unit.runnerstringRequired

        Command used to run the test suite (e.g. 'uv run python -m pytest').

        integrationmapRequired

        Configuration for the integration test suite. Integration tests use real git repos and subprocess spawns; coverage is supplementary with a low floor.

        Current: [HOVER TO SHOW VALUE]
        integration.pathstringRequired

        Directory path where integration tests live.

        integration.min_coverageintegerRequired

        Minimum coverage percentage for integration tests. Low floor (5%) because coverage measurement is disabled to avoid tracing slow I/O.

        integration.source_pathstringRequired

        Source directory measured for coverage.

        integration.runnerstringRequired

        Command used to run the integration test suite.

        integration.coveragestringOptional

        Set to 'false' to disable coverage tracing for this suite (avoids overhead of tracing slow I/O under PRoot).

        Share feedback

        You voted thumbs down

        dead_code

        Dead code analysis configuration consumed by lib/checks_dead_code.sh (the ci_check_dead_code shell function). Wraps the dangle Rust binary, which scans git-tracked files for unreferenced functions, classes, variables, and modules across 13 languages (Python, Lua, Bash/Shell, JavaScript, TypeScript incl. TSX, Rust, Go, and more). The keys below narrow which candidates dangle reports are surfaced as warnings.

        Quality Gates

        dead_code.yaml

        Dead code analysis configuration consumed by lib/checks_dead_code.sh (the ci_check_dead_code shell function). Wraps the `dangle` Rust binary, which scans git-tracked files for unreferenced functions, classes, variables, and modules across 13 languages (Python, Lua, Bash/Shell, JavaScript, TypeScript incl. TSX, Rust, Go, and more). The keys below narrow which candidates dangle reports are surfaced as warnings.

        scan_pathslist<string>Required

        Paths (directories or files) under which dead-code candidates are reported. Items whose file is not under a scan_paths entry are dropped from the report (dangle itself still scans the whole git-tracked repo and uses those files as reference sources). Defaults to ['ci'] when the key is absent.

        Current: [HOVER TO SHOW VALUE]
        ignore_pathslist<string>Optional

        Paths excluded from REPORTING. Files under these paths are still scanned for references by dangle but never appear in the dead-code report. Use for generated/vendored trees where the unreferenced-symbol noise is known and intentional.

        Current: [HOVER TO SHOW VALUE]
        reference_only_pathslist<string>Optional

        Files excluded from REPORTING but still scanned for references. Used for test files and conftest modules that are never 'dead' themselves but whose imports matter. dangle's own test-file heuristic (test_ prefix or /tests/ segment) already suppresses reporting for most test files; reference_only_paths covers any remaining stragglers.

        Current: [HOVER TO SHOW VALUE]
        ignored_nameslist<string>OptionalDefault: ['main', 'cli', 'WORKSPACE_MARKERS']

        Specific names never reported as dead, regardless of reference count. Useful for module-level constants referenced only from test files (which dangle intentionally skips) and for conventional entry-point names.

        Current: [HOVER TO SHOW VALUE]
        ignored_name_patternslist<string>Optional

        Extended regex (ERE) patterns for names to ignore. Matched against the function/class/variable name reported by dangle before the trailing 'is not referenced' phrase.

        Current: [HOVER TO SHOW VALUE]

        Share feedback

        You voted thumbs down

        dependency_excludes

        Dependencies excluded from version-mismatch checks; used by check_dependency_versions to skip packages that are intentionally unversioned or externally managed.

        Dependencies

        dependency_excludes.yaml

        Dependencies excluded from version-mismatch checks; used by check_dependency_versions to skip packages that are intentionally unversioned or externally managed.

        excludeslist<string>Required

        Package names excluded from dependency version checks. Entries here are not flagged when their version constraints are missing or inconsistent.

        Current: [HOVER TO SHOW VALUE]

        Share feedback

        You voted thumbs down

        duplicate_dependency_excludes

        Dependencies intentionally declared in both the workspace root and a workspace member; not flagged as redundant by check_duplicate_dependencies.

        Dependencies

        duplicate_dependency_excludes.yaml

        Dependencies intentionally declared in both the workspace root and a workspace member; not flagged as redundant by check_duplicate_dependencies.

        excludeslist<string>Required

        Package names excluded from duplicate-dependency detection. Self-duplicates (same dep in multiple sections of a single pyproject.toml) are NOT affected: version-mismatch self-duplicates always block, same-version duplicates warn.

        Current: [HOVER TO SHOW VALUE]

        Share feedback

        You voted thumbs down

        exemption_files
        Other

        exemption_files.yaml

        No schema file found.

        Share feedback

        You voted thumbs down

        file_length_limits

        Maximum line count per file by extension; enforced by the file-length checker to prevent oversized source files.

        Quality Gates

        file_length_limits.yaml

        Maximum line count per file by extension; enforced by the file-length checker to prevent oversized source files.

        max_linesintegerRequiredDefault: 512

        Maximum number of lines allowed in a single file. Files exceeding this limit are flagged by the checker.

        Current: [HOVER TO SHOW VALUE]
        extensionslist<string>Required

        File extensions subject to the line-count limit. Only files matching these extensions are checked.

        Current: [HOVER TO SHOW VALUE]

        Share feedback

        You voted thumbs down

        markdown_docs

        Markdown documentation checker config: remote link checks, ignore globs, and known-broken reference exceptions.

        Project Structure

        markdown_docs.yaml

        Markdown documentation checker config: remote link checks, ignore globs, and known-broken reference exceptions.

        check_remotebooleanOptionalDefault: true

        Whether to check remote HTTP(S) links. Slow and network-dependent; can be overridden via CLI --check-remote.

        Current: [HOVER TO SHOW VALUE]
        timeoutnumberOptionalDefault: 5

        Timeout in seconds for each remote HTTP(S) link check.

        Current: [HOVER TO SHOW VALUE]
        ignorelist<string>Optional

        Glob patterns for markdown files to skip entirely (e.g. node_modules, .venv, CHANGELOG.md).

        Current: [HOVER TO SHOW VALUE]
        exceptionslistOptionalDefault: []

        Known-broken reference entries that should not fail CI. Each entry can specify a file (endswith match), a line (exact), and a reason for context.

        Current: [HOVER TO SHOW VALUE]

        Share feedback

        You voted thumbs down

        pattern_categories
        Other

        pattern_categories.yaml

        No schema file found.

        Share feedback

        You voted thumbs down

        projects

        Registry of workspace projects displayed on the wiki home page and project pages; the single source of truth for project display metadata.

        Other

        projects.yaml

        Registry of workspace projects displayed on the wiki home page and project pages; the single source of truth for project display metadata.

        versionintegerRequired

        Schema version of the projects registry. Bumped when the YAML shape changes.

        Current: [HOVER TO SHOW VALUE]
        projectslistRequired

        The list of workspace projects rendered on the wiki home page and individual project pages.

        Current: [HOVER TO SHOW VALUE]
        projects[].slugstringRequired

        URL slug for the project page (e.g. 'workspace-ci' renders at /workspace-ci).

        projects[].displayNamestringRequired

        Display name shown in project card titles and page headers.

        projects[].languagestringRequired

        Primary programming language label shown in project card tags.

        projects[].repoNamestringRequired

        Repository directory name under the workspace root; used to locate README.md, Makefile, and .git/ at runtime.

        projects[].iconstringRequired

        Remix Icon CSS class for the project card (e.g. 'ri-terminal-box-line').

        projects[].logoPathstringOptional

        Path to the project logo image under public/ (e.g. '/logos/workspace-ci.png').

        Share feedback

        You voted thumbs down

        required_hooks

        Manifest of hooks every consumer project must wire; read by the hook generator and the required-hooks-present validator.

        Project Structure

        required_hooks.yaml

        Manifest of hooks every consumer project must wire; read by the hook generator and the required-hooks-present validator.

        versionintegerRequiredDefault: 1

        Schema version of the required-hooks config. Bumped when the YAML shape changes.

        Current: [HOVER TO SHOW VALUE]
        hookslistRequired

        Ordered list of hook entries. Each entry defines a git hook (pre-commit, commit-msg, or pre-push) with its kind, entry point, and enforcement metadata.

        Current: [HOVER TO SHOW VALUE]
        hooks[].idstringRequired

        Stable hook identifier; matches the '# === Hook: <id> ===' marker in generated .git/hooks/* files.

        hooks[].kindstringRequired

        Hook implementation kind: shell | shell_inline | shell_with_arg | python_module | python_module_files | makefile_target.

        hooks[].entrystringRequired

        Bash function name, python module path, make target name, or inline command string depending on kind.

        hooks[].stagestringRequired

        Git hook stage: pre-commit | commit-msg | pre-push.

        hooks[].pass_filenamesbooleanOptional

        Whether staged filenames are passed as arguments to the hook entry.

        hooks[].always_runbooleanOptional

        Whether the hook runs unconditionally, even when no files are staged.

        hooks[].mandatorybooleanOptional

        true: cannot be exempted via quality_exceptions.yaml. false: exemptable per-path because the check is heuristic.

        hooks[].safetybooleanOptional

        true: included even at POC tier (basic-safety subset). false: strict-tier only.

        hooks[].applicable_tolist<string>Required

        Language hints the check applies to. [any] runs for every project; [python] | [node] | [rust] scopes by detected language.

        hooks[].filesstringOptional

        Optional path pattern that scopes the hook (pass-through to the rendered hook).

        hooks[].files_typeslist<string>Optional

        File type filters for python_module_files hooks (e.g. [markdown]). Only matching staged files are passed.

        Share feedback

        You voted thumbs down

        sensitive_files

        Sensitive file detection configuration: extensions, keywords, and safe-list rules used to prevent accidental secret leakage.

        Content Rules

        sensitive_files.yaml

        Sensitive file detection configuration: extensions, keywords, and safe-list rules used to prevent accidental secret leakage.

        sensitive_extensionslist<string>Required

        File extensions that may contain secrets. Files with these extensions trigger the sensitive-file blocker when their name also matches a sensitive keyword.

        Current: [HOVER TO SHOW VALUE]
        sensitive_keywordslist<string>Required

        Filename keywords that suggest secrets (substring match, case-insensitive). A file is flagged when its name contains any of these keywords AND its extension is in sensitive_extensions.

        Current: [HOVER TO SHOW VALUE]
        safe_exceptionslist<string>Optional

        Exact filenames that are always safe (standard project config files). These bypass the sensitive-file check entirely, regardless of keyword matches.

        Current: [HOVER TO SHOW VALUE]
        safe_prefixeslist<string>Optional

        Filename prefixes that are always safe (e.g. 'tsconfig' matches tsconfig.json, tsconfig.app.json, etc.). These bypass the sensitive-file check.

        Current: [HOVER TO SHOW VALUE]

        Share feedback

        You voted thumbs down

        sensitive_files_exceptions
        Other

        sensitive_files_exceptions.yaml

        No schema file found.

        Share feedback

        You voted thumbs down

        silent_swallow_exceptions
        Other

        silent_swallow_exceptions.yaml

        No schema file found.

        Share feedback

        You voted thumbs down

        silent_swallow_patterns

        Error-swallowing detection patterns: the single source of truth for all patterns checked by the silent-error-swallow detector.

        Content Rules

        silent_swallow_patterns.yaml

        Error-swallowing detection patterns: the single source of truth for all patterns checked by the silent-error-swallow detector.

        versionintegerRequired

        Schema version of the swallow-patterns config. Bumped when the YAML shape changes.

        Current: [HOVER TO SHOW VALUE]
        file_typesmapRequired

        Language-to-file-matching rules. Each key is a language identifier used by inline_patterns and multiline_detectors.

        Current: [HOVER TO SHOW VALUE]
        file_types.<lang>.extensionslist<string>Optional

        File extensions that identify this language (e.g. ['.py', '.sh']).

        file_types.<lang>.filenameslist<string>Optional

        Exact filenames that identify this language (e.g. ['Makefile']).

        file_types.<lang>.shebangstringOptional

        Regex matched against the first line of extensionless files to detect this language.

        file_types.<lang>.path_includeslist<string>Optional

        Substring matches against the full path to identify this language (e.g. ['ansible']).

        inline_patternslistRequired

        Pure regex patterns applied via re.search() per added line. No multi-line state or custom logic.

        Current: [HOVER TO SHOW VALUE]
        inline_patterns[].idstringRequired

        Stable pattern identifier emitted in violation output (e.g. 'sh-devnull-silent').

        inline_patterns[].regexstringRequired

        Python regex pattern compiled and applied via re.search() against each added line.

        inline_patterns[].languagestringRequired

        Language key from file_types that scopes this pattern (e.g. 'shell', 'python').

        inline_patterns[].descriptionstringRequired

        Human-readable explanation of what the pattern detects; rendered on the wiki pattern card.

        custom_detectorslistOptional

        Named Python functions with custom inline logic that cannot be expressed as a single regex (e.g. the cron multi-regex check).

        Current: [HOVER TO SHOW VALUE]
        custom_detectors[].idstringRequired

        Stable pattern identifier emitted in violation output.

        custom_detectors[].detectorstringRequired

        Python function name that implements the check. Called with an AddedLine; returns a violation tuple or None.

        custom_detectors[].source_filestringRequired

        Path to the Python source file containing the detector function; used by the wiki for source-code extraction.

        custom_detectors[].languagestringRequired

        Language key from file_types that scopes this detector.

        custom_detectors[].descriptionstringRequired

        Human-readable explanation of what the detector checks; rendered on the wiki pattern card.

        multiline_detectorslistOptional

        Named Python functions with multi-line stateful detection logic. Each function scans across multiple added lines to find violations.

        Current: [HOVER TO SHOW VALUE]
        multiline_detectors[].idstringRequired

        Stable pattern identifier emitted in violation output (e.g. 'py-except-pass').

        multiline_detectors[].detectorstringRequired

        Python function name that implements the multi-line check. Receives the full list of added lines; yields (AddedLine, pattern_id) tuples. Used for runtime dispatch in check_silent_swallow.py.

        multiline_detectors[].source_functionstringOptional

        Specific helper function that classifies this particular pattern. Overrides detector for wiki source-code extraction when the detector is a top-level dispatcher (e.g. detect_python_multiline dispatches to _classify_except_body and _resolve_next_line). Falls back to detector when absent.

        multiline_detectors[].source_filestringRequired

        Path to the Python source file containing the detector function; used by the wiki for source-code extraction.

        multiline_detectors[].languagestringRequired

        Language key from file_types that scopes this detector.

        multiline_detectors[].descriptionstringRequired

        Human-readable explanation of what the multi-line detector finds; rendered on the wiki pattern card.

        Share feedback

        You voted thumbs down

        standards

        Catalog of AI governance standards, regulations, frameworks, and declarations; the single source of truth for the standards page.

        Other

        standards.yaml

        Catalog of AI governance standards, regulations, frameworks, and declarations; the single source of truth for the standards page.

        versionintegerRequired

        Schema version of the standards catalog. Bumped when the YAML shape changes.

        Current: [HOVER TO SHOW VALUE]
        standardslistRequired

        The list of AI governance standards rendered on the standards page and indexed for search.

        Current: [HOVER TO SHOW VALUE]
        standards[].idstringRequired

        Stable identifier used in anchor links (/standards#<id>) and search indexing.

        standards[].titlestringRequired

        Short display title shown in card headers and search results.

        standards[].fullTitlestringRequired

        Full official title of the standard, shown in the card detail body.

        standards[].issuerstringRequired

        Issuing body or authority (e.g. 'NIST', 'European Parliament & Council').

        standards[].jurisdictionstringRequired

        Geographic or organizational scope (e.g. 'EU', 'US', 'International').

        standards[].datestringRequired

        Publication or adoption date in ISO 8601 (YYYY-MM-DD) format.

        standards[].typestringRequired

        Document type: regulation, standard, framework, declaration, code-of-conduct, executive-order, or treaty.

        standards[].statusstringRequired

        Legal status: binding, voluntary, or advisory.

        standards[].summarystringRequired

        One-paragraph summary of the standard's scope and key provisions.

        standards[].tagslist<string>Required

        Topic tags used for filtering and grouping (e.g. 'Risk Management', 'Governance').

        standards[].freebooleanRequired

        Whether the full text is freely accessible (true) or requires purchase (false).

        standards[].downloadPathstringOptional

        Path to a locally hosted PDF copy under public/ (only for free standards).

        standards[].sourceUrlstringOptional

        Official source URL for the full text (free standards) or landing page (paid standards).

        standards[].purchaseUrlstringOptional

        Purchase URL for paid standards (only when free is false).

        standards[].pricestringOptional

        Approximate purchase price (only when free is false).

        standards[].pagesintegerOptional

        Total page count of the document, when known.

        Share feedback

        You voted thumbs down

        system-deps
        Other

        system-deps.yaml

        No schema file found.

        Share feedback

        You voted thumbs down

        wiki_labels

        Display labels and icons for wiki UI components; the single source of truth for human-readable names of CI domain enums.

        Other

        wiki_labels.yaml

        Display labels and icons for wiki UI components; the single source of truth for human-readable names of CI domain enums.

        versionintegerRequired

        Schema version of the wiki labels config. Bumped when the YAML shape changes.

        Current: [HOVER TO SHOW VALUE]
        hook_stagesmap<string, string>Required

        Maps hook stage IDs (pre-commit, commit-msg, pre-push) to display labels shown in hook card tags.

        Current: [HOVER TO SHOW VALUE]
        hook_kindsmap<string, string>Required

        Maps hook kind IDs (shell, python_module, makefile_target, etc.) to display labels shown in hook card tags.

        Current: [HOVER TO SHOW VALUE]
        standard_typesmap<string, object>Required

        Maps standard type IDs to display metadata (label + icon) used in standard card rendering.

        Current: [HOVER TO SHOW VALUE]
        standard_types.<type>.labelstringRequired

        Human-readable label for the standard type (e.g. 'Regulation', 'Framework').

        standard_types.<type>.iconstringRequired

        Remix Icon CSS class for the standard type (e.g. 'ri-government-line').

        swallow_languagesmap<string, string>Required

        Maps swallow-detector language IDs (shell, python, js_ts, ansible, cron) to display labels shown in pattern card tags.

        Current: [HOVER TO SHOW VALUE]
        config_categoriesmap<string, string>Required

        Maps CI config file names to display category labels used for grouping config cards on the config page.

        Current: [HOVER TO SHOW VALUE]
        guard_categoriesmap<string, string>Required

        Maps guard config file names to display category labels used for grouping guard config cards.

        Current: [HOVER TO SHOW VALUE]
        playground_languageslistRequired

        Supported languages for the pattern testing playground, rendered as selector options.

        Current: [HOVER TO SHOW VALUE]
        playground_languages[].idstringRequired

        Language identifier used internally and by CodeMirror for syntax highlighting (e.g. 'python', 'shell').

        playground_languages[].labelstringRequired

        Human-readable label shown in the language selector dropdown (e.g. 'Python', 'Shell').

        Share feedback

        You voted thumbs down

        wiki_pages

        Static wiki page entries for the search index; the single source of truth for page-level search metadata.

        Other

        wiki_pages.yaml

        Static wiki page entries for the search index; the single source of truth for page-level search metadata.

        versionintegerRequired

        Schema version of the wiki pages config. Bumped when the YAML shape changes.

        Current: [HOVER TO SHOW VALUE]
        pageslistRequired

        Static wiki page entries indexed for search. Each entry describes one wiki page route.

        Current: [HOVER TO SHOW VALUE]
        pages[].idstringRequired

        Unique identifier for the search entry (e.g. 'page-home').

        pages[].titlestringRequired

        Display title shown in search results.

        pages[].sectionstringRequired

        Section grouping label (e.g. 'Pages').

        pages[].contentstringRequired

        Searchable content text for the page.

        pages[].hrefstringRequired

        URL path for the wiki page (e.g. '/patterns').

        pages[].keywordslist<string>Required

        Additional search keywords for fuzzy matching.

        Share feedback

        You voted thumbs down

        The Digital and AI Workspace Guardrails Platform2026 ◆ Independent AI Labs