Skip to content
| Marketplace
Sign in
Visual Studio Code>Other>IVOL CatalogerNew to Visual Studio Code? Get it now.
IVOL Cataloger

IVOL Cataloger

ivol

|
11 installs
| (0) | Free
IVOL Cataloger — каталог проектов, последние активные проекты и управление папками в боковой панели VS Code.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

IVOL Cataloger

Расширение VS Code с разделом «Проекты» в левой панели. Подключите папку с проектами: дерево сохранит промежуточные группы и покажет найденные проекты, начиная с недавно изменённых.

IVOL Cataloger — локальный каталог проектов без облачного сервиса. VS Code 1.85+; интерфейс на русском языке.

Релизы и VSIX · Сообщить об ошибке · История изменений · MIT

Что нового

0.7.32 — 2026-11-10

  • Повторное включение «Проект + папка» явно пересканирует содержимое с диска и заменяет старую ветку индекса. Новые обычные и пустые папки тоже отображаются, а не только распознанные проекты. Выключение скрывает вложенность без сканирования.
  • Папки с точкой и служебные исключения остаются скрытыми. При неполном сканировании выводится ошибка вместо сохранения неполной ветки.

0.7.31 — 2026-11-10

  • Папки, чьи имена начинаются с точки, скрыты из каталога и не сканируются, в том числе внутри проектов-контейнеров. Ранее сохранённые записи скрываются сразу при загрузке индекса, без ручной переиндексации. Файлы на диске не удаляются.

0.7.30 — 2026-11-10

  • Режим «Проект + папка». Новая кнопка с иконкой вложенности сразу после + позволяет показывать проекты внутри выбранного проекта. Включённая кнопка подсвечивается; название открывает сам проект, стрелка слева раскрывает вложенные проекты.
  • Создание вложенного проекта. При включённом режиме доступно через + → «Создать вложенный проект…», правый клик и выбор папки при создании проекта. Режим сохраняется между окнами и перезапусками. Выключение скрывает вложенность, не удаляя файлы.

0.7.29 — 2026-11-09

  • 🗄 Архивация проекта. У каждого проекта в дереве появилась кнопка 🗄 (и пункт правого клика «Архивировать проект…»). Проект сжимается в один zip-файл в папке ARCHIVE внутри корня каталога с сохранением пути родительских папок: PO/PHP/PT → PO/ARCHIVE/PHP/PT.zip. Архив проверяется (unzip -t), после чего папка проекта перемещается в корзину и исчезает из дерева, избранного и индекса. Существующий архив с тем же именем не перезаписывается — к новому добавляется дата.
  • Раздел ARCHIVE внизу дерева. Сворачиваемый блок с той же структурой папок, размером и датой каждого архива; клик по архиву показывает файл в Finder. Папка ARCHIVE не сканируется как проекты.
  • Кнопка ◎ «Сделать проектом» больше не показывается у папок, которые уже являются проектом (остаётся у обычных папок и заглушек «Папка»).

Полная история — в CHANGELOG.md.

Запуск и установка

В VS Code откройте Расширения, найдите IVOL Cataloger и нажмите Установить. Если поиск ещё не обновился, используйте точный запрос @id:ivol.ivol-project-catalog или прямую ссылку Marketplace. Карточка Open VSX предназначена для совместимых редакторов; доступность новых версий зависит от проверки площадки.

После установки откройте «Проекты» слева → + → выберите папку, в которой хранятся ваши проекты. Дерево построится автоматически.

Для разработки основной панели откройте этот проект и нажмите F5 / Fn+F5, конфигурация «Каталог проектов: запуск расширения». Зависимости основного расширения устанавливать не нужно. Нативный помощник строки меню и полный пакет собираются на macOS с Apple Command Line Tools: сборка помощника описана в скрипте, при упаковке запускается автоматически. В готовом VSIX помощник уже скомпилирован для Apple Silicon и Intel; пользователю компилятор не нужен. Требуется VS Code 1.85 или новее.

Для ручной установки без магазина: Расширения → … → Установить из VSIX…. Выберите пакет расширения. После обновления уже работающего расширения может потребоваться перезапуск окна. Панель автоматически открывается при первом запуске; последующие запуски не перехватывают фокус.

Проекты в строке меню macOS (0.7.0)

