Developer Portal

  • Added

    • Add “Configure with AI” button to App Deployment template.

    Fixed

    • Render AI chat user messages as plain text with preserved whitespace so line breaks (shift+enter) display consistently instead of being collapsed by markdown rendering. See ./docs/releases/v0.128.0-changelog.md for more information.
  • Added

    • Allow customization of theme colors via app.branding.theme configuration.
    • Make AI-chat skills configurable per deployment via aiChat.skills (opt out of bundled skills with bundled: false, load extra skills from a directory with dir, or define them inline with inline).

    Fixed

    • Make the sqlite-persistence CI test case (ci-values-case3-sqlite-persistent.yaml) inject a real backend.database.connection.directory override and update the surrounding comment so it reflects what current Backstage actually accepts. The previous comment suggested connection: /var/lib/backstage/db.sqlite, which the Sqlite3Connector rejects at runtime with "connection.filename" is not supported for the base sqlite connection. See ./docs/releases/v0.127.0-changelog.md for more information.
  • Added

    • Added configuration options to allow for persisting the SQLite database.
    • Add Mermaid diagram support to AI chat markdown rendering.
    • Render <details>/<summary> HTML in AI chat markdown.
    • Allow AI chat MCP servers to act as the logged-in Backstage user via the new useBackstageUserToken option, so user-context tools like auth.who-am-i work without a static external-access token.

    Changed

    • Strip reasoning content from past AI chat assistant messages to reclaim context tokens for Claude conversations.
    • Replace the fa-kubernetes Font Awesome icon with an inline SVG and remove the Font Awesome kit integration.
    • Replace @terasky/backstage-plugin-catalog-mcp-backend with the built-in catalog.query-catalog-entities action from @backstage/plugin-mcp-actions-backend.

    Fixed

    • Fix AI chat input freezing after typing dead keys (e.g., backtick on German keyboard).

    Removed

    • Remove the custom getCurrentUserInfo AI chat agent tool, superseded by the upstream auth.who-am-i tool from the mcp-actions MCP server. See ./docs/releases/v0.126.0-changelog.md for more information.
  • Added

    • Persist AI chat conversations and add a conversation history page with rename, delete, batch delete, and pagination, plus a history view in the chat drawer.
    • Add a getDate tool to the AI chat agent for retrieving the current date and time.
    • Prune older tool outputs in AI chat once cumulative tool I/O exceeds a configurable budget (aiChat.pruning.reservedTokens, aiChat.pruning.minimumSavingsTokens).

    Changed

    • Report AI chat context size, output tokens, and cost by requesting token usage from OpenAI-compatible streaming responses (vLLM/KServe).
    • Clarify tool use in the muster system prompt to avoid calling internal tools via muster’s call_tool.

    Fixed

    • Re-observe the element when the ref target changes in useContainerDimensions.
    • Reject empty titles in PATCH /conversations/:id/title with HTTP 400. See ./docs/releases/v0.125.0-changelog.md for more information.
  • Added

    • Make sidebar logo image height configurable via app.branding.logo.height.

    Fixed

  • 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.