我们使用三个工具权限：

* codesearch，网络代码搜索
* websearch，网络搜索（搜索文章）
* webfetch，网络抓取（读取文章）

### 1、代码示例

```java
public class DemoApp {
    public static void main(String[] arg) throws Throwable {
        //--- 1. 初始化
        HarnessProperties harnessProps = new HarnessProperties(".tmp/");
        harnessProps.addTools(ToolPermission.TOOL_CODESEARCH, ToolPermission.TOOL_WEBSEARCH, ToolPermission.TOOL_WEBFETCH); //设定工具权限
        harnessProps.addModel( null); //设定大模型配置

        AgentSessionProvider sessionProvider = new AgentSessionProvider() {
            private Map<String, AgentSession> sessionMap = new ConcurrentHashMap<>();

            @Override
            public AgentSession getSession(String instanceId) {
                return sessionMap.computeIfAbsent(instanceId, k -> InMemoryAgentSession.of(k));
            }
        };

        HarnessEngine engine = HarnessEngine.builder()
                .properties(harnessProps)
                .sessionProvider(sessionProvider)
                .build();


        engine.getMainAgent().prompt("solon ai 有哪些常用的注解？").call();
    }
}
```