Проекты → ⚙ → включить «Проекты в строке меню macOS». С версии 0.7.1 переключатель сохраняется и применяется сразу, отдельное «Сохранить настройки» не требуется. Надпись «Включаю…» означает сохранение; «Включено» — подтверждённую настройку, запуск помощника занимает ещё несколько секунд. После обновления вручную перезапустите все нужные окна VS Code: только окна новой версии передают данные системной панели. По умолчанию функция выключена. Поддерживаются macOS 14+, Apple Silicon и Intel.

  • С 0.7.16 кнопка + в начале полоски открывает форму «Новый проект»: выберите «Куда» (каталог или вложенную папку), введите «Название», нажмите Enter или кнопку создания. Папка создаётся и открывается в новом окне VS Code. Каталоги отсортированы по активности; в подменю можно выбрать «Создать здесь». Есть выбор другой папки на диске; вне подключённых корней папка открывается, но автоматически в каталог не добавляется. Существующие папки не перезаписываются. После обновления перезапустите окно VS Code и выключите/включите строку меню в настройках, чтобы обновить уже запущенный помощник.
  • С 0.7.3 режим и длина подписи хранятся в общем локальном хранилище Cataloger, а не записываются через реестр настроек VS Code. Старые значения переносятся один раз. Переключатель не зависит от ошибки регистрации конфигурации после обновления расширения.
  • Под переключателем отдельно показано, отвечает ли приложение, сколько проектов получено и к какому экрану macOS относит его кнопку. «Включено» означает сохранённый режим, а не гарантию, что Hidden Bar или система не скрыли значок. Пункт «Завершить IVOL Cataloger» сохраняет выключение.
  • С 0.7.17 строка показывает и явно открытые локальные папки, которые автоопределение не распознало проектами (например, корень Swift-проекта с вложенной Sources). Индекс при этом не меняется; явно скрытые папки и их потомки не показываются.
  • Каждый открытый проект или локальная папка — отдельная кликабельная область общей полоски в верхней системной строке, доступной из других приложений. Клик переключает на папку или сохранённую рабочую область VS Code; уже закрытое окно удаляется из списка. Повторный клик во время запуска игнорируется.
  • Ширина каждого сегмента зависит от фактического текста, а не заданного лимита букв; короткие названия занимают меньше места. С версии 0.7.6 используется пропорциональный системный шрифт и компактные промежутки. По умолчанию видны первые 4 буквы; в настройках можно выбрать 2–12. Совпадения различаются последними буквами, затем родительской папкой и номером. Полное название и путь доступны при наведении. Один и тот же проект в нескольких окнах сводится в одну кнопку.
  • С 0.7.6 индикаторы рисуются отдельно от шрифта: зелёный вращающийся индикатор — агент работает, оранжевые часы — ждёт ответа, пауза — остановлен, статичная зелёная точка — выбранная задача завершена, серое контурное кольцо — задача не выбрана или агент не активирован, нейтральная точка — задача открыта, но завершение не подтверждено, вопрос — состояние недоступно или устарело. С 0.7.10 завершение отличается от отсутствия задачи и определяется только по текущему ожиданию результата агента; ошибки и лимиты не отмечаются зелёным. При системном уменьшении движения индикатор работы неподвижен. Используется только установленный IVOL Code Agent 5, без чтения истории чата и сетевых запросов. При включённой строке меню опрос примерно каждые 2 секунды плюс доставка помощнику; без неё раз в минуту.
  • С 0.7.5 проекты расположены в одной общей полоске, без отдельной надписи IVOL. ⌘ + перетаскивание переносит всю полоску как один системный элемент; новые проекты добавляются внутрь неё, закрытые исчезают. Позиция сохраняется под одним именем; после перехода с отдельных значков полоску нужно разместить один раз.
  • Клик по названию переключает соответствующий проект, правый клик открывает все проекты и выход. При нехватке места сегмент +N открывает полный список. Без проектов остаётся кнопка + для создания нового проекта. Штатное перемещение меняет порядок среди системных значков, а не фиксирует произвольную координату у края экрана.
  • С версии 0.7.2 есть независимая команда палитры «Проекты: Включить / выключить строку меню macOS». Приложение может работать отдельно до подключения плагина, без подключённого окна создание недоступно. После включения плагина приложение переходит под его управление; выключение режима завершает помощник. Автозапуск при входе в macOS пока не добавлен.
  • Локальный нативный помощник не отображается в Dock, не требует доступа к экрану или «Универсального доступа», не перехватывает фокус при обновлении. Один процесс обслуживает окна общего хранилища и завершается после их закрытия либо выключения настройки. Ошибки запуска видны в уведомлении и журнале «Каталог проектов».
  • Только локальные проекты одного редактора/профиля. Удалённые окна не включаются. Несохранённую многокорневую рабочую область сначала сохраните; вместо открытия другой папки будет показано сообщение.

