diff --git a/website/src/content/docs/learning-hub/copilot-configuration-basics.md b/website/src/content/docs/learning-hub/copilot-configuration-basics.md index c525f89be..c4dffae92 100644 --- a/website/src/content/docs/learning-hub/copilot-configuration-basics.md +++ b/website/src/content/docs/learning-hub/copilot-configuration-basics.md @@ -3,7 +3,7 @@ title: 'Copilot Configuration Basics' description: 'Learn how to configure GitHub Copilot at user, workspace, and repository levels to optimize your AI-assisted development experience.' authors: - GitHub Copilot Learning Hub Team -lastUpdated: 2026-03-28 +lastUpdated: 2026-03-30 estimatedReadingTime: '10 minutes' tags: - configuration @@ -412,10 +412,19 @@ GitHub Copilot CLI has two commands for managing session state, with distinct be | Command | Behaviour | |---------|-----------| | `/new [prompt]` | Starts a fresh conversation while keeping the current session backgrounded. You can switch back to backgrounded sessions. | -| `/clear [prompt]` | Abandons the current session entirely and starts a new one. Backgrounded sessions are not affected. | +| `/clear [prompt]` | Abandons the current session entirely and starts a new one. Backgrounded sessions are not affected. MCP servers configured in your project are preserved in the new session. | Both commands accept an optional prompt argument to seed the new session with an opening message, for example `/new Add error handling to the login flow`. +The `/session rename` command renames the current session. When called **without a name argument**, it automatically generates a session name based on the conversation history: + +``` +/session rename # auto-generate a name from conversation history +/session rename "My feature" # set a specific name +``` + +Auto-generated names help you find sessions quickly when switching between multiple backgrounded sessions. + The `/rewind` command opens a timeline picker that lets you roll back the conversation to any earlier point in history, reverting both the conversation and any file changes made after that point. You can also trigger it by pressing **double-Esc**: ``` diff --git a/website/src/content/docs/learning-hub/installing-and-using-plugins.md b/website/src/content/docs/learning-hub/installing-and-using-plugins.md index 0931cadc5..8688d743a 100644 --- a/website/src/content/docs/learning-hub/installing-and-using-plugins.md +++ b/website/src/content/docs/learning-hub/installing-and-using-plugins.md @@ -3,7 +3,7 @@ title: 'Installing and Using Plugins' description: 'Learn how to find, install, and manage plugins that extend GitHub Copilot CLI with reusable agents, skills, hooks, and integrations.' authors: - GitHub Copilot Learning Hub Team -lastUpdated: 2026-03-22 +lastUpdated: 2026-03-30 estimatedReadingTime: '8 minutes' tags: - plugins @@ -258,7 +258,7 @@ A: Yes. You can create a private plugin marketplace in an internal GitHub reposi **Q: What happens if I uninstall a plugin?** -A: The plugin's agents, skills, and hooks are removed from Copilot. Any work already done with those tools is unaffected — only future sessions lose access. +A: The plugin's agents, skills, and hooks are removed from Copilot, and any cached plugin data stored on disk is also cleaned up. Any work already done with those tools is unaffected — only future sessions lose access. ## Next Steps diff --git a/website/src/content/docs/learning-hub/understanding-mcp-servers.md b/website/src/content/docs/learning-hub/understanding-mcp-servers.md index e516c2529..9a6b99117 100644 --- a/website/src/content/docs/learning-hub/understanding-mcp-servers.md +++ b/website/src/content/docs/learning-hub/understanding-mcp-servers.md @@ -3,7 +3,7 @@ title: 'Understanding MCP Servers' description: 'Learn how Model Context Protocol servers extend GitHub Copilot with access to external tools, databases, and APIs.' authors: - GitHub Copilot Learning Hub Team -lastUpdated: 2026-03-27 +lastUpdated: 2026-03-30 estimatedReadingTime: '8 minutes' tags: - mcp @@ -139,6 +139,17 @@ Example `.mcp.json` or `.vscode/mcp.json`: > **Security tip**: Use `${input:variableName}` for sensitive values. VS Code will prompt for these at runtime rather than storing them in the file. +### Authentication + +Some MCP servers require authentication to connect to protected resources. GitHub Copilot CLI supports several authentication approaches: + +- **OAuth**: MCP servers can use the OAuth flow to authenticate with external services. The CLI handles the browser redirect and token storage automatically. This also works when running in ACP (Agent Coordination Protocol) mode. +- **Microsoft Entra ID (Azure AD)**: MCP servers that authenticate via Microsoft Entra ID are fully supported. Once you complete the initial login, the CLI caches the authentication and **will not show the consent screen on subsequent connections** — you authenticate once per session rather than every time the server reconnects. +- **API keys via environment variables**: Pass secrets through the `env` field in the MCP server configuration (see examples above). Never hardcode credentials in `.mcp.json`. +- **`${input:variableName}` prompts**: VS Code will prompt for these values at runtime, keeping secrets out of committed files. + +> **Tip**: If your MCP server uses OAuth with Dynamic Client Registration but hosts its authorization metadata at a non-standard URL (as some enterprise servers like Atlassian Rovo do), Copilot CLI handles this automatically. + ## How Agents Use MCP Tools When an agent declares an MCP server in its `tools` array, Copilot can invoke that server's capabilities during conversation: