Agent skill

Mentra Update Live Firmware

by Mentra-Community in Mentra-Community/MentraOS

Update MentraOS firmwarelive.json from the published BES and MTK feeds and prepare a PR, preserving production MTK upgrade paths.

Apache-2.0Auto-check passedDevelopment

Install Mentra Update Live Firmware

skills CLI
$ npx skills add Mentra-Community/MentraOS --skill mentra-update-live-firmware -a claude-code

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

GitHub CLI
$ gh skill install Mentra-Community/MentraOS mentra-update-live-firmware --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/Mentra-Community/MentraOS.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/mentra-update-live-firmware .claude/skills/mentra-update-live-firmware && 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
mentra-update-live-firmware
GitHub stars
2.4k
Token cost
~1.8k tokens
SKILL.md length
896 words
Files
4 (incl. scripts)
Skills in repo
11
Repo updated
First seen
Licence
Apache-2.0

At a glance

Update MentraOS firmwarelive.json from the published BES and MTK feeds and prepare a PR, preserving production MTK upgrade paths.

  • Works in 4 steps: Correlate the feed source commit/tag… → Download and hash each changed artifact;… → Inspect MTK ZIP… → …
  • Firmware manifest bumps and production-to-latest incremental patch maintenance
  • SKILL.md covers Inputs and scope, Establish the production MTK…, Fetch, verify, prepare and Validate and deliver
  • Runs Python scripts from its folder; calls python3, curl and git

What it does

Mentra Update Live Firmware is an agent skill from Mentra-Community/MentraOS. Update MentraOS firmwarelive.json from the published BES and MTK feeds and prepare a PR, preserving production MTK upgrade paths. Use for firmware manifest bumps and production-to-latest incremental patch maintenance, not firmware source builds or device installation.

Its SKILL.md is about 1.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts (for example `agents/openai.yaml`, `scripts/prepare_manifest.py` and `scripts/test_prepare_manifest.py`).

It sits in Development. The repository describes itself as: MentraOS is the leading smart glasses OS. See live captions, stream your view, talk to AI, and capture photos hands-free on compatible glasses. The licence is Apache-2.0.

When your agent uses it

  • Firmware manifest bumps and production-to-latest incremental patch maintenance
  • Not firmware source builds
  • Device installation

Example prompts

  • “/mentra-update-live-firmware”

Requirements

  • Python 3

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Correlate the feed source commit/tag with the intended merged upstream BES or
  2. Download and hash each changed artifact; require the declared SHA-256 and
  3. Inspect MTK ZIP META-INF/com/android/metadata and payload_properties.txt
  4. For BES, preserve a direct firmware BIN URL from its feed. Do not substitute

What it can do on your machine

Read from SKILL.md and the folder at commit 223f5b9. 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

    Ships 2 files in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • curl
    • git

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

  • Network

    Links to these hosts (documentation or services it may open):

    • firmwarecdn.mentraglass.com
    • mtkfirmware.mentraglass.com

    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

Mentra Update Live Firmware loads about 1.8k tokens when it runs. Until then it costs about 74 tokens; SKILL.md has 896 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~74
When it runs · the whole SKILL.md, loaded when a task matches
~1.8k

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); the scripts in this folder are not scanned.

SKILL.md

The full file from Mentra-Community/MentraOS at commit 223f5b9, republished under its Apache-2.0 licence (© Mentra-Community). 896 words, ~1,795 tokens.

Download SKILL.mdSave it as .claude/skills/mentra-update-live-firmware/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
mentra-update-live-firmware
description
Update MentraOS firmware_live.json from the published BES and MTK feeds and prepare a PR, preserving production MTK upgrade paths. Use for firmware manifest bumps and production-to-latest incremental patch maintenance, not firmware source builds or device installation.

Update Mentra Live firmware

Update asg_client/ota_manifests/firmware_live.json in Mentra-Community/MentraOS. Default new PRs to dev; honor an explicitly requested branch or existing PR. The occasional name live_firmware.json refers to this same manifest—do not create a second file.

Inputs and scope

Read repository and ASG guidance. Preserve dirty primary checkouts by using an isolated worktree from a freshly fetched base. Search for an applicable open PR before creating a duplicate. A manifest update request authorizes preparing and pushing that PR; honor any user review/merge boundary. It does not by itself request firmware builds, installations, release publication, or CDN changes. If only BES or only MTK is requested, change only that component.

Establish the production MTK baseline each time

Do not use the development latest.json target as the production baseline. Start by inspecting origin/main's firmware manifest and correlate it with the latest successful production release's pinned OTA manifest/release record. If main contains unreleased changes, use the released manifest instead. Resolve any disagreement before selecting an incremental patch.

The production target is its mtk_full_ota.end_firmware, when present, consistent with the end of its patch graph. Older manifests may have no full OTA: find the unique terminal version reached by all production patch paths. An ambiguous or disconnected graph needs investigation, not a guessed version.