Плавающая панель для Windows — только возможная идея на будущее. Разработка отложена без сроков и обязательств: сейчас нет среды для проверки и практической необходимости. На Windows основная панель каталога продолжает работать без системного помощника.

Использование

Общий индекс (0.6.14): один постоянный каталог для всех локальных окон одного редактора/профиля. После обновления первая загрузка один раз сканирует проекты; следующие запуски читают готовый индекс без обхода папок и без фоновой переиндексации. Одновременные первые запуски ждут один общий результат. Изменения индекса подхватываются другими окнами примерно за 2 секунды.

Создание, перенос, удаление, переименование в каталоге, избранное и скрытие обновляют индекс адресно. Скрытая папка и все потомки исключаются из поиска проектов и расчёта дат, даже при полной переиндексации. Возврат скрытого, включение пропущенных папок и возврат автоопределения сканируют только соответствующую ветку; подключение корня — только новый корень. Созданное или удалённое вне каталога отражается после ↻ Переиндексировать все проекты. Даты файлов берутся из индекса, история работы и отметки окон обновляются отдельно.

Индекс записывается атомарно, операции окон сериализуются общей блокировкой. Правила обхода сохраняются вместе с индексом; изменения настроек применяются при ручной переиндексации. При повреждении индекса показывается ошибка и предлагается ↻. Перезапустите все окна после установки, не меняйте каталог одновременно из старой и новой версий. Для диагностики: Вид → Вывод → «Каталог проектов».

Открытые проекты (0.6.16): под поиском расположен отдельный раздел со всеми открытыми проектами каталога — без лимита количества и независимо от давности активности, включая избранные. Текущий проект первый, остальные отсортированы по названию. Поиск фильтрует и этот раздел. Ниже «Последние активные проекты» показывает только закрытые проекты с прежним лимитом и сортировкой активности; избранные по-прежнему не дублируются в последних. После закрытия последнего окна проект становится доступен в последних, если проходит лимит активности и не находится в избранном. Избранное и дерево сохраняют прежнее поведение.

Открытые окна: в дереве, избранном и открытых проектах зелёная отметка «● Открыт» означает другое открытое окно, выделение «● Текущее окно» — проект этого окна. Клик по открытому проекту переводит в существующее окно, независимо от переключателя «Новое окно»; клик по текущему не создаёт дубликат. Закрытые проекты открываются как раньше. Состояние синхронизируется примерно раз в 2 секунды без сканирования дерева; после аварийного завершения устаревшая отметка исчезает не позднее чем через 30 секунд при работающем таймере.

После обновления перезапустите вручную все окна, которые нужно видеть в каталоге: они должны загрузить новую версию расширения. Учёт предназначен для локальных окон одного редактора/профиля. Для сохранённой многокорневой рабочей области открывается её файл, а не отдельное окно папки. Несохранённую рабочую область сначала нужно сохранить — каталог покажет уведомление вместо создания дубликата. SSH/контейнеры и переключение между разными редакторами не поддерживаются.

Защита от случайных нажатий (0.6.9): звёздочка избранного видна только в действиях строки при наведении мыши или клавиатурном фокусе, а не постоянно. Перед скрытием кнопкой или через контекстное меню появится вопрос «Точно скрыть папку?» с названием и полным путём. Нажмите «Скрыть» для подтверждения; отмена ничего не меняет.

Избранное (без лимита с 0.6.15): нажмите ☆ у проекта в дереве или недавних — он появится в блоке «⭐ Избранное» в самом верху панели, выше управления и поиска. ★ убирает проект из избранного. Количество проектов не ограничено, порядок соответствует добавлению. Проекты остаются в дереве, выбор сохраняется между перезапусками. Избранное также фильтруется поиском, а открытие учитывает переключатель «Новое окно». Перенос через каталог сохраняет избранное на новом пути. Скрытые, удалённые и отключённые проекты не показываются, но их отметки сохраняются для восстановления и не мешают добавлять новые проекты.

