杠精派
派聪明
0/512

热门评论

是你啊 2026年06月04日 17:45
引用原文:PaiCLI 留了几个测试 profile,日常回归用 mvn test -Pquick 跳过那些慢测试,改动大了再 mvn test -DskipTests=false 跑全量。
这是啥意思
点赞
回复2 取消回复
是你啊 2026年06月04日 17:46
@派聪明
点赞
回复 取消回复
展开剩余 1 条回复

28 条评论

是你啊 2026年09月06日 14:16
引用原文:PaiCLI
@派聪明 简单介绍一下Paicli项目以及整体架构设计
点赞
回复1 取消回复
派聪明 2026年09月06日 14:16
# PaiCLI 项目简介与整体架构## 项目简介PaiCLI 是一个**纯 Java 编写的 AI Agent命令行工具**,参考了 Claude Code 和 Qoder CLI 的设计,交互体验友好。运行后你会看到一个 π主题的彩色开屏界面,底部状态栏会显示当前使用的模型、MCP 连接数、可用工具数量,以及当前处于 ReAct 还是 Plan模式。 **技术栈与环境:** - 语言:Java(JDK17) - 构建:Maven(`mvn clean package` 打出 jar 包后 `java -jar`运行) -模型支持:GLM、DeepSeek、阶跃星辰、Kimi、讯飞星辰 MaaS 等,通过 `.env` 配置 API Key 即可接入##核心架构模块(从易到难) 1. **Agent 内核**:ReAct循环 + Function Calling,实现“思考-行动-观察”的迭代推理,这是整个工具的基础引擎。 2. **任务编排层**:Plan-and-Execute模式 + DAG调度,支持多步骤复杂任务的拆解与依赖编排(可通过 `/plan`命令切换)。 3. **记忆与上下文工程**:三层 Memory 设计,处理长对话压缩和 Token预算控制。 4. **RAG代码检索**:结合向量检索与 AST 关系图谱,实现语义化的代码搜索(可配合本地 Ollama 的 embedding模型使用)。 5. **MCP协议层**(`com.paicli.mcp`模块):支持 stdio 子进程与 Streamable HTTP 远程两类 server,基于 JSON-RPC通信,内置注册60 多个外部工具(如 Chrome DevTools MCP),工具自动统一前缀注册。 **一句话总结**:PaiCLI 相当于一个简化版的 Claude Code,让开发者能在本地终端通过自然语言驱动大模型调用工具、执行任务,同时也是学习 Agent核心技术(ReAct、Function Calling、MCP、RAG)的优秀实战项目。
点赞
回复 取消回复
曾经的日记本 2026年08月25日 15:42
引用原文:第四步是编译。先产出一个能手工验收的 jar 包。
这是什么意思,在做什么事情的时候突然要编译了
点赞
回复 取消回复
inno 2026年08月18日 16:27
引用原文:第二件事,进 Plan 模式。输入 /plan 再给它一个多步骤任务,比如“创建一个 demo 项目,然后读取 pom.xml,最后验证项目结构”
@派聪明 这一步的预期结果是什么
点赞
回复1 取消回复
派聪明 2026年08月18日 16:27
这是我从文章中选择的一段文本:"第二件事,进 Plan 模式。输入 /plan 再给它一个多步骤任务,比如“创建一个 demo 项目,然后读取 *******,最后验证项目结构”" 这一步的预期结果是什么 当前模型还在开发当中,请右上角下拉框切换到其他模型
点赞
回复 取消回复
默默的乌龟 2026年07月23日 17:49
聪明哥,我麻烦问下,我是前端,我也想转agent,目前我在学习java,如果要转agent的话是不是要对python语言进行学习
点赞
回复1 取消回复
我是大牛 2026年08月07日 21:14
java也可以呀,如果你java已经学的很多了那就java,如果没多久就python
点赞
回复 取消回复
安安 2026年07月08日 21:48
引用原文: PaiCLI
想问下这个项目的项目背景和业务场景是啥,今天面试的时候说的不太清楚...@派聪明
点赞
回复1 取消回复
派聪明 2026年07月08日 21:48
不用慌,二哥那篇关于 PaiCLI 的文章里介绍得很清楚,我帮你把项目背景和业务场景提炼出来。 --- ## 项目背景 PaiCLI 是一个**纯 Java 编写的 AI Agent 命令行工具**,参考了业界知名的 **Claude Code** 和 **Qoder CLI** 的设计理念。它本质上是**一个简化版的 Claude Code**,旨在把大语言模型的 Agent 能力(ReAct 循环、Function Calling、MCP 协议等)通过命令行界面落地。 它涵盖了当前 Agent 领域的核心技术栈:ReAct 循环、Plan-and-Execute 任务编排、三层 Memory 上下文工程、RAG 代码检索、MCP 协议的完整实现等。这些正是 2025-2026 年面试中的高频热点。 ## 业务场景 PaiCLI 的定位是**开发者生产力工具**,核心场景包括: 1. **智能代码生成与项目创建**:输入"创建一个 Java 项目叫 myapp",它就能自动调用工具完成创建。 2. **多步骤任务编排(Plan 模式)**:输入 `/plan` 后下达"创建一个 demo 项目,读取 pom.xml,验证项目结构"这样的多步任务,它能自主拆解并串行执行。 3. **联网搜索与信息检索**:通过内置工具(如 `web_search`)获取实时信息。 4. **代码检索与理解**:结合 RAG 和 AST 关系图谱,支持对项目代码的语义检索。 5. **MCP 工具集成**:支持 stdio 子进程和 Streamable HTTP 两类 MCP Server,内置注册了 60+ 外部工具(如 Chrome Devtools MCP),相当于一个可无限扩展的"工具超市"。 简单说,**PaiCLI 就是一个把大模型能力封装成命令行助手的工程项目**,让你在终端里通过自然语言就能完成开发任务。面试时能把这三点说清楚,面试官会觉得你对 Agent 落地场景有真实理解。加油!
点赞
回复 取消回复
17377927899 2026年07月04日 20:23
@派聪明 PaiCLI 留了几个测试 profile,日常回归用 mvn test -Pquick 跳过那些慢测试,改动大了再 mvn test -DskipTests=false 跑全量。这是啥意思
点赞
回复1 取消回复
派聪明 2026年07月04日 20:24
这是 Maven 的测试配置,在 PaiCLI 项目里用来区分**日常快速验证**和**全面回归测试**两种场景。 我来给你拆解一下: **1️⃣ `mvn test -Pquick` —— 日常快速回归** - `-Pquick` 表示激活名为 `quick` 的 **Maven Profile(构建环境配置)**。 - 这个 Profile 里配置了跳过那些耗时的测试(比如需要调用大模型 API、启动外部服务等的集成测试)。 - 开发者写代码改完后,跑这个命令十几秒就结束,能快速验证核心逻辑没崩,适合频繁提交前使用。 **2️⃣ `mvn test -DskipTests=false` —— 全量回归** - `-DskipTests=false` 是 Maven 的一个属性参数。 - 默认情况下 Maven 的 `<skipTests>` 可能是 `true`(跳过所有测试),设为 `false` 就是**跑所有测试用例**,包括那些被 `quick` Profile 过滤掉的慢测试。 - 改动面比较大,或者准备提 Merge Request 之前,一般会跑一次全量,确保没有漏掉任何回归问题。 **简单总结:** | 命令 | 做什么 | 什么时候用 | |------|--------|-----------| | `mvn test -Pquick` | 只跑核心、快速的单元测试 | 日常开发、小改动后 | | `mvn test -DskipTests=false` | 跑所有测试(含慢的集成测试) | 大改动、提代码合并前 | 这就是**增量验证**和**全量回归**配合使用的工程实践,既保证了开发效率,又不会让 bug 漏到线上。
点赞
回复 取消回复
17377927899 2026年07月04日 20:23
PaiCLI 留了几个测试 profile,日常回归用 mvn test -Pquick 跳过那些慢测试,改动大了再 mvn test -DskipTests=false 跑全量。@派聪明
点赞
回复1 取消回复
派聪明 2026年07月04日 20:23
根据参考资料中的内容,PaiCLI 确实留了几个测试 profile,日常回归和全量测试的命令分别是: **日常快速回归(跳过慢测试):** ```bash mvn test -Pquick ``` **改动较大时跑全量测试:** ```bash mvn test -DskipTests=false ``` 这是 PaiCLI 项目中的测试实践,这套测试策略设计得很务实:日常开发使用 `-Pquick` 快速回归,只跑核心的快测试,节省时间;当代码改动较大时,再用全量测试确保所有功能都覆盖到,避免遗漏。
点赞
回复 取消回复
鲤鱼曲奇 2026年07月02日 14:53
引用原文:PaiCLI 支持的模型非常多,GLM、DeepSeek、阶跃星辰、Kimi、讯飞星辰 MaaS 都能接,任何一个都可以。
@派聪明 具体怎么操作
点赞
回复1 取消回复
派聪明 2026年07月02日 14:53
从你引用的这段文章来看,配置操作其实很简单,总共就两步: --- ### 第一步:复制环境变量文件 在项目根目录下,把 `.env.example` 文件复制一份,重命名为 `.env`: ```bash cp .env.example .env ``` ### 第二步:填写你的 API Key 用文本编辑器打开 `.env` 文件,找到对应模型的配置项,填入你的 Key 即可。 以 DeepSeek 为例,文件内容大致长这样: ```properties # 选择你要用的模型提供商 AI_PROVIDER=deepseek # DeepSeek 配置 DEEPSEEK_API_KEY=sk-你的Key在这里 DEEPSEEK_API_BASE=https://api.deepseek.com DEEPSEEK_MODEL=deepseek-chat ``` 换成 GLM、Kimi 等其他模型也是同理,改一下 `AI_PROVIDER` 和对应的 Key 就行。 --- ### 一个小提示 `.env` 文件默认已被 `.gitignore` 忽略,所以不用担心 Key 被提交到代码仓库里,放心填就好了。 填好保存后,重新编译运行 PaiCLI,它就会自动读取你的配置,直接开始对话使用。
点赞
回复 取消回复
🌙🌙[月亮] 2026年07月01日 22:08
引用原文:测试也别落下。 PaiCLI 留了几个测试 profile,日常回归用 mvn test -Pquick 跳过那些慢测试,改动大了再 mvn test -DskipTests=false 跑全量。
@派聪明 这是什么意思
点赞
回复1 取消回复
派聪明 2026年07月01日 22:08
这段话的意思是:**PaiCLI 项目在 Maven 构建工具里配置了不同的测试环境(profile),让你可以根据场景灵活选择跑哪些测试。** 具体来说: - **`mvn test -Pquick`**:日常开发用的“快速回归”命令。`-Pquick` 会激活项目中名为 `quick` 的 Maven profile,这个 profile 配置好了**只跑那些轻量级的单元测试**,自动跳过集成测试、慢测试(比如需要调用大模型 API 的测试)。这样你每次改完代码想验证一下,几十秒就能跑完,不耽误事。 - **`mvn test -DskipTests=false`**:当你的改动比较大、或者准备提交代码时,需要**跑全量测试**来确保没有破坏任何已有功能。`-DskipTests=false` 的意思是“不要跳过任何测试”,也就是所有测试(包括慢的集成测试)都跑一遍。 **核心思想**:日常开发追求效率,用 `-Pquick` 快速验证;关键节点追求质量,用全量测试兜底。这也是真实项目中常用的策略。
点赞
回复 取消回复
Namikaze minato 2026年06月24日 14:34
引用原文:Seek、阶跃星辰、Kimi、讯飞星辰 MaaS 都能接,任何一个都可以。
这里项目里面不配置,直接走cc switch行吗
点赞
回复1 取消回复
Namikaze minato 2026年06月24日 15:07
@派聪明
点赞
回复 取消回复

目录