Files
DashDescomplicar/monitorizacao/gemini-pre-telemetry.py
T

31 lines
1.0 KiB
Python

#!/usr/bin/env python3
import sys
import json
import os
import time
def pre_tool_hook():
try:
# Lê o input do Gemini
hook_input = json.load(sys.stdin)
session_id = hook_input.get("session_id", "unknown")
# Cria um ficheiro temporário para guardar o tempo de início desta sessão
# Nota: O Gemini CLI executa ferramentas de forma sequencial ou paralela,
# mas os hooks AfterTool recebem o contexto necessário.
temp_dir = os.path.expanduser("~/.gemini/tmp/telemetry")
os.makedirs(temp_dir, exist_ok=True)
# Guardamos o tempo de início num ficheiro nomeado pela sessão
# Para maior precisão em chamadas paralelas, o ideal seria um tool_call_id,
# mas o session_id é a base comum.
with open(os.path.join(temp_dir, f"{session_id}.start"), "w") as f:
f.write(str(time.time()))
print(json.dumps({}))
except Exception:
print(json.dumps({}))
if __name__ == "__main__":
pre_tool_hook()