地下扩展生成器
Loading...
Underground Extension Generator
准备构建 ↺

Underground 扩展程序生成器

描述您的扩展程序,生成代码,使用 AI 进行优化,然后导出到 Chrome、Edge、Firefox、Opera 或 Safari。

赞助

通过保持此空间供赞助商使用来支持免费的 Forge。

01

扩展简介

* 必填
扩展名称 *
它应该做什么? *
无限制 — 尽情详细描述。
作者
权限
✓storage在本地保存设置 ✓activeTab读取当前标签页 ✓tabs管理浏览器标签页

使用 AI 生成

可选。使用内置模型,价格从免费到每条消息 999 积分不等,或者使用您自己的 OpenRouter 密钥。

0–999 CREDITS
AI 引擎
内置模型每条消息 0–999 积分 OpenRouter 密钥使用您自己的密钥
内置模型 1 credit/msg
仅显示免费模型

任何方案均免费的模型无需积分。Pro 方案免费的模型包含在 Pro 方案中,否则按列出的价格收费。

每个内置模型都列出了其确切价格及相关限制。无需 API 密钥。

OpenRouter API 密钥
显示
模型 选择任意 OpenRouter 模型 ID,或选择“自定义”。

标准化简述
重置为 AI 版本
编辑标准化简报

此文本正是构建方案的基础 — 您可以更改其中的任何内容。

这份简报看起来没问题吗?

确认后,Forge 将添加样板代码、功能和特定于浏览器的详细信息。

编辑提示词展开并构建→
使用 AI 生成↗ 讨论与计划

内置模型通过您的套餐在此应用中运行。无需密钥。

生成入门套件→
02

您的入门套件

□复制文件
⌘
Tab TidyReact + Vite · MV3
已生成
Generated 还原文件
编辑文件内容

extension.spec.yaml 描述了扩展程序,PROMPT.md 可以从头开始重建它。两者都包含在每次导出中。

Bun · React · Vite · Tailwind · shadcn/ui

下载目标

下载文件↓ Download for Chrome↓ 所有 5 个浏览器 (.zip)↓
空白 Chrome 仓库 (.zip)↓

带有空 src/App.tsx 的相同仓库 — 无需先删除任何生成的内容。

03

App.tsx 工作室

一个单文件聊天机器人。请求更改,阅读新的 src/App.tsx,然后应用它。

— 暂无版本 App.tsx 基准测试 · 尚未运行

App.tsx 聊天

清除聊天
关于 App.tsx 的消息
回车发送 发送→

App.tsx 基准测试


              
            

src/App.tsx

代码 实时预览

                

恢复上一个版本 复制 下载 .tsx
弹出窗口 360px 填充宽度
重新加载 在新标签页中打开
index.html

App.tsx 版本

每个应用的更改都会保存在这里,最新的在前。

    04

    使用 AI 进行优化

    请求更改。每一个回答都可以更新计划并重新构建代码。

    — 暂无计划

    聊天

    清除聊天
    消息
    回车发送 发送→

    构建计划

    草稿

    当您生成或请求更改后,您的计划将显示在此处。

    
                根据此计划重建代码
              
    05

    扩展程序图标

    使用 Gemini 图像模型生成方形图标,然后将其包含在您的导出文件中。

    Nano Banana · Gemini 2.5 Flash 图像 未包含在导出中
    外观
    额外说明(可选)
    生成图标↗

    图标来自平台的 Gemini 图像模型,因此需要登录并拥有积分的账户。

    发送给模型的提示词
    
                  
                
                
    在导出中使用 下载 PNG 移除图标

    保留的图标将作为 icons/icon-16.png、icon-48.png 和 icon-128.png 添加到每个浏览器导出中。

    06

    版本与 git

    每次提交都会保存扩展的完整快照:历史记录、分支、差异以及可以在真实 git 中重建的标记版本。

    工作树

      提交信息
      版本标签
      补丁版本 次版本 主版本
      标签会成为变更日志中的发布版本,并设置 manifest.json 中的版本号。
      提交版本→

      每次提交都会存储当前所有文件的状态以及构建计划。

      历史记录

      分支 新建分支
      分支 创建分支 取消

      您的版本将在首次提交后显示在此处。

        还原会将旧版本放回编辑器中。之后请提交以保留它。

        仓库导出包含工作树、.gitignore、CHANGELOG、每个标记的版本以及一个可以在 git 中重建此历史记录的脚本。

        复制差异□ 导出 git 仓库 (.zip)↓
        清除历史记录
        07

        注入控制台

        自动将 99 组合代码输入到目标中。选择一个范围,设置按键速度,然后逐行运行宏。

        空闲

        运行控制

        DuckyScript
        按键速度
        0 毫秒以硬件速度注入。数值越大,输入越像真人。
        要注入的组合
        →
        1 到 99 涵盖了整个代码。章节在 11 页中深入运行 9 个动作。
        发送方式 合成按键事件不受信任,因此浏览器不会自动为其插入文本。“值 + 按键事件”会写入文本并分发 keydown、keypress 和 keyup 事件。
        开始 暂停 单步 停止
        注入进度
        组合0 / 99
        字符0
        输入时间0.0s

        此控制台驱动下方的沙盒。它无法将调试器附加到其他标签页——沙盒页面无法访问它们,此工具也不会尝试这样做。

        终端

        清除

          点击“开始”,每个宏行在运行时都会显示在这里。

          有效载荷脚本

            复制脚本□ 下载 .txt↓

            沙盒目标

            文本区域
            注入目标

            接收到的按键事件

              每个分发的 keydown、keypress 和 keyup 事件都会显示在这里。

              08

              在 Chrome 中测试

              在此处的浏览器副本中运行扩展,然后下载一个工具包,该工具包会打开一个加载了该扩展的临时 Chrome 浏览器。

              模拟浏览器

              重新加载弹出窗口 重新加载扩展
              + about:blank ×
              ×

                弹出窗口真实运行——React、Tailwind 和您编译的 src/App.tsx——浏览器 API 由此处响应,而不是由 Chrome 响应。它无法测试只有浏览器才能测试的内容:真实的权限提示、您真实的标签页以及其他网站。

                扩展内部

                存储 API 调用 工作线程

                扩展尚未保存任何内容。

                存储
                清除扩展存储

                打开弹出窗口,它发出的每一个浏览器调用都会显示在这里。

                  此工具包尚无后台工作线程。请让聊天机器人添加一个——它负责处理弹出窗口关闭时的闹钟、徽章和消息。

                    没有预定的闹钟。

                      真实的浏览器,未受影响

                      该工具包包含已解压的扩展以及适用于 Chrome、Edge、Opera 和 Firefox 的启动脚本。它们会在临时配置文件中打开浏览器,因此不会涉及您自己的浏览器、登录信息和扩展程序。

                      复制测试步骤□ 下载浏览器测试工具包 (.zip)↓
                      在真实浏览器中检查什么