Skip to content

Repository files navigation

AssistsX JS

一个支持通过Web端实现Android平台自动化脚本的JS库,支持元素节点查找、获取节点文本、节点截图、执行手势动作、提供步骤器实现复杂自动化业务等一系列自动化脚本开发能力支持

AssistsX JS运行平台

开发的自动化脚本需要运行在Android端AssistsX中,所以开发前需要先在手机安装AssistsX

扫码下载

image

下载链接:https://www.pgyer.com/assistsx

下载安装后会默认安装一个示例插件,可长按删除

Assistsx源码

更新日志

🤖 Assists MCP · AI Agent 协作开发

新增 MCP 支持,全面增强 AI Agent 与无障碍自动化的协作能力。
通过 MCP,AI Agent 从辅助工具提升为自动化开发流程中的核心协作者。

接入 Cursor、Claude Code、Codex、OpenCode 等支持 MCP 的 AI 编程助手后,Agent 可全程参与开发与调试:不只是「遥控手机」,而是覆盖基于无障碍服务的自动化——读节点、写逻辑、查 Bug,让 AI Agent 真正进入自动化落地全流程。

与 AssistsX + assistsx-js 协作时,可进一步发挥 MCP 的全部潜能。MCP 创建插件项目时会附带 assistsx-js 源码,便于 Agent 深入理解并正确调用 API,更高效地完成自动化逻辑编写、调试与排障。

能力 说明
多端 MCP 接入 支持 Cursor、Claude Code、Codex、OpenCode 等 MCP 客户端
无障碍自动化协作 凡基于 Android 无障碍服务的自动化,均可读节点、写逻辑、查 Bug
源码级 API 协作 创建项目时附带 assistsx-js 源码,Agent 可更准确地使用 API 开发自动化
AssistsX 全潜能 与 AssistsX 搭配时,支持插件创建、逻辑编写、调试与异常排查
节点读取与分析 原生无障碍服务节点读取与逻辑分析
异常与 Bug 排查 运行异常分析与问题定位

详细介绍及配置教程https://assists.cn/mcp

快速开始

方式一:HTML 直接引用(无需构建工具)

在 HTML 中通过 <script> 标签直接引入即可使用,适合快速 prototyping 或简单页面:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>AssistsX 示例</title>
</head>
<body>
  <button id="btn">测试按钮</button>

  <!-- 通过 CDN 引入 -->
  <script src="https://unpkg.com/assistsx-js/dist/index.global.js"></script>
  <!-- 或使用 jsdelivr: <script src="https://cdn.jsdelivr.net/npm/assistsx-js/dist/index.global.js"></script> -->

  <script>
    const { AssistsX } = AssistsXJS;
    document.getElementById('btn').onclick = () => {
      AssistsX.findById('com.tencent.mm:id/jha')[0].click();
    };
  </script>
</body>
</html>

引入后,所有 API 通过全局变量 AssistsXJS 访问,例如:AssistsXJS.AssistsXAssistsXJS.Node 等。

方式二:Vite / Vue 项目

1. 创建项目

  • 创建vite模版项目:npm create vite@latest assistsx-helloword -- --template vue
  • 安装assistsx-js依赖:npm install assistsx-js@latest

2. 创建插件配置

在项目目录public下创建文件assistsx_plugin_config.json文件,将以下json复制粘贴到文件中

{
  "name": "AssistsX示例",
  "version": "1.0.0",
  "description": "AssistsX示例",
  "isShowOverlay": true,
  "needScreenCapture": true,
  "packageName": "com.assistsx.example",
  "main": "index.html",
  "icon": "vite.svg",
  "overlayTitle": "AssistsX示例"
}

3. 编写脚本插件

简单点击(同步 API):

import { AssistsX } from "assistsx-js";

const handleClick = () => {
  AssistsX.findById("com.tencent.mm:id/jha")[0]?.click();
};

多步骤自动化(推荐)见 step-basics.md

<button type="button" @click="handleClick">测试按钮</button>

4. 加载插件

  1. 通过AssistsX局域网加载插件

加载插件前需要配置项目允许局域网访问,在文件vite.config.js添加以下配置

export default defineConfig({
  plugins: [vue()],
  server: {
    host: '0.0.0.0', // 允许局域网访问
    port: 5173
  },
})

运行项目npm run dev以便AssistsX直接加载

  1. 打开AssistsX,扫描局域网插件添加
  1. 测试插件:点击开始,打开微信消息列表,点击测试按钮


完整开发文档(推荐,含 Step、子模块、生产模式与 AI 协作指南)

API开发文档(兼容)

复杂自动化请使用 Step.run + StepImpl 链,详见 docs/02-step-engine/step-basics.md

示例

示例源码及使用教程:assistsx-js-simple

🙋有问题欢迎反馈交流

QQ交流群 作者微信

💝 支持开源

开源不易,您的支持是我坚持的动力!

如果AssistsX JS对您的项目有帮助,可以通过以下方式支持我喔:

⭐ Star支持

  • 给项目点个Star,让更多开发者发现这个框架
  • 分享给身边的朋友和同事

💰 赞助支持

  • 爱发电支持 - 您的每一份支持都是我们前进的动力
  • 一杯Coffee的微信赞赏
image

定制开发可联系个人微信: x39598

感谢所有的支持者,得到你们的支持我将会更加完善开源库的能力! 🚀

About

一个支持通过Web端实现Android平台自动化脚本的JS库,支持元素节点查找、获取节点文本、节点截图、执行手势动作、提供步骤器实现复杂自动化业务等一系列自动化脚本开发能力支持

Topics

Resources

Stars

44 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages