Developer Portal

  • Added

    • Allow overriding the AI chat context window size via aiChat.contextWindow in app-config.

    Changed

    • Improve markdown table rendering in AI chat: tables are now horizontally scrollable with better cell spacing.

    Fixed

    • Cache-bust custom branding logo URLs so replaced logos appear immediately instead of being served stale from the browser cache. See ./docs/releases/v0.124.3-changelog.md for more information.
  • Changed

    • Decouple custom branding from the gs-backend plugin so branding assets are served by a dedicated backend plugin and work without gs: config. See ./docs/releases/v0.124.2-changelog.md for more information.
  • Fixed

  • Added

    • Add custom branding asset support with logo overrides, allowing UI logo customization via mounted volumes without code changes. See ./docs/releases/v0.124.0-changelog.md for more information.
  • Added

    • Add BackendTrafficPolicy template to the helm chart, to be able to customize HTTP connection settings.

    Changed

    • Redesign tool call and tool group UI in AI chat with compact inline layout, argument summary previews, and inline status icons.

    Fixed

    • Fix deprecation warning for the user settings General page by migrating to the new configSchema option.
    • Fix missing key prop warning on the scaffolder sidebar item.
    • Flush SSE chunks through compression middleware so streamed AI responses reach the client in real time. See ./docs/releases/v0.123.0-changelog.md for more information.
  • Changed

    • Stream reasoning tokens live in the AI chat and redesign the Reasoning block: auto-opens while the model is reasoning, “Thinking Xs…” / “Thought for Ys” trigger, char-by-char text reveal with auto-scroll, borderless quote-style visual aligned with modern chat UIs. See ./docs/releases/v0.122.3-changelog.md for more information.
  • Changed

    • Stream reasoning tokens from OpenAI-compatible models (vLLM) to the AI chat UI by switching the aiChat.openai.api: chat path to @ai-sdk/openai-compatible and unconditionally rendering the Reasoning/ReasoningGroup slots in Thread.tsx. See ./docs/releases/v0.122.2-changelog.md for more information.
  • Added

    • Add configurable welcome screen title, subtitle, and suggestions for the AI chat.

    Changed

  • Added

    • Add optional guest auth provider, enabled via ENABLE_GUEST_AUTH environment variable.
    • Add optional aiChat.systemPrompt config to override the built-in AI chat system prompt.
    • Add optional aiChat.openai.api config to target OpenAI-compatible servers via chat completions API.

    Changed

    • Update Backstage to 1.50.2.
    • Migrate scaffolder pages to NFS SubPageBlueprint layout.
    • Make sidebar nav items configurable via NFS extensions.
    • Use custom X-Backstage-Token header for identity tokens to avoid conflicts with ingress-level Basic auth.
    • Use ProxiedSignInPage with guest provider as fallback when Dex auth is not configured.
    • Allow hiding the Backstage Identity card on the settings general page via extension config.

    Fixed

    • Fix AI chat producing empty replies when the model uses a tool by increasing the default step limit.
    • Strip stale tool results from AI chat conversation history to reduce token usage. See ./docs/releases/v0.122.0-changelog.md for more information.
  • Added

    • Add custom review step for scaffolder templates.
    • Add multi-source value editing for app deployment scaffolder templates.
    • Add isValidDNSSubdomainName utility for validating Kubernetes resource names.
    • Add passwordManagerIgnoreProps utility and height/maxHeight options to YamlEditor.
    • Add fromJson Nunjucks template filter for deserializing JSON strings in scaffolder templates.

    Changed

    • Discover app deployment templates by label instead of hardcoded name.
    • Disable Edit Deployment button when deployment structure is incompatible with the edit template.
    • Warn when an app deployment is managed through GitOps.

    Fixed