Preserve the released production patch entries. For a production target P and latest MTK target L:

  • Select the published incremental with exact start_firmware == P and end_firmware == L.
  • If dev already has a non-production entry starting at P, replace it. Do not append a second entry with that start version: clients select by source.
  • Otherwise add the P → L entry, keeping the production entries intact.
  • After a production release promotes L, it becomes the new production base. The previously released P → L entry is now preserved history. The next development update adds or updates L → next, using that newly published incremental. Never freeze the baseline to a date from an earlier run.
  • If latest equals production, no production-to-latest bridge is needed.
  • If the required incremental is missing or multiple candidates match, report the exact missing/ambiguous source and target. Do not manufacture a URL, relabel a full OTA as a patch, import a downgrade, or launch an unrequested build.

Only import mtk_full_ota and the selected upgrade patch from the MTK feed. Do not copy mtk_downgrade_patches, publication metadata, or replace the entire patch array with the feed's shorter list. Update BES version, URL, and SHA-256. Include size only if it is already part of the destination BES entry.

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

Fetch, verify, prepare

Use curl --fail --silent --show-error --location for the feeds and artifacts. Python's default urllib user agent has received 403 from this CDN when curl succeeded; that is not evidence of missing firmware. Save feed snapshots and validation output outside the checkout.

Before pinning the selected artifacts:

  1. Correlate the feed source commit/tag with the intended merged upstream BES or MTK revision. Avoid selecting an unrelated PR build from a newer timestamp.
  2. Download and hash each changed artifact; require the declared SHA-256 and byte count. For combined updates this is BES, MTK full OTA, and MTK patch.
  3. Inspect MTK ZIP META-INF/com/android/metadata and payload_properties.txt: require A/B OTA for Mentra Live, incremental source constraints on the patch, no source constraint on the full OTA, no wipe/downgrade request, matching post-build metadata, and the payload's declared size and FILE_HASH. The Android metadata may use generic MentraLive/mp1k61v164bspP6 values; it does not independently prove the dated firmware version. Use release provenance for that mapping; never invent a version-field assertion.
  4. For BES, preserve a direct firmware BIN URL from its feed. Do not substitute the raw factory image for the compressed OTA payload. If comparing against a GitHub release ZIP, compare with its update_ota.bin.

Use the local helper after verifying inputs. It only transforms local JSON; it does not establish release provenance, fetch artifacts, commit, or publish:

sh
python3 <skill-dir>/scripts/prepare_manifest.py \
  --current <worktree>/asg_client/ota_manifests/firmware_live.json \
  --production <evidence>/production-firmware.json \
  --mtk-latest <evidence>/mtk-latest.json \
  --bes-latest <evidence>/bes-latest.json \
  --output <evidence>/candidate-firmware.json

Omit --bes-latest for MTK-only updates. For BES-only updates omit --production and --mtk-latest. Review the candidate, then copy it over the manifest in the isolated worktree. A helper rejection should be investigated; do not weaken its checks simply to produce a diff.

Validate and deliver

  • Confirm only the requested fields changed, historical production entries are unchanged, source versions are unique, all upgrade paths reach the target, and the full OTA target agrees with the development bridge.
  • Run git diff --check and the repository's .github/scripts/collect-ota-release-inputs.mjs on the candidate manifest. The validate-asg-ota-manifest.sh script validates an assembled manifest with an apps section; do not apply it directly to this firmware-only file.
  • Run the relevant existing coordinated OTA/release-family tests. They read .github/release-family.json, its package manifests, and the current family changelog; include those files if using a sparse checkout.
  • Re-fetch the latest feeds before publishing. If a selected release changed, reselect and verify its artifacts before updating the PR. Avoid empty PRs when the pins already match.
  • Commit only asg_client/ota_manifests/firmware_live.json. The PR should state BES/MTK targets, production baseline, patch replacement/addition, preserved historical paths, and validation. Report CI status separately from local checks and do not imply that manifest validation proves device behavior.
  • Return the PR URL. Leave it open when user approval was requested; continue merge/release work only within the user's authorization.

Approved example: MentraOS PR #4071. Use it for diff shape, never as authority for current version numbers.

Helper regression checks: python3 -m unittest discover -s <skill-dir>/scripts -p 'test_*.py'.

© Mentra-Community, 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 (scripts) in .agents/skills/mentra-update-live-firmware of Mentra-Community/MentraOS.

  • SKILL.md
  • agents/openai.yaml
  • scripts/prepare_manifest.py
  • scripts/test_prepare_manifest.py

Open the folder on GitHubat commit 223f5b9

Compare with similar skills

Mentra Update Live Firmware 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.

Mentra Update Live Firmware compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Mentra Update Live Firmware this skillMentra-Community/MentraOS2.4k—~1.8kAutomated safety check: PassApache-2.0
Vercel Composition Patternssupabase/supabase111k58 repos~726Automated safety check: PassMIT
Finishing a Development Branchobra/superpowers297k5 repos~1.9kAutomated safety check: PassMIT
Typescript Advanced Typesrolling-scopes/rsschool-app10k25 repos~4.2kAutomated safety check: PassMPL-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Code Review ChecklistshareAI-lab/learn-claude-code78k4 repos~1.1kAutomated safety check: PassMIT

