Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ When an {% data variables.product.prodname_oauth_app %} wants to identify you by
> [!TIP]
> You must [verify your email address](/account-and-profile/how-tos/email-preferences/verifying-your-email-address) before you can authorize an {% data variables.product.prodname_oauth_app %}.

If you see “This account is flagged, and therefore cannot authorize a third party application” while authorizing an {% data variables.product.prodname_oauth_app %} or choosing **Continue with {% data variables.product.github %}**, your account has a restriction or is under review. This message isn't caused by missing email verification, organization approval, or SAML reauthorization. Retrying the authorization flow won't resolve the error while the restriction remains. For next steps, see [AUTOTITLE](/free-pro-team@latest/site-policy/acceptable-use-policies/github-appeal-and-reinstatement).

{% endif %}

## {% data variables.product.prodname_oauth_app %} access
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -161,13 +161,28 @@ Within each server definition, the following fields are available/required:
<tbody>
<tr>
<td nowrap><code>command</code></td>
<td nowrap>Yes</td>
<td>The command used to start the LSP server.</td>
<td nowrap>No</td>
<td>The command used to start the LSP server. At least one of <code>command</code>, <code>bash</code>, or <code>powershell</code> must be specified.</td>
</tr>
<tr>
<td nowrap><code>bash</code></td>
<td nowrap>No</td>
<td>A bash script to run instead of <code>command</code>, for servers that need shell features such as pipes or environment setup. Not used on Windows if <code>powershell</code> is also set.</td>
</tr>
<tr>
<td nowrap><code>powershell</code></td>
<td nowrap>No</td>
<td>A PowerShell script to run instead of <code>command</code>, used on Windows when set.</td>
</tr>
<tr>
<td nowrap><code>args</code></td>
<td nowrap>No</td>
<td>Arguments to pass to the command.</td>
<td>Arguments to pass to <code>command</code>. Ignored when the server is launched with <code>bash</code> or <code>powershell</code>.</td>
</tr>
<tr>
<td nowrap><code>cwd</code></td>
<td nowrap>No</td>
<td>The working directory to launch the server from. Defaults to the project root.</td>
</tr>
<tr>
<td nowrap><code>fileExtensions</code></td>
Expand Down Expand Up @@ -199,6 +214,16 @@ Within each server definition, the following fields are available/required:
<td nowrap>No</td>
<td>The timeout for the server's startup handshake in milliseconds (default: 60 seconds). If a server needs more time for initial project analysis, increase this value.</td>
</tr>
<tr>
<td nowrap><code>spawnTimeoutMs</code></td>
<td nowrap>No</td>
<td>The timeout for spawning the server process in milliseconds.</td>
</tr>
<tr>
<td nowrap><code>warmupTimeoutMs</code></td>
<td nowrap>No</td>
<td>The timeout for the server's warmup phase in milliseconds.</td>
</tr>
</tbody>
</table>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,10 +54,12 @@ You can share the content of the current session as a shareable link to the sess
> [!NOTE]
> You can use `/export` as an alias for `/share` in any of the commands below.

To share the session to {% data variables.product.github %} and print a shareable link, type the following in an interactive session:
Typing `/share` with no arguments opens a full-screen sharing menu where you can choose how to share the session. Opening this menu does not itself share or export anything.

To share the session to {% data variables.product.github %} and print a shareable link directly, type the following in an interactive session:

```copilot copy
/share
/share link
```

To stop sharing the session, type `/share off`.
Expand Down Expand Up @@ -240,6 +242,7 @@ The simplest way to delete sessions is to use the `/session` slash command in an
* `/session delete SESSION-ID` deletes a specific session. This shows a preview first; add `--yes` to confirm, for example `/session delete SESSION-ID --yes`.
* `/session delete-all` deletes all of your local sessions except the current one. Add `--yes` to confirm: `/session delete-all --yes`. Sessions that are in use by another process are skipped.
* `/session prune --older-than DAYS` deletes sessions older than the specified number of days. Add `--dry-run` to preview what would be deleted.
* `/session cleanup` shows a storage summary of your other local sessions, grouped by age, and suggests commands for deleting old sessions. It does not delete local or synced sessions. Use `/session prune --older-than DAYS --dry-run` to preview deletions, then remove `--dry-run` to delete those local sessions.

When you delete a session that has been synced to your account, `/session delete` asks whether you also want to delete the synced (remote) copy. Deleting the synced copy also removes the session from your `/chronicle` insights and query results. The `/session delete-all` and `/session prune` subcommands only affect local sessions and do not delete synced data. To remove synced data for those sessions, manually delete it from {% data variables.product.prodname_dotcom_the_website %}.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ This article explains how to enable and use remote control. For more conceptual
You can enable remote control in several ways:

