diff --git a/shared/godot/autoloads/app_state.gd b/shared/godot/autoloads/app_state.gd index 049e773..4056379 100644 --- a/shared/godot/autoloads/app_state.gd +++ b/shared/godot/autoloads/app_state.gd @@ -123,6 +123,24 @@ func set_companion_bool(key: String, value: bool) -> void: _mark_dirty() +func get_companion_float(key: String, fallback: float) -> float: + return _section("companion").get(key, fallback) + + +func set_companion_float(key: String, value: float) -> void: + _section("companion")[key] = value + _mark_dirty() + + +func get_companion_int(key: String, fallback: int) -> int: + return _section("companion").get(key, fallback) + + +func set_companion_int(key: String, value: int) -> void: + _section("companion")[key] = value + _mark_dirty() + + # -- Gaze Halo ---------------------------------------------------------------- diff --git a/shared/godot/autoloads/companion_config.gd b/shared/godot/autoloads/companion_config.gd index c392dac..0dbdb21 100644 --- a/shared/godot/autoloads/companion_config.gd +++ b/shared/godot/autoloads/companion_config.gd @@ -28,6 +28,9 @@ var stt_enabled: bool: stt_enabled = value AppState.set_companion_bool("stt_enabled", value) stt_enabled_changed.emit(value) +var llm_temperature: float +var llm_max_tokens: int +var auto_resume_conversation: bool func _ready() -> void: @@ -37,4 +40,7 @@ func _ready() -> void: system_prompt = AppState.get_companion("system_prompt", "") tts_enabled = AppState.get_companion_bool("tts_enabled", true) stt_enabled = AppState.get_companion_bool("stt_enabled", true) + llm_temperature = AppState.get_companion_float("llm_temperature", 0.7) + llm_max_tokens = AppState.get_companion_int("llm_max_tokens", 150) + auto_resume_conversation = AppState.get_companion_bool("auto_resume_conversation", true) FlightRecorder.record("config.loaded", "CompanionConfig loaded from AppState", {})