Skip to content

LineCode Pro v2.0.0-next

Choose a tag to compare

@github-actions github-actions released this 28 Oct 11:34
· 42 commits to master since this release
2ee0859

LineCode Pro v2.0.0-next

版本信息

  • 版本名称: v2.0.0-next
  • 版本号: 45

v2.0.0-next

全量 Java 重写

  • 模块化架构 - 以 modules/ 下的 30 个 Gradle 模块替换旧 MVP 单体:core-*、engine-*、data、tool-*、ui-*、feature-*、platform-android、runtime 和 arch-test 各自负责固定边界,:app 只保留 Activity 壳、Manifest、资源和 SAF 委托。
  • 手写 UI 与状态 - 聊天、抽屉、时间线、工具卡、设置、模型、扩展、工作区和终端页面全部使用手写 Java View 与 core-mvi 路由/状态,不使用 XML 布局、Kotlin 或 Compose;主题通过 Tokens/ThemeBinder 原地刷新,保留滚动位置和草稿。
  • 完整工具循环 - 模型流式输出、工具批次、审批、结果回填和多轮循环由显式状态机驱动;支持文件读写编辑、Shell、Web 搜索、图片理解/生成、TODO、子 Agent、MCP、手机控制和 diff 回滚。
  • 上下文与提示词 - engine-prompt 统一管理 22 个提示词资产,严格校验 manifest.json、PromptId、占位符、重复内容和孤立文件;支持学习模式、极简模式、软/硬上下文压缩和可编辑模板。
  • 扩展与工作区 - Agent/MCP/Skills 扩展、SkillHub 搜索/详情/登录/发布/评论、GitHub Skill 导入、项目工作区、附件、SSH/Termux、终端提供者与本地归档均已接入新数据层(schema v12)。

本地模型改为可选构建

  • 默认精简版 - 默认构建不含 engine-local Java、LocalModelClient、LocalModelPage、LocalModelBridgeImpl,也不含 libllama.so、libggml*.so 或 libc++_shared.so;本地模型入口和协议页同步隐藏。
  • 本地模型版 - 使用 -PlinecodeEnableLocalModel=true 才编译本地运行时、JNI 页面和原生库。本地版是精简版的超集,保留全部普通功能。
  • 构建隔离 - 本地源码通过 src/local/java 与 androidComponents 注入,反射桥接只在本地版存在;R8 仅保留 JNI 入口、回调方法名和反射桥接类名,其余本地类继续混淆以缩小体积。
  • 产物命名 - Release 产物改为 LineCode Pro <version>-slim.APK / -local.APK,两个变体不会互相覆盖;切换变体需先 clean,避免 zipflinger 虚拟条目残留。

迁移与交互修复

  • 旧数据迁移 - 启动时读取旧 linecode.db(v4),先备份为 linecode.db.v4.bak,再合并会话、消息、工具结果、模型、项目、记忆、设置、扩展、diff 和旧 Skills 文件到 linecode-v2.db;重复启动不会重复导入。
  • C++ 提示词 - systemPrompt、语气、Chat/Plan 模式、工作目录、模型身份、TODO、上下文压缩、Agent 角色、图片理解等模板逐字迁移到 engine-prompt,Chat/Plan 模式恢复 MODE_TOOLS_ALLOWED / MODE_TOOLS_BLOCKED 动态工具列表。
  • 聊天交互 - 思考强度胶囊打开底部等级选择面板;右上角三点打开 C++ 更菜单(含打开会话抽屉、教程、设置、清空对话),不再直接跳设置。
  • 设置转场 - 页面 push/pop 使用水平平移动画,保留父页面和滚动位置。
  • 崩溃与 SAF - 全局未捕获异常写入崩溃页和错误日志;SAF 目录/归档/文件选择回调增加异常捕获、提示与日志,避免直接闪退。
  • 文件管理 - 抽屉 Files 页改为可展开文件树,显示项目名称/路径和刷新入口;点击文件通过系统“打开方式”选择器打开。
  • 记忆工具 - 恢复 memory_update 工具和记忆卡片标题,支持 user/project/environment 作用域与敏感内容拒绝。

工程质量与协作

  • 机械守卫 - 新增/收紧 CJK、UI 文案拼接、raw thread、size budget、字符串中英俄键一致、提示词目录一致性和架构测试;:app 源码也纳入扫描(NestedAgentRunner 是唯一明确允许的同步 Agent 桥)。
  • 版本与发布 - 版本号升级到 2.0.0-next(versionCode 45);Release 工作流只构建 slim,本地版按参数单独构建。
  • 许可证与协作 - 切换为 AGPL-3.0-or-later + 商业双重许可,补充 CLA.md、CLA / verify CI、CONTRIBUTING.md、PR 模板、Bug/Feature/Suggestion/Other/UI parity Issue 模板、README 与 AGENT.md 禁止事项。
  • CI 去重 - CI 只在 PR 运行,合并到 master 由 Release 处理,避免 PR 与合并后重复执行同一套检查。
  • 发布修复 - Release 在旧 master 没有 Java app/build.gradle.kts 时不再跳过打包;新增 force_release 手动入口,迁移后的首个版本可以正常出包。

下载说明

  • LineCode Pro 2.0.0-next-slim.APK - 默认精简版 Release APK
  • LineCode Pro 2.0.0-next-slim.APK.idsig - APK 签名文件
  • 本地模型版使用 -PlinecodeEnableLocalModel=true 单独构建,文件名带 -local,不会覆盖精简版。