Skip to content

Android AppFunctions Builder

Expose Android app workflows to AI agents as callable AppFunctions with Kotlin code and docs

Repository
android/skills
Stars
10,278
Licence
Apache-2.0
Files
7 files

What it does

This skill teaches an AI agent how to make an Android app's key actions, such as creating a note or playing media, available to system-level AI agents, voice commands and shortcuts so they can run without opening the app's screen. The agent works through four steps: finding candidate workflows in the codebase, generating Kotlin implementations using the androidx.appfunctions library, improving the code documentation (KDoc) and app description so AI agents understand when to use each function, and providing ADB commands to test and debug them on a device.

Great for

  • Android developers adding AI agent and voice-assistant support to an existing app
  • Teams migrating older AppFunctions code (alpha versions or legacy @AppFunction annotations) to the beta API
  • Developers who want help writing clear, agent-friendly documentation for app functions

Skip it if

  • Building an AI agent that calls AppFunctions (the skill explicitly excludes this) because it only covers the app-side exposure
  • Exposing sensitive or destructive actions such as payments, passwords or account deletion, which the skill's own constraints forbid and which could harm users if misconfigured
  • Apps targeting older Android versions, since AppFunctions requires targetSdk 36 and compileSdk 37 or newer

Try asking

  • “Analyze my Android app and find the user workflows that would be good to expose as AppFunctions for AI agents”
  • “Implement an AppFunction that lets an agent create a note in my app, and set up the Gradle KSP dependencies”
  • “Refine the KDoc comments on my existing AppFunctions so AI agents choose and call them correctly”
  • “Upgrade my app from AppFunctions 1.0.0-alpha09 to 1.0.0-beta01 and list the functions with adb shell cmd app_function”
Step-by-step guide: how to use Android AppFunctions BuilderInstall, first run, examples, tips and FAQs

Install in 3 steps

  1. 1

    Download the skill

    The ZIP contains the 7 original files, the Apache-2.0 licence and an attribution note.

    appfunctions.zip
  2. 2

    Add it to your agent

    Claude Code (all projects)

    mkdir -p ~/.claude/skills && unzip appfunctions.zip -d ~/.claude/skills/

    Claude Code / Agent SDK (this project only)

    mkdir -p .claude/skills && unzip appfunctions.zip -d .claude/skills/

    Claude apps (web/desktop): Settings → Capabilities → Skills → Upload skill, and choose the ZIP.

  3. 3

    Ask for the task

    No special command needed — the agent reads the skill's description and loads it when your request matches. Try one of the prompts above.

Get better results

  • Give the agent a specific workflow (for example 'create a note') rather than asking it to analyze everything, so the generated functions stay narrow and safe
  • Review generated functions against the app's own UI: the skill only permits exposing actions the UI already offers, and you should confirm this yourself
  • Run the ADB testing steps on a device after implementation to verify registration and invocation before shipping

What's inside

  • references/adb-interaction-testing.md
  • references/context.md
  • references/feature-discovery-analysis.md
  • references/implementation-configuration.md
  • references/kdoc-refinement-optimization.md
  • references/migrate-to-service-entry-point.md
  • SKILL.md

Redistributed unmodified from android/skills under the Apache-2.0 licence. The assessment was drafted with AI from the skill's files on 2026-10-29. Skills can instruct your agent to run code — read SKILL.md and any scripts before installing.