# Agents with ParallelTools copy cleanly on every AgentOS request

> Agno's ParallelTools keeps its live Parallel SDK client when an agent or team is copied, and each copy gets its own settings, with no RLock error or _state warning.

- Published: 2026-10-19
- Author: Ashpreet Bedi
- Categories: Changelog
- Canonical: https://www.agno.com/blog/agents-with-paralleltools-copy-cleanly-on-every-agentos-request
- Markdown: https://www.agno.com/blog/agents-with-paralleltools-copy-cleanly-on-every-agentos-request.md

An agent with `ParallelTools` couldn't be copied, so every AgentOS request shared one toolkit and its `include_domains` list. Agno's `ParallelTools` now defines its own `__deepcopy__`, which reuses the live Parallel SDK client and copies everything else, so each request gets a toolkit with its own settings.

AgentOS calls `deep_copy()` on your agent or team for every request. In earlier releases the copy tried to duplicate the SDK's HTTP client and its lock. `copy.deepcopy` failed, and `deep_copy()` caught the error and handed back the original toolkit. The half-copied client also printed a warning each time it was garbage collected.

We ran the same script on both releases with `ParallelTools(api_key="dummy", include_domains=["example.com"])`. It makes no network call:

```text
# real output

# Before
copy.deepcopy(agent): TypeError: cannot pickle '_thread.RLock' object
  warning: AttributeError: 'SyncHttpxClientWrapper' object has no attribute '_state'
agent.deep_copy(): copied toolkit=False, same client=True, own include_domains=False
  warning: AttributeError: 'SyncHttpxClientWrapper' object has no attribute '_state'

# Now
copy.deepcopy(agent): copied toolkit=True, same client=True, own include_domains=True
agent.deep_copy(): copied toolkit=True, same client=True, own include_domains=True
```

See the [cookbook](https://github.com/agno-agi/agno/blob/main/cookbook/91_tools/parallel/parallel_tools.py), and learn more about [Parallel](https://docs.agno.com/tools/toolkits/search/parallel) in the documentation.
