dsebastien/obsidian-hidden-folders-access
GitHub: dsebastien/obsidian-hidden-folders-access
一款Obsidian插件,能在不修改磁盘文件的情况下让隐藏文件夹在Obsidian中可见并索引,解决默认忽略点开头文件夹的问题。
Stars: 19 | Forks: 1
# 隐藏文件夹访问
一款 Obsidian 插件,能让根目录下的隐藏文件夹(名称以点开头,例如 `.claude`、`.github`)在 Obsidian 中完全可见——包括文件资源管理器、搜索、关系图谱、元数据缓存和 Bases——同时保持其名称在磁盘上隐藏,以便外部工具(Claude Code、git、编辑器等)无需改动即可继续工作。
## 为什么需要
Obsidian 通常会忽略任何以 `.` 开头的路径。这对于 `.obsidian/` 等文件夹是合理的,但这意味着存储在点文件夹中的有用内容无法参与搜索、链接图谱或 Bases。重命名文件夹会破坏外部工具。符号链接会破坏 Obsidian Sync 和跨平台工作流程。
本插件解决了这一问题且无需修改文件系统:你选择哪些隐藏的根文件夹应该被 Obsidian 索引,然后插件将其注入到活动的库缓存中。
## 功能特性
- 在设置标签页中按文件夹启用。
- 完全集成:文件资源管理器、快速切换器、搜索、关系图谱、元数据缓存、Bases、Dataview,以及任何使用标准库 API 的插件。
- 通过文件系统监视器实现实时更新(创建 / 修改 / 重命名 / 删除)。
- 干净禁用:关闭某个文件夹(或禁用插件)会移除所有注入的条目——磁盘上不会有任何改动。
- 仅限桌面端,跨平台(Linux / macOS / Windows)。
## 安装说明
### 社区插件(推荐)
1. 在 Obsidian 中,进入 **设置 → 社区插件**。
2. 如果启用了 **受限模式**,请将其禁用。
3. 选择 **浏览**,搜索 **Hidden Folders Access**,安装它,然后启用。
你也可以在 [Obsidian 社区](https://community.obsidian.md/) 网站上浏览目录。
### 手动安装
如果插件尚未在社区目录中列出(或者你需要特定版本):
1. 从[最新版本](https://github.com/dsebastien/obsidian-hidden-folders-access/releases)下载 `main.js`、`manifest.json` 和 `styles.css`。
2. 将它们复制到 `/.obsidian/plugins/hidden-folders-access/` 目录下。
3. 重新加载 Obsidian,然后在 **设置 → 社区插件** 中启用 **Hidden Folders Access**。
### BRAT(前沿测试版)
[BRAT](https://github.com/TfTHacker/obsidian42-brat)(Beta 测试者自动更新工具)直接从 GitHub 仓库安装插件并保持自动更新。如果你想要最新的提交——**可能会出现问题**——请使用此方法。
1. 从 **设置 → 社区插件 → 浏览** 安装 **Obsidian42 - BRAT** 并启用。
2. 从命令面板运行 **BRAT: Add a beta plugin for testing**。
3. 粘贴 `https://github.com/dsebastien/obsidian-hidden-folders-access`。
4. 选择最新版本并确认。
5. 在 **设置 → 社区插件** 中启用 **Hidden Folders Access**。
## 使用方法
1. 打开 **设置 → Hidden Folders Access**。
2. 启用你想要 Obsidian 建立索引的任何文件夹(例如 `.claude`)。
3. 文件会立即出现在文件资源管理器中,并可从 Bases、Dataview、搜索等进行查询。
完整的用户文档位于 [`docs/`](./docs/README.md) 目录。
## 工作原理
该插件包装了 Obsidian 桌面版 `FileSystemAdapter` 上的两个未文档化方法(`listRecursiveChild` 和 `reconcileFile`),使得被白名单允许的隐藏路径跳过内部的隐藏路径过滤器,并像普通文件一样流经 `reconcileFileInternal`。插件会为每个启用的文件夹注册一个文件系统监视器,以便更改实时传播。禁用时,所有注入的条目都会被移除,并恢复原始方法。
技术设计说明:[`documentation/Architecture.md`](./documentation/Architecture.md) 和 [`documentation/Domain Model.md`](./documentation/Domain%20Model.md)。
## 开发
```
bun install
bun run dev # watch build, copies to $OBSIDIAN_VAULT_LOCATION/.obsidian/plugins/hidden-folders-access
bun run tsc:watch
bun run lint
bun test
```
完整的工作流程请参阅 [`DEVELOPMENT.md`](./DEVELOPMENT.md)。
## 兼容性
- Obsidian 1.4+
- 仅限桌面端(`isDesktopOnly: true`)。移动端 Obsidian 不提供本插件所依赖的文件系统原语。
## 许可证
MIT — 详见 [LICENSE](./LICENSE)。
## 支持
由 [Sébastien Dubois](https://dsebastien.net) 创建。如果这个插件对你有用,可以考虑[请我喝杯咖啡](https://www.buymeacoffee.com/dsebastien)。
标签:Bases, Dataview, Obsidian, Obsidian生态, 元数据, 图谱, 威胁情报, 开发者工具, 快速切换器, 插件, 搜索, 效率工具, 数据可视化, 数据管理, 文件浏览器, 文件系统, 生成式AI, 用户界面, 社区插件, 笔记管理, 索引, 自动化攻击, 设置, 隐藏文件夹