LineCodePro:Android开源本地AI编程工作台,移动端智能体编码开发环境

AI新闻 dotaai
145

LineCodePro是什么

LineCodePro 是一款基于 Android 平台的开源本地自托管AI编程工作台,采用GPL‑3.0开源协议。项目全部使用Java语言开发,不依赖Kotlin,不使用XML布局文件,最低兼容Android 8.0系统。

它并非简单的AI聊天客户端,核心定位是在手机设备上搭建一套具备Agent能力的编码工作环境。可以对接云端大模型接口,也支持本地GGUF模型离线推理。程序能够让AI直接读写本地文件、通过SSH操作远程服务器、执行Shell终端指令,同时支持自定义扩展工具与子智能体,会话数据默认保存在设备本地,只有用户主动配置远程模型接口时才会向外发送请求数据。

功能特色

多模型协议兼容

支持OpenAI兼容接口、Anthropic Claude协议、OpenAI Codex Responses接口、本地GGUF离线推理,可对接Ollama、DeepSeek、通义千问等服务。具备流式输出、模型思考区块展示、图文问答、文生图、对话自动压缩、长期记忆持久化,内置免密钥必应网页搜索能力。

完整的Agent工具调用系统

内置一套受权限管控的工具引擎,工具执行可设置人工确认或者会话自动放行,自带路径隔离保护。

  • 文件操作:遍历目录、读写编辑删除文件,设置单文件最大1MB,单次读取上限50KB;

  • 终端Shell:对接Termux或者独立IPC隔离进程执行命令;

  • 网络能力:网页搜索、网页内容抓取;

  • 多媒体:图片解析理解、AI绘图;

  • 智能体调度:支持子Agent、Agent流水线拆解复杂任务;

  • 任务管理:维护会话内部待办清单。
    所有工具输出会做截断处理,最大50KB,防止上下文溢出造成程序内存崩溃。

三种可切换工作空间

  1. 本地工作空间:借助Android SAF存储访问框架,访问手机本地存储项目代码,授予权限后遍历指定目录;

  2. SSH远程工作空间:基于JSch实现SSH连接,读写远端服务器文件、执行服务器命令,SSH凭证加密存储于本机;

  3. IPC隔离终端模式:通过AIDL绑定独立第三方应用,Shell与文件操作运行在独立进程,实现沙箱安全隔离,项目附带terminal‑provider作为参考Demo。

上下文防溢出与记忆机制

会话上下文占用达到50%会触发轻度摘要压缩,达到80%执行深度压缩,保留最近原始对话。聊天记录分片存储,单片段最大256KB,规避OOM内存溢出。长期记忆模块会从对话提取知识,新建会话自动注入记忆内容,减少用户重复重复描述项目背景。

扩展生态与数据管理

支持三类热加载扩展,无需重启App即可加载自定义能力:自定义Agent、MCP‑HTTP远程工具、实现AIDL接口的第三方IPC终端程序。
数据采用SQLite数据库统一存储会话记录、配置信息、扩展数据。支持.linecode格式全量归档导出,导出时自动脱敏API密钥、SSH密码等敏感信息;文件全部编辑行为留存Diff变更记录,可以回放历史修改。

安全隐私机制

默认开启工作区路径限制,AI仅可操作当前选定工作目录,关闭保护会弹出风险警告;网络访问启用URL白名单,默认拒绝明文HTTP请求;IPC跨进程调用增加自定义权限校验;密钥凭证加密保存;Release版本开启R8代码混淆,移除调试符号,禁止使用Debug签名打包正式发布包。

LineCodePro(图1)

技术细节

LineCodePro采用多模块Gradle工程架构,整体共14个子模块,遵循上层业务依赖底层抽象,AI与工具之间循环依赖使用接口进行解耦。

模块分组 模块名称 模块作用说明
底层核心 core‑model 数据实体、DTO,上下文与模型解析对象定义
  core‑api 通用抽象接口,定义工具、模型、搜索标准
  core‑security 网络白名单、请求安全校验逻辑
基础支撑 ui‑theme 全局UI主题基础设施
  markdown 对话内Markdown、代码块渲染组件
  ipc AIDL跨进程通信通用库
  build‑logic Gradle统一构建脚本插件
业务功能 data SQLite数据库、仓储层、归档导入导出、路径校验
  feature‑tool 全部内置工具,工具注册调度引擎
  feature‑model 各大模型协议实现、系统提示词、上下文压缩服务
  feature‑ssh SSH连接池、远程文件操作封装
  feature‑share 会话导出分享、PDF生成功能
主程序&示例 app 唯一主Activity,MVP架构,全部业务页面入口,总调度器
  terminal‑provider IPC隔离终端参考Demo应用

