import sys
import os

# Add root to path to find protos and other packages
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "..")))

from agent_node.node import AgentNode
from agent_node.config import NODE_ID

def main():
    print(f"[*] Starting Antigravity Agent Node: {NODE_ID}...")
    
    # 1. Initialization
    node = AgentNode()
    
    # 2. Handshake: Sync configuration and Sandbox Policy
    node.sync_configuration()
    
    # 3. Background: Start health reporting (Heartbeats)
    node.start_health_reporting()
    
    # 4. Foreground: Run Persistent Task Stream
    node.run_task_stream()

if __name__ == '__main__':
    try:
        main()
    except KeyboardInterrupt:
        print("\n[🛑] Agent Node Shutdown.")
        sys.exit(0)
