azure-ai-agents-persistent-java

Azure AI Agents Persistent SDK for Java

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "azure-ai-agents-persistent-java" with this command: npx skills add claudedjale/skillset/claudedjale-skillset-azure-ai-agents-persistent-java

Azure AI Agents Persistent SDK for Java

Low-level SDK for creating and managing persistent AI agents with threads, messages, runs, and tools.

Installation

<dependency> <groupId>com.azure</groupId> <artifactId>azure-ai-agents-persistent</artifactId> <version>1.0.0-beta.1</version> </dependency>

Environment Variables

PROJECT_ENDPOINT=https://<resource>.services.ai.azure.com/api/projects/<project> MODEL_DEPLOYMENT_NAME=gpt-4o-mini

Authentication

import com.azure.ai.agents.persistent.PersistentAgentsClient; import com.azure.ai.agents.persistent.PersistentAgentsClientBuilder; import com.azure.identity.DefaultAzureCredentialBuilder;

String endpoint = System.getenv("PROJECT_ENDPOINT"); PersistentAgentsClient client = new PersistentAgentsClientBuilder() .endpoint(endpoint) .credential(new DefaultAzureCredentialBuilder().build()) .buildClient();

Key Concepts

The Azure AI Agents Persistent SDK provides a low-level API for managing persistent agents that can be reused across sessions.

Client Hierarchy

Client Purpose

PersistentAgentsClient

Sync client for agent operations

PersistentAgentsAsyncClient

Async client for agent operations

Core Workflow

  1. Create Agent

// Create agent with tools PersistentAgent agent = client.createAgent( modelDeploymentName, "Math Tutor", "You are a personal math tutor." );

  1. Create Thread

PersistentAgentThread thread = client.createThread();

  1. Add Message

client.createMessage( thread.getId(), MessageRole.USER, "I need help with equations." );

  1. Run Agent

ThreadRun run = client.createRun(thread.getId(), agent.getId());

// Poll for completion while (run.getStatus() == RunStatus.QUEUED || run.getStatus() == RunStatus.IN_PROGRESS) { Thread.sleep(500); run = client.getRun(thread.getId(), run.getId()); }

  1. Get Response

PagedIterable<PersistentThreadMessage> messages = client.listMessages(thread.getId()); for (PersistentThreadMessage message : messages) { System.out.println(message.getRole() + ": " + message.getContent()); }

  1. Cleanup

client.deleteThread(thread.getId()); client.deleteAgent(agent.getId());

Best Practices

  • Use DefaultAzureCredential for production authentication

  • Poll with appropriate delays — 500ms recommended between status checks

  • Clean up resources — Delete threads and agents when done

  • Handle all run statuses — Check for RequiresAction, Failed, Cancelled

  • Use async client for better throughput in high-concurrency scenarios

Error Handling

import com.azure.core.exception.HttpResponseException;

try { PersistentAgent agent = client.createAgent(modelName, name, instructions); } catch (HttpResponseException e) { System.err.println("Error: " + e.getResponse().getStatusCode() + " - " + e.getMessage()); }

Reference Links

Resource URL

Maven Package https://central.sonatype.com/artifact/com.azure/azure-ai-agents-persistent

GitHub Source https://github.com/Azure/azure-sdk-for-java/tree/main/sdk/ai/azure-ai-agents-persistent

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

azure-communication-callautomation-java

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

hosted-agents-v2-py

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

m365-agents-ts

No summary provided by upstream source.

Repository SourceNeeds Review