编程与开发者工具

免费代码重构助手.

保留预期行为的重构草案。

用现有行为示例规划聚焦的重构,并在替换原始实现前检查差异。

需要 Chrome 扩展程序和账号。
每月 25 次免费自动化任务,所有工具共享。受浏览器连接提供方的限制约束。

需要准备的内容

代码和请求的结构变更。

开始使用

可按需调整的任务。

在这里复制,准备好后粘贴到 WebAct。

本页用于准备提示词,任务在 WebAct 中运行。

01

按需调整任务。

检查上方提示词,添加你的目标和重要要求。

02

带到 WebAct 中。

打开 WebAct,粘贴任务并提供原始材料。需要草稿或解释时先用 Chat;需要经批准的浏览器操作或文件时使用 Task。

03

检查有用的部分。

在合适的运行环境中,用已知输入验证公式、代码和计算。执行前检查操作,并保留原始数据。

实用指南

如何在保留行为的同时重构代码。

除非明确要求变更,重构应保留可观察行为。找出能检测意外差异的测试或示例。

按任务需求调整流程。

明确必须保持不变的行为,并确定要处理的重复或复杂性。进行范围有限的结构变更,再将已知情况、错误和副作用与原版比较。

你需要提供什么
代码和请求的结构变更。
你会得到什么
保留预期行为的重构草案。

查看输入和结果。

演示用输入和输出 · 教学示例,并非 WebAct 实时运行结果

示例 个输入项

Refactor this Python function without changing its result or empty-name error:
def label(name, loud):
    if loud:
        if not name:
            raise ValueError("name required")
        return name.upper()
    if not name:
        raise ValueError("name required")
    return name.lower()

完整示例

def label(name, loud):
    if not name:
        raise ValueError("name required")
    return name.upper() if loud else name.lower()

Checks: label("Ada", True) → "ADA"; label("Ada", False) → "ada". An empty string raises ValueError("name required") in both modes.
下载此示例

将这份输入载入提示词,再复制到 WebAct 中尝试任务。实际结果可能与示例不同。

决策与问题排查。

重构可以故意改变错误行为吗?

只有当该行为变更属于请求内容时才可以。否则保留它,或将其拆分为明确的后续决定。

为什么提取公共代码会改变某个分支的结果?

检查执行顺序、状态和分支专有条件。看似相似的代码可能在不同假设下运行。

使用自己的资料试一试。

将任务提示词中的示例换成你的材料。保留所需条件,再把任务复制到 WebAct。

自定义并复制任务 ↑
开始之前

使用 WebAct。

提示词和示例在本页提供。请在 WebAct Chrome 扩展中运行任务。

这个工具免费吗?

你可以在这里免费复制和编辑提示词。要在 WebAct 中使用,请安装 Chrome 扩展,创建并验证账户,然后连接可用的浏览器 ChatGPT 会话。Free 方案每自然月包含 25 次由用户发起的自动化任务,所有工具共享。普通浏览器 Chat 单独计算;仍受提供方限制约束。

有关共享上下文,请参阅我们的 隐私政策 以及如何选择 Chat 或 Task.

从提示词到你的实际工作

将任务带到页面上。

安装 WebAct,加入原始材料,再按需调整结果。

安装 WebAct