Gemini CLI / Antigravity SessionStart reminder. settings.json uses the same * hooks. [].hooks[] JSON shape as Claude, so it reuses upsert_hooks_json. * The SessionStart matcher is advisory in Gemini (it does not filter lifecycle * sources), so a single "startup" entry fires on startup/resume/clear. The * command's stdout is injected as session context. (Gemini/Antigravity parity * with
| 2278 | * command's stdout is injected as session context. (Gemini/Antigravity parity |
| 2279 | * with the Claude/Codex SessionStart reminder.) */ |
| 2280 | int cbm_upsert_gemini_session_hooks(const char *settings_path) { |
| 2281 | return upsert_hooks_json((hooks_upsert_args_t){ |
| 2282 | .settings_path = settings_path, |
| 2283 | .hook_event = "SessionStart", |
| 2284 | .matcher_str = "startup", |
| 2285 | .command_str = CMM_SESSION_REMINDER_CMD, |
| 2286 | }); |
| 2287 | } |
| 2288 | |
| 2289 | int cbm_remove_gemini_session_hooks(const char *settings_path) { |
| 2290 | return remove_hooks_json((hooks_remove_args_t){ |
no test coverage detected