VS Code 1.112가 도착했고, 솔직히? .NET 세계에서 매일을 보내고 있다면 이번 릴리스는 다르게 다가옵니다. 공식 릴리스 노트에 많은 내용이 있지만, 스크롤을 좀 줄여드리고 우리에게 정말 중요한 것에 집중하겠습니다.
Copilot CLI가 훨씬 유용해졌다
이번 릴리스의 큰 테마는 에이전트 자율성 — Copilot에게 더 많은 자유를 주어 당신이 매 단계를 감시하지 않아도 되게 하는 것입니다.
메시지 스티어링과 큐잉
Copilot CLI가 작업 중간에 있는데 뭔가 말하는 걸 깜빡했다는 걸 깨닫는 그 순간 알죠? 전에는 기다려야 했습니다. 이제 요청이 아직 실행 중일 때도 메시지를 보낼 수 있습니다 — 현재 응답을 방향 전환하거나 후속 지시를 큐에 넣거나.
dotnet 스캐폴딩의 긴 작업을 보면서 “아 잠깐, MassTransit도 필요한데"라고 생각하는 경우에 이것은 대단합니다.
권한 레벨
이것이 가장 흥분되는 것입니다. Copilot CLI 세션이 이제 세 가지 권한 레벨을 지원합니다:
- 기본 권한 — 도구가 실행 전에 확인을 요청하는 일반적인 흐름
- 승인 우회 — 모든 것을 자동 승인하고 오류 시 재시도
- 오토파일럿 — 완전 자율: 도구를 승인하고, 자체 질문에 답하고, 작업이 완료될 때까지 계속
Entity Framework, 마이그레이션, Docker 설정으로 새 ASP.NET Core API를 만드는 것 같은 작업을 한다면 — 오토파일럿 모드는 원하는 것을 설명하고 커피를 가지러 가면 됩니다. 알아서 할 겁니다.
chat.autopilot.enabled 설정으로 오토파일럿을 활성화할 수 있습니다.
위임 전 변경사항 미리보기
Copilot CLI에 작업을 위임하면 워크트리가 생성됩니다. 전에는 커밋하지 않은 변경사항이 있으면 소스 컨트롤을 확인해서 뭐가 영향받는지 봐야 했습니다. 이제 채팅 뷰에서 복사, 이동, 무시를 결정하기 전에 보류 중인 변경사항을 바로 보여줍니다.
작은 것이지만 “잠깐, 스테이징에 뭐가 있었지?” 하는 순간을 없애줍니다.
VS Code를 떠나지 않고 웹 앱 디버그
통합 브라우저가 이제 완전한 디버깅을 지원합니다. 브레이크포인트를 설정하고, 코드를 스텝스루하고, 변수를 검사할 수 있습니다 — 모두 VS Code 안에서. Edge DevTools로 전환할 필요 없습니다.
새로운 editor-browser 디버그 타입이 있고, 이미 msedge나 chrome 실행 구성이 있다면 launch.json의 type 필드만 바꾸면 됩니다:
{
"type": "editor-browser",
"request": "launch",
"name": "Debug Blazor App",
"url": "https://localhost:5001"
}
Blazor 개발자에게 이것은 게임 체인저입니다. 이미 터미널에서 dotnet watch를 실행하고 있으니 — 이제 디버깅도 같은 창에 머무릅니다.
브라우저에 독립적인 줌 레벨(드디어), 적절한 우클릭 컨텍스트 메뉴, 웹사이트별 줌 기억 기능도 추가되었습니다.
MCP 서버 샌드박싱
이것은 생각보다 중요합니다. MCP 서버를 사용하고 있다면 — Azure 리소스나 데이터베이스 쿼리를 위한 커스텀 서버를 설정했을 수 있습니다 — VS Code 프로세스와 같은 권한으로 실행되고 있었습니다. 파일 시스템, 네트워크, 모든 것에 대한 전체 액세스를 의미합니다.
이제 샌드박스처리할 수 있습니다. mcp.json에서:
{
"servers": {
"my-azure-tools": {
"command": "node",
"args": ["./mcp-server.js"],
"sandboxEnabled": true
}
}
}
샌드박스된 서버가 가지고 있지 않은 것에 대한 액세스가 필요하면 VS Code가 권한 부여를 요청합니다. “아무도 이상한 걸 안 하길 바라자” 접근방식보다 훨씬 낫습니다.
참고: 샌드박싱은 현재 macOS와 Linux에서 사용 가능합니다. Windows 지원이 준비 중입니다 — WSL 같은 원격 시나리오는 작동합니다.
모노레포 커스터마이제이션 발견
모노레포에서 작업하고 있다면 (솔직히 많은 엔터프라이즈 .NET 솔루션이 모노레포가 됩니다), 이것은 진짜 페인 포인트를 해결합니다.
이전에는 레포의 하위 폴더를 열면 레포지토리 루트에 있는 copilot-instructions.md, AGENTS.md, 커스텀 스킬을 VS Code가 찾지 못했습니다. 이제 chat.useCustomizationsInParentRepositories 설정으로 .git 루트까지 올라가서 모든 것을 발견합니다.
팀이 모노레포의 모든 프로젝트에 걸쳐 에이전트 지시, 프롬프트 파일, 커스텀 도구를 공유할 수 있게 됩니다. 모두가 루트 폴더를 열 필요 없이.
에이전트 디버깅을 위한 /troubleshoot
커스텀 지시나 스킬을 설정한 후 왜 감지되지 않는지 궁금했던 적 있나요? 새로운 /troubleshoot 스킬이 에이전트 디버그 로그를 읽고 무슨 일이 있었는지 알려줍니다 — 어떤 도구가 사용되거나 건너뛰어졌는지, 왜 지시가 로드되지 않았는지, 무엇이 느린 응답을 유발하는지.
다음 설정으로 활성화하세요:
{
"github.copilot.chat.agentDebugLog.enabled": true,
"github.copilot.chat.agentDebugLog.fileLogging.enabled": true
}
그런 다음 채팅에서 /troubleshoot why is my custom skill not loading?을 입력하면 됩니다.
이 디버그 로그를 내보내기와 가져오기도 할 수 있어서, 뭔가 예상대로 작동하지 않을 때 팀과 공유하기 좋습니다.
이미지와 바이너리 파일 지원
에이전트가 이제 디스크에서 이미지 파일과 바이너리 파일을 네이티브로 읽을 수 있습니다. 바이너리 파일은 hexdump 형식으로 표시되고, 이미지 출력(통합 브라우저의 스크린샷 등)은 캐러셀 뷰로 나타납니다.
.NET 개발자의 경우: UI 버그의 스크린샷을 채팅에 붙여넣고 에이전트가 무엇이 잘못되었는지 이해하게 하거나, Blazor 컴포넌트 렌더링 출력을 분석하게 할 수 있습니다.
자동 심볼 참조
작은 삶의 질 개선: 심볼 이름(클래스, 메서드 등)을 복사해서 채팅에 붙여넣으면, VS Code가 자동으로 #sym:Name 참조로 변환합니다. 수동으로 추가하지 않아도 에이전트에 해당 심볼의 전체 컨텍스트를 제공합니다.
일반 텍스트를 원하면 Ctrl+Shift+V를 사용하세요.
플러그인 활성화/비활성화 가능
이전에는 MCP 서버나 플러그인을 비활성화하려면 제거해야 했습니다. 이제 켜고 끌 수 있습니다 — 전역적으로도 워크스페이스별로도. 확장 뷰나 커스터마이제이션 뷰에서 우클릭하면 됩니다.
npm과 pypi의 플러그인도 자동 업데이트가 가능하지만, 업데이트가 기기에서 새 코드를 실행하는 것을 의미하므로 먼저 승인을 요청합니다.
마무리
VS Code 1.112는 확실히 에이전트 경험을 강하게 밀어붙이고 있습니다 — 더 많은 자율성, 더 나은 디버깅, 더 단단한 보안. .NET 개발자에게 통합 브라우저 디버깅과 Copilot CLI 개선이 두드러진 기능입니다.
.NET 프로젝트를 위해 오토파일럿 모드에서 전체 Copilot CLI 세션을 아직 시도해보지 않았다면, 이번 릴리스가 시작하기 좋은 때입니다. 권한을 설정하고 맡기면 됩니다.
VS Code 1.112 다운로드 또는 VS Code 내에서 도움말 > 업데이트 확인으로 업데이트하세요.
