PKU harness
User manual

Copilot

Copilot lets the assistant operate other apps on your phone on a separate screen. A step-by-step setup guide for non-technical users — Developer options, Wireless debugging and the pairing code, accessibility, allowed apps and screenshots — with notes for each phone brand, and how to pause, stop and turn it all off again.

Copilot lets the assistant use other apps on your phone for you. For example, you can say "Use Copilot to set a 7:30 alarm" or "Order my usual coffee". The assistant opens the app on a separate, invisible screen and taps and types there, while you keep using your phone. A small floating window shows each step, and you can pause or stop it at any time.

Copilot only works on Android 12 or later. It can only use the apps you allow, and it asks you before it uses any other app.

Why Copilot needs these permissions

Android doesn't normally let one app operate another. Copilot gets around this with tools that Android provides for app developers and for screen readers. Each one has a clear job.

WhatWhy Copilot needs it
Phone helper (through Wireless debugging)A small helper program that PKU harness starts on your phone. It creates Copilot's separate screen, opens apps there, and performs every tap, swipe and keystroke. It connects only to your own phone, never to a computer or a server
AccessibilityLets Copilot read what is on the screen of the app it operates (buttons, text, lists), and show its floating window. Since version 1.0.20 it is only used to read, never to tap or type
Allowed appsThe list of apps Copilot may open. Up to 20
Notifications (optional)During setup you type the pairing code into a notification. While a task runs, a notification lets you stop it
Screenshots (on by default)For apps that hide their contents from accessibility, such as Taobao and WeChat

You can revoke each of these in Android's settings at any time; see Turn Copilot off.

Before you start

  • Connect to Wi-Fi. Wireless debugging only works on Wi-Fi. Campus Wi-Fi (PKU, PKU Secure) is fine.
  • Have your lock screen password ready. Android asks for it when you turn on Developer options.
  • Set aside about five minutes. You only do this once.
  • Copilot is a plugin. If you turned it off during setup, turn it on in Settings → Plugins.

Open the Copilot screen

Type /copilot in chat, or open Settings → Plugins → Copilot and, under Open, tap Copilot. During first-run setup, Set up Copilot opens the same screen.

Until everything is ready, the screen shows Before you start: a numbered list of five steps, each marked Needed, Recommended, Automatic or done. The first unfinished step is opened for you. Work through them from top to bottom.

Set up Copilot step by step

Allow notifications

This step is marked Optional, but it makes pairing much easier.

Tap Allow notifications, then Allow in Android's dialog. If you blocked notifications before, the button reads Open notification settings; turn notifications on for PKU harness there and come back.

Turn on Developer options

Developer options is a hidden page in Android's Settings, meant for people who build apps. Turning it on changes nothing by itself; it only shows the page. Copilot needs one switch on it, Wireless debugging.

If Developer options are off, the phone helper step shows the button Open About phone. Tap it, then:

  1. On the About phone screen, find Build number and tap it seven times in a row. On some phones the item has another name, such as OS version or Software version; see the table below.
  2. Android asks for your lock screen password. Enter it.
  3. A message says "You are now a developer" (or similar).
  4. Go back to Settings and open Developer options. On most phones it is under System or Additional settings.

If Developer options are already on, the button reads Turn on Wireless debugging and opens Developer options at the right place.

Turn on Wireless debugging

  1. In PKU harness, tap Turn on Wireless debugging. The app opens Android's Developer options and waits for you there.
  2. Find Wireless debugging and turn its switch on. If Android asks "Allow wireless debugging on this network?", tap Allow. Ticking "Always allow on this network" saves you this question later.
  3. Tap the words Wireless debugging (not the switch) to open its page.
  4. Tap Pair device with pairing code. A dialog shows a six-digit Wi-Fi pairing code. Keep this dialog open.

Wireless debugging is meant for connecting a computer to the phone. Copilot uses it to start the phone helper on the phone itself; no computer is involved, and nothing outside your phone can connect through it without the pairing code.