技术约束:全部业务代码使用Java,禁止Kotlin,界面通过Java代码绘制,无XML布局;单元测试使用JUnit4,不引入Robolectric、Mockito;构建需要JDK11以及Android SDK 36,支持Debug、自定义签名、Release正式包三种构建目标。程序整体采用单Activity架构,MainCoordinator作为全局调度器,拆分聊天控制器、工具控制器、权限控制器、存储控制器,使用工厂模式分发不同大模型客户端,注册表模式统一管理工具集合。

应用场景

  1. 移动端代码调试:外出仅使用Android手机,直接读取手机本地项目代码,调用AI完成代码审查、bug修复、代码重构;

  2. 移动远程服务器运维:手机通过SSH连接云服务器,AI辅助编写脚本、执行Shell命令、查看日志,实现移动端运维;

  3. 离线本地Agent开发:手机部署GGUF大模型,在完全断网环境运行本地编程智能体,处理敏感项目,数据不离开设备;

  4. 自定义Agent工具开发测试:开发者编写MCP‑HTTP工具、自定义Agent,在Android设备上调试智能体工具链路;

  5. 学习编程:学生在手机上编写、修改代码,借助AI完成学习练习,结合网页搜索查阅技术文档。

使用方法

安装

两种安装途径:

  1. 预编译包:前往项目GitHub Releases页面下载签名APK,在Android设备开启侧载权限完成安装;

  2. 源码编译:本地准备JDK11、Android SDK36,使用项目Gradle Wrapper编译,可生成Debug或者Release安装包。

基础使用步骤

  1. 打开App,授予存储权限,选择本地文件夹,或者新增SSH主机配置,也可以绑定IPC终端Provider;

  2. 在模型设置页面添加模型,支持填入云端API接口,或者导入本地GGUF模型文件;

  3. 创建会话,输入编程相关指令,AI会按需调用文件读写、Shell、搜索等工具;工具调用可以选择手动确认,也可以开启会话自动放行;

  4. 进阶使用:接入Termux、配置MCP‑HTTP自定义工具,拓展更多能力。

竞品对比

选取Termux+AI客户端、AidLuxus AI工作台作为对标产品。

对比维度 LineCodePro Termux+第三方AI客户端 AidLuxus AI工作台
运行平台 原生Android,最低Android8.0 Android(依赖Termux) Android(需要Linux容器)
Agent工具系统 内置完整工具引擎,文件/Shell/搜索原生集成 AI客户端本身无工具,需要手动复制交互 容器内工具,受Linux容器性能限制
远程SSH能力 原生集成SSH工作空间,直接读写远程文件 需要Termux手动安装ssh工具 容器内部SSH,操作容器内环境为主
离线模型支持 原生支持GGUF端侧推理 可部署,但配置流程繁琐 支持,占用资源较高
安全隔离 工作目录限制、IPC沙箱、密钥加密存储 无原生权限隔离,风险需要用户自行把控 依托Linux容器隔离
界面交互 专为移动端优化AI编程对话界面 纯终端文本交互,缺少对话UI Linux桌面UI移植,手机适配一般
开源协议 GPL‑3.0 组件协议混杂 闭源商业为主

常见问题解答

Q:LineCodePro需要联网才可以使用吗?

A:不需要必须联网,导入本地GGUF模型文件就可以完全离线运行;仅配置云端API、使用网页搜索功能时才会产生网络请求。

Q:使用Shell工具会不会对手机系统造成破坏?

A:Shell执行依赖Termux或者独立IPC进程,默认有工作空间路径保护;如果手动关闭路径保护,AI具备更高操作权限,存在误操作风险,非高级用户不建议关闭该防护。

Q:是否可以接入Ollama服务?

A:可以,Ollama兼容OpenAI接口规范,直接在模型配置填写Ollama的接口地址即可使用。

Q:导入.linecode归档文件会覆盖现有数据吗?

A:是的,导入归档会覆盖本地会话、配置数据,导入操作会弹出确认弹窗,导入前建议做好备份。

Q:为什么项目完全不用XML布局,全部使用Java绘制UI?

A:项目设计规范,全部业务代码限定Java,避免Kotlin依赖,同时减少布局文件碎片化,方便多模块统一管理界面逻辑。

Q:编译源码失败一般是什么原因?

A:需要确认JDK版本为11,Android SDK版本为36,Gradle Wrapper完整下载依赖,Release编译需要配置自己的签名文件。

相关链接

总结

LineCodePro是一套面向Android设备的开源AI编程工作台,把大模型Agent能力完整移植到手机终端,兼顾云端接口与本地离线模型,融合本地文件处理、SSH远程服务器操作、Shell命令执行等编程相关能力,同时做了完整的上下文保护与安全权限管控,不需要依赖复杂容器环境,为移动端编码、移动运维、离线智能体调试提供了一套透明可二次修改的开源解决方案。

打赏
THE END
作者头像
dotaai
正在和我的聊天机器人谈恋爱,它很会捧场。