TomTom Maps for JavaScript
    Preparing search index...

    Variable SYSTEM_PROMPT_SECTIONSConst

    SYSTEM_PROMPT_SECTIONS: Record<SystemPromptSection, string>

    The default body text for each base-prompt section, without its heading.

    Each value holds only the section's content. composeSystemPrompt adds the structural heading (e.g. RESPONSE FORMATTING:), so an override passes just the body. For example, composeSystemPrompt({ responseFormatting: 'Reply in Spanish.' }) still renders under the RESPONSE FORMATTING: heading.

    The behavioural prose is split so each concern is overridable on its own:

    • identity — who the assistant is and its tone of voice, the natural hook to rebrand or set a persona.
    • capabilities — the map environment plus a compact summary of what the toolkit can do. It stays at the group level (not per-tool) so it does not drift as tools change. The exact mechanics live in each tool's description and the classifier prompt. It also gives rejectionRules something concrete to steer the user back toward.
    • rejectionRules — how to handle in-scope / mixed / out-of-scope / illegal requests, and the requirement to always explain a rejection.
    • dataConfidence — how to surface incomplete, partial, stale, or conflicting data instead of presenting it as complete.

    Location-reference routing ("near me" → getCurrentLocation, "here" → getViewport) is intentionally not a section. It is a tool-selection rule already owned by the classifier prompt and the two tools' cross-referencing descriptions.

    This map is the exported, canonical source of the default body text. A consumer can read a default and override it with a derived value (extend, prefix, or rewrite it). See SystemPromptSectionOverrides.