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
"description":"Executes one or more KIP (Knowledge Interaction Protocol) commands against the Cognitive Nexus to interact with your persistent memory.",
40
+
"parameters":{
41
+
"type":"object",
42
+
"properties":{
43
+
"command":{
44
+
"type":"string",
45
+
"description":"A complete, multi-line KIP command (KQL, KML or META) string to be executed. Mutually exclusive with 'commands'."
46
+
},
47
+
"commands":{
48
+
"type":"array",
49
+
"description":"An array of KIP commands for batch execution (reduces round-trips). Mutually exclusive with 'command'. Each element can be a string (uses shared 'parameters') or an object with 'command' and optional 'parameters' (overrides shared parameters). Commands are executed sequentially; execution stops on first error.",
50
+
"items":{
51
+
"type":"string"
52
+
}
53
+
},
54
+
"parameters":{
55
+
"type":"object",
56
+
"description":"An optional JSON object of key-value pairs used for safe substitution of placeholders in the command string(s). Placeholders should start with ':' (e.g., :name, :limit). IMPORTANT: A placeholder must represent a complete JSON value token (e.g., name: :name). Do not embed placeholders inside quoted strings (e.g., \"Hello :name\"), because substitution uses JSON serialization."
57
+
},
58
+
"dry_run":{
59
+
"type":"boolean",
60
+
"description":"If set to true, the command(s) will only be validated for syntactical and logical correctness without being executed.",
Copy file name to clipboardExpand all lines: anda_engine/src/model/gemini/types.rs
+25-5Lines changed: 25 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -238,7 +238,7 @@ impl From<ContentPart> for Part {
238
238
}
239
239
240
240
implFrom<Part>forContentPart{
241
-
fnfrom(value:Part) -> Self{
241
+
fnfrom(mutvalue:Part) -> Self{
242
242
match value.data{
243
243
PartKind::Text(text)if value.thought == Some(true) => ContentPart::Reasoning{ text },
244
244
PartKind::Text(text) => ContentPart::Text{ text },
@@ -270,7 +270,10 @@ impl From<Part> for ContentPart {
270
270
call_id: id,
271
271
remote_id:None,
272
272
},
273
-
_ => ContentPart::Any(json!(value.data)),
273
+
_ => {
274
+
value.thought_signature = None;
275
+
ContentPart::Any(json!(value.data))
276
+
}
274
277
}
275
278
}
276
279
}
@@ -308,7 +311,7 @@ pub enum PartKind {
308
311
#[serde(skip_serializing_if = "Option::is_none")]
309
312
scheduling:Option<String>,
310
313
#[serde(skip_serializing_if = "Option::is_none")]
311
-
parts:Option<Vec<Part>>,
314
+
parts:Option<Vec<Value>>,
312
315
},
313
316
InlineData{
314
317
mime_type:String,
@@ -634,12 +637,15 @@ pub enum BlockReason {
634
637
#[derive(Debug,Serialize,Deserialize,Clone)]
635
638
#[serde(rename_all = "camelCase")]
636
639
pubstructUsageMetadata{
640
+
#[serde(default)]
637
641
pubprompt_token_count:u32,
638
642
639
-
pubcandidates_token_count:u32,
640
-
643
+
#[serde(default)]
641
644
pubtotal_token_count:u32,
642
645
646
+
#[serde(default)]
647
+
pubcandidates_token_count:u32,
648
+
643
649
#[serde(default)]
644
650
pubthoughts_token_count:u32,
645
651
}
@@ -654,6 +660,20 @@ pub struct ThinkingConfig {
654
660
/// The number of thoughts tokens that the model should generate.
655
661
#[serde(skip_serializing_if = "Option::is_none")]
656
662
pubthinking_budget:Option<u32>,
663
+
/// Controls the maximum depth of the model's internal reasoning process before it produces a response. If not specified, the default is HIGH. Recommended for Gemini 3 or later models. Use with earlier models results in an error.
0 commit comments