Enter the pairing code

  1. With the pairing dialog still open, pull down the notification shade.
  2. In the Copilot pairing notification ("Enter the pairing code"), tap Enter code.
  3. Type the six digits from the dialog and send.

The notification shows "Pairing and starting the phone helper…", then Phone helper connected. You don't need to type a port number or use split screen.

If the notification says the code was wrong or the dialog closed, tap Pair device with pairing code again and type the new code in the same notification.

If you didn't allow notifications, or the notification doesn't appear, go back to PKU harness and tap Enter code manually. Type the code in Pairing code and tap Pair phone. You can leave IP address & Port empty; the app finds it.

You pair only once. A phone that has paired before shows a Reconnect tab instead, and normally reconnects by itself, even after a restart.

Accessibility

Once the phone helper is connected, this step turns on by itself. The row shows Turning on… and then Enabled. The helper also does three things for Copilot, so you don't have to:

  • allows Android 13's restricted settings for PKU harness (see below);
  • adds PKU harness to the battery optimization allowlist, so Copilot keeps running in the background;
  • gives PKU harness permission to turn its own accessibility service back on.

If the row still says Needed, tap Turn on. This happens, for example, when you turned the service off in Android's settings before.

Turning it on by hand. If the phone helper can't connect, tap Turn on in Settings instead, then Open accessibility settings, find Copilot in the list (often under "Downloaded apps" or "Installed apps") and turn it on. Android may say this is a restricted setting: apps installed from a downloaded APK can't turn on accessibility until you allow it. Tap Open App info, tap ⋮ in the top corner, choose Allow restricted settings, confirm with your lock screen password, then go back and turn on Copilot.

Choose allowed apps

  1. Tap Choose apps. The list under App access shows All apps. Use Search apps or the A–Z index on the right to find one.
  2. Turn on the switch next to each app you want Copilot to use, up to 20.
  3. Your choices save automatically. The Allowed apps tab lists the apps you chose.

Entries marked "System dialogs · opened by another app" are system screens, such as a settings screen another app opens. Allow them only if Copilot needs to work in those screens.

If an allowed app has been uninstalled, it appears under Unavailable apps. Tap Remove unavailable apps.

Turn on Copilot

Tap Turn on Copilot. The screen shows Copilot is ready; tap Go to chat to start.

Afterwards the screen shows an Enable Copilot switch at the top, a Permissions row (which reads "All required access is granted" when nothing is missing) and the Let the AI see screenshots switch.

Where the switches are on your phone

Every phone maker renames and moves these menus. The quickest way is the search box at the top of Android's Settings: search for build number (版本号), then for wireless debugging (无线调试). The table lists the usual places. They may differ by model and system version.

Brand (system)Tap seven times to turn on Developer optionsWhere Developer options are
Google Pixel, most other phones (Android)Settings → About phone → Build numberSettings → System → Developer options
Samsung (One UI)Settings → About phone → Software information → Build numberSettings → Developer options (at the bottom)
Xiaomi, Redmi, POCO (HyperOS, MIUI)Settings → My device (我的设备) → All specs (全部参数与信息) → OS version (HyperOS 版本 / MIUI 版本)Settings → Additional settings (更多设置) → Developer options
Huawei (HarmonyOS 4 or earlier)Settings → About phone → Build number (版本号)Settings → System & updates (系统和更新) → Developer options
Honor (MagicOS)Settings → About phone → Build number (版本号)Settings → System & updates (系统和更新) → Developer options
OPPO (ColorOS), OnePlus (ColorOS, OxygenOS)Settings → About device (关于本机) → Version (版本信息) → Build number (版本号)Settings → Additional settings (其他设置) → Developer options
vivo, iQOO (OriginOS)Settings → System management (系统管理) → About phone → Software version (软件版本号)Settings → System management (系统管理) → Developer options

Google's general instructions are at Configure on-device developer options.

