using System.Collections.Generic; namespace LLM.Editor.Commands { /// /// Defines the parameters for the GatherContextCommand. It contains a list /// of specific data requests the LLM wants to be fulfilled. /// [System.Serializable] public class GatherContextParams { public List requests = new List(); } /// /// Represents a single, specific request for a piece of information about the project. /// [System.Serializable] public class ContextRequest { /// /// A key provided by the LLM to uniquely identify this piece of data in the final response dictionary. /// e.g., "launcherRigidbody" /// public string contextKey; /// /// The identifier for the object of interest. This can be an InstanceID, a GUID, an asset path, or a name. /// e.g., "18354", "a1b2c3d4e5f6", "Assets/Scripts/Player.cs" /// public string subjectIdentifier; /// /// The type of data being requested. This determines which Context Provider will be used. /// e.g., "ComponentData", "SourceCode", "ProjectSettings" /// public string dataType; /// /// An optional qualifier to provide more specific instructions to the data provider. /// e.g., "UnityEngine.Rigidbody", "Physics", "t:Prefab player" /// public string qualifier; } }