* With a slash command during an interactive session.
* With a command-line option when you start {% data variables.copilot.copilot_cli_short %}.
* By configuring the CLI to enable remote control by default for all interactive sessions.
* From JetBrains IDE settings before you start a session.

Expand All @@ -53,16 +52,6 @@ The CLI connects to {% data variables.product.prodname_dotcom_the_website %} and

You can use the `/remote` slash command without an argument to check the current remote control status, or to redisplay the remote access details if remote control is currently enabled. If you want to end the remote connection for the current session, enter `/remote off`.

### Using the `--remote` command-line option

If you think you may want to access a session remotely, you can start the CLI with the `--remote` command-line option. This avoids the need to remember to use the `/remote` slash command during the session.

```bash copy
copilot --remote
```

Details for accessing the session remotely are displayed when the interactive session starts and can be displayed again at any time by using the `/remote` slash command.

### Configuring remote control to always be enabled

If you always want your interactive CLI sessions to be remotely accessible, add the following to your {% data variables.product.prodname_copilot_short %} settings file (typically located at `~/.copilot/settings.json`):
Expand All @@ -73,15 +62,6 @@ If you always want your interactive CLI sessions to be remotely accessible, add
}
```

To override this setting for a particular session, use the `--no-remote` option when you start the session:

```bash copy
copilot --no-remote
```

> [!NOTE]
> The command-line options `--remote` and `--no-remote` always take precedence over the `remote` setting in the settings file.

### Using JetBrains IDE settings

If you use {% data variables.copilot.copilot_cli_short %} from a JetBrains IDE, you can enable remote control from the IDE before you start a session.
Expand Down Expand Up @@ -163,10 +143,7 @@ On {% data variables.product.prodname_dotcom_the_website %}, a message tells you

## Preventing remote control

Remote control is disabled by default, but may be enabled in your {% data variables.product.prodname_copilot_short %} settings file (typically `~/.copilot/settings.json`). You can ensure a session is not remotely controllable by:

* **For a single session**: Start the CLI with `--no-remote` to prevent remote control for that session, regardless of your settings file value.
* **Permanently**: Remove the `"remoteSessions": true` setting from `~/.copilot/settings.json`, or set it to `false`.
Remote control is disabled by default, but may be enabled in your {% data variables.product.prodname_copilot_short %} settings file (typically `~/.copilot/settings.json`). You can ensure a session is not remotely controllable by removing the `"remoteSessions": true` setting from `~/.copilot/settings.json`, or setting it to `false`.

Enterprise owners can also restrict remote control of sessions hosted on your device using enterprise managed settings, regardless of your personal settings. Depending on the configured policy, remote control of sessions on your device may be disabled entirely, or only available to a controlling client that is SSO-authorized for specific organizations. This doesn't affect your ability to remotely control your own sessions hosted on other devices. See [AUTOTITLE](/copilot/reference/enterprise-administrators/enterprise-managed-settings).

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,21 @@ You can set a budget in your personal billing settings to receive alerts when yo
* **Bundled premium request budget** - Combines all premium requests into a single budget (Recommended for most users)
* **Individual SKU budgets** - Set separate budgets for each AI product (Copilot, {% data variables.product.prodname_spark_short %}, {% data variables.copilot.copilot_cloud_agent %})

To prevent paid premium-request overages while keeping your annual {% data variables.product.prodname_copilot_short %} subscription:

{% data reusables.user-settings.access_billing_settings_url %}

1. Click **Budgets and alerts**.
1. Create or edit a bundled premium request budget covering all premium-request SKUs, or individual SKU budgets covering every applicable premium-request SKU.
1. Set each budget to **$0 USD**, enable **Stop usage when budget limit is reached**, and save your changes.

This blocks additional paid premium requests after your included monthly allowance is exhausted without canceling your subscription.

> [!NOTE]
> Deleting a budget is not a substitute for this configuration and can remove spending limits.

For configuration steps, see [AUTOTITLE](/billing/how-tos/set-up-budgets#managing-budgets-for-your-personal-account).

## Monitoring usage

* Track your monthly usage in your IDE, in {% data variables.product.prodname_copilot_short %} settings on {% data variables.product.prodname_dotcom %}, or by downloading a usage report.
Expand Down
2 changes: 2 additions & 0 deletions content/copilot/reference/copilot-cli-reference/acp-server.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,8 @@ copilot --acp --port 3000 --effort=max --available-tools="bash,view"

Every session the connected client opens against that server inherits those settings. Because the values are fixed when the server starts, a client cannot change them per session through `session/new`.

Sessions also honor saved sandbox settings and the `--sandbox` and `--no-sandbox` options, including when a session is resumed. An enterprise-managed policy that enforces sandboxing will override `--no-sandbox`.

### stdio mode

stdio mode is inferred by default when you start the ACP server. You can also use the `--stdio` option for disambiguation.
Expand Down
Loading
Loading