From azure-sdk-java
Java SDK for Azure AI Agents: create/manage persistent agents, threads, messages, runs, and tools with sync/async clients.
npx claudepluginhub microsoft/skills --plugin azure-sdk-javaThis skill uses the workspace's default tool permissions.
Low-level SDK for creating and managing persistent AI agents with threads, messages, runs, and tools.
Creates and manages persistent AI agents in Java using Azure AI Agents Persistent SDK for threads, messages, runs, and tools.
Creates and manages persistent AI agents in .NET using Azure SDK for threads, messages, runs, tools, function calling, file search, and code interpreter.
Builds persistent AI agents on Azure AI Foundry using agent-framework-azure-ai Python SDK. Supports hosted tools (code interpreter, file search, web search), function tools, MCP servers, conversation threads, and streaming responses.
Share bugs, ideas, or general feedback.
Low-level SDK for creating and managing persistent AI agents with threads, messages, runs, and tools.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-agents-persistent</artifactId>
<version>1.0.0-beta.1</version>
</dependency>
PROJECT_ENDPOINT=https://<resource>.services.ai.azure.com/api/projects/<project>
MODEL_DEPLOYMENT_NAME=gpt-4o-mini
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();
The Azure AI Agents Persistent SDK provides a low-level API for managing persistent agents that can be reused across sessions.
| Client | Purpose |
|---|---|
PersistentAgentsClient | Sync client for agent operations |
PersistentAgentsAsyncClient | Async client for agent operations |
// Create agent with tools
PersistentAgent agent = client.createAgent(
modelDeploymentName,
"Math Tutor",
"You are a personal math tutor."
);
PersistentAgentThread thread = client.createThread();
client.createMessage(
thread.getId(),
MessageRole.USER,
"I need help with equations."
);
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());
}
PagedIterable<PersistentThreadMessage> messages = client.listMessages(thread.getId());
for (PersistentThreadMessage message : messages) {
System.out.println(message.getRole() + ": " + message.getContent());
}
client.deleteThread(thread.getId());
client.deleteAgent(agent.getId());
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());
}
| 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 |