Skip to content
 
 

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MiniClaw

MiniClaw 是一个最小可用的 Java AI 助手核心框架。

核心功能讲解文档见:docs/核心功能讲解.md

它包含:

  • OpenAI、Anthropic、Ollama 的统一 LLM 提供商抽象
  • 基于插件架构的工具注册系统
  • skills/ 目录读取 Markdown 文件的动态 skill 发现机制
  • 内存版任务管理系统
  • 一个可直接运行的 CLI 示例

运行

mvn compile exec:java

也可以只用 JDK 编译运行:

javac -d out $(find src/main/java -name "*.java")
java -cp out dev.miniclaw.Main

PowerShell 下可以使用:

$files = Get-ChildItem -Recurse src/main/java -Filter *.java | ForEach-Object FullName
javac -d out $files
java -cp out dev.miniclaw.Main

查看已注册工具:

java -cp out dev.miniclaw.Main list-tools

启动可视化前端:

java -cp out dev.miniclaw.Main serve

启动后访问:

http://localhost:7070

页面中的“模型切换”区域默认提供:

Provider: anthropic
Model: Qwen/Qwen2.5-72B-Instruct-128K
Base URL: https://api.siliconflow.cn

Token 需要在页面中手动输入。点击“应用配置”后,后续 Web 任务会使用新的模型配置,不需要重启服务。Token 只保存在当前 Java 进程内,服务退出后会丢失。

调用工具:

java -cp out dev.miniclaw.Main /tool builtin.now
java -cp out dev.miniclaw.Main /tool skill.summarize 这里是一段需要总结的文本

配置模型提供商

MiniClaw 从环境变量读取模型配置:

  • OPENAI_API_KEY
  • ANTHROPIC_API_KEY
  • ANTHROPIC_AUTH_TOKEN,可作为 ANTHROPIC_API_KEY 的别名
  • ANTHROPIC_BASE_URL,Anthropic 兼容接口地址,默认 https://api.anthropic.com
  • ANTHROPIC_MODEL,Anthropic provider 默认模型
  • OLLAMA_BASE_URL,默认值为 http://localhost:11434
  • MINICLAW_PROVIDER,可选 echoopenaianthropicollama
  • MINICLAW_MODEL,指定模型名

HTTP 客户端保持轻量且无第三方依赖。默认 CLI 使用 EchoLlmProvider, 因此没有网络和 API Key 也可以运行。

Skills 机制

把 Markdown 文件放到 skills/ 目录下即可被自动发现。文件中的第一个一级标题会被当作 skill 名称。

新增或修改 skills/*.md 后不需要重启服务。下一次调用对应的 skill.* 工具时,MiniClaw 会重新读取最新文件;Web 页面刷新状态后也会显示新 skill。

MiniClaw 会把每个 skill 暴露为可调用工具,命名格式为:

skill.<slug>

例如:

skills/summarize.md -> skill.summarize
skills/code-review.md -> skill.code-review

项目结构

src/main/java/dev/miniclaw
├── core      # AssistantCore,负责串联 LLM、工具和任务
├── llm       # LLM 提供商抽象与实现
├── skills    # skill 发现与 skill 工具封装
├── tasks     # 任务管理
└── tools     # 工具接口、插件接口和注册表

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages