Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Foundry Hosting

This package provides the integration of Agent Framework agents and workflows with the Foundry Agent Server, which can be hosted on Foundry infrastructure.

Conversation history

ResponsesHostServer uses AgentServer response history as the model's conversation history by default:

server = ResponsesHostServer(agent)

In this mode, the configured AgentServer response provider supplies the prior transcript. Hosting rejects HistoryProvider instances with load_messages=True and agents configured with a default conversation_id, previous_response_id, or conversation, adds a transient in-memory provider for function-call loops, and clears restored downstream service IDs. For clients that advertise STORES_BY_DEFAULT=True, hosting forces downstream store=False; for other clients it removes an explicit agent-level store option and does not forward one. These safeguards ensure the model receives the transcript once without sending unsupported storage options.

AgentServer history requires a framework RawAgent whose client declares the boolean STORES_BY_DEFAULT capability; the agent's runtime options then let hosting enforce downstream storage behavior. Custom SupportsAgentRun implementations must use history_source="agent" because that protocol does not accept runtime chat options.

ResponsesHostServer owns the supplied agent instance and may add hosting-specific context providers. Do not reuse that agent with another host or invoke it directly after constructing the server.

To preserve the agent's regular history and service-storage behavior, select the agent as the history source:

server = ResponsesHostServer(agent, history_source="agent")

Hosting then passes only current request input, allows load-enabled history providers, and does not override the agent's downstream store option. For example, InMemoryHistoryProvider stores messages in AgentSession.state, which the default FoundryAgentSessionStore persists in Foundry:

agent = Agent(
    client=client,
    context_providers=[InMemoryHistoryProvider()],
    default_options={"store": False},
)
server = ResponsesHostServer(agent, history_source="agent")

The store argument remains independent: it selects the AgentServer response provider used for Responses API persistence and retrieval. Omitting it or passing None selects the environment default. With history_source="agent_server", that response provider also supplies model history; with history_source="agent", it does not.

State store

Local persistence

Outside the Foundry hosting environment, state is persisted as JSON files under ~/.agentserver/state_stores by default. Set AGENTSERVER_STATE_ROOT to use a different root directory; the files will be written to its state_stores subdirectory instead.

Each logical store is saved as one JSON file whose name is a URL-safe Base64 encoding of the store name. For example:

  • Agent sessions: YWdlbnRfc2Vzc2lvbnM.json
  • Function approvals: ZnVuY3Rpb25fYXBwcm92YWxz.json
  • Workflow checkpoints: one file per context, encoded from checkpoints/<context_id>

Read more about the Foundry durable state store in the developer guide.

User isolation

When hosted on Foundry, the default state stores automatically isolate data by the platform user ID supplied with each request. Sessions, workflow checkpoints, and function approvals written for one user cannot be read or modified by another user. No additional partitioning configuration is required when using the default stores.

Agent Sessions

ResponsesHostServer persists the Agent Framework AgentSession durably. By default it uses the FoundryAgentSessionStore, backed by Foundry storage when hosted and file-based storage locally. Stored sessions are scoped under agent_sessions.

See the custom storage provider sample for an example that uses an in-memory session store locally and Azure Cosmos DB when hosted.

Native Responses refusal parts are stored as text carrying additional_properties["model_output_kind"] == "refusal" and emitted as response.refusal.* events when streamed back to clients.

Workflow checkpoints

ResponsesHostServer persists workflow checkpoints durably. By default, it uses the FoundryCheckpointStore, backed by Foundry storage when hosted and file-based storage locally. Stored checkpoints are scoped under checkpoints.

Function approvals

ResponsesHostServer persists function approvals durably. By default, it uses the FoundryFunctionApprovalStore, backed by Foundry storage when hosted and file-based storage locally. Stored approvals are scoped under function_approvals.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file agent_framework_foundry_hosting-1.0.0b260903.tar.gz.

File metadata

  • Download URL: agent_framework_foundry_hosting-1.0.0b260903.tar.gz
  • Upload date:
  • Size: 36.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for agent_framework_foundry_hosting-1.0.0b260903.tar.gz
Algorithm Hash digest
SHA256 7e20d15af9574059b2661e45121c3d557c78d4271290abe8e85e712ffd1c1027
MD5 1f19827af7e2f637688d38bf30935765
BLAKE2b-256 67ee39d70fadd77b42a9e05916752dc2767e4c21a076560bc1b36e3a901165ab

See more details on using hashes here.

File details

Details for the file agent_framework_foundry_hosting-1.0.0b260903-py3-none-any.whl.

File metadata

  • Download URL: agent_framework_foundry_hosting-1.0.0b260903-py3-none-any.whl
  • Upload date:
  • Size: 37.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for agent_framework_foundry_hosting-1.0.0b260903-py3-none-any.whl
Algorithm Hash digest
SHA256 26c1699c882c82f3faf71377edcc63e407d33e12522f29800183414c8eb04499
MD5 33b4a17abaa5381711aba5bf6c033c30
BLAKE2b-256 954efd3c536e36cd0445d5b8dc9f74bfe970cc9c62ae715c4f3d8167d2d2ec86

See more details on using hashes here.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page