配置与存储位置
Dline 把持久状态、运行时资源、用户文档和项目能力放在不同的根目录下。这些位置各有归属,不应合并成一个配置目录。
状态与数据根目录
Section titled “状态与数据根目录”默认位于 ~/.dline/data/,保存规范化设置、工作区状态、Profile 元数据和密钥:
~/.dline/data/├── globalState.json├── secrets.json├── settings/│ ├── settings.json│ └── api_profiles.json├── secrets/│ ├── api_keys.json│ └── provider_secrets.json└── workspaces/ └── <workspace-hash>/ ├── workspaceState.json └── settings.jsonDline 运行时不要手动编辑这些文件。设置和 Profile 通过各自的仓储接口更新,避免多个 VS Code 窗口用过期快照互相覆盖。
默认位于 ~/.dline/,保存服务商元数据、缓存和 Puppeteer 数据等资源:
~/.dline/├── providers/├── cache/└── puppeteer/面向用户的任务数据和全局能力位于操作系统的“文档”目录下,通常是 ~/Documents/dline/:
~/Documents/dline/├── tasks/├── rules/├── workflows/├── skills/├── subagents/├── mcp/├── hooks/├── settings/│ └── mcp_settings.json└── checkpoints/DLINE_DOCS_DIR 表示完整的 Dline 文档根目录。设置后,Dline 不会再追加一层 dline 目录。
仓库级能力使用明确的项目路径:
your-project/├── .agents/│ ├── rules/│ ├── workflows/│ ├── skills/│ ├── subagents/│ └── mcp/└── .agentignore把需要与协作者共享的 .agents/ 资源和 .agentignore 策略提交到仓库,但不要提交凭据。工作区 MCP 描述文件会拒绝在敏感字段中直接写入密钥,必须改用环境变量引用。
| 变量 | 说明 | 默认值 |
|---|---|---|
DLINE_DIR | 状态与数据根目录的父目录,Dline 会在其下追加 data/ | ~/.dline |
DLINE_HOME_DIR | 资源目录,保存服务商元数据、缓存和 Puppeteer 数据 | ~/.dline |
DLINE_DOCS_DIR | 完整的文档根目录,保存任务和全局能力 | 系统“文档”目录下的 dline |
DLINE_COMMAND_PERMISSIONS | 限制可执行 shell 命令的 JSON 策略 | 未设置 |
路径覆盖需要在启动 VS Code 之前设置,扩展宿主进程才能继承。若需要完全隔离的环境,请同时设置三个路径变量;只覆盖其中一个不会隔离其他目录。
DLINE_COMMAND_PERMISSIONS
Section titled “DLINE_COMMAND_PERMISSIONS”限制 Dline 可以执行的 shell 命令:
export DLINE_COMMAND_PERMISSIONS='{"allow": ["npm *", "git *"], "deny": ["rm -rf *"]}'格式:
{ "allow": ["pattern1", "pattern2"], "deny": ["pattern3"], "allowRedirects": true}规则:
deny优先于allow。- 设置了
allow时,不匹配allow的命令都会被拒绝。 allowRedirects控制是否允许 shell 重定向(>、>>、<),默认为false。
当前公开的扩展能力不提供稳定的第三方插件或生命周期 Hook 安装接口。上面链接的 Hooks 和插件页面描述的是规划中的边界,不是可安装的合同。