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;
}
}