Known blockers by brand

  • Xiaomi, Redmi, POCO. If Copilot can read an app but its taps or typing do nothing, turn on USB debugging (Security settings) (USB 调试(安全设置)) in Developer options. This is a separate switch from USB debugging. Xiaomi asks you to sign in with a Xiaomi account to turn it on, and may need a SIM card in the phone. Restart the phone afterwards. Also allow Autostart for PKU harness and set its battery saver to No restrictions, or the system may stop the helper in the background.
  • OPPO, OnePlus. If setup can't turn on accessibility, or taps do nothing, turn on Disable permission monitoring (禁止权限监控) in Developer options, then try again.
  • Samsung. Copilot sets up normally. If the keyboard needs two taps per key, see The keyboard needs two taps per key. If Auto Blocker (Settings → Security and privacy) is on, it can block apps installed from an APK; turn it off if setup fails.
  • Huawei. Phones on HarmonyOS NEXT (HarmonyOS 5 or later) can't install Android apps, so PKU Harness doesn't run on them. Older HarmonyOS versions may not offer Wireless debugging, or may report an Android version below 12; Copilot then says "Copilot needs Android 12 or later."
  • All brands. Battery savers can stop the phone helper. If Copilot keeps disconnecting, set PKU Harness to unrestricted battery use in Android's app settings.

Screenshots

Some apps, such as Taobao and WeChat, hide their contents from accessibility, so Copilot sees an almost empty screen. For these apps the assistant takes a screenshot instead, reads it, and taps at a point on it. Let the AI see screenshots on the Copilot screen controls this. It is on by default, and you can turn it off at any time.

  • Only the app Copilot is operating, on its separate screen, is captured. Never your own screen.
  • Protected screens, such as password and payment pages, are never captured.
  • Screenshots are sent to your AI provider for that one reply. They are not saved in the chat.
  • The model must read images. DeepSeek-V4.1-Flash does; DeepSeek-V4-Pro and models connected through OpenAI-compatible don't. If the current model can't, the assistant says so.

Use Copilot

Describe the task in chat, for example "Search for the PKU library in the browser". You don't start each task by hand. The assistant opens the allowed apps on the separate screen and works through the task until it is done or you stop it. There is no limit on the number of steps.

If a task needs an app you haven't allowed, the assistant asks you first: “Copilot” wants to use, with the app's name. Choose Allow once (this task only), Always allow (added to the allowed list) or Don't allow (the assistant stops and tells you). Only your tap can grant access. When you are not in PKU harness, the request comes as a notification or in the floating window.

Scheduled tasks can't use Copilot.

Confirm, pause and take over

Copilot reads screens without asking. By default it asks you before each tap, typing or submission, because Copilot's Change, Money and Public permissions start as Ask first. To let it work without asking, set Change to Allow under Settings → Plugins → Copilot → What the AI may do.

  • While PKU harness is open, the confirmation appears in the app.
  • While you are in another app, it appears in the floating window. Tap Allow once or Deny.

The floating window shows the current step and a live preview. It has Pause / Resume and Stop buttons, and Take over and Open Harness in its More options menu.

  • Tap Minimize to shrink the window to a small round icon. A red dot means Copilot is working, orange means it needs you, and grey means it is paused or you have control. Drag the icon to move it; tap it to open the window again. Pulling down the notification shade or opening Recents doesn't open it; it opens by itself only when Copilot needs a confirmation or hands control to you. Inside PKU harness there is no floating window: the chat already shows the task.
  • Drag the corner of the preview to resize it.

You only pay. Copilot picks items, address, options and coupons and taps Submit order or Pay now itself (it says the amount and merchant first). When the payment sheet opens (choosing Alipay or WeChat Pay, the cashier, a password or fingerprint prompt), Copilot can't tap on it: it hands the app to you on your main screen with a note such as "Pay ¥23.5, then tap Done". Pay with your fingerprint, face or password, then tap Done · continue in the floating window. Copilot checks the result and finishes the task. It does the same for passwords and sign-in checks. You can also tap Take over on the Copilot screen at any time, and Return control to Copilot when you are done. If password-free payment is on, an order may be charged without a payment sheet; Copilot then checks the result and tells you.

