/** * @fileoverview OpenCode 插件常量定义 */ import type { OpenCodeOptions } from "./types"; /** ==================== 网络相关 ==================== */ /** 默认主机名 */ export declare const DEFAULT_HOSTNAME = "127.0.0.1"; /** 默认 Web 服务端口 */ export declare const DEFAULT_WEB_PORT = 5097; /** 默认代理服务端口 */ export declare const DEFAULT_PROXY_PORT = 6097; /** 服务器启动超时时间(毫秒) */ export declare const SERVER_START_TIMEOUT = 300000; /** 服务器检查间隔(毫秒) */ export declare const SERVER_CHECK_INTERVAL = 100; /** ==================== 重试相关 ==================== */ /** 默认重试次数 */ export declare const DEFAULT_RETRIES = 5; /** 重试延迟(毫秒) */ export declare const RETRY_DELAY = 500; /** ==================== 端口查找 ==================== */ /** 最大端口尝试次数 */ export declare const MAX_PORT_TRIES = 10; /** ==================== 日志相关 ==================== */ /** 插件日志前缀 */ export declare const LOG_PREFIX = "[vite-plugin-opencode]"; /** OpenCode Web 日志前缀 */ export declare const WEB_LOG_PREFIX = "[OpenCode Web]"; /** OpenCode Web 错误日志前缀 */ export declare const WEB_ERROR_PREFIX = "[OpenCode Web Error]"; /** ==================== 挂件相关 ==================== */ /** 挂件脚本路径 */ export declare const WIDGET_SCRIPT_PATH = "/__opencode_widget__.js"; /** 配置数据属性名 */ export declare const CONFIG_DATA_ATTR = "data-opencode-config"; /** 上下文 API 路径 */ export declare const CONTEXT_API_PATH = "/__opencode_context__"; /** 启动 API 路径 */ export declare const START_API_PATH = "/__opencode_start__"; /** 会话列表 API 路径 */ export declare const SESSIONS_API_PATH = "/__opencode_sessions__"; /** MCP 代理 API 路径 */ export declare const MCP_API_PATH = "/__opencode_mcp__"; /** SSE 事件流路径 */ export declare const SSE_EVENTS_PATH = "/__opencode_events__"; /** 上下文更新间隔(毫秒) */ export declare const CONTEXT_UPDATE_INTERVAL = 500; /** 服务器同步间隔(毫秒) */ export declare const SERVER_SYNC_INTERVAL = 2000; /** Vue Inspector 检查间隔(毫秒) */ export declare const INSPECTOR_CHECK_INTERVAL = 500; /** 自动打开延迟(毫秒) */ export declare const AUTO_OPEN_DELAY = 1000; /** 通知显示时间(毫秒) */ export declare const NOTIFICATION_DURATION = 3000; /** ==================== 存储相关 ==================== */ /** 初始化标记 */ export declare const INIT_MARKER = "__OPENCODE_INITIALIZED__"; /** 选中元素存储键 */ export declare const SELECTED_ELEMENTS_KEY = "__opencode_selected_elements__"; /** ==================== Chrome DevTools ==================== */ /** Chrome DevTools Protocol 默认端口 */ export declare const CHROME_DEVTOOLS_PORT = 9222; /** Chrome DevTools 检查超时时间(毫秒) */ export declare const CHROME_DEVTOOLS_CHECK_TIMEOUT = 2000; /** ==================== 扩展消息类型 ==================== */ /** 需要后台转发的消息类型(多实例间通信) */ export declare const EXT_BROADCAST: { readonly PAGE_CONTEXT: "PAGE_CONTEXT"; readonly THEME_CHANGE: "THEME_CHANGE"; readonly SERVICE_APPEARED: "SERVICE_APPEARED"; readonly SERVICE_GONE: "SERVICE_GONE"; }; /** Chrome 扩展内部消息类型(chrome.runtime.sendMessage) */ export declare const EXT_MSG: { readonly GET_PORT_INFO: "GET_PORT_INFO"; readonly TAB_SWITCHED: "TAB_SWITCHED"; readonly REQUEST_PAGE_CONTEXT: "REQUEST_PAGE_CONTEXT"; readonly SELECTION_START: "SELECTION_START"; readonly SELECTION_STOP: "SELECTION_STOP"; readonly CS_QUERY_WINDOW: "__CS_QUERY_WINDOW__"; readonly PAGE_CONTEXT: "PAGE_CONTEXT"; readonly THEME_CHANGE: "THEME_CHANGE"; readonly SERVICE_APPEARED: "SERVICE_APPEARED"; readonly SERVICE_GONE: "SERVICE_GONE"; }; /** ==================== Widget PostMessage 类型 ==================== */ /** Widget iframe postMessage 消息类型 */ export declare const WIDGET_MSG: { readonly READY: "OPENCODE_READY"; readonly KEYDOWN: "OPENCODE_KEYDOWN"; readonly SET_THEME: "OPENCODE_SET_THEME"; readonly INSERT_FILE_PART: "OPENCODE_INSERT_FILE_PART"; readonly SELECT_MODE_CHANGE: "OPENCODE_SELECT_MODE_CHANGE"; readonly ELEMENT_SELECTED: "OPENCODE_ELEMENT_SELECTED"; readonly SELECTION_CANCELLED: "OPENCODE_SELECTION_CANCELLED"; readonly SELECTOR_START: "OPENCODE_SELECTOR_START"; readonly SELECTOR_STOP: "OPENCODE_SELECTOR_STOP"; readonly SERVICE_INFO: "OPENCODE_SERVICE_INFO"; readonly MINIMIZE_STATE: "MINIMIZE_STATE_CHANGE"; readonly PROMPT_DOCK_VISIBILITY: "PROMPT_DOCK_VISIBILITY_CHANGE"; readonly REVIEW_PANEL_TOGGLE: "REVIEW_PANEL_TOGGLE"; }; /** ==================== API 路径补充 ==================== */ /** OpenCode 预热 API 路径 */ export declare const WARMUP_API_PATH = "/__opencode_warmup__"; /** Bridge 脚本路径 */ export declare const BRIDGE_SCRIPT_PATH = "/__opencode_bridge__.js"; /** 进程日志 API 路径 */ export declare const LOGS_API_PATH = "/__opencode_process_logs__"; /** Widget 样式路径 */ export declare const WIDGET_STYLE_PATH = "/__opencode_widget__.css"; /** ==================== OpenCode localStorage 键 ==================== */ /** OpenCode localStorage 配置键 */ export declare const OPENCODE_STORAGE_KEYS: { /** 设置键 (settings.v3) */ readonly SETTINGS: "settings.v3"; /** 配色方案键 */ readonly COLOR_SCHEME: "opencode-color-scheme"; /** 主题 ID 键 */ readonly THEME_ID: "opencode-theme-id"; }; /** ==================== OpenCode 默认设置 ==================== */ /** OpenCode 默认设置(与 OpenCode Web localStorage settings.v3 对应) */ export declare const DEFAULT_OPENCODE_SETTINGS: { general: { showReasoningSummaries: boolean; newLayoutDesigns: boolean; showFileTree: boolean; editToolPartsExpanded: boolean; shellToolPartsExpanded: boolean; }; }; /** ==================== 文本处理 ==================== */ /** 元素文本最大显示长度 */ export declare const MAX_TEXT_LENGTH = 100; /** 元素上下文标记 */ export declare const CONTEXT_MARKER = "[\u5143\u7D20\u4E0A\u4E0B\u6587]"; /** 页面上下文内部标记(用于插件) */ export declare const PAGE_CONTEXT_MARKER = "__OPENCODE_CONTEXT__"; /** 页面上下文文本最大长度 */ export declare const PAGE_CONTEXT_MAX_TEXT_LENGTH = 10000; /** ==================== 诊断 Severity ==================== */ /** * 诊断 severity 常量,使用 LSP DiagnosticSeverity 规范值 * Error=1, Warning=2, Information=3, Hint=4 */ export declare const SEVERITY_ERROR = 1; export declare const SEVERITY_WARN = 2; /** ==================== VS Code 扩展桥接 ==================== */ /** VS Code 扩展 HTTP 服务端口 */ export declare const VSCODE_EXTENSION_PORT = 51939; /** OpenCode 缓存目录(相对于项目根目录,存放 opencode.json 等运行状态) */ export declare const OPENCODE_CACHE_DIR = "node_modules/.cache/opencode"; /** VS Code 扩展相关环境变量名 */ export declare const ENV_VSCODE_MODE = "OPENCODE_VSCODE_MODE"; export declare const ENV_VSCODE_PORT = "OPENCODE_VSCODE_PORT"; /** ==================== Vue DevTools API ==================== */ /** Vue DevTools API action 名称 */ export declare const VUE_DEVTOOLS_ACTIONS: { readonly GET_COMPONENT_TREE: "getComponentTree"; readonly GET_COMPONENT_STATE: "getComponentState"; readonly GET_COMPONENT_RENDER_CODE: "getComponentRenderCode"; readonly GET_APPS: "getApps"; readonly TOGGLE_APP: "toggleApp"; readonly GET_ROUTER_INFO: "getRouterInfo"; }; export type VueDevtoolsAction = (typeof VUE_DEVTOOLS_ACTIONS)[keyof typeof VUE_DEVTOOLS_ACTIONS]; /** ==================== 默认配置 ==================== */ /** 默认插件配置 */ export declare const DEFAULT_CONFIG: Partial;