Agent skill

Aosp Version Diff

by aospbooks in aospbooks/aosp-internal-book

Compare two AOSP releases (e.g. An agent skill from aospbooks/aosp-internal-book.

Apache-2.0Auto-check passedMobile

Install Aosp Version Diff

skills CLI
$ npx skills add aospbooks/aosp-internal-book --skill aosp-version-diff -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install aospbooks/aosp-internal-book aosp-version-diff --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/aospbooks/aosp-internal-book.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/aosp-version-diff .claude/skills/aosp-version-diff && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
aosp-version-diff
GitHub stars
138
Token cost
~2k tokens
SKILL.md length
1,012 words
Files
4 (incl. references)
Skills in repo
17
Repo updated
First seen
Licence
Apache-2.0

At a glance

Compare two AOSP releases (e.g. An agent skill from aospbooks/aosp-internal-book.

  • Works in 2 steps: produce the changeset and the report → find and append the modules the report…
  • Wants to know what changed between two Android/AOSP versions
  • SKILL.md covers When to use which phase, Prerequisites, Phase 1: produce the changeset… and Phase 2: find and append the…, plus 2 more sections
  • Calls git

What it does

Aosp Version Diff is an agent skill from aospbooks/aosp-internal-book. Compare two AOSP releases (e.g. android-16 vs android-17) and turn the diff into a written report of the important platform changes. Use this whenever the user wants to know what changed between two Android/AOSP versions, generate an "Android N updates" report or appendix, diff two repo manifests/branches, find newly-added projects or new code modules in a version, or fill gaps in an existing version-changes report. Triggers on requests like "what's new in android 17", "diff android16 to android17", "find modules…

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including reference files (for example `evals/evals.json`, `references/gap-analysis.md` and `references/tooling.md`).

It sits in Mobile. It works with Android. The repository describes itself as: The book introduces the internal of AOSP. The licence is Apache-2.0.

When your agent uses it

  • Wants to know what changed between two Android/AOSP versions
  • Generate an Android N updates report
  • Diff two repo manifests/branches
  • Find newly-added projects

Example prompts

  • “Android N updates”
  • “s new in android 17”
  • “diff android16 to android17”
  • “/aosp-version-diff”

Workflow steps

2 steps, taken from the step headings in SKILL.md.

  1. produce the changeset and the report
  2. find and append the modules the report missed

What it can do on your machine

Read from SKILL.md and the folder at commit fc0b48b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Aosp Version Diff loads about 2k tokens when it runs, and up to ~5.4k if it reads all its reference files. Until then it costs about 197 tokens; SKILL.md has 1,012 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~197
When it runs · the whole SKILL.md, loaded when a task matches
~2k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from aospbooks/aosp-internal-book at commit fc0b48b, republished under its Apache-2.0 licence (© aospbooks). 1,012 words, ~2,049 tokens.

Download SKILL.mdSave it as .claude/skills/aosp-version-diff/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
aosp-version-diff
description
Compare two AOSP releases (e.g. android-16 vs android-17) and turn the diff into a written report of the important platform changes. Use this whenever the user wants to know what changed between two Android/AOSP versions, generate an "Android N updates" report or appendix, diff two repo manifests/branches, find newly-added projects or new code modules in a version, or fill gaps in an existing version-changes report. Triggers on requests like "what's new in android 17", "diff android16 to android17", "find modules added in the new release that my report is missing", or "compare two AOSP branches with commit history". Reuses the repo's tools/manifest_snapshot.py rather than reinventing the diff, and uses an agent team to source-verify and append missing modules.
metadata.author
utzcoz

AOSP version diff → changes report

This skill captures a proven, two-phase workflow for answering "what changed between two AOSP releases, and which of it matters?" It leans on an existing tool (tools/manifest_snapshot.py) for the mechanical diff, and on a small agent team for the judgement-heavy parts: deciding what's significant, verifying claims against real source, and finding modules a first draft missed.

The guiding principle throughout is accuracy over coverage: a smaller report whose every claim is checked against the actual Android source beats a broad one that paraphrases commit subjects. Every architectural claim cites a real path you opened.

When to use which phase

  • Phase 1 — Compare (references/tooling.md): you have (or can produce) the two releases and want the raw per-repository changeset, then a curated report.
  • Phase 2 — Gap-append (references/gap-analysis.md): a report already exists and you want to find and add the important modules it missed — both newly-added projects and new code modules introduced inside moved repos.

Phase 2 is the "backend" that keeps a report honest: a single drafting pass almost always misses modules, because the changeset is huge (hundreds of moved repos, dozens of added projects) and a drafter naturally anchors on the headline features. Phase 2 systematically diffs "what the changeset added" against "what the report mentions" and closes the difference.

Prerequisites

  • The repo's tools/manifest_snapshot.py (subcommands snap, history, compare, compare-history). Read references/tooling.md for exact commands, flags, and the gotchas that bite (ref-name filenames, LFS, non-UTF-8 commit subjects, the snapshot-vs-history coherence trap).
  • A local AOSP checkout (e.g. $ANDROID_BUILD_TOP) synced to whichever release you're analyzing. The tools are read-only against it; never write into the AOSP tree.
  • For the source-verification and gap phases: the ability to spawn subagents (cap at 10 concurrent). Without subagents, the same steps run inline, slower.

Phase 1: produce the changeset and the report

  1. Capture each side. With the checkout synced to the older release, run history (full per-repo commit log) and/or snap (pinned manifest). Re-sync to the newer release and repeat. The two large .txt history files and the snapshots are the raw material. See references/tooling.md for the commands and which artifact feeds which comparison.

  2. Diff. compare diffs two snapshots; compare-history diffs two history files plus a newer-side snapshot (use this when the two history files were captured at different sub-revisions — it keeps the project list and the commit lists coherent). Both write a per-comparison directory under manifest-snapshots/_compare/<old>-to-<new>/ containing report.md (navigator), changes.txt (per-repo commit lists), and added-removed.txt.

  3. Curate into a report. Organize by subsystem, then by change category (New projects / New modules / Architecture changes / Notable integrations). The hard part is selection: hundreds of repos moved, but most of the signal is in a handful. Apply a scope policy — see references/gap-analysis.md §Scope — and treat external/* dependencies as integration signals: describe how and why a new external dep was pulled in (what platform capability it enables, what consumes it), never its internal code. A new external/openxr-sdk means "XR runtime support arrived", not "here's OpenXR's changelog".

For a large report, fan out per-subsystem analyst agents (one per book Part / subsystem), each reading the actual source for its repos and writing a cited section, then synthesize under a size budget. Keep a verification pass (below).

Show full SKILL.md (482 more words)Show less

Phase 2: find and append the modules the report missed

This is the backend that makes the report trustworthy. Full procedure with the exact extraction commands and agent prompts is in references/gap-analysis.md. The shape:

  1. Build the candidate set deterministically. Extract every added project from the changeset's report.md, subtract the ones already named in the existing report. Separately, scan high-signal moved repos for new modules/services/directories introduced within them (the changeset's changes.txt "NEW" commit subjects are the cheap index). This second pass matters because the biggest gaps hide inside repos that merely "moved" — a new service added to frameworks/base won't show up as an added project.

  2. Triage with an agent team (≤10). Partition candidates by area, one agent per batch. Each agent: confirms a candidate is genuinely absent from the report, reads the real Android source to learn what it is, and classifies it — part (subsystem), category (New project / New module / Notable integration), and relevance (add-worthy vs out-of-scope, with a reason). Ruthlessly drop noise: empty placeholder repos, pure relocations, routine third-party uprevs, prebuilts, toolchains, vendor/board.

  3. Curate, then append concisely. "Reduce gaps": add only the high-signal findings. Each addition is a tight, source-cited bullet. Mind the report's size budget — if appending pushes it over, trim lower-value existing prose (never citations or diagrams) to make room.

  4. Review → fix loop until clean. Spawn independent verifiers (not the authors) to adversarially check every new claim against source. Fix what they find. Repeat until a round surfaces no new material issue. This loop is the point — newly-written content is exactly where fabricated paths and off-by-a-bit symbol names creep in.

Output conventions

  • Real source paths in every claim; verify each path exists in the analyzed tree.
  • If the report is a book chapter/appendix, follow the book's own rules (book/CLAUDE.md + book-writer skill): manual section numbering, a descriptive heading before each Mermaid block, quoted Mermaid labels, no epigraph, and a size ceiling. Validate diagrams with ./serve.sh png <file> (require errors=0) and register the file in properdocs.yml nav + llms.txt.
  • Persist working state (scope, candidate lists, findings, drafts) under a gitignored scratch dir (e.g. .superpowers/<topic>/) so a long run is resumable and the agent team's findings survive.

Gotchas worth knowing up front

These cost real time the first time around; references/tooling.md has detail.

  • The manifest's default revision can be a tag (refs/tags/android-16.0.0_r4). Slashes in it must be slugified or they become directories in output paths.
  • git log output is not guaranteed UTF-8; decode with errors="replace".
  • The android-16 snapshot in git history and the android-16 history file may be different sub-revisions (qpr2 vs r4). Don't mix a snapshot's SHAs with a different revision's commit lists — use compare-history so the sides stay coherent.
  • The big history/compare outputs are large; track them with git LFS and keep generated _compare//_history/ gitignored. Pushing the LFS objects can SIGPIPE after a successful upload — retry; the objects are already server-side so the retry just moves the ref.

© aospbooks, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (references) in .claude/skills/aosp-version-diff of aospbooks/aosp-internal-book.

  • SKILL.md
  • evals/evals.json
  • references/gap-analysis.md
  • references/tooling.md

Open the folder on GitHubat commit fc0b48b

Compare with similar skills

Aosp Version Diff next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Aosp Version Diff compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Aosp Version Diff this skillaospbooks/aosp-internal-book138—~2kAutomated safety check: PassApache-2.0
Compose Multiplatform Patternsmonta-app/ocpp-emulator1805 repos~2kAutomated safety check: PassApache-2.0
Phone HarnessShawnPana/phone-harness3.2k—~4.3kAutomated safety check: PassMIT
Stylesarindamxd/camerax-android1324 repos~2.3kAutomated safety check: PassApache-2.0
Verified Emailarindamxd/camerax-android1324 repos~4.7kAutomated safety check: PassApache-2.0
Argent Metro Debuggerbbplayer-app/BBPlayer1.1k—~3.4kAutomated safety check: PassMIT

Similar skills

  • Compose Multiplatform Patterns

    monta-app/ocpp-emulator

    Compose Multiplatform and Jetpack Compose patterns for KMP projects — state management, navigation, theming, performance, and platform-specific UI.

    180 GitHub starsUsed in 5 repos~2k tokens
    MobileAuto-check passed
  • Phone Harness

    ShawnPana/phone-harness

    Control the user's phone — an iPhone through the Mac's iPhone Mirroring window, an Android over adb, or a rented cloud Android: open apps, tap, type, swipe, read the screen.

    3.2k GitHub stars~4.3k tokensUpdated 11 days ago
    MobileAuto-check passed
  • Styles

    arindamxd/camerax-android

    A skill your agent uses to integrate the Jetpack Compose Styles API into an Android project.

    132 GitHub starsUsed in 4 repos~2.3k tokens
    MobileAuto-check passed
  • Verified Email

    arindamxd/camerax-android

    Provides a complete workflow for implementing verified email retrieval on Android Credential Manager API.

    132 GitHub starsUsed in 4 repos~4.7k tokens
    MobileAuto-check passed
  • Argent Metro Debugger

    bbplayer-app/BBPlayer

    Debug a JS runtime via CDP using argent debugger tools. An agent skill from bbplayer-app/BBPlayer.

    1.1k GitHub stars~3.4k tokensUpdated today
    MobileAuto-check passed
  • 统一 Android XML 资源命名:layout、drawable、mipmap、color、values、id 的前缀与 snakecase 规则;把颜色/圆角/描边/状态编码进文件名(bg、border、textcolor…selector)。

    1.6k GitHub stars~1.3k tokensUpdated 1 mo ago
    MobileAuto-check passed

More from aospbooks/aosp-internal-book

All 17 skills in this repo
  • Book Writer

    aospbooks/aosp-internal-book

    Patterns for writing technical book chapters in Markdown with Mermaid diagrams, served via ProperDocs (a MkDocs fork).

    138 GitHub stars~3.1k tokensUpdated 3 days ago
    Auto-check passed
  • Aosp Device Support

    aospbooks/aosp-internal-book

    AOSP Part XIV — Device Support. An agent skill from aospbooks/aosp-internal-book.

    138 GitHub stars~574 tokensUpdated 3 days ago
    Auto-check passed
  • Aosp Framework Core

    aospbooks/aosp-internal-book

    AOSP Part VI — Framework Core. An agent skill from aospbooks/aosp-internal-book.

    138 GitHub stars~628 tokensUpdated 3 days ago
    Auto-check passed
  • Aosp Framework Services

    aospbooks/aosp-internal-book

    AOSP Part VII — Framework Services. An agent skill from aospbooks/aosp-internal-book.

    138 GitHub stars~888 tokensUpdated 3 days ago
    Auto-check passed
  • Aosp Native Services And Media

    aospbooks/aosp-internal-book

    AOSP Part IV — Native Services & Media. An agent skill from aospbooks/aosp-internal-book.

    138 GitHub stars~606 tokensUpdated 3 days ago
    Auto-check passed
  • Aosp AI And Devices

    aospbooks/aosp-internal-book

    AOSP Part XII — AI & Devices. An agent skill from aospbooks/aosp-internal-book.

    138 GitHub stars~411 tokensUpdated 3 days ago
    Auto-check passed

Works with

Categories

Questions about Aosp Version Diff

What does Aosp Version Diff do?

Compare two AOSP releases (e.g. An agent skill from aospbooks/aosp-internal-book. Aosp Version Diff is an agent skill from aospbooks/aosp-internal-book.g.

When should I use Aosp Version Diff?

Aosp Version Diff fits situations like: wants to know what changed between two Android/AOSP versions; generate an Android N updates report; diff two repo manifests/branches; find newly-added projects.

How do I install Aosp Version Diff in Claude Code?

Run `npx skills add aospbooks/aosp-internal-book --skill aosp-version-diff -a claude-code`. Or copy the skill folder (.claude/skills/aosp-version-diff in aospbooks/aosp-internal-book) into .claude/skills/aosp-version-diff in your project. Claude Code loads it when a task matches its description.

How do I install Aosp Version Diff in Codex?

Run `npx skills add aospbooks/aosp-internal-book --skill aosp-version-diff -a codex`. Or copy the skill folder (.claude/skills/aosp-version-diff in aospbooks/aosp-internal-book) into .agents/skills/aosp-version-diff in your project. Codex loads it when a task matches its description.

Can I use Aosp Version Diff in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add aospbooks/aosp-internal-book --skill aosp-version-diff -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/aosp-version-diff, .gemini/skills/aosp-version-diff, .github/skills/aosp-version-diff and .opencode/skills/aosp-version-diff in your project.

What does Aosp Version Diff need to run?

Going by SKILL.md and its folder, Aosp Version Diff needs the command-line tools its instructions call (git).

Does Aosp Version Diff access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Aosp Version Diff safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Aosp Version Diff use?

Aosp Version Diff is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Aosp Version Diff use?

About 2k tokens (SKILL.md is roughly 8.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 3.3k tokens, read only when the agent opens those files.

What are the alternatives to Aosp Version Diff?

Skills that share tags, products or a category with Aosp Version Diff: Compose Multiplatform Patterns (monta-app/ocpp-emulator, 180 stars), Phone Harness (ShawnPana/phone-harness, 3.2k stars), Styles (arindamxd/camerax-android, 132 stars) and Verified Email (arindamxd/camerax-android, 132 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Aosp Version Diff?

aospbooks (a GitHub organization) maintains it in aospbooks/aosp-internal-book, which has 138 GitHub stars. The repository holds 17 skills in this directory. The repository was last updated on October 5, 2026.

Source: aospbooks/aosp-internal-book on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.