ワンクリックで
webview-ready-handshake
Replay extension state only after the webview page declares its own ready flag.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Replay extension state only after the webview page declares its own ready flag.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
{what this skill teaches agents}
Validate Squad avatar regressions with alias-resolution probes and source assertions around reset paths.
Use stable agent identity fields for metadata joins and reserve instance ids for runtime bookkeeping.
Render live sub-agent badges from resolved identity, current model, and active work state.
Protect persisted voice selections when async voice lists reload or the active TTS engine changes.
Keep avatar window chrome and topmost behavior driven by one explicit rule.
| name | webview-ready-handshake |
| description | Replay extension state only after the webview page declares its own ready flag. |
| domain | extension-ui, lifecycle |
| confidence | high |
| source | earned |
Use this when a Copilot extension pushes state into a native webview during startup, reload, or reopen. A live bridge/socket is not enough evidence that the page module, exported window functions, or root scene objects are actually ready to receive that state.
.github/extensions/copilot-avatar/main.mjs waits for window.__copilotAvatarReady before replaying title + Squad context on window show/reopen..github/extensions/copilot-avatar/content/main.js sets window.__copilotAvatarReady = true after initial boot and updates window.__copilotAvatarState.rootMicVisible inside updateRootSquadMicBoom().window.set... handlers already exist.webview.show() with no page-ready gate.