CodeAssist 是跑在 Android 设备上的 IDE,无需 Gradle 守护进程即可构建 Android/Java 项目,支持补全、积木编辑与设备端 Git。
- v3.33.0
- 发布于
- 2 天前
- 2,073
- 星标
- 3,599
- 下载
- 同步于
- 1 天前
最新版本
v3.33.02026年10月27日 05:47下载慢?可在上方随时切换镜像源
项目说明
项目概述
在手机上写 Android 应用通常卡在两件事:Gradle 太重、工具链跑不起来。CodeAssist 的做法是完全自建:项目用声明式模型描述,编译成带指纹增量检查与持久缓存的增量任务 DAG,直接驱动 aapt2、D8/R8 与 apksigner,全程不托管 Gradle。Java 补全由 Eclipse JDT 驱动,Kotlin 补全为测试版,还内置 Compose Multiplatform 界面与桌面、Android 双启动器。回归测试 2170 项通过,Java 补全质量指标 recall 100%、top-1 75%。
口袋里的真 IDE,从补全到签名安装一条龙。
| 项目 | 内容 |
|---|---|
| 平台 | Android(ART)+ 桌面启动器 |
| 技术栈 | Kotlin,60 个模块分层,Compose Multiplatform UI |
| 许可证 | GPL-3.0-or-later,插件 SPI 带 Classpath-exception-2.0 |
| 测试 | 2170 项通过 / 386 套件 |
| 构建 | Gradle wrapper + JDK 17+ |
核心能力
- Java 代码智能:Eclipse JDT 容错解析、排名补全、诊断与快速修复,每次按键补全延迟 2.8–4.3 毫秒
- Kotlin 补全(beta):设备端完整 Kotlin 补全,对齐 Java 的排名体验
- 积木编辑:任意 Java 文件投影为 Scratch 风格类型化积木树,改动按最小源码编辑写回,注释原样保留
- Android XML 辅助:布局与清单的标签、属性、资源补全与实时校验
- 真机构建 APK:解析、编译、dex、打包、签名、安装全在设备上
- 设备端 Git:基于 JGit 的暂存、提交、分支、合并、stash 与推送,可登录 GitHub 克隆私有仓库并发 PR
- 全面扩展点:模块类型、构建系统、语言后端、分析器与快速修复均以 SPI 插入
工程结构
- 分层依赖:platform → lang → build-system → run → android → services → plugins → app,依赖只向下
- 扁平路径:Kotlin 编辑后端是 :lang-kotlin,虽位于 lang/lang-kotlin,映射只在 settings.gradle.kts
- 事务式变更:先在 Transaction 上暂存再 commit,长任务为 suspend 且受读写锁约束
快速上手
- 从 Releases 安装 Android 启动器,或在桌面跑 ./gradlew :ide-desktop:run
- 新建或克隆项目,写代码用补全与积木编辑
- 点构建直接在设备上产出 APK 并签名安装
- 需要 CI 时用 headless 的 codeassist 启动器与官方 GitHub Action
构建与测试
- 仅核心框架:CI_CORE_ONLY=true ./gradlew check,纯 JVM 无需 Android SDK
- 完整构建:./gradlew build 需 Android SDK
- 回归基线:regressionTest 任务对照提交的 JSON 基线,补全质量回归会让 CI 失败
注意事项
- 插件许可例外:plugin-api、platform-core 等 SPI 模块带 Classpath-exception-2.0,插件可用任意许可发布
- 指标口径:延迟数字记录自维护者机器仅供参考,质量指标跨机器一致
- 开发约定:ID 用 @JvmInline value class 包装,开放集合为字符串值类、封闭集合为枚举
历史版本
排序