managing-files-documents

Manage files and documents programmatically in Visual Studio extensions.

14|2|Updated Mar 24, 2026
One-click install
npx skills add https://github.com/madskristensen/vs-agent-plugins --skill managing-files-documents
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: managing-files-documents
Source: https://github.com/madskristensen/vs-agent-plugins/tree/main/skills/managing-files-documents
Command: npx skills add https://github.com/madskristensen/vs-agent-plugins --skill managing-files-documents

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Manage and manipulate files and documents within Visual Studio extensions, ensuring in-memory buffers stay in sync with user edits and avoiding stale disk reads.

Core Features & Use Cases

  • Open, read, and edit document text programmatically across the Visual Studio extensibility stacks (out-of-process, in-process toolkit, and VSSDK).
  • Listen for document lifecycle events (open, save, close) and retrieve the active document for context-aware automation.
  • Access and modify text buffers via ITextBuffer, VS.Documents, and the equivalent Toolkit helpers, without forcing a visible editor window.

Quick Start

Open a file, read its text, and apply a programmatic edit to the active document in a Visual Studio extension.

Frequently Asked Questions about managing-files-documents

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I programmatically open and edit a document in a Visual Studio extension?

Document lifecycle events like open, save, and close are handled by listening to document events through Visual Studio extensibility models. This ensures in-memory buffers stay synchronized with user edits and avoids stale disk reads during automation.

Can I access ITextBuffer without opening a visible editor window in VSSDK?

Yes, you can access and modify text buffers via ITextBuffer, VS.Documents, and equivalent Toolkit helpers without forcing a visible editor window. This allows background document processing and automated text manipulation across Visual Studio stacks.

What is the Running Document Table used for in Visual Studio extensions?

The Running Document Table is used to track and manage open files and documents within Visual Studio extensions. It ensures in-memory buffers stay in sync with user edits and helps avoid stale disk reads when applying programmatic document management.

Does VisualStudio.Extensibility support retrieving the active document for context-aware automation?

Yes, VisualStudio.Extensibility supports retrieving the active document for context-aware automation. It details usage of DocumentsExtensibility and EditorExtensibility across out-of-process, in-process toolkit, and VSSDK workflows to automate file and document management.

Why does my Visual Studio extension read stale file data instead of the current text buffer?

Reading stale file data happens when extensions bypass in-memory buffers and read directly from disk. Using ITextBuffer, VS.Documents, or the Running Document Table ensures in-memory buffers stay in sync with user edits and prevents stale disk reads.