Поиск сверху панели (0.6.7): вводите часть названия папки или проекта — дерево и последние активные фильтруются сразу, без учёта регистра. Родительские папки остаются для ориентации, ветки с совпадениями раскрываются автоматически. Поиск работает по отображаемым названиям только среди доступных элементов каталога: скрытые и исключённые папки не возвращаются, содержимое файлов не просматривается. Крестик или Escape в поле очищает поиск и возвращает прежние раскрытия дерева. Если совпадений нет, появляется сообщение «Папки и проекты не найдены».

Правый клик по папке в дереве (0.6.6):

  • «Скрыть из каталога» — убрать из дерева и недавних без удаления файлов. Вернуть можно через настройки → «Скрыть / вернуть папки».
  • «Удалить в корзину…» — переместить папку со всем содержимым в корзину после подтверждения полного пути. Безвозвратного запасного удаления нет: при недоступной корзине операция завершается ошибкой. Корни каталога, папки с подключёнными корнями и символические ссылки защищены. Сохраните файлы и остановите процессы во всех окнах; несохранённые документы проверяются только в текущем окне. Окна не закрываются автоматически. После восстановления папки из корзины обновите каталог; предпочтения и история сохраняются.

Обновление каталога: ↻ заново строит общий индекс для всех окон. Само открытие окна или панели не запускает обход при наличии индекса. Во время первоначальной индексации и ручной перестройки окно-инициатор показывает индикатор загрузки; другие окна могут пользоваться предыдущим индексом до публикации нового.

Сделать папку единым проектом (0.7.18): наведите мышь на папку в дереве и нажмите ◎ → «Сделать её проектом?» → «Да». Кружочек доступен и при наличии вложенных проектов, и у автоматически распознанного проекта. То же действие есть в меню + строки и по правому клику → «Сделать проектом…». Выбранная папка становится единственным проектом: все вложенные перестают показываться отдельно, в том числе после переиндексации. Например, назначьте IVOLBar, чтобы Sources перестала быть отдельным проектом. Файлы и папки на диске не изменяются. После назначения кружочек исчезает, счётчики и списки обновляются. Действие доступно и с клавиатуры. Корни-контейнеры назначать проектами нельзя.

Явные проекты (0.6.3)

  • Создание через «Новый проект» / «Создать тут новый проект» внутри подключённого каталога сразу назначает папку проектом, даже если она пустая. Родительский счётчик учитывает её без файлов-маркеров.

  • Для уже существующих папок: правый клик → «Сделать проектом…» → «Да». Подходит для модов, дизайна и других нестандартных проектов. Например, отметьте FactorioMOD или MCP120, если именно эта папка — проект, а не категория.

  • «Вернуть автоопределение» снимает ручную отметку. Если в папке есть обычные признаки проекта, она останется проектом; иначе будет категорией. Папка не удаляется и остаётся видимой.

  • Плюс заголовка дерева по-прежнему создаёт категорию. Не отмечайте целиком GAME или DISIGN, если это группы независимых проектов. Явно назначенная папка — граница одного проекта: вложенные проекты не показываются, даже если раньше были закреплены или назначены вручную. Их настройки сохраняются для возврата автоопределения. Внутри единого проекта можно создавать обычные папки; новый самостоятельный проект создавайте рядом.

  • Отметка хранится в состоянии расширения, без записи служебных файлов в проект; перенос через каталог сохраняет её. Скрытые папки и защитные исключения по-прежнему не сканируются.

  • Перетаскивание проекта (0.6.0): из дерева или последних активных на каталог дерева — реальный перенос папки с подтверждением путей. Назначение подсвечивается. Существующие файлы/папки не перезаписываются; перенос в себя, подпапку, другой проект или между дисками запрещён. Сохраните файлы и остановите процессы во всех окнах. Открытые окна остаются на старом пути: откройте проект заново из каталога. Автоматического закрытия окон нет. Настройки и активность проекта сохраняются под новым путём.

  • Плюс в заголовке «Дерево проектов» — создать каталог первого уровня (например JOB). Запрашивается только название каталога; новое окно не открывается. Пустой каталог остаётся в дереве.

  • Проект создаётся внутри каталога, а не непосредственно в подключённом корне. Для этого используйте «Новый проект» или правый клик по каталогу → «Создать тут новый проект».

  • + — подключить папку с проектами; можно подключить несколько.

  • Новый проект (синяя кнопка сверху и иконка в заголовке панели) — пошаговый выбор места: показывается только один уровень папок, нажатие заходит внутрь («Назад» — на уровень выше), «Создать здесь» или значок справа у папки — выбрать её. Можно выбрать и любую папку на диске. После ввода имени пустая папка создаётся и сразу открывается в новом окне VS Code.

  • Правый клик по папке в дереве → «Создать тут новый проект» (0.5.1) — то же самое, но сразу внутри этой папки.

  • Треугольник или название группы — раскрыть её содержимое. Кнопка «Открыть» справа появляется при наведении или клавиатурном фокусе и открывает саму папку в VS Code; дополнительной стрелки ↗ больше нет.

  • Название проекта — открыть его одним нажатием.

  • Новое окно — переключить открытие закрытых проектов дерева/избранного в новом окне; по умолчанию включено. Закрытый проект из последних открывается в новом окне. Уже открытые проекты переключают на существующее окно независимо от настройки.

  • Обновить — заново просканировать каталоги.

  • Шестерёнка — открыть отдельную форму настроек: последние проекты (1–50, по умолчанию 7), исключения, добавление и отключение корней без удаления с диска. После изменения исключений нажмите ↻, чтобы применить их к дереву.

