# 在 GitHub Copilot 命令行界面 (CLI) 中安排提示词

使用 /every 和 /after / 命令，可按周期性计划或在指定延迟后将提示提交到 Copilot。

> \[!NOTE]
> 和`/every``/after`命令目前是实验性功能，仅当已使用`/experimental on`斜杠命令或`--experimental`命令行选项时才可用。

在交互式 Copilot 命令行界面（CLI） 会话中，可以计划自动提交提示。 如果要 Copilot 定期重复任务或在延迟后执行一次性任务，而无需记住手动提交提示，这非常有用。

对此有两个斜杠命令：

* `/every` — 安排按固定间隔**重复**发送提示。
* `/after` — 安排在指定时间段后发送 **一次**的提示。

这两个命令仅在交互式 Copilot 命令行界面（CLI） 会话中可用：仅当创建它们的会话正在运行时，计划才会触发。 有关在未打开任何会话时按计划运行 Copilot 命令行界面（CLI） 的方法，请参阅本文末尾的 [从外部计划程序运行提示](#running-a-prompt-from-an-external-scheduler)。

## 使用 `/every` 安排重复提示

在交互式 Copilot 命令行界面（CLI） 会话中，键入 `/every`，然后输入一个时间间隔和您想要提交的提示。

```copilot
/every INTERVAL PROMPT
```

提示将在指定的时间间隔过后提交，然后再次按相同的节奏提交，直到删除计划条目或结束交互式 CLI 会话。

### 示例

```copilot
/every 1h run the test suite and summarize any new failures
```

```copilot
/every 30m check for new comments on my open pull requests
```

## 使用 `/after` 设置一次性提示

键入 `/after`，然后输入一个延迟时间和你要提交的提示词：

```copilot
/after DELAY PROMPT
```

在延迟时间结束后，该提示会触发一次，随后从调度列表中移除。

### 示例

```copilot
/after 30m Give me details of changes to README.md made in the last 30 minutes
```

```copilot
/after 10m Check that the address finder is visible on example.com/register
```

## 计划技能

你可以使用 `/every` 和 `/after` 为技能设置计划。 为此，可以使用斜杠命令显式引用技能，也可以使用自然语言告诉 Copilot 运行技能。

> \[!NOTE]
> 只有可由用户调用的技能才能以这种方式设为计划任务。 不能在计划的提示中包含内置斜杠命令（例如 `/clear`）。

### 示例

```copilot
/after 2h Use the docx skill to create a new file summarizing recent changes to this repo
```

```copilot
/every 1d /refactor-plan Adjust the architecture of this project to improve the responsiveness of the client UI
```

## 间隔和延迟语法

| 后缀  | 单位      | 示例    |
| --- | ------- | ----- |
| `s` | seconds | `30s` |
| `m` | minutes | `5m`  |
| `h` | hours   | `2h`  |
| `d` | days    | `1d`  |

没有后缀的裸数字被解释为分钟数，例如， `/every 30 remind me to check for Slack messages` 每隔 30 分钟计划一次提示。

最小间隔为 **10 秒** ，最大值为 **1 天** （24 小时）。

## 识别会话中已安排的提示

当计划提示被触发时，Copilot 会在提示前加上诸如 `[Scheduled prompt #4]` 之类的文本，以便将其与您自己键入的提示区分开来。

可以使用 ID 取消计划。 例如，通过输入 `stop prompt 4`。

## 管理定时提示

若要列出当前会话的活动计划，请键入 `/every` 或 `/after` 不使用参数。

若要删除计划，请使用键盘上的箭头键在列表中移动，然后选择要删除的计划，然后按 <kbd>d</kbd>。

按 <kbd>Esc</kbd> 退出计划列表。

## 关闭并重新打开会话时会发生什么情况

计划提示仅限于其创建时所在的会话，并且只有在该会话运行期间才会被触发。

当你重新打开会话时（使用 `--continue` 或 `--resume` 命令行选项），计划任务会重新启动，并且计划任务触发前的间隔时间从你重新打开会话的那一刻开始计算。

如果在关闭会话之前，`/after`计划任务尚未触发，它会保留在计划列表中，并在重新打开会话后经过指定的延迟时间触发。

## 从外部调度程序运行提示

`/every` 和 `/after` 命令仅在交互式 Copilot 命令行界面（CLI） 会话处于打开状态时运行。 如果你希望某个提示即使在没有活动会话时也能按计划运行，可以通过外部计划程序运行 Copilot 命令行界面（CLI），例如在 macOS 或 Linux 上使用 **cron**，或在 Windows 上使用 **任务计划程序**。

若要以编程方式运行 Copilot 命令行界面（CLI） ，请使用语法 `copilot -p "YOUR PROMPT"`。 CLI 在不显示交互式界面的情况下处理提示，然后退出。

这对于以下任务非常有用：

* **每晚维护** — 例如，每晚针对某个分支上的最新更改运行测试套件，并将摘要发布到跟踪议题中。
* **定期依赖项检查** - 例如，打开每周拉取请求来更新依赖项，并针对结果运行测试套件。
* **计划报告** - 例如，生成分配给你的新问题或拉取请求的每日摘要，以及通过电子邮件发送或将其发布到聊天频道。

有关详细信息，请参阅“[以编程方式运行GitHub Copilot 命令行界面 (CLI)](/zh/copilot/how-tos/copilot-cli/automate-copilot-cli/run-cli-programmatically)”。

## 延伸阅读

* [GitHub Copilot CLI 命令参考](/zh/copilot/reference/copilot-cli-reference/cli-command-reference#slash-commands-in-the-interactive-interface)