WidgetRelay is a Tasker plugin that reads text and JSON from Android home screen widgets and can click their elements, all without a launcher.

Stars

6

7-day growth

No data

Forks

0

Open issues

0

License

GPL-3.0

Last updated

2026-07-28

AI repository intelligence
FR-AI / ANALYSIS

Why it is worth attention

It solves a previously unsupported task—extracting and interacting with widget content—by using clever workarounds like an invisible overlay window and polling, making widget-only data accessible to automation.

Who it is for

  • Tasker power users who automate their phone
  • Android automation enthusiasts seeking widget data
  • Developers who want to integrate widget content into their apps or workflows

Use cases

  • Read unread counts, sensor readings, or next departure times that only appear in a widget
  • Poll a widget on a schedule and trigger actions when its value changes
  • Press a widget’s refresh, play/pause, or toggle button from a Tasker task

Strengths

  • Provides four dedicated Tasker plugin actions (get data, get JSON, click by path, click by text)
  • Implements robust workarounds for Android’s lack of widget reading API, including invisible overlay windows and smart polling
  • Open-source under GPLv3, allowing community review and customization

Considerations

  • Background activity launch restrictions may block some widget buttons that open activities
  • Timing: widgets taking longer than 8 seconds to load time out; JSON capture may miss late-arriving list rows
  • Paths are brittle if widget layout changes; text-based clicking is more reliable but not always available

README quick start

WidgetRelay

Read and click Android home screen widgets from Tasker.

Lots of apps show information in a widget that they expose nowhere else — no API, no notification, no content provider. WidgetRelay hosts those widgets invisibly in the background, extracts their contents, and hands them to Tasker as plain text or JSON. It can also click elements inside them, so a widget button becomes something a task can trigger.

Typical uses:

  • Read a value that only exists in a widget (unread counts, a sensor reading, the next departure, a balance, "now playing")
  • Poll a widget on a schedule and act when the value changes
  • Press a widget's button from a task (refresh, play/pause, toggle)

Table of contents


Actions

WidgetRelay registers four Tasker plugin actions. All of them are configured the same way: pick an app and widget, choose a size, and — for all but the JSON action — tap the element you want in the extracted-data list.

ActionInputOutput
Get Widget Dataelement path%widget_value — the element's text, content description or resource id
Get Widget JSON%widget_json — the whole widget as a JSON tree
Click Widget Pathelement path
Click Widget Textelement text

Addressing elements

Elements are addressed by their path in the widget's view tree: /root is the widget itself, /root/0/2 is the third child of the first child, and so on. The configuration screen shows every extracted element with its path, so you normally never type one by hand — you tap the element and the path is filled in.

Paths are stable as long as the widget's layout doesn't change. If a widget rearranges itself (many do, depending on state or size), prefer Click Widget Text, which searches by the visible text or content description instead. Both input fields accept Tasker variables, so %par1 or %text work too.

JSON output

Get Widget JSON returns the widget as a nested tree. type is the view class, children is only present when a node ha

Description

Read and click Android home screen widgets from Tasker.

Related repositories

Similar projects matched by category, topics, and programming language.

makecindy
Featured
makecindy GitHub avatar

cindy

Cindy is an open-source AI agent that runs locally on your machine, integrates multiple AI harnesses and models, and provides memory, skills, and automation to perform real work in your projects and apps.

AI & Machine LearningLarge Language Models
958
immaghzbad
immaghzbad GitHub avatar

AetherST

AetherST Tunnel is an Android VPN client designed for high-performance censorship circumvention, using advanced protocols like MASQUE, WireGuard, and nested WireGuard (Gool) to evade Deep Packet Inspection.

Mobile
45
Blaizzy
Featured
Blaizzy GitHub avatar

nativ

Nativ is a native macOS app that lets you run AI models locally on Apple silicon, offering chat, model management, performance analytics, and an OpenAI/Anthropic-compatible API server.

AI & Machine LearningAI Vision & Audio
985