# Agent Structure

Agents are lightweight, containerised modules with well-defined state and mutation potential.

| Component                     | Purpose                                                                                                                                                                                                                                                                                                                       |
| ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Base Model**                | Pluggable - selected at run-time from a model registry that ships with presets for OpenAI O-series (O3-mini / O3-high / GPT‑4o), Anthropic Claude 3.x (Sonnet / Opus), Meta Llama-3 (405 B / 70 B), DeepSeek Coder / Reasoner, or any open-source checkpoint addressable through an OpenAI-style or Anthropic-style endpoint. |
| **Task Strategy**             | Blueprint describing how the agent designs, mutates, and orchestrates children.                                                                                                                                                                                                                                               |
| **Mutation Logic**            | Parameter-level rules (e.g., temperature, context window) plus structural edits (swap attention heads, change prompt templates, introduce new reasoning chains).                                                                                                                                                              |
| **Memory & Cache**            | Short-term scratchpad + long-term vector store for episodic recall.                                                                                                                                                                                                                                                           |
| **Fitness Prediction Module** | Local heuristic that estimates expected reward before expensive evaluation runs.                                                                                                                                                                                                                                              |

*An adapter layer automatically normalizes provider-specific chat formats (function-calling JSON, Claude tool-use, etc.), so adding/swapping a model remains a one-line YAML change; no code edits are required. Multiple base-model variants can be instantiated in parallel; the adapter layer merely unifies their interfaces.*


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.darwinslab.ai/the-synthetic-darwin-protocol/agent-structure.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
