\n Grok2API - LiveKit 陪聊 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n\n \n \n\n Grok2API - Video 视频工作台 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n\n \n \n\n Grok2API - Chat 聊天 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n\n \n \n\n \n\n \n \n \n \n \n\n\n\n\n",
"public/pages/nsfw.html": "\n\n\n\n \n \n Grok2API - NSFW 工作台 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n\n \n \n\n \n \n\n \n \n\n\n Grok2API - 图片编辑工作台 \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n\n\n \n \n\n \n \n\n \n \n\n \n\n \n \n \n \n \n \n \n \n\n\n\n",
"public/manifest.webmanifest": "{\n \"name\": \"Grok2API\",\n \"short_name\": \"Grok2API\",\n \"description\": \"Grok2API 功能工作台\",\n \"start_url\": \"/login\",\n \"scope\": \"/\",\n \"display\": \"standalone\",\n \"background_color\": \"#fafafa\",\n \"theme_color\": \"#fafafa\",\n \"icons\": [\n {\n \"src\": \"/static/public/pwa/icon-192.png\",\n \"sizes\": \"192x192\",\n \"type\": \"image/png\",\n \"purpose\": \"any\"\n },\n {\n \"src\": \"/static/public/pwa/icon-512.png\",\n \"sizes\": \"512x512\",\n \"type\": \"image/png\",\n \"purpose\": \"any maskable\"\n }\n ]\n}\n",
"public/sw.js": "const CACHE_PREFIX = \"grok2api-pwa-\";\nconst CACHE_NAME = `${CACHE_PREFIX}v2`;\n\nself.addEventListener(\"install\", (event) => {\n event.waitUntil(self.skipWaiting());\n});\n\nself.addEventListener(\"activate\", (event) => {\n event.waitUntil(\n (async () => {\n const keys = await caches.keys();\n await Promise.all(\n keys\n .filter((key) => key.startsWith(CACHE_PREFIX) && key !== CACHE_NAME)\n .map((key) => caches.delete(key))\n );\n await self.clients.claim();\n })()\n );\n});\n\nself.addEventListener(\"fetch\", (event) => {\n const request = event.request;\n if (request.method !== \"GET\") return;\n\n const url = new URL(request.url);\n if (url.origin !== self.location.origin) return;\n\n const cacheablePathPrefixes = [\n \"/static/\",\n \"/login\",\n \"/imagine\",\n \"/video\",\n \"/voice\",\n \"/nsfw\",\n \"/imagine-workbench\",\n \"/manifest.webmanifest\"\n ];\n const isCacheable = cacheablePathPrefixes.some((prefix) => url.pathname.startsWith(prefix));\n if (!isCacheable) return;\n\n event.respondWith(\n (async () => {\n try {\n const response = await fetch(request);\n const cache = await caches.open(CACHE_NAME);\n cache.put(request, response.clone());\n return response;\n } catch (error) {\n const cached = await caches.match(request);\n if (cached) return cached;\n throw error;\n }\n })()\n );\n});\n",
"admin/pages/login.html": "\n\n\n\n \n \n Grok2API - 登录 \n \n \n \n \n \n \n \n \n \n\n\n\n \n\n Grok2API - 配置管理 \n \n \n \n \n \n \n \n \n\n\n\n\n \n\n \n \n \n\n \n \n \n \n \n\n\n\n",
"admin/pages/cache.html": "\n\n\n\n \n \n Grok2API - 缓存管理 \n \n \n \n \n \n \n \n \n\n\n\n \n\n \n
\n \n
\n\n \n\n Imagine 瀑布流
\n通过 WebSocket 持续生成图片,实时展示 base64 瀑布流。
\n\n
\n\n \n
\n\n \n
\n 生成设置
\n \n
\n \n
\n \n \n \n
\n \n
\n \n
\n \n
\n \n 自动跟随
\n 滚动到最新
\n \n
\n \n
\n \n 自动保存
\n 自动保存图片
\n \n
\n \n
\n \n \n \n
\n \n \n \n
\n \n
\n \n
\n \n
\n \n 自动过滤
\n 过滤不达标图片
\n \n
\n \n
\n \n \n \n
\n \n \n \n
\n \n
\n \n
\n \n
\n \n 反向新增
\n 最新显示在上方
\n \n
\n \n
\n 连接状态
\n 未连接\n \n \n \n
\n \n
\n \n\n \n \n
\n 瀑布流
\n \n
\n \n
\n \n 等待连接中
\n 启动任务后,生成的图片会自动汇聚到这里
\n \n \n \n \n
\n
\n\n \n
\n \n
\n \n
\n \n \n \n \n
\n \n \n
\n 编辑中 0%
\n \n \n \n \n \n \n \n \n
\n\n \n \n\n \n \n\n \n\n \n \n \n \n \n \n \n \n \n\n\n",
"public/pages/voice.html": "\n\n\n\n \n \n \n
\n \n
\n\n \n\n \n
\n LiveKit 陪聊
\nLiveKit 语音会话,连接 Grok Voice。
\n\n \n \n
\n \n \n \n\n \n
\n \n
\n\n 连接设置
\n \n
\n \n \n \n
\n\n \n \n \n
\n\n \n
\n \n \n 1.0x\n
\n \n 提示:Voice / Personality 会在建立连接前发送到服务端。
\n \n
\n \n
\n \n 会话日志
\n \n \n \n
\n \n
\n\n \n\n \n \n \n \n \n \n \n\n\n\n",
"public/pages/video.html": "\n\n\n\n \n \n \n
\n \n \n \n \n \n \n
\n \n
\n \n
\n\n \n\n \n
\n Video 视频工作台
\n生成短视频,支持参考图、多种预设风格与视频拼接。
\n\n
\n\n \n \n
\n\n \n \n
\n \n
\n \n
\n \n
\n 当前画面
\n \n \n 已添加 0/7 张\n
\n \n \n \n
\n 可上传 / 粘贴 / 拖拽参考图(最多 7 张)
\n \n \n
\n \n \n \n
\n \n \n
\n \n 请先添加参考图
\n 支持拖拽图片到此处,或按 Ctrl+V 粘贴图片
\n \n \n
\n \n \n \n \n
\n \n
\n \n
\n 视频延长工作区
\n \n \n \n \n \n
\n 请先选择或生成一个视频,工作区会始终展示当前视频。
\n \n \n
\n \n \n
\n \n \n \n \n \n
\n \n \n
\n \n \n \n
\n\n \n\n \n \n \n \n\n \n \n \n \n \n \n \n \n\n\n\n",
"public/pages/chat.html": "\n\n\n\n \n \n \n
\n
\n \n \n \n \n \n \n \n
\n \n
\n \n
\n\n \n \n
\n 就绪\n \n
\n Chat 聊天
\n通过 chat 接口与 Grok 进行会话聊天
\n\n
\n\n 输入一条消息开始对话。
\n \n \n \n
\n \n
\n \n \n \n
\n \n
\n \n \n
\n \n \n
\n \n
\n \n \n \n
\n \n \n
\n \n \n 0.8\n
\n \n \n
\n \n \n 0.95\n
\n \n \n \n
\n \n
\n \n
\n\n \n\n \n
\n NSFW 工作台
\n先生成 6 张候选图,再选中 1 张按 parentPostId 并行生成视频。
\n\n
\n 候选图:未开始
\n 视频:未开始
\n \n
\n\n \n
\n\n 生成参数
\n \n
\n \n \n \n
\n \n \n \n
\n \n \n \n
\n \n \n \n
\n \n \n \n
\n \n \n \n
\n \n \n \n
\n \n
\n 操作
\n \n \n \n \n \n \n \n \n
\n \n \n
\n\n \n
\n 候选图瀑布流
\n \n 点击“生成 6 张”开始
\n \n \n
\n \n
\n 视频结果
\n \n 选中候选图后可并行生成 1~4 个视频
\n \n \n \n \n \n
\n
\n\n \n\n \n \n \n \n \n \n \n \n\n\n\n",
"public/pages/imagine_workbench.html": "\n\n\n\n \n \n \n
\n \n \n \n
\n \n
\n \n \n \n
\n \n \n
\n 编辑中 0%
\n \n
\n 编辑历史
\n 0 条
\n 当前图片还没有编辑记录
\n \n \n
\n \n
\n\n \n\n \n
\n 图片编辑工作台
\n\n 支持上传/粘贴/拖拽最多 5 张参考图进行编辑;编辑后沿用上一次输出的 parentPostId 继续链路。\n
\n未开始
\n \n \n \n\n \n \n
\n 当前画面
\n\n \n \n \n 已添加 0/5 张\n
\n\n \n
\n\n 可上传 / 粘贴 / 拖拽参考图(最多 5 张)
\n \n \n
\n\n \n \n \n
\n \n \n
\n\n \n\n 请先添加参考图
\n 支持拖拽图片到此处,或按 Ctrl+V 粘贴图片
\n \n \n
\n\n \n \n \n \n
\n \n \n \n \n
\n\n \n \n
\n 编辑中 0%
\n \n
\n 编辑历史
\n \n 执行编辑后会在这里记录历史版本
\n \n \n \n
\n\n \n\n \n \n \n \n\n\n\n",
"admin/pages/config.html": "\n\n\n\n \n \n \n
\n \n
\n\n \n\n \n
\n \n 配置管理
\n管理 API 密钥及系统参数设置。
\n\n
\n\n 加载中...
\n \n
\n \n
\n\n \n\n \n
\n 缓存管理
\n管理本地资源与在线资产缓存。
\n\n
\n\n \n
\n\n \n
\n \n
\n 本地图片
\n \n 0\n 个文件\n
\n \n
\n 0 MB
\n \n \n
\n\n \n
\n \n
\n 本地视频
\n \n 0\n 个文件\n
\n \n
\n 0 MB
\n \n \n
\n \n
\n \n
\n 在线资产
\n \n 0\n 个文件\n
\n 连接正常
\n \n \n
\n\n \n
\n \n \n \n
\n
\n | \n \n | \n文件 | \n大小 | \n时间 | \n操作 | \n
|---|
\n
\n \n \n \n
\n
\n | \n \n | \n文件 | \n大小 | \n时间 | \n操作 | \n
|---|
\n \n \n
\n
\n\n | \n \n | \nToken | \n类型 | \n资产数 | \n上次清空时间 | \n操作 | \n
|---|
暂无可用账号
\n