https://code.visualstudio.com/docs/agents/reference/workspace-context
weekly
diff --git a/docs/agents/images/chat-pet/click-button-v2.png b/docs/agents/images/chat-pet/click-button-v2.png
new file mode 100644
index 0000000000..4ce0327bd5
--- /dev/null
+++ b/docs/agents/images/chat-pet/click-button-v2.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4c17bd42dc0cdb2eb6d0d272fbd854c81bb4ec1321e1041711868a9e7bca72bf
+size 49236
diff --git a/docs/agents/images/chat-pet/click-cool.png b/docs/agents/images/chat-pet/click-cool.png
new file mode 100644
index 0000000000..716b89fea4
--- /dev/null
+++ b/docs/agents/images/chat-pet/click-cool.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:9bd5d9554ad2165e1466644d4cf1dd61d1bb421a85a2a9f71dbaf5238fa8313d
+size 56021
diff --git a/docs/agents/images/chat-pet/click-love.png b/docs/agents/images/chat-pet/click-love.png
new file mode 100644
index 0000000000..2b390530bf
--- /dev/null
+++ b/docs/agents/images/chat-pet/click-love.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:92367430228cb63dcb36b27c4fb3a29efdd5539f0bab70792a6eb3213b32ffff
+size 49022
diff --git a/docs/agents/images/chat-pet/click-sing-v2.png b/docs/agents/images/chat-pet/click-sing-v2.png
new file mode 100644
index 0000000000..c9505fbc3e
--- /dev/null
+++ b/docs/agents/images/chat-pet/click-sing-v2.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:63e70680a08dd23ea63d70798d77196b33147bdd97eae5dbd8022c06d176cc8f
+size 82341
diff --git a/docs/agents/images/chat-pet/click-speechless.png b/docs/agents/images/chat-pet/click-speechless.png
new file mode 100644
index 0000000000..9743599c64
--- /dev/null
+++ b/docs/agents/images/chat-pet/click-speechless.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:31c70c1731e4f64754a32e212cd8527f4c911cf23e84e9373ac67e85d42e74ab
+size 45849
diff --git a/docs/agents/images/chat-pet/click-worry.png b/docs/agents/images/chat-pet/click-worry.png
new file mode 100644
index 0000000000..86476e9d25
--- /dev/null
+++ b/docs/agents/images/chat-pet/click-worry.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:dbeb74d906fc7c3bef7b199ae10d594e0afa32330a66bb7900c63bc0052ea851
+size 43047
diff --git a/docs/agents/images/chat-pet/click-yap-static.png b/docs/agents/images/chat-pet/click-yap-static.png
new file mode 100644
index 0000000000..322a1201a4
--- /dev/null
+++ b/docs/agents/images/chat-pet/click-yap-static.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:e874d7325bf813c02d23ef348c1abd9db024d2bcb2352fcfa7af0b1675c1af75
+size 2756
diff --git a/docs/agents/images/chat-pet/cursor-gaze.png b/docs/agents/images/chat-pet/cursor-gaze.png
new file mode 100644
index 0000000000..48236274b0
--- /dev/null
+++ b/docs/agents/images/chat-pet/cursor-gaze.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:dcca486acddeb385c466c8ea1fbb7476f451dc14280f446a70e8f9e60a82626b
+size 99299
diff --git a/docs/agents/images/chat-pet/dizzy.png b/docs/agents/images/chat-pet/dizzy.png
new file mode 100644
index 0000000000..74503570b2
--- /dev/null
+++ b/docs/agents/images/chat-pet/dizzy.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:567ccc270ee1925c40c7046db36b18c289cafd1b5fb946537ac0e51dc9138345
+size 96555
diff --git a/docs/agents/images/chat-pet/drag-drop-v2.png b/docs/agents/images/chat-pet/drag-drop-v2.png
new file mode 100644
index 0000000000..928e5d7b68
--- /dev/null
+++ b/docs/agents/images/chat-pet/drag-drop-v2.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:78b374e1fea493b8f71e67ebe5dbe1d7c7d951752d479759b3fbfdbee445d872
+size 67568
diff --git a/docs/agents/images/chat-pet/fall-respawn-pr330399.png b/docs/agents/images/chat-pet/fall-respawn-pr330399.png
new file mode 100644
index 0000000000..1c7057fae1
--- /dev/null
+++ b/docs/agents/images/chat-pet/fall-respawn-pr330399.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:189c6374f96c3f00ac55165cbac81c63be03791cc9e5ce048727afddde1a395a
+size 114165
diff --git a/docs/agents/images/chat-pet/grow-shrink.png b/docs/agents/images/chat-pet/grow-shrink.png
new file mode 100644
index 0000000000..5365222f44
--- /dev/null
+++ b/docs/agents/images/chat-pet/grow-shrink.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:c63024afe7a581b4ac7bde9d37a990c01daa07c06eda175e07cc32483694ccc6
+size 87434
diff --git a/docs/agents/images/chat-pet/keyboard-hop.png b/docs/agents/images/chat-pet/keyboard-hop.png
new file mode 100644
index 0000000000..ce0e0f3d97
--- /dev/null
+++ b/docs/agents/images/chat-pet/keyboard-hop.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:67c2f138295c7e5220f767105aca200a7f065c5a70a1f5582dbab253847ca250
+size 49126
diff --git a/docs/agents/images/chat-pet/needs-input.png b/docs/agents/images/chat-pet/needs-input.png
new file mode 100644
index 0000000000..5a026f22d0
--- /dev/null
+++ b/docs/agents/images/chat-pet/needs-input.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:a3aa5dc4f3cddf82a8a6bd9a3e55caf54d9e77c09601616d404053fc63ff58a6
+size 90903
diff --git a/docs/agents/images/chat-pet/on-the-run-v2.png b/docs/agents/images/chat-pet/on-the-run-v2.png
new file mode 100644
index 0000000000..b05c27397c
--- /dev/null
+++ b/docs/agents/images/chat-pet/on-the-run-v2.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:7df2478b1bf3d3afe95c59fd17deaa3af56ffb83eedb97e34e7f6bbe3e69ec03
+size 74715
diff --git a/docs/agents/images/chat-pet/processing.png b/docs/agents/images/chat-pet/processing.png
new file mode 100644
index 0000000000..ba3610c5d4
--- /dev/null
+++ b/docs/agents/images/chat-pet/processing.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:39b8f3d2a111344daa8c367ebe7448b35b002f4d37dc52812f369ed775b63578
+size 48475
diff --git a/docs/agents/images/chat-pet/sleep-wake-pr330399.png b/docs/agents/images/chat-pet/sleep-wake-pr330399.png
new file mode 100644
index 0000000000..e031e2fa36
--- /dev/null
+++ b/docs/agents/images/chat-pet/sleep-wake-pr330399.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:dd188ce27a1ab618981a3e128c0e2f923f487262a2b4b88e625ac32186d01564
+size 56307
diff --git a/docs/agents/images/chat-pet/toggle.png b/docs/agents/images/chat-pet/toggle.png
new file mode 100644
index 0000000000..f129aa6f97
--- /dev/null
+++ b/docs/agents/images/chat-pet/toggle.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:dae04a87a72a23c0c4307e38f5e0497e8a04f17922f332be48663adb1fadb5a3
+size 33223
diff --git a/docs/agents/images/chat-pet/typing-v2.png b/docs/agents/images/chat-pet/typing-v2.png
new file mode 100644
index 0000000000..d6581adb96
--- /dev/null
+++ b/docs/agents/images/chat-pet/typing-v2.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:795094d48779826406290a41cc9aa866e62a5430789b60ad779bed70fad0e473
+size 22456
diff --git a/docs/agents/reference/chat-pet.md b/docs/agents/reference/chat-pet.md
new file mode 100644
index 0000000000..240ace0f1d
--- /dev/null
+++ b/docs/agents/reference/chat-pet.md
@@ -0,0 +1,70 @@
+---
+ContentId: 587745a8-bc1a-4a6c-9570-93c10066cbe2
+DateApproved: 9/2/2026
+MetaDescription: Explore every VS Code pet interaction and reaction, including chat activity, movement, activation surprises, achievements, colors, and sizing.
+MetaSocialImage: ../images/shared/github-copilot-social.png
+---
+
+# VS Code pet interactions and reactions
+
+`feature(chat-pet)`
+
+The {% data variables.product.prodname_vscode %} pet sits above the chat input box and reacts as you work with agents. This reference lists the pet's reactions to chat activity, movement, direct interactions, and context-menu actions.
+
+
+
+To learn how to show, hide, and control the pet, see [Personalize chat](/docs/chat/chat-overview.md#use-the-vs-code-pet).
+
+## Chat activity reactions
+
+| Activity | Pet reaction | Preview |
+|----------|--------------|---------|
+| Move the pointer around the chat input | Its pupils follow the pointer. |  |
+| Type a prompt | It works at its tiny terminal. |  |
+| Wait for a request to run | It thinks with an animated speech bubble. |  |
+| Respond to a confirmation or question | It claps when the agent needs your input. |  |
+| Leave chat idle for 20 seconds | It falls asleep as a sleep bubble grows and drifts from its nose. Interact with the pet or type in the input box to wake it. |  |
+| Finish a response | It performs the button-press celebration. |  |
+
+## Movement reactions
+
+| Interaction | Pet reaction | Preview |
+|-------------|--------------|---------|
+| Drag and drop | The pet follows the pointer until you release it. |  |
+| Flick | The pet continues in the direction of the gesture before gravity pulls it down. | |
+| Press `kbstyle(Left)` or `kbstyle(Right)` | The pet hops along the input box until it reaches an edge. |  |
+| Press `kbstyle(Shift+Left)` or `kbstyle(Shift+Right)` | The pet is thrown toward a wall. | |
+| Move the pointer quickly between the pet's left and right sides, or alternate the arrow keys | The pet becomes dizzy. |  |
+| Drop or throw the pet past the input box | The pet falls into a despawn effect at the bottom of chat, reappears at the top, and lands on the input box. |  |
+
+## Activation reactions
+
+Select the pet while it is resting, or focus it and press `kbstyle(Enter)` or `kbstyle(Space)`, to trigger one of these reactions at random. The pet doesn't immediately repeat its previous reaction.
+
+| Reaction | Behavior | Preview |
+|----------|----------|---------|
+| Button press | Presses its red button. |  |
+| Heart | Reacts with hearts. |  |
+| Cool | Puts on sunglasses. |  |
+| VS Code | Lies on its side and yaps. |  |
+| Sing | Sings a musical note. |  |
+| Speechless | Becomes speechless. |  |
+| Worry | Looks worried. |  |
+
+## Achievements and context-menu actions
+
+When you unlock an achievement, a gold star appears on the pet for 10 seconds. Select the pet while the star is visible to open **Achievements**.
+
+Open the pet's context menu to access these actions:
+
+| Action | Behavior | Preview |
+|--------|----------|---------|
+| **Achievements** | View locked and unlocked achievements and their accessory rewards. | |
+| **Go on the Run** or **Come Back** | The pet ducks out of sight, occasionally peeks into chat, and returns when called. |  |
+| **Grow**, **Shrink**, or **Reset Size** | Resize the pet in 20 percent steps, or restore its default size. You can shrink it to 40 percent or continue to grow it. |  |
+| **Stable Colors** or **Insiders Colors** | Switch the pet between the Stable blue and Insiders green color variants. |  |
+
+## Related resources
+
+* [Use chat in {% data variables.product.prodname_vscode_shortname %}](/docs/chat/chat-overview.md)
+* [Use the {% data variables.copilot.agents_window %}](/docs/agents/run/agents-window.md)
diff --git a/docs/agents/run/agents-window.md b/docs/agents/run/agents-window.md
index 26c14d9ba5..b8ffa67298 100644
--- a/docs/agents/run/agents-window.md
+++ b/docs/agents/run/agents-window.md
@@ -312,26 +312,9 @@ Supported agent host sessions can contain multiple independent chats that share
The {% data variables.copilot.agents_window %} shares your GitHub account, {% data variables.product.prodname_vscode_shortname %} settings, and default profile with the main {% data variables.product.prodname_vscode_shortname %} window. Configure the following options when you want to adjust the agent-first experience.
-### Customize the chat background
+### Personalize chat
-`feature(agents-window-chat-backgrounds)`
-
-Add a decorative background to the chat area of the {% data variables.copilot.agents_window %} without changing chat in the main {% data variables.product.prodname_vscode_shortname %} window.
-
-To set a background, run the **Chat: Set Background...** command from the Command Palette (`kb(workbench.action.showCommands)`) or right-click an empty area of the chat. Then, choose one of these options:
-
-* **Codicons**: use a theme-aware pattern of built-in {% data variables.product.prodname_vscode_shortname %} icons.
-* **Image...**: select an image from your machine.
-* **Recently used**: reuse one of your five most recent background images.
-
-For an image background, run **Chat: Change Background Layout...** to repeat, stretch, center, or position the image along an edge or in a corner. Moving through the layout options previews each one. Select an option to save it, or dismiss the picker to restore the previous layout.
-
-To remove the background for the current color theme, run **Chat: Clear Background**.
-
-> [!NOTE]
-> Light and dark color themes have separate backgrounds. Background choices are stored on the current machine and don't sync, while the image layout syncs across devices.
-
-Backgrounds are hidden in high contrast themes to preserve chat readability. The background commands are also unavailable while a high contrast theme is active.
+Add a decorative chat background, enable the interactive VS Code pet, or adjust how chat content appears. Learn how to [personalize chat](/docs/chat/chat-overview.md#personalize-chat).
### Customize agents for your project and workflow
diff --git a/docs/chat/chat-overview.md b/docs/chat/chat-overview.md
index 8542c37c0c..ffd90b875e 100644
--- a/docs/chat/chat-overview.md
+++ b/docs/chat/chat-overview.md
@@ -1,14 +1,14 @@
---
ContentId: 557a7e74-f77e-488d-90ea-fd2cfecfffda
DateApproved: 9/2/2026
-MetaDescription: Learn how to use chat in {% data variables.product.prodname_vscode_shortname %}. Access different chat surfaces, send a request, add context, write effective prompts, and review AI-generated changes.
+MetaDescription: Use chat in {% data variables.product.prodname_vscode_shortname %} to send requests, add context, personalize chat, and review AI-generated changes.
MetaSocialImage: ../images/shared/github-copilot-social.png
---
# Use chat in {% data variables.product.prodname_vscode_shortname %}
Chat in {% data variables.product.prodname_vscode %} lets you use natural language for interacting with AI agents. Ask questions about your code, get help understanding complex logic, generate new features, fix bugs, and more, all through a conversational interface.
-This article describes the mechanics of how to interact with chat: how to send a request, add context, choose a language model, write effective prompts, and review AI-generated changes. These mechanics apply to all chat surfaces in {% data variables.product.prodname_vscode_shortname %}. For an overview of what agents can do and how to configure a session, see [Build with agents in {% data variables.product.prodname_vscode_shortname %}](/docs/agents/overview.md).
+This article describes the mechanics of how to interact with chat: how to send a request, add context, choose a language model, personalize chat, write effective prompts, and review AI-generated changes. These mechanics apply to all chat surfaces in {% data variables.product.prodname_vscode_shortname %}. For an overview of what agents can do and how to configure a session, see [Build with agents in {% data variables.product.prodname_vscode_shortname %}](/docs/agents/overview.md).
Follow a hands-on tutorial to build an app with AI agents in {% data variables.product.prodname_vscode_shortname %}.
@@ -128,12 +128,6 @@ Both settings have three possible values:
> [!TIP]
> Set the value to `always` if you want to stay aware of chat activity while working in other parts of {% data variables.product.prodname_vscode_shortname %}, such as when running long agent tasks in the background.
-## Show request and completion timestamps
-
-Chat can show timestamps for when you send a request and when a response completes. Hover over a completion timestamp to see elapsed response time.
-
-Use `setting(chat.verbose)` to enable or disable these timestamps.
-
## Find text in a chat session
Press `kb(workbench.action.chat.find)` to search the entire conversation. Find is available in the {% data variables.copilot.chat_view %}, chat editor tabs, and the {% data variables.copilot.agents_window %}. It searches prompts and responses, including off-screen content and code blocks.
@@ -152,6 +146,61 @@ Use the following keyboard shortcuts to navigate between prompts in a chat sessi
* `kb(workbench.action.chat.previousCodeBlock)`: Go to the previous code block in the chat session.
* `kb(workbench.action.chat.nextCodeBlock)`: Go to the next code block in the chat session.
+## Personalize chat
+
+Adjust how chat content appears, add an interactive pet, or set a decorative background in the {% data variables.copilot.agents_window %}.
+
+### Customize the chat display
+
+Use these settings to adjust the chat transcript:
+
+| Display option | Settings |
+|----------------|----------|
+| Markdown font | Set the font family with `setting(chat.fontFamily)` and the font size with `setting(chat.fontSize)`. |
+| Code block font and layout | Set the font family, size, weight, and line height with `setting(chat.editor.fontFamily)`, `setting(chat.editor.fontSize)`, `setting(chat.editor.fontWeight)`, and `setting(chat.editor.lineHeight)`. Control line wrapping with `setting(chat.editor.wordWrap)`. |
+| Sticky prompts | Use `setting(chat.stickyScroll.enabled)` to pin the current prompt to the top of the transcript while you scroll. |
+| Request timestamps | Use `setting(chat.verbose)` to show or hide request and completion timestamps. Hover over a completion timestamp to view the elapsed response time. |
+
+For more chat preferences, see the [AI settings reference](/docs/agents/reference/ai-settings.md#chat-experience).
+
+### Use the VS Code pet
+
+`feature(chat-pet)`
+
+The interactive VS Code pet sits above the chat input box and reacts to chat activity and your interactions. Type `/vscode-pet` in the chat input to show or hide it. In the new-session view of the {% data variables.copilot.agents_window %}, you can also right-click outside the input box and select the **Pet (/vscode-pet)** item.
+
+Interact with the pet in the following ways:
+
+* Select the pet to trigger a reaction. With the keyboard, press `kbstyle(Tab)` to focus it, and then press `kbstyle(Enter)` or `kbstyle(Space)`.
+* Drag the pet around chat and release it to drop it. You can also flick it to throw it.
+* When the pet has keyboard focus, press `kbstyle(Left)` or `kbstyle(Right)` to make it hop. Hold `kbstyle(Shift)` with an arrow key to throw it toward a wall.
+* Right-click the pet to open its context menu and view achievements, send it on the run, resize it, or switch between Stable and Insiders colors. With the keyboard, focus the pet and press `kbstyle(Shift+F10)`.
+
+Only one pet appears at a time in the active chat surface. Its position and size are shared across chats and windows and persist after you restart {% data variables.product.prodname_vscode_shortname %}.
+
+For a complete list of behaviors, see the [VS Code pet interactions and reactions reference](/docs/agents/reference/chat-pet.md).
+
+### Customize the {% data variables.copilot.agents_window %} chat background
+
+`feature(agents-window-chat-backgrounds)`
+
+Add a decorative background to the chat area of the {% data variables.copilot.agents_window %} without changing chat in the main {% data variables.product.prodname_vscode_shortname %} window.
+
+To set a background, run the **Chat: Set Background...** command from the Command Palette (`kb(workbench.action.showCommands)`) or right-click an empty area of the chat. Then, choose one of these options:
+
+* **Codicons**: use a theme-aware pattern of built-in {% data variables.product.prodname_vscode_shortname %} icons.
+* **Image...**: select an image from your machine.
+* **Recently used**: reuse one of your five most recent background images.
+
+For an image background, run **Chat: Change Background Layout...** to repeat, stretch, center, or position the image along an edge or in a corner. Moving through the layout options previews each one. Select an option to save it, or dismiss the picker to restore the previous layout.
+
+To remove the background for the current color theme, run **Chat: Clear Background**.
+
+> [!NOTE]
+> Light and dark color themes have separate backgrounds. Background choices are stored on the current machine and don't sync, while the image layout syncs across devices.
+
+Backgrounds are hidden in high contrast themes to preserve chat readability. The background commands are also unavailable while a high contrast theme is active.
+
## Get better responses
Chat provides several ways to improve the quality and relevance of AI responses:
diff --git a/docs/toc.json b/docs/toc.json
index a3f47c82d2..69f4e3a935 100644
--- a/docs/toc.json
+++ b/docs/toc.json
@@ -113,6 +113,7 @@
"topics": [
["Cheat Sheet", "/docs/agents/reference/ai-features-cheat-sheet"],
["Settings Reference", "/docs/agents/reference/ai-settings"],
+ ["VS Code Pet", "/docs/agents/reference/chat-pet"],
["MCP Configuration", "/docs/agents/reference/mcp-configuration"],
["Hooks Reference", "/docs/agents/reference/hooks-reference"],
["OpenTelemetry Monitoring", "/docs/agents/guides/monitoring-agents"]