# 📦 通用库与外部集成 (libs) `libs/` 用来放两类东西: 1. **内部可复用的胶水代码**:小而稳、低耦合、可替换(`common/`) 2. **第三方工具与外部集成**:尽量保持原样、只做最薄适配(`external/`) `database/` 预留未来的数据持久化层(当前仅占位)。 ## 目录结构 ``` libs/ ├── README.md ├── common/ │ ├── README.md │ ├── __init__.py │ ├── models/ │ │ └── __init__.py │ └── utils/ │ └── backups/ │ ├── README.md │ ├── 快速备份.py │ └── 一键备份.sh ├── database/ │ ├── README.md │ └── .gitkeep └── external/ ├── README.md ├── chat-vault/ ├── prompts-library/ ├── l10n-tool/ ├── my-nvim/ ├── MCPlayerTransfer/ ├── XHS-image-to-PDF-conversion/ └── .gitkeep ``` ## 子目录职责与边界 ### `common/`:内部通用模块 - 入口:[`common/README.md`](./common/README.md) - 只放 **可复用** 的基础能力:模型、工具函数、脚本等 - 不要把业务逻辑、项目临时代码塞进来 - 约定:新增/调整能力时,同步更新 `libs/common/README.md` ### `database/`:数据库适配层(预留) - 入口:[`database/README.md`](./database/README.md) - 目标是把“存储细节”关进盒子里:连接、迁移、查询适配、事务边界 - 约定:实现前先写清楚目录结构与边界(见 `libs/database/README.md`) ### `external/`:第三方工具与外部集成 - 入口:[`external/README.md`](./external/README.md) - 尽量保持第三方代码原样,避免“魔改后不可升级” - 每个工具目录至少包含:`README.md`(用途/入口/依赖)与许可证/来源说明 - 约定:新增外部工具时,同步更新 `libs/external/README.md` ## 常用入口 - AI 聊天记录保存:[`external/chat-vault/`](./external/chat-vault/)(支持 Codex/Kiro/Gemini/Claude CLI) - 提示词批量管理:[`external/prompts-library/`](./external/prompts-library/)(配合 `../prompts/` 使用) - 备份工具:优先使用仓库根目录的 `backups/`(当前与 `libs/common/utils/backups/` 内容一致) ## 贡献约定(最小要求) 1. 新增模块先定义职责边界,再写代码/文档 2. 新增依赖记录安装方式与最低版本(必要时补充到 `documents/工具集.md`) 3. 目录结构/职责变化时,更新对应 README,保证“文档即真相源”