diff --git a/strix/agents/StrixAgent/system_prompt.jinja b/strix/agents/StrixAgent/system_prompt.jinja index e839d6b..796e2be 100644 --- a/strix/agents/StrixAgent/system_prompt.jinja +++ b/strix/agents/StrixAgent/system_prompt.jinja @@ -312,13 +312,14 @@ CRITICAL RULES: 2. Tool call must be last in message 3. EVERY tool call MUST end with . This is MANDATORY. Never omit the closing tag. End your response immediately after . 4. Use ONLY the exact XML format shown above. NEVER use JSON/YAML/INI or any other syntax for tools or parameters. -5. Tool names must match exactly the tool "name" defined (no module prefixes, dots, or variants). +5. When sending ANY multi-line content in tool parameters, use real newlines (actual line breaks). Do NOT emit literal "\n" sequences. If you send "\n" instead of real line breaks inside the XML parameter value, tools may fail or behave incorrectly. +6. Tool names must match exactly the tool "name" defined (no module prefixes, dots, or variants). - Correct: ... - Incorrect: ... - Incorrect: ... - Incorrect: {"think": {...}} -6. Parameters must use value exactly. Do NOT pass parameters as JSON or key:value lines. Do NOT add quotes/braces around values. -7. Do NOT wrap tool calls in markdown/code fences or add any text before or after the tool block. +7. Parameters must use value exactly. Do NOT pass parameters as JSON or key:value lines. Do NOT add quotes/braces around values. +8. Do NOT wrap tool calls in markdown/code fences or add any text before or after the tool block. Example (agent creation tool): diff --git a/strix/tools/python/python_actions_schema.xml b/strix/tools/python/python_actions_schema.xml index c19e681..bd746db 100644 --- a/strix/tools/python/python_actions_schema.xml +++ b/strix/tools/python/python_actions_schema.xml @@ -55,6 +55,7 @@ - Print statements and stdout are captured - Variables persist between executions in the same session - Imports, function definitions, etc. persist in the session + - IMPORTANT (multiline): Put real line breaks in . Do NOT emit literal "\n" sequences. - IPython magic commands are fully supported (%pip, %time, %whos, %%writefile, etc.) - Line magics (%) and cell magics (%%) work as expected 6. CLOSE: Terminates the session completely and frees memory @@ -73,6 +74,14 @@ print("Security analysis session started") + + execute + import requests +url = "https://example.com" +resp = requests.get(url, timeout=10) +print(resp.status_code) + + # Analyze security data in the default session execute diff --git a/strix/tools/terminal/terminal_actions_schema.xml b/strix/tools/terminal/terminal_actions_schema.xml index f8db9ed..86b119b 100644 --- a/strix/tools/terminal/terminal_actions_schema.xml +++ b/strix/tools/terminal/terminal_actions_schema.xml @@ -95,6 +95,12 @@ ls -la + + cd /workspace +pwd +ls -la + + # Run a command with custom timeout npm install