HarnessProperties 的配置示例：

```java
HarnessProperties harnessProps = new HarnessProperties(".tmp/");

harnessProps.setSessionWindowSize(8);
harnessProps.setSummaryWindowSize(30);
harnessProps.setSummaryWindowToken(30_000);

harnessProps.addTools(ToolPermission.TOOL_ALL_FULL); //设定工具权限
```

可选配置：

### 1、核心配置项

| 配置项 | 类型 | 默认值 | 描述 |
|-----|---|--------|------|
| `workspace` | `String` | work | 工作区 |
| `tools`         | `List<String>` | / | 工具权限配置（`**` = 所有工具；`*` = 仅公域工具） |
| `models`      | `List<ChatConfig>` | / | 大模型配置（第一个为默认） | 
| `maxSteps`   | int | `30` | 根代理最大循环步数 |
| `maxStepsAutoExtensible`  | bool | `true` | 最大步数自动续航（由 LLM 反思控制） |
| `sessionWindowSize`  | int | `8` | 会话历史窗口大小（新指令时使用几条历史消息） |
| `summaryWindowSize`  | int | `30` | 触发摘要压缩的消息条数阈值 |
| `summaryWindowToken`  | int | `30000` | 触发摘要压缩的内容长度阈值 |


models 模型配置参考：[《模型配置与请求选项》](/article/1087)

### 2、安全与行为配置

| 配置项 | 类型 | 默认值 | 描述 |
|--------|---|--------|------|
| `sandboxMode` | bool | `true` | 沙盒模式，启用时禁止访问绝对路径（只能访问工作区与用户主目录） |
| `thinkPrinted` | bool | `true` | 是否打印 AI 的内心思考（建议关掉，关闭后输出更简洁） |
| `hitlEnabled` | bool | `false` | 是否启用人工审核（危险操作需人工确认） |
| `subagentEnabled` | bool | `true` | 是否启用子代理模式（自动委派任务给专家代理） |


### 3、扩展配置


| 配置项 | 类型 | 默认值 | 描述 |
|--------|---|--------|------|
| `skillPools` | `Map<String, String>` | / | 技能池配置 |
| `mcpServers` | `Map<String, McpServerParameters>` | / | Mcp 服务配置 |
| `apiServers` | `Map<String, ApiSource>` | / | We Api 服务配置 |


### 附录、工具权限配置选择（tools）

| 工具名 | 类型 | 描述 |
|--------|------|------|
| `**` | - | 所有公域 + 私域工具 |
| `*` | - | 仅所有公域工具 |
| `pi` | - | 微形命令行工具（包括工具：read, write, edit, bash） |
| | | |
| `hitl` | 私域 | 人工介入审核 |
| `generate` | 私域 | 动态生成子代理 |
| `restapi` | 私域 | Web 服务 API 接入 |
| `mcp` | 私域 | MCP 服务接入 |
| | | |
| `code` | 公域 | 编码指引（自动分析项目类型、编译指令等） |
| `lsp` | 公域 | LSP服务（提升代码编辑器的智能感知能力） |
| `codesearch` | 公域 | 网络代码搜索 |
| `websearch` | 公域 | 网络搜索 |
| `webfetch` | 公域 | 网页内容抓取 |
| `todo` | 公域 | 任务清单管理 |
| `skill` | 公域 | 专家技能调用 |
| `task` | 公域 | 子代理任务委派 |
| `bash` | 公域 | Shell 命令执行 |
| `ls` | 公域 | 列出目录内容 |
| `grep` | 公域 | 递归内容搜索 |
| `glob` | 公域 | 通配符文件搜索 |
| `edit` | 公域 | 文件编辑（含 write、edit、read） |
| `read` | 公域 | 读取文件内容 |