Leaving the app and the lock screen

You don't need to watch a Copilot task:

  • Switching apps or locking the phone is fine. Copilot works on its own separate screen, which the lock screen doesn't affect, so the task goes on.
  • The screen stays on (dimmed) during a task. Android turns Copilot's screen off together with the phone's, so the screen doesn't time out while a task runs.
  • If you turn the screen off with the power button, Copilot pauses. The lock screen shows a quiet notification, "Copilot paused: the screen is off". Turn the screen on to let it continue; you don't need to unlock.
  • It turns the screen on when it needs you. When Copilot needs your approval or needs you to take over (to pay or sign in, for example), the phone turns the screen on and shows a notification on the lock screen. Answer an approval in PKU harness. When you take over, the app is already on your screen after you unlock; tap Done · continue in the floating window when you are done. The assistant waits up to 30 minutes, then ends its reply; send a message when you are back to continue.

WeChat

WeChat runs its own anti-automation checks, controlled from Tencent's servers. When they flag Copilot, WeChat hides its screen, blocks screenshots and ignores typing. Copilot then tells you plainly that WeChat is blocking automated operation right now, and stops. Do that step yourself in WeChat. Copilot doesn't try to get around the block.

WeChat's terms forbid automated operation, and Tencent may restrict accounts that use automation tools. The assistant mentions this the first time it uses WeChat in a chat. Decide for yourself whether to let Copilot use WeChat.

The keyboard needs two taps per key

To be readable in apps such as WeChat, Copilot's accessibility service is registered under the name of a screen reader. Some keyboards, such as Samsung Keyboard, switch to screen-reader typing while such a service is on, and each key then needs two taps.

To avoid this, Copilot switches its accessibility service off between tasks and back on when the next task starts. During a task, while you type in PKU harness (its keyboard is open), the service is also off between steps and comes back before the next one. It also checks the service before every action and turns it back on if Android or you switched it off. This needs the phone helper to be connected; without it, the service stays on and the keyboard problem can come back. If your keyboard still needs two taps after a task has ended, open the Copilot screen so the helper reconnects. The service is then switched off within about 20 seconds.

If Copilot can't turn accessibility back on, the assistant tells you to turn it on in Settings → Accessibility and stops.

Stop a task

Any of these ends the current phone task right away:

  • Tap Stop in the floating window or in the Copilot notification.
  • Tap Stop Copilot under Current task on the Copilot screen.
  • Turn off Enable Copilot.

After you stop it, the current reply can't start the task again. Send a new message to start a new task.

Turn Copilot off

To stop using Copilot, turn off Enable Copilot on the Copilot screen. Your allowed apps are kept, and no new task can start. You can also ask the assistant, for example "Turn off Copilot".

To remove the system access as well, do these in Android's settings:

  1. Open Developer options → Wireless debugging. Under Paired devices, tap the device that PKU harness paired and tap Forget. The phone helper then can't reconnect until you pair again.
  2. Turn off Wireless debugging, or turn off Developer options entirely with the switch at the top of that page.
  3. In Settings → Accessibility, turn off Copilot.

While Copilot is on and paired, PKU harness turns Wireless debugging and the accessibility service back on when it needs them. That is why step 1 matters. The permission the helper gave PKU harness to change these system settings stays with the app until you uninstall it; it is used only for Copilot's own accessibility service and Wireless debugging.

What stays on your phone

  • The phone helper connects only to your phone. It never connects to a computer or a server.
  • The assistant reads the text and controls on the operated app's screen. That content, and screenshots when they are used, are sent to your AI provider as part of the chat, like any other message.
  • The preview images in the floating window and on the Copilot screen are only shown on your phone.
  • Copilot never sees what you type in password fields, and never pays for you.

On this page