Содержимое всех подключённых корней показывается сразу на верхнем уровне каталога. Лишних строк PO и других корней нет даже после добавления второй папки. Вложенные группы сохраняются. Для одинаковых названий полный путь виден при наведении. Подключайте папки-контейнеры проектов: сам корень намеренно не отображается.

Названия и видимость (0.4.9)

  • ✎ у строки — изменить название только в каталоге. Пустое поле возвращает исходное имя; путь и файлы не меняются.
  • + у папки/проекта — меню: создать новую подпапку на диске или (у группы) добавить ранее пропущенные подпапки, включая пустые. Нажатие «Добавить» сохраняет расширенный режим выбранной группы; повторное нажатие пересканирует каталог. Исключения и запрет обхода симлинков сохраняются.
  • + в заголовке «Дерево проектов» — создать каталог первого уровня внутри подключённого корня (при нескольких корнях — сначала выбрать нужный). Подключение существующего корня — отдельная верхняя кнопка. Пустые созданные папки сохраняются после обновления. Совпадающее имя не перезаписывается; файлы-шаблоны не создаются, окно проекта автоматически не открывается.
  • Пустые папки имеют метку «Пустая», другие добавленные заготовки — «Папка». Заготовки попадают в недавние после открытия, а не просто после обнаружения.
  • ⊘ рядом с карандашом — скрыть строку; скрытие группы убирает всю ветку, в том числе из недавних. На диске ничего не удаляется.
  • Шестерёнка → Скрыть / вернуть папки — отметить несколько папок галочками или снять отметки для восстановления. Скрытие имеет приоритет над добавлением пропущенных папок.

Предпочтения сохраняются в глобальном состоянии расширения в профиле VS Code. Старая настройка предпочтений читается для совместимости. Обычное обновление не сбрасывает сохранённые данные.

Последние проекты и активность

Панель содержит три постоянно открытых визуальных блока: «Избранное», «Последние активные проекты» и «Дерево проектов». Последние активные показывают до 7 уникальных проектов без групп, включая проекты без истории открытий. С версии 0.6.10 избранные исключаются из последних до применения лимита: освободившиеся места занимают следующие проекты по активности. Текущий проект окна закреплён первым в последних, только если он не в избранном; остальные сортируются по максимуму времени открытия, сохранения и изменения файлов. Добавление и удаление избранного сразу обновляет список, не стирая историю. Лимит меняется через шестерёнку; история сохраняется после перезапуска. В списке остаются только найденные проекты из подключённых корней.

В версии 0.4.7 строки остаются компактными, высотой 27 px: название, количество проектов у группы, метка «Активный» и дата расположены в одну строку. Длинное название сокращается многоточием, полный путь доступен при наведении. Дата показана как ДД.ММ.ГГ, полный год и время — в подсказке; отсутствие даты обозначается тире. Текущий проект выделен контрастным фоном, цветной полосой и меткой в обоих блоках независимо от фокуса. Каждый уровень дерева сдвинут на 16 px и связан направляющими; у конечных проектов сохраняется место под треугольник, чтобы названия не съезжали влево.

