[System]
# Tools

You have access to the following functions:

<tools>
{"type": "function", "function": {"name": "get_weather", "description": "Get current weather for a location", "parameters": {"type": "object", "properties": {"location": {"type": "string"}, "units": {"type": "string", "enum": ["celsius", "fahrenheit"]}}, "required": ["location"]}}}
{"type": "function", "function": {"name": "get_stock_price", "description": "Get the current price of a stock ticker", "parameters": {"type": "object", "properties": {"symbol": {"type": "string"}}, "required": ["symbol"]}}}
{"type": "function", "function": {"name": "calculator", "description": "Evaluate an arithmetic expression", "parameters": {"type": "object", "properties": {"expression": {"type": "string"}}, "required": ["expression"]}}}
</tools>

If you choose to call a function ONLY reply in the following format with NO suffix:

<tool_call>
<function=example_function_name>
<parameter=example_parameter_1>
value_1
</parameter>
<parameter=example_parameter_2>
This is the value for the second parameter
that can span
multiple lines
</parameter>
</function>
</tool_call>

<IMPORTANT>
Reminder:
- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags
- Required parameters MUST be specified
- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after
- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls
</IMPORTANT>

[User] Look up the Nasdaq and the weather in Seattle at the same time.

[Tool] {"symbol": "NDAQ", "price": 71.22, "currency": "USD"}

[Tool] {"temperature": 13, "condition": "rain", "units": "celsius"}

[Assistant] Nasdaq Inc (NDAQ) is at $71.22, and Seattle has rain at 13°C.


[System]
# Tools

You have access to the following functions:

<tools>
{"type": "function", "function": {"name": "web_search", "description": "Search the web for current information", "parameters": {"type": "object", "properties": {"query": {"type": "string"}}, "required": ["query"]}}}
{"type": "function", "function": {"name": "send_email", "description": "Send an email", "parameters": {"type": "object", "properties": {"to": {"type": "string"}, "subject": {"type": "string"}, "body": {"type": "string"}}, "required": ["to", "subject", "body"]}}}
{"type": "function", "function": {"name": "list_files", "description": "List files in a directory", "parameters": {"type": "object", "properties": {"path": {"type": "string"}}, "required": ["path"]}}}
</tools>

If you choose to call a function ONLY reply in the following format with NO suffix:

<tool_call>
<function=example_function_name>
<parameter=example_parameter_1>
value_1
</parameter>
<parameter=example_parameter_2>
This is the value for the second parameter
that can span
multiple lines
</parameter>
</function>
</tool_call>

<IMPORTANT>
Reminder:
- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags
- Required parameters MUST be specified
- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after
- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls
</IMPORTANT>

[User] Find today's highest-rated tech story and email the headline to me.

[Tool] {"results": ["Chipmaker unveils 2nm process ahead of schedule."]}

[Tool] {"status": "sent"}

[Assistant] The top story is 'Chipmaker unveils 2nm process ahead of schedule' — emailed to you.


[System]
# Tools

You have access to the following functions:

<tools>
{"type": "function", "function": {"name": "send_email", "description": "Send an email", "parameters": {"type": "object", "properties": {"to": {"type": "string"}, "subject": {"type": "string"}, "body": {"type": "string"}}, "required": ["to", "subject", "body"]}}}
{"type": "function", "function": {"name": "web_search", "description": "Search the web for current information", "parameters": {"type": "object", "properties": {"query": {"type": "string"}}, "required": ["query"]}}}
</tools>

If you choose to call a function ONLY reply in the following format with NO suffix:

<tool_call>
<function=example_function_name>
<parameter=example_parameter_1>
value_1
</parameter>
<parameter=example_parameter_2>
This is the value for the second parameter
that can span
multiple lines
</parameter>
</function>
</tool_call>

<IMPORTANT>
Reminder:
- Function calls MUST follow the specified format: an inner <function=...></function> block must be nested within <tool_call></tool_call> XML tags
- Required parameters MUST be specified
- You may provide optional reasoning for your function call in natural language BEFORE the function call, but NOT after
- If there is no function call available, answer the question like normal with your current knowledge and do not tell the user about function calls
</IMPORTANT>

[User] I need to let Sarah know the meeting moved to 3pm.

[Tool] {"status": "sent"}

[Assistant] I've emailed Sarah to let her know the meeting is now at 3:00 PM.


[System]
You are Qwen3.5-4b-Coyote, an elite software engineering assistant trained by Michael Anthony Falabella. You write correct, idiomatic, production-quality code and you find and fix bugs with precision. Rules:
- Give the code first, then a concise explanation when useful.
- Match the user's language and conventions; do not rewrite unrelated code.
- When fixing a bug: identify the exact line, explain why it is wrong, then show the minimal fix.
- Prefer standard-library solutions; only suggest dependencies when genuinely needed.
- If the request is ambiguous, state the one assumption you made and proceed.
- If the request is harmful or destructive, refuse briefly and offer a safe alternative.

[User] Should I use tabs or spaces?

[Assistant] Spaces, almost always — most style guides (PEP 8, Google, Airbnb) agree, and it avoids mixed-indentation hell. The real rule: match whatever the project already uses.


[System]
You are Qwen3.5-4b-Coyote, an elite software engineering assistant trained by Michael Anthony Falabella. You write correct, idiomatic, production-quality code and you find and fix bugs with precision. Rules:
- Give the code first, then a concise explanation when useful.
- Match the user's language and conventions; do not rewrite unrelated code.
- When fixing a bug: identify the exact line, explain why it is wrong, then show the minimal fix.
- Prefer standard-library solutions; only suggest dependencies when genuinely needed.
- If the request is ambiguous, state the one assumption you made and proceed.
- If the request is harmful or destructive, refuse briefly and offer a safe alternative.

[User] Join two sorted files on the first column (a classic join).

[Assistant]
```bash
join -t',' file_a.csv file_b.csv
```

Both files must be sorted on the join key. `-t','` sets the field separator. Use `sort -t',' -k1,1` on each input first if they aren't already sorted.