Similar skills

  • Official

    React composition patterns that scale. An agent skill from supabase/supabase.

    111k GitHub starsUsed in 58 repos~726 tokens
    DevelopmentAuto-check passed
  • Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.

    297k GitHub starsUsed in 5 repos~1.9k tokens
    DevelopmentAuto-check passed
  • Typescript Advanced Types

    rolling-scopes/rsschool-app

    Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.

    10k GitHub starsUsed in 25 repos~4.2k tokens
    DevelopmentAuto-check passed
  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Code Review Checklist

    shareAI-lab/learn-claude-code

    Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.

    78k GitHub starsUsed in 4 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Greploop

    onyx-dot-app/onyx

    Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed

More from Mentra-Community/MentraOS

All 11 skills in this repo
  • Investigate Routine Failure

    Mentra-Community/MentraOS

    Investigate a Mentra routine failure from an Admin testRun URL or run/request ID, fetch authenticated results and verified artifacts with the existing incident-report token, trace the exact routine…

    2.4k GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • CI Triage

    Mentra-Community/MentraOS

    Triage failing GitHub PR checks: list failures with gh, fetch capped Actions logs, skip non-Actions checks, and summarize root cause.

    2.4k GitHub stars~582 tokensUpdated today
    Auto-check passed
  • Codex PR Review

    Mentra-Community/MentraOS

    Run an independent local Codex (gpt-6.1-sol, medium) review of a GitHub pull request and relay its verdict.

    2.4k GitHub stars~3.1k tokensUpdated today
    Auto-check passed
  • Manage Cloud Env

    Mentra-Community/MentraOS

    Add or change backend deployment environment variables through Doppler shared configs and native Porter syncs.

    2.4k GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Fix Nightly Failures

    Mentra-Community/MentraOS

    Diagnose an ongoing or finished Mentra nightly suite, group demonstrated shared failures, implement fixes, and carry PRs through independent Codex review and merge.

    2.4k GitHub stars~2.8k tokensUpdated today
    Auto-check passed
  • Sync Miniapp

    Mentra-Community/MentraOS

    Prepare an external Mentra miniapp for bundling into mobile/assets/miniapps (version bump, pack, zip install, regenerate bundledMiniapps).

    2.4k GitHub stars~430 tokensUpdated today
    Auto-check passed

Categories

Questions about Mentra Update Live Firmware

What does Mentra Update Live Firmware do?

Update MentraOS firmwarelive.json from the published BES and MTK feeds and prepare a PR, preserving production MTK upgrade paths. Mentra Update Live Firmware is an agent skill from Mentra-Community/MentraOS.json from the published BES and MTK feeds and prepare a PR, preserving production MTK upgrade paths.

When should I use Mentra Update Live Firmware?

Mentra Update Live Firmware fits situations like: firmware manifest bumps and production-to-latest incremental patch maintenance; not firmware source builds; device installation.

How do I install Mentra Update Live Firmware in Claude Code?

Run `npx skills add Mentra-Community/MentraOS --skill mentra-update-live-firmware -a claude-code`. Or copy the skill folder (.agents/skills/mentra-update-live-firmware in Mentra-Community/MentraOS) into .claude/skills/mentra-update-live-firmware in your project. Claude Code loads it when a task matches its description.

How do I install Mentra Update Live Firmware in Codex?

Run `npx skills add Mentra-Community/MentraOS --skill mentra-update-live-firmware -a codex`. Or copy the skill folder (.agents/skills/mentra-update-live-firmware in Mentra-Community/MentraOS) into .agents/skills/mentra-update-live-firmware in your project. Codex loads it when a task matches its description.

Can I use Mentra Update Live Firmware 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 Mentra-Community/MentraOS --skill mentra-update-live-firmware -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/mentra-update-live-firmware, .gemini/skills/mentra-update-live-firmware, .github/skills/mentra-update-live-firmware and .opencode/skills/mentra-update-live-firmware in your project.

What does Mentra Update Live Firmware need to run?

Going by SKILL.md and its folder, Mentra Update Live Firmware needs Python for the scripts in its folder and the command-line tools its instructions call (python3, curl and git). Our summary lists: Python 3.

Does Mentra Update Live Firmware access the network?

SKILL.md names 2 domains. As links in the text: firmwarecdn.mentraglass.com and mtkfirmware.mentraglass.com. This is read from the text; nothing was executed.

Is Mentra Update Live Firmware 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Mentra Update Live Firmware use?

Mentra Update Live Firmware 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 Mentra Update Live Firmware use?

About 1.8k tokens (SKILL.md is roughly 7.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Mentra Update Live Firmware?

Skills that share tags, products or a category with Mentra Update Live Firmware: Vercel Composition Patterns (supabase/supabase, 111k stars), Finishing a Development Branch (obra/superpowers, 297k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars) and PR Babysitter (openinterpreter/openinterpreter, 69k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Mentra Update Live Firmware?

Mentra-Community (a GitHub organization) maintains it in Mentra-Community/MentraOS, which has 2,381 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on October 11, 2026.

Source: Mentra-Community/MentraOS on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.