MCPcopy Index your code
hub / github.com/antfu/vscode-file-nesting-config

github.com/antfu/vscode-file-nesting-config @v2.0.2 sqlite

repository ↗ · DeepWiki ↗ · release v2.0.2 ↗
13 symbols 29 edges 6 files 3 documented · 23%
README

Anthony's

File Nesting Config for VS Code

Requires VS Code v1.67

This is a config snippet making your file tree cleaner with the file nesting feature of VS Code.

Inspired by this tweet by Dzhavat Ushev and this tweet by Jacob Hands.

With some scripts to avoid duplication of works. And it's very opinionated.

Use it

VS Code Extension

We now have a new VS Code extension to handle the updates automatically for you.

Check the readme for instructions.

Update Manually

Open your VS Code, bring up your settings.json, copy-n-paste the snippet below, and you are good to go :)

```jsonc // updated 2026-06-24 04:14 // https://github.com/antfu/vscode-file-nesting-config "explorer.fileNesting.enabled": true, "explorer.fileNesting.expand": false, "explorer.fileNesting.patterns": { ".agent": ".agent, .claude, .cline, .codebuddy, .codex, .commandcode, .continue, .crush, .cursor, .factory, .gemini, .goose, .junie, .kilocode, .kiro, .kode, .mcpjam, .mux, .neovate, .opencode, .openhands, .pi, .pochi, .qoder, .qwen, .roo, .trae, .windsurf, .zencoder", ".clang-tidy": ".clang-format, .clangd, compile_commands.json", ".env": ".env, .env., .envrc, env.d.ts", ".gitignore": ".gitattributes, .gitmodules, .gitmessage, .lfsconfig, .mailmap, .git-blame", ".project": ".classpath", "+layout.svelte": "+layout.ts,+layout.js,+layout.server.ts,+layout.server.js,+layout.gql", "+page.svelte": "+page.server.ts,+page.server.js,+page.ts,+page.js,+page.gql", "AGENTS.md": ".clinerules, .cursorrules, .replit.md, .windsurfrules, AGENT.md, CLAUDE.local.md, CLAUDE.md, GEMINI.md", "ansible.cfg": "ansible.cfg, .ansible-lint, requirements.yml", "app.config.": ".env, .babelrc, .codecov, .cssnanorc, .env., .envrc, .htmlnanorc, .lighthouserc., .mocha, .postcssrc, .terserrc, api-extractor.json, ava.config., babel.config., capacitor.config., content.config., contentlayer.config., cssnano.config., cypress., env.d.ts, formkit.config., formulate.config., histoire.config., htmlnanorc., i18n.config., ionic.config., jasmine., jest.config., jsconfig., karma, lighthouserc., panda.config., playwright.config., postcss.config., puppeteer.config., react-router.config., rspack.config., sst.config., svgo.config., tailwind.config., tsconfig., tsdoc., uno.config., unocss.config., vitest.config., vuetify.config., webpack.config., windi.config.", "application.properties": ".properties", "artisan": ".env, .babelrc, .codecov, .cssnanorc, .env., .envrc, .htmlnanorc, .lighthouserc., .mocha, .postcssrc, .terserrc, api-extractor.json, ava.config., babel.config., capacitor.config., content.config., contentlayer.config., cssnano.config., cypress., env.d.ts, formkit.config., formulate.config., histoire.config., htmlnanorc., i18n.config., ionic.config., jasmine., jest.config., jsconfig., karma, lighthouserc., panda.config., playwright.config., postcss.config., puppeteer.config., react-router.config., rspack.config., server.php, sst.config., svgo.config., tailwind.config., tsconfig., tsdoc., uno.config., unocss.config., vitest.config., vuetify.config., webpack.config., webpack.mix.js, windi.config.", "astro.config.": ".env, .babelrc, .codecov, .cssnanorc, .env., .envrc, .htmlnanorc, .lighthouserc., .mocha, .postcssrc, .terserrc, api-extractor.json, ava.config., babel.config., capacitor.config., content.config., contentlayer.config., cssnano.config., cypress., env.d.ts, formkit.config., formulate.config., histoire.config., htmlnanorc., i18n.config., ionic.config., jasmine., jest.config., jsconfig., karma, lighthouserc., panda.config., playwright.config., postcss.config., puppeteer.config., react-router.config., rspack.config., sst.config., svgo.config., tailwind.config., tsconfig., tsdoc., uno.config., unocss.config., vitest.config., vuetify.config., webpack.config., windi.config.", "build-wrapper.log": "build-wrapper.log, build-wrapper-dump.json, build-wrapper-win.exe, build-wrapper-linux, build-wrapper-macosx", "BUILD.bazel": ".bzl, .bazel, .bazelrc, bazel.rc, .bazelignore, .bazelproject, .bazelversion, MODULE.bazel.lock, WORKSPACE", "build.gradle": "settings.gradle, gradlew, gradlew.bat, gradle.properties, gradle.lockfile", "build.gradle.kts": "settings.gradle.kts, gradlew, gradlew.bat, gradle.properties, gradle.lockfile", "Cargo.toml": ".clippy.toml, .rustfmt.toml, Cargo.Bazel.lock, Cargo.lock, clippy.toml, cross.toml, insta.yaml, rust-toolchain.toml, rustfmt.toml", "CMakeLists.txt": ".cmake, .cmake.in, .cmake-format.yaml, CMakePresets.json, CMakeCache.txt", "composer.json": ".php.cache, composer.lock, phpunit.xml, psalm.xml", "default.nix": "shell.nix", "deno.json": ".env, .env., .envrc, api-extractor.json, deno.lock, env.d.ts, import-map.json, import_map.json, jsconfig., tsconfig., tsdoc.", "Dockerfile": ".dockerfile, .devcontainer., .dockerignore, Dockerfile, captain-definition, compose., docker-compose., dockerfile", "flake.nix": "default.nix, shell.nix, flake.lock", "gatsby-config.": ".env, .babelrc, .codecov, .cssnanorc, .env., .envrc, .htmlnanorc, .lighthouserc., .mocha, .postcssrc, .terserrc, api-extractor.json, ava.config., babel.config., capacitor.config., content.config., contentlayer.config., cssnano.config., cypress., env.d.ts, formkit.config., formulate.config., gatsby-browser., gatsby-node., gatsby-ssr., gatsby-transformer., histoire.config., htmlnanorc., i18n.config., ionic.config., jasmine., jest.config., jsconfig., karma, lighthouserc., panda.config., playwright.config., postcss.config., puppeteer.config., react-router.config., rspack.config., sst.config., svgo.config., tailwind.config., tsconfig., tsdoc., uno.config., unocss.config., vitest.config., vuetify.config., webpack.config., windi.config.", "gemfile": ".ruby-version, gemfile.lock", "go.mod": ".air, go.sum", "go.work": "go.work.sum", "hatch.toml": ".editorconfig, .flake8, .isort.cfg, .python-version, hatch.toml, requirements.in, requirements.pip, requirements.txt, tox.ini", "I.cs": "$(capture).cs", "justfile": ".just, .justfile", "Makefile": ".mk", "mix.exs": ".credo.exs, .dialyzer_ignore.exs, .formatter.exs, .iex.exs, .tool-versions, mix.lock", "next.config.": ".env, .babelrc, .codecov, .cssnanorc, .env., .envrc, .htmlnanorc, .lighthouserc., .mocha, .postcssrc, .terserrc, api-extractor.json, ava.config., babel.config., capacitor.config., content.config., contentlayer.config., cssnano.config., cypress., env.d.ts, formkit.config., formulate.config., histoire.config., htmlnanorc., i18n.config., ionic.config., jasmine., jest.config., jsconfig., karma, lighthouserc., next-env.d.ts, next-i18next.config., panda.config., playwright.config., postcss.config., puppeteer.config., react-router.config., rspack.config., sst.config., svgo.config., tailwind.config., tsconfig., tsdoc., uno.config., unocss.config., vitest.config., vuetify.config., webpack.config., windi.config.", "nuxt.config.": ".env, .babelrc, .codecov, .cssnanorc, .env., .envrc, .htmlnanorc, .lighthouserc., .mocha, .nuxtignore, .nuxtrc, .postcssrc, .terserrc, api-extractor.json, ava.config., babel.config., capacitor.config., content.config., contentlayer.config., cssnano.config., cypress., env.d.ts, formkit.config., formulate.config., histoire.config., htmlnanorc., i18n.config., ionic.config., jasmine., jest.config., jsconfig., karma, lighthouserc., nuxt.schema., panda.config., playwright.config., postcss.config., puppeteer.config., react-router.config., rspack.config., sst.config., svgo.config., tailwind.config., tsconfig., tsdoc., uno.config., unocss.config., vitest.config., vuetify.config., webpack.config., windi.config.", "package.json": ".code-workspace, .autocorrectignore, .autocorrectrc, .browserslist, .circleci, .commitlint, .cspell, .cursor, .cz-config.js, .czrc, .dlint.json, .dprint.json, .editorconfig, .eslint, .firebase, .flowconfig, .github, .gitlab, .gitmojirc.json, .gitpod, .huskyrc, .jslint, .knip., .lintstagedrc, .ls-lint.yml, .markdownlint, .node-version, .nodemon, .npm, .nvmrc, .oxfmtrc.json, .oxfmtrc.json.bak, .oxfmtrc.jsonc, .oxlintrc.json, .oxlintrc.json.bak, .oxlintrc.jsonc, .pm2, .pnp., .pnpm, .prettier, .pylintrc, .release-please.json, .releaserc, .ruff.toml, .sentry, .shellcheckrc, .simple-git-hooks, .stackblitz, .styleci, .stylelint, .swcrc, .tazerc, .textlint, .tool-versions, .travis, .versionrc, .vscode, .vsls.json, .watchman, .windsurfrules, .xo-config, .yamllint, .yarnrc, Procfile, alejandra.toml, apollo.config., appveyor, azure-pipelines, biome.json, bower.json, build.config., bun.lock, bun.lockb, bunfig.toml, colada.options.ts, commitlint, crowdin, cspell, cz.config., dangerfile, dlint.json, dprint.json, ec.config., electron-builder., eslint, firebase.json, grunt, gulp, jenkins, knip., lefthook., lerna, lint-staged, nest-cli., netlify, nixpacks, nodemon, npm-shrinkwrap.json, nx., oxfmt.config., oxlint.config., package-lock.json, package.nls.json, phpcs.xml, pm2., pnpm, prettier, pullapprove, pyrightconfig.json, release-please.json, release-tasks.sh, release.config., renovate, rolldown.config., rollup.config., rspack, ruff.toml, sentry..config.ts, simple-git-hooks, sonar-project.properties, stylelint, taze.config., tsdown.config., tslint, tsup.config., turbo, typedoc, unlighthouse, vercel, vetur.config., webpack, workspace.json, wrangler., xo.config., yarn", "Pipfile": ".editorconfig, .flake8, .isort.cfg, .python-version, Pipfile, Pipfile.lock, requirements.in, requirements.pip, requirements.txt, tox.ini", "pom.xml": "mvnw", "pubspec.yaml": ".metadata, .packages, all_lint_rules.yaml, analysis_options.yaml, build.yaml, pubspec.lock, pubspec_overrides.yaml", "pyproject.toml": ".autocorrectignore, .autocorrectrc, .commitlint, .cspell, .dlint.json, .dprint.json, .editorconfig, .eslint, .flake8, .flowconfig, .isort.cfg, .jslint, .lintstagedrc, .ls-lint.yml, .markdownlint, .oxfmtrc.json, .oxfmtrc.json.bak, .oxfmtrc.jsonc, .oxlintrc.json, .oxlintrc.json.bak, .oxlintrc.jsonc, .pdm-python, .pdm.toml, .prettier, .pylintrc, .python-version, .ruff.toml, .shellcheckrc, .stylelint, .textlint, .xo-config, .yamllint, MANIFEST.in, Pipfile, Pipfile.lock, alejandra.toml, biome.json, commitlint, cspell, dangerfile, dlint.json, dprint.json, eslint, hatch.toml, lint-staged, oxfmt.config., oxlint.config., pdm.lock, phpcs.xml, poetry.lock, poetry.toml, prettier, pyproject.toml, pyrightconfig.json, requirements.in, requirements.pip, requirements.txt, ruff.toml, setup.cfg, setup.py, stylelint, tox.ini, tslint, uv.lock, uv.toml, xo.config.", "quasar.conf": ".env, .babelrc, .codecov, .cssnanorc, .env., .envrc, .htmlnanorc, .lighthouserc., .mocha, .postcssrc, .terserrc, api-extractor.json, ava.config., babel.config., capacitor.config., content.config., contentlayer.config., cssnano.config., cypress., env.d.ts, formkit.config., formulate.config., histoire.config., htmlnanorc., i18n.config., ionic.config., jasmine., jest.config., jsconfig., karma, lighthouserc., panda.config., playwright.config., postcss.config., puppeteer.config., quasar.extensions.json, react-router.config., rspack.config., sst.config., svgo.config., tailwind.config., tsconfig., tsdoc., uno.config., unocss.config., vitest.config., vuetify.config., webpack.config., windi.config.", "readme": "AUTHORS, Authors, BACKERS, Backers, CHANGELOG, CITATION, CODEOWNERS, CODE_OF_CONDUCT, CONTRIBUTING, CONTRIBUTORS, CONTRIBUTORS.MD, CONTRIBUTORS.TXT, COPYING, CREDITS, Changelog, Citation, Code_Of_Conduct, Codeowners, Contributing, Contributors, Contributors.md, Contributors.txt, Copying, Credits, GOVERNANCE.MD, Governance.md, HISTORY.MD, History.md, LICENSE, LICENSE.MD, LICENSE.txt, License, License.md, License.txt, MAINTAINERS, Maintainers, README-, README_, RELEASE_NOTES, ROADMAP.MD, Readme-, Readme_, Release_Notes, Roadmap.md, SECURITY.MD, SPONSORS, Security.md, Sponsors, authors, backers, changelog, citation, code_of_conduct, codeowners, contributing, contributors, contributors.md, contributors.txt, copying, credits, governance.md, history.md, license, license.md, license.txt, maintainers, readme-, readme_, release_notes, roadmap.md, security.md, sponsors", "Readme": "AUTHORS, Authors, BACKERS, Backers, CHANGELOG, CITATION, CODEOWNERS, CODE_OF_CONDUCT, CONTRIBUTING, CONTRIBUTORS, CONTRIBUTORS.MD, CONTRIBUTORS.TXT, COPYING, CREDITS, Changelog, Citation, Code_Of_Conduct, Codeowners, Contributing, Contributors, Contributors.md, Contributors.txt, Copying, Credits, GOVERNANCE.MD, Governance.md, HISTORY.MD, History.md, LICENSE, LICENSE.MD, LICENSE.txt, License, License.md, License.txt, MAINTAINERS, Maintainers, README-, README_, RELEASE_NOTES, ROADMAP.MD, Readme-, Readme_, Release_Notes, Roadmap.md, SECURITY.MD, SPONSORS, Security.md, Sponsors, authors, backers, changelog, citation, code_of_conduct, codeowners, contributing, contributors, contributors.md, contributors.txt, copying, credits, gov

Core symbols most depended-on inside this repo

stringify
called by 32
update.mjs
getConfig
called by 5
extension/src/config.ts
fetchAndUpdate
called by 3
extension/src/fetch.ts
sortObject
called by 1
update.mjs
toTitleCase
called by 1
update.mjs
addTitleCaseVariants
called by 1
update.mjs
addLowerCaseVariants
called by 1
update.mjs
fetchLatest
called by 1
extension/src/fetch.ts

Shape

Function 13

Languages

TypeScript100%

Modules by API surface

update.mjs5 symbols
extension/src/index.ts2 symbols
extension/src/fetch.ts2 symbols
extension/src/config.ts2 symbols
eslint.config.js2 symbols

Dependencies from manifests, versioned

@antfu/ni27.0.1 · 1×
@types/vscode1.106.1 · 1×
@vscode/vsce3.7.1 · 1×
bumpp10.3.2 · 1×
eslint9.39.1 · 1×
eslint-factory0.1.2 · 1×
ofetch1.5.1 · 1×
ovsx0.10.7 · 1×
tsdown0.16.8 · 1×
typescript5.9.3 · 1×
vsxpub0.1.2 · 1×

For agents

$ claude mcp add vscode-file-nesting-config \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact