You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: dotnet/samples/02-agents/Harness/Harness_Shared_Console/Observers/PlanningResponse.cs
+8-1Lines changed: 8 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -46,6 +46,13 @@ public class PlanningQuestion
46
46
/// Only used for clarification questions. Null when no predefined choices are offered.
47
47
/// </summary>
48
48
[JsonPropertyName("choices")]
49
-
[Description("For clarifications, this has a list of options that the user can choose from. null for approvals.")]
49
+
[Description("""
50
+
For clarifications, this has a list of options that the user can choose from.
51
+
null for approvals.
52
+
53
+
Note: for clarifications, the user will always also be presented with a free form input option, so make sure that each choice provided here is a valid input for the next turn.
54
+
E.g. if the question is "Which stock are you referring to?" then valid choices might be ["AAPL", "MSFT", "GOOG"], and the user could also type their own answer.
55
+
Invalid choices would be ["Enter tickers directly", "Paste tickers"], since these conflict with the already existing freeform option, and don't directly provide valid inputs for the next turn.
[Description("List the direct child file names of a directory. Omit the directory (or pass an empty string) to list the root. To enumerate files in a subdirectory, pass its relative path, for example \"reports\" or \"reports/2024\".")]
/// Search file contents using a regular expression pattern (case-insensitive).
158
+
/// List the direct child subdirectory names of a directory. Omit <paramref name="directory"/> (or pass an empty string)
159
+
/// to list the store root. To enumerate subdirectories of a subdirectory, pass its relative path.
160
+
/// </summary>
161
+
/// <param name="directory">The relative directory path to list. Omit or pass an empty string to list the store root.</param>
162
+
/// <param name="cancellationToken">A token to cancel the operation.</param>
163
+
/// <returns>A list of subdirectory names.</returns>
164
+
[Description("List the direct child subdirectory names of a directory. Omit the directory (or pass an empty string) to list the root. To enumerate subdirectories of a subdirectory, pass its relative path, for example \"reports\" or \"reports/2024\". Use this together with file_access_list_files to explore the directory tree level by level.")]
/// Search the contents of all files in the store (recursively) using a regular expression pattern (case-insensitive).
153
174
/// Optionally filter which files to search using a glob pattern.
154
175
/// </summary>
155
176
/// <param name="regexPattern">A regular expression pattern to match against file contents (case-insensitive).</param>
156
-
/// <param name="filePattern">An optional glob pattern to filter which files to search(e.g., "*.md", "research*"). Leave empty or omit to search all files.</param>
177
+
/// <param name="filePattern">An optional glob pattern to filter which files to search, matched against each file's path relative to the store root. Use <c>**</c> to match across subdirectories (e.g., "**/*.md"). Leave empty or omit to search all files.</param>
157
178
/// <param name="cancellationToken">A token to cancel the operation.</param>
158
-
/// <returns>A list of search results with matching file names, snippets, and matching lines.</returns>
159
-
[Description("Search file contents using a regular expression pattern (case-insensitive). Optionally filter which files to search using a glob pattern (e.g., \"*.md\", \"research*\"). Returns matching file names, snippets, and matching lines with line numbers.")]
179
+
/// <returns>A list of search results whose file names are paths relative to the store root.</returns>
180
+
[Description(
181
+
"""
182
+
Search the contents of all files in the store (recursively, across all subdirectories) using a regular expression pattern (case-insensitive).
183
+
Optionally filter which files to search using a glob pattern matched against each file's path relative to the store root:
184
+
- '*' matches within a single path segment
185
+
- '**' matches across subdirectories, so use \"**/*.md\" to match markdown files at any depth, or \"reports/**\" to restrict the search to the 'reports' subtree.
186
+
187
+
Returns matching results whose file names are paths relative to the store root (usable with file_access_read_file), along with snippets and matching lines with line numbers.
0 commit comments