code: def test_put_agent_update(client):
      create_request = {
          "agent": {
              "name": "test_put_agent_update",
              "model_name": "test_model",
              "params": {"k1": "v1", "k2": "v2"},
              "skills": ["test_skill"],
          }
      }
  
      response = client.post(
          "/api/projects/mindsdb/agents",
          json=create_request,
          follow_redirects=True,
      )
      assert "201" in response.status
  
      update_request = {
          "agent": {
              "params": {"k1": "v1.1", "k2": None, "k3": "v3"},
              "skills_to_add": ["test_skill_2"],
              "skills_to_remove": ["test_skill"],
          }
      }
  
      update_response = client.put(
          "/api/projects/mindsdb/agents/test_put_agent_update",
          json=update_request,
          follow_redirects=True,
      )
      updated_agent = update_response.get_json()
  
      expected_agent = {
          "name": "test_put_agent_update",
          "model_name": "test_model",
          "params": {"k1": "v1.1", "k3": "v3"},
          "skills": updated_agent["skills"],
          "id": updated_agent["id"],
          "project_id": updated_agent["project_id"],
          "created_at": updated_agent["created_at"],
          "updated_at": updated_agent["updated_at"],
      }
  
      assert updated_agent == expected_agent
  
      assert len(updated_agent["skills"]) == 1
      skill = updated_agent["skills"][0]
      assert skill["name"] == "test_skill_2"
  
imports: import os
  import pytest
  from tempfile import TemporaryDirectory
  from mindsdb.api.http.initialize import initialize_app
  from mindsdb.migrations import migrate
  from mindsdb.interfaces.storage import db
  from mindsdb.utilities.config import Config
label_desc: Use image node_id 15 for calling a global function with example usage: test_put_agent_update(client) without return types