Name Description Size Coverage
AIWindow.sys.mjs @import {SmartbarInput} from "chrome://browser/content/urlbar/SmartbarInput.mjs" 35628 -
AIWindowAccountAuth.sys.mjs 2635 -
AIWindowConstants.sys.mjs The current SQLite database schema version 770 -
AIWindowMenu.sys.mjs Adds the AI Window menuitems to the app menu 4079 -
AIWindowTabStatesManager.sys.mjs At which count the empty close prompt should be shown. If this value needs to be updated it should also be updated in the trigger string in FeatureCalloutMessages.sys.mjs 27263 -
AIWindowTelemetry.sys.mjs AIWindow telemetry calls 1225 -
AIWindowUI.sys.mjs @typedef {import("../components/ai-window/ai-window.mjs").SmartbarInputState} SmartbarInputState 14731 -
ChatConversation.sys.mjs A chat conversation. Adds chat orchestration (security tracking, URL tokens, branching, realtime + memory injection, system prompt loading) and chat UI (event emits, render filtering, tool UI state) on top of the generic Conversation base. 39638 -
ChatEnums.sys.mjs @typedef ConversationStatus @property {number} ACTIVE - An active conversation @property {number} ARCHIVE - An archived conversation @property {number} DELETED - A deleted conversation 1126 -
ChatMarkdownParser.mjs Markdown parser for Smart Window chat messages. 1760 -
ChatMessage.sys.mjs @import { ContextWebsite } from "chrome://browser/content/urlbar/SmartbarInput.mjs" 11141 -
ChatMigrations.sys.mjs Please refer to sql.mjs for details on creating new migrations. - List each change here and what it's for. @param {OpenedConnection} conn - The SQLite connection to use for the migration @param {number} version - The version number of the current schema 5172 -
ChatSql.sys.mjs 16156 -
ChatStore.sys.mjs Simple interface to store and retrieve chat conversations and messages. @todo Bug 2005409 Move this documentation to Firefox source docs See: https://docs.google.com/document/d/1VlwmGbMhPIe-tmeKWinHuPh50VC9QrWEeQQ5V-UvEso/edit?tab=t.klqqibndv3zk @example let { ChatStore, ChatConversation, ChatMessage, MESSAGE_ROLE } = ChromeUtils.importESModule("resource:///modules/aiwindow/ui/modules/ChatStore.sys.mjs"); const chatStore = ChatStore; const conversation = new ChatConversation({ title: "title", description: "description", pageUrl: new URL("https://mozilla.com/"), pageMeta: { one: 1, two: 2 }, }); const msg1 = new ChatMessage({ ordinal: 0, role: MESSAGE_ROLE.USER, modelId: "test", params: { one: "one" }, usage: { two: "two", content: "some content" }, }); const msg2 = new ChatMessage({ ordinal: 1, role: MESSAGE_ROLE.ASSISTANT, modelId: "test", params: { one: "one" }, usage: { two: "two", content: "some content 2" }, }); conversation.messages = [msg1, msg2]; await chatStore.updateConversation(conversation); // Or findConversationsByDate, findConversationsByURL. const foundConversation = await chatStore.findConversationById(conversation.id); @typedef {object} ChatStore @property {*} x ? 41229 -
ChatUtils.sys.mjs Gets the URL of the currently selected tab of a window. Primarily used to retrieve the current tab's url for use in ChatMessage.pageUrl and message context chips. @param {Window} window @returns {?URL} 6501 -
FeedbackModal.sys.mjs @param {MozBrowser} browser @param {string} type - "thumbs-up" or "thumbs-down". @param {object} [metadata] - Optional metadata to include in telemetry. 1136 -
SmartWindowTelemetry.sys.mjs This singleton is for telemetry events that benefit from shared state management. Simple events to be handled with inline Glean calls 3203 -
TabManagementService.sys.mjs Service for managing browser tabs from AI Window UI components. This service closes tabs using gBrowser.removeTab(), allowing Firefox's native SessionStore machinery to keep the actual closed-tab restore state. The service only stores lightweight operation metadata so the AI Window can target a specific close operation when the user clicks "Undo". 13182 -
ToolActionLog.sys.mjs A localized label shown on an action log entry @typedef {object} ActionLogLabel @property {string} l10nId - Fluent message id for the label text @property {object} [l10nArgs] - optional Fluent variables (e.g. counts) 5382 -
ToolUI.sys.mjs @typedef {object} TabSelectionData @property {string} linkedPanel - ID of the linked panel (e.g., "panel-3-1") @property {string} url - URL of the tab @property {string} title - Display title of the tab @property {string} [iconSrc] - URL for the tab's favicon (optional) @property {boolean} [checked] - Whether the tab is selected in UI (optional) 20509 -
ToolUITelemetry.sys.mjs ToolUI telemetry calls 4761 -