При новом открытии панели раскрывается только цепочка предков активного проекта окна; все остальные ветки свёрнуты. Старые сохранённые раскрытия не восстанавливаются. Если данные ещё загружаются, панель ждёт появления активного пути; если после загрузки активного проекта нет, всё остаётся свёрнутым. Затем папки можно раскрывать и сворачивать вручную: фоновые обновления не меняют этот выбор. При реальной смене активного проекта ручные раскрытия сбрасываются и раскрывается только новый путь. В multi-root переход фокуса на панель не меняет активную рабочую папку на первую; локальные пути приводятся к реальному пути на диске. Клик по чужому проекту не делает его активным в исходном окне.

Для доступности используются вложенные списки и кнопки раскрытия с состоянием: Tab/Shift+Tab перемещают фокус, Enter/Space активируют кнопку. Это disclosure-интерфейс, а не ARIA treeview с обязательной навигацией стрелками. Ориентиры: VS Code Views UX, WAI-ARIA Tree View, WAI-ARIA Disclosure.

Открытие через каталог и сохранение файла сразу поднимают проект и его группы на своих уровнях. При запуске окна учитываются открытые рабочие папки и активный файл. Для вложенных проектов файл относится к ближайшему проекту. Активность из другого окна подтягивается примерно за 2 секунды; в нём также должна быть загружена новая версия расширения. Несохранённый набор текста сам по себе не меняет порядок.

История хранится локально в служебном хранилище расширения: у каждого запуска окна собственный атомарно записываемый файл. Окна объединяют максимальные даты без перезаписи чужих событий. Автоматическая очистка старых файлов истории пока не реализована.

Корни и режим открытия сохраняются. Панель использует собственные кнопки: общая настройка Workbench › List: Open Mode не меняет открытие одним нажатием.

Какие папки считаются проектами

С версии 0.4.8 по умолчанию достаточно признаков IDE/Git, файлов сборки или исходников непосредственно в папке. Учитываются настройки VS Code, JetBrains, Fleet, Zed, Eclipse, проекты Sublime/.NET/Xcode; package.json, composer.json, Gradle (в том числе settings.gradle.kts), Cargo, Go, Python и другие конфигурации; исходники JavaScript/TypeScript, PHP, Python, Java/Kotlin, Dart, Swift, Go, Rust, C/C++, C#, Ruby, Vue, Svelte и HTML.

Также учитывается вложенная папка android, если в ней есть файл settings.gradle/build.gradle (включая .kts) и папка app. В таком случае проектом становится родительская папка: например, PLANSHET, а не её android/app. GAME определяется по исходникам в корне. Произвольная непустая папка, только изображения/документы или пустая папка проектом не считаются; группы продолжают содержать найденные проекты.

Detect Build Files включён по умолчанию. Его отключение возвращает строгий режим IDE/Git. Если ранее явно установили значение false, оно сохраняется — включите настройку для нового распознавания. Расширенный режим может включать скачанные шаблоны и библиотеки, а не только ваши рабочие проекты.

Подключённый корень всегда считается контейнером. При обнаружении проекта поиск новых проектов внутри него прекращается: модули, пакеты и примеры не раздувают счётчик. Вложенные исходники по-прежнему учитываются в дате. Для отдельного просмотра вложенных проектов можно подключить их родительскую папку дополнительным корнем.

Распознавание эвристическое: даже скачанный шаблон с настройками IDE может попасть в список. Ненужные папки исключайте по имени. Никакого чтения содержимого файлов нет.

Сортировка и обновление

Порядок учитывает максимум из времени открытия/сохранения проекта и времени изменения его файлов, включая вложенные каталоги. Группы поднимаются по самой свежей активности внутри. На каждом уровне свежие элементы стоят выше, при одинаковой дате — по имени; текущий проект закреплён первым в последних, если не добавлен в избранное. Рядом показана именно дата изменения файлов, а не открытия проекта; полное время видно при наведении на дату. Будущие даты файлов из-за неверных часов могут оказаться выше текущей активности.

Файловая часть даты — время существующих файлов, не история удалений: удаление последнего свежего файла может уменьшить её. Записанное время открытия/сохранения при этом остаётся. Проект без файлов и без истории активности показывается без даты. Даты настроек IDE, зависимостей, сборок и исключённых файлов не учитываются сканером.

Обход асинхронный, с максимум 32 параллельными запросами метаданных. Последнее дерево хранится в памяти; при повторном сканировании остаётся видимым, но временно недоступно для действий. Начальный и ручной обход выполняются независимо от видимости. Периодического обхода больше нет, старое значение интервала не используется. Изменения файлов и папок вне каталога подхватываются при следующем сканировании; история открытий и сохранений синхронизируется отдельно, без обхода проектов.

Состояния загрузки

При открытии другого проекта или нового окна подключённая папка не считается пустой до окончания сканирования: панель показывает «Папка подключена. Загружаем проекты…» с вращающимся индикатором. Для нескольких корней — «Папки подключены». Без корней предлагается подключить папку. Только после успешного поиска без результатов появляется «В подключённой папке проекты не найдены» (или «В подключённых папках…»).

При повторном сканировании дерево и последние проекты остаются видимыми под блокирующей плашкой «Обновление каталога…». Ошибки доступа и незавершённый из-за лимита поиск показываются отдельно, а не как отсутствие проектов; подробная диагностика остаётся в журнале. Статус доступен скринридерам, списки отмечаются занятыми во время загрузки; при системном предпочтении уменьшенного движения индикатор не вращается.

Исключения и настройки

В настройках VS Code найдите Каталог проектов:

  • Excluded Directories — точные имена исключаемых папок на любой глубине, без учёта регистра; не шаблоны. По умолчанию исключены «ключи», keys, secrets, credentials, каталоги SSH/GPG, зависимости, кэш, история редактора, сборки и журналы. Добавьте сюда свои нестандартные названия папок с ключами. Исключения не определяют секреты по содержимому.
  • Max Scan Entries — бюджет поиска проектов вне уже найденных проектов: 200 000 элементов, глубина 40. При превышении неполный поиск отмечается в журнале «Каталог проектов».
  • Max Project Entries — отдельный бюджет проверки даты каждого проекта: 10 000 элементов, глубина 80. Большой проект не мешает находить остальные; число проектов с приблизительной датой выводится в журнал. Открытия и сохранения учитываются независимо от этого бюджета.
  • Detect Build Files — распознавание по исходникам, конфигурациям сборки и вложенному Android, включено по умолчанию. Отключение оставляет только IDE/Git.

Изменение настроек не запускает сканирование: параметры обхода применяются при следующем нажатии ↻ или запуске окна. Лимит последних проектов меняется сразу, без обхода диска.

Содержимое файлов никогда не читается сканером: используются имена и время изменения. Исключённые каталоги не обходятся. Символические ссылки пропускаются, чтобы не уходить за пределы дерева или по кругу. Файлы окружения, ключей/сертификатов, журналы, пакеты расширения и файл учёта задачи не влияют на сортировку. Каталоги IDE распознаются как маркеры, но внутрь них обход не заходит.

Подключённый корень сохраняется в форме настроек даже если пуст, исключён или недоступен, чтобы его можно было отключить. Подробная диагностика сканирования выводится в журнал «Каталог проектов»; в панели показываются только загрузка и понятные предупреждения, без технических счётчиков. Поддерживаются только локальные папки. Настройки корней из другого уже открытого окна могут потребовать его перезапуска.

Сборка

Действие check в NPM Scripts проверяет синтаксис пяти модулей расширения и клиентского скрипта панели. package загружает упаковщик из npm; рекомендуется Node.js 22 или новее. История редактора и файл задач исключены из пакета.

Ограничения переноса и приватность

  • Перетаскивание перемещает настоящую папку на диске. Перед подтверждением сохраните файлы и остановите процессы во всех окнах; сделайте резервную копию важных проектов.
  • Окна редактора не закрываются и не перенастраиваются автоматически. После переноса откройте проект по новому пути.
  • История задач, checkpoints и настройки сторонних расширений (включая IVOL Code Agent 5) не мигрируют. Их привязка к старому пути может сохраниться.
  • Сканер использует имена и метаданные файлов, не отправляет каталог во внешний сервис. История активности и абсолютные пути хранятся локально в профиле VS Code.
  • Проверки синтаксиса не заменяют ручную проверку интерфейса. Основная проверенная среда — macOS; поведение на других ОС требует пользовательской проверки.
  • Нейросеть и поиск не реализованы. Изменение названия в каталоге — только отображаемое имя, не переименование папки на диске.

Разработка и публикация

Инструкции для сопровождающего: RELEASING.md. Для сообщений об ошибках укажите версию VS Code и расширения, ОС, шаги воспроизведения и ожидаемое поведение. Не прикладывайте секреты и личные пути без необходимости.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft