liuzh
|
eeceaaaea9
|
fix: 将所有emoji/Unicode特殊字符替换为ASCII安全字符
Windows cmd/PowerShell默认codepage下emoji显示为?号。
全局替换: 👋->移除, 💭->[Thinking], ⚙->*, ✓->[OK], ✗->[FAIL],
◆->>, ⚠->[!], ✅->[OK], •->|/-, →->>>, ✏️->[Edit]等。
❯保留(windows-vtp终端下正常显示)。
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
1 month ago |
liuzh
|
b7ad7956c0
|
fix: 启动脚本添加MAVEN_OPTS抑制JDK25兼容性警告
设置--enable-native-access和--sun-misc-unsafe-memory-access
消除Maven自身jansi和guava在JDK25下的WARNING输出
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
1 month ago |
liuzh
|
f3ded93fec
|
chore: 添加PowerShell启动脚本run.ps1
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
1 month ago |
liuzh
|
1c74bbdcdb
|
fix: 关闭Spring Boot banner和启动日志,添加run.bat启动脚本
- application.yml: banner-mode=off, 所有日志级别提升到WARN
- 启动时不再显示Spring Boot ASCII art和INFO日志
- 控制台只显示Claude Code自己的输出
- run.bat: 预配置JDK25环境变量的一键启动脚本
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
1 month ago |
liuzh
|
9048cc8b74
|
fix: 改进终端兼容性 - FFM原生终端支持、dumb终端提示、双重Goodbye修复
- 添加jline-terminal-ffm依赖(JDK22+ FFM API原生终端)
- JVM参数增加--enable-native-access=ALL-UNNAMED
- dumb终端模式下显示黄色警告和建议
- 终端尺寸为0时不显示尺寸信息
- ExitCommand不再输出Goodbye(避免与ReplSession重复)
- TerminalBuilder增加streams(System.in, System.out)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
1 month ago |
liuzh
|
b29d61581a
|
feat: Phase2 JLine终端交互增强 - 行编辑、历史、Tab补全、信号处理
JLine 3 集成:
- ReplSession重写: JLine Terminal + LineReader 替代Scanner
- 支持行编辑(光标移动、删除、Home/End等)
- 持久化历史记录(~/.claude-code-java/history)
- 上下箭头浏览输入历史
- Ctrl+C取消当前输入、Ctrl+D退出
- JLine失败时自动降级到Scanner模式
Tab补全:
- ClaudeCodeCompleter: 斜杠命令补全(/后按Tab)
- 支持命令别名补全(如 /q → exit)
- 分组显示(Commands / Aliases)
新增命令:
- /model: 显示当前AI模型信息
- /compact: 压缩对话上下文
- /cost: Token用量显示(占位)
改进:
- HelpCommand清理为统一格式
- Banner增加终端信息显示和快捷键提示
- 彩色提示符使用AttributedStringBuilder
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
1 month ago |
liuzh
|
70c9ebed2b
|
fix: 解决ChatModel多Bean冲突和JVM内存不足问题
- AppConfig中用@Qualifier指定anthropicChatModel
- spring-boot-maven-plugin配置-Xmx512m限制堆内存
- application.yml关闭web-application-type为none
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
1 month ago |
liuzh
|
6d3f24aad6
|
fix: 升级Spring Boot到4.1.0-M2以兼容Spring AI 2.0.0-M4
Spring AI 2.0.0-M4依赖Spring Framework 7.0(RetryListener类),
需要Spring Boot 4.x作为parent。
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
1 month ago |
liuzh
|
d67f41358d
|
feat: Phase1 项目骨架 - Maven项目结构、核心AgentLoop、6个工具、命令系统、控制台渲染、REPL会话
实现内容:
- pom.xml: JDK25 + Spring AI 2.0.0-M4 + JLine3 + Picocli
- core/AgentLoop: 基于ChatModel的显式工具循环(非ChatClient)
- tool/: Tool接口 + ToolRegistry + ToolCallbackAdapter(适配Spring AI)
- tool/impl/: BashTool, FileReadTool, FileWriteTool, FileEditTool, GlobTool, GrepTool
- command/: SlashCommand接口 + CommandRegistry + /help, /clear, /exit
- console/: AnsiStyle, BannerPrinter, ToolStatusRenderer, ThinkingRenderer, SpinnerAnimation, MarkdownRenderer
- context/: SystemPromptBuilder, ClaudeMdLoader(多级CLAUDE.md加载)
- repl/ReplSession: REPL主循环(Scanner降级方案)
- config/AppConfig: Spring Bean装配
- application.yml: Anthropic/OpenAI双模型配置
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
1 month ago |
liuzh
|
2a565d314d
|
docs: 初始化项目需求文档和修改记录
- 创建需求文档.md:完整覆盖 claude-code 全部 38 个模块、2289 个文件
- 按 P0/P1/P2/P3 四级划分实现优先级
- 包含工具系统(40个)、命令系统(79+个)、服务层(20个子模块)的完整映射
- 设计 Java 包结构和类映射关系
- 创建修改记录.md
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
|
1 month ago |