0.78.1

takahirom/arbigent0.78.1Aug 27, 2026by takahirom

AI Summary

A bug-fix release that improves the reliability of AI-generated `KeyPress` actions by supporting multiple key name formats and providing actionable error feedback for unknown keys.

Key Highlights

  • Fixes `KeyPress` actions generated by AI that previously failed with Android key names like `DEL`.
  • Key name resolution now supports Maestro names, `KeyCode` enum names, and Android KeyEvent aliases.
  • Unknown keys now produce error messages listing all supported key names to aid AI retries.

New Features

  • Key name resolution now supports Maestro names, KeyCode enums, and Android aliases (e.g., DEL -> BACKSPACE).
  • Unknown keys now produce actionable error messages listing all supported key names.

Full Release Notes

## More Reliable `KeyPress` Actions

This is a bug-fix release for `KeyPress` actions generated by the AI.

Previously, when the AI emitted an Android-KeyEvent-style key name — for example `DEL` while trying to correct text it had just typed — the action failed with:

```
maestro.MaestroException$InvalidCommand: Unknown key: DEL
```

Maestro's key lookup only matches its own key names (`"Backspace"`, `"Remote Dpad Up"`, ...), and the error feedback didn't tell the AI which keys were valid, so retries tended to fail again and burn through `maxStep`, failing the scenario.

What's fixed (#414):

- **Key name resolution is now much more forgiving.** `KeyPress` resolves, in order: Maestro key names (as before), `KeyCode` enum names (`VOLUME_UP`, `REMOTE_CENTER`, ...), and common Android KeyEvent aliases (`DEL` / `DELETE` → `BACKSPACE`, `ESC` → `ESCAPE`, `DPAD_*` → `REMOTE_*`). A `KEYCODE_` prefix is stripped case-insensitively.
- **Unknown keys now produce actionable feedback.** The error message lists all supported key names, so the AI's next attempt can pick a valid key instead of guessing.