[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71RCP6DGD8PC90N63A7RG26":3,"skill-same:01M71RCP6DGD8PC90N63A7RG26":47},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":14,"categories":15,"keywords":16,"publishedAt":22,"linkOnly":23,"markdownContent":24,"markdownBody":25,"frontMatter":26,"refName":27,"commitSha":28,"skillDirectory":29,"forksCount":12,"repositoryHtmlUrl":30,"repositoryHomepageUrl":6,"ownerHtmlUrl":31,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":32,"install":33,"resources":46},"01M71RCP6DGD8PC90N63A7RG26","azure-ai-agents-persistent-java",null,"javiertarazon\u002Fide-agente-free-jt7-","javiertarazon","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F153141207?v=4","01M71R52TB3S9HXKH6WSNT8A7V","01M71R52VG5KS2DKDDH4GDQ30A",0,"MIT","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fazure-ai-agents-persistent-java\u002FSKILL.md",[],[17,18,19,20,21],"ai agents","azure ai","azure","azure ai agents persistent java","java","2026-11-10 13:02:02",false,"---\nname: azure-ai-agents-persistent-java\ndescription: \"|\"\n  Azure AI Agents Persistent SDK for Java. Low-level SDK for creating and managing AI agents with threads, messages, runs, and tools.\n  Triggers: \"PersistentAgentsClient\", \"persistent agents java\", \"agent threads java\", \"agent runs java\", \"streaming agents java\".\npackage: com.azure:azure-ai-agents-persistent\nrisk: unknown\nsource: community\n---\n\n# Azure AI Agents Persistent SDK for Java\n\nLow-level SDK for creating and managing persistent AI agents with threads, messages, runs, and tools.\n\n## Installation\n\n```xml\n\u003Cdependency>\n    \u003CgroupId>com.azure\u003C\u002FgroupId>\n    \u003CartifactId>azure-ai-agents-persistent\u003C\u002FartifactId>\n    \u003Cversion>1.0.0-beta.1\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n## Environment Variables\n\n```bash\nPROJECT_ENDPOINT=https:\u002F\u002F\u003Cresource>.services.ai.azure.com\u002Fapi\u002Fprojects\u002F\u003Cproject>\nMODEL_DEPLOYMENT_NAME=gpt-4o-mini\n```\n\n## Authentication\n\n```java\nimport com.azure.ai.agents.persistent.PersistentAgentsClient;\nimport com.azure.ai.agents.persistent.PersistentAgentsClientBuilder;\nimport com.azure.identity.DefaultAzureCredentialBuilder;\n\nString endpoint = System.getenv(\"PROJECT_ENDPOINT\");\nPersistentAgentsClient client = new PersistentAgentsClientBuilder()\n    .endpoint(endpoint)\n    .credential(new DefaultAzureCredentialBuilder().build())\n    .buildClient();\n```\n\n## Key Concepts\n\nThe Azure AI Agents Persistent SDK provides a low-level API for managing persistent agents that can be reused across sessions.\n\n### Client Hierarchy\n\n| Client | Purpose |\n|--------|---------|\n| `PersistentAgentsClient` | Sync client for agent operations |\n| `PersistentAgentsAsyncClient` | Async client for agent operations |\n\n## Core Workflow\n\n### 1. Create Agent\n\n```java\n\u002F\u002F Create agent with tools\nPersistentAgent agent = client.createAgent(\n    modelDeploymentName,\n    \"Math Tutor\",\n    \"You are a personal math tutor.\"\n);\n```\n\n### 2. Create Thread\n\n```java\nPersistentAgentThread thread = client.createThread();\n```\n\n### 3. Add Message\n\n```java\nclient.createMessage(\n    thread.getId(),\n    MessageRole.USER,\n    \"I need help with equations.\"\n);\n```\n\n### 4. Run Agent\n\n```java\nThreadRun run = client.createRun(thread.getId(), agent.getId());\n\n\u002F\u002F Poll for completion\nwhile (run.getStatus() == RunStatus.QUEUED || run.getStatus() == RunStatus.IN_PROGRESS) {\n    Thread.sleep(500);\n    run = client.getRun(thread.getId(), run.getId());\n}\n```\n\n### 5. Get Response\n\n```java\nPagedIterable\u003CPersistentThreadMessage> messages = client.listMessages(thread.getId());\nfor (PersistentThreadMessage message : messages) {\n    System.out.println(message.getRole() + \": \" + message.getContent());\n}\n```\n\n### 6. Cleanup\n\n```java\nclient.deleteThread(thread.getId());\nclient.deleteAgent(agent.getId());\n```\n\n## Best Practices\n\n1. **Use DefaultAzureCredential** for production authentication\n2. **Poll with appropriate delays** — 500ms recommended between status checks\n3. **Clean up resources** — Delete threads and agents when done\n4. **Handle all run statuses** — Check for RequiresAction, Failed, Cancelled\n5. **Use async client** for better throughput in high-concurrency scenarios\n\n## Error Handling\n\n```java\nimport com.azure.core.exception.HttpResponseException;\n\ntry {\n    PersistentAgent agent = client.createAgent(modelName, name, instructions);\n} catch (HttpResponseException e) {\n    System.err.println(\"Error: \" + e.getResponse().getStatusCode() + \" - \" + e.getMessage());\n}\n```\n\n## Reference Links\n\n| Resource | URL |\n|----------|-----|\n| Maven Package | https:\u002F\u002Fcentral.sonatype.com\u002Fartifact\u002Fcom.azure\u002Fazure-ai-agents-persistent |\n| GitHub Source | https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-java\u002Ftree\u002Fmain\u002Fsdk\u002Fai\u002Fazure-ai-agents-persistent |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n","# Azure AI Agents Persistent SDK for Java\n\nLow-level SDK for creating and managing persistent AI agents with threads, messages, runs, and tools.\n\n## Installation\n\n```xml\n\u003Cdependency>\n    \u003CgroupId>com.azure\u003C\u002FgroupId>\n    \u003CartifactId>azure-ai-agents-persistent\u003C\u002FartifactId>\n    \u003Cversion>1.0.0-beta.1\u003C\u002Fversion>\n\u003C\u002Fdependency>\n```\n\n## Environment Variables\n\n```bash\nPROJECT_ENDPOINT=https:\u002F\u002F\u003Cresource>.services.ai.azure.com\u002Fapi\u002Fprojects\u002F\u003Cproject>\nMODEL_DEPLOYMENT_NAME=gpt-4o-mini\n```\n\n## Authentication\n\n```java\nimport com.azure.ai.agents.persistent.PersistentAgentsClient;\nimport com.azure.ai.agents.persistent.PersistentAgentsClientBuilder;\nimport com.azure.identity.DefaultAzureCredentialBuilder;\n\nString endpoint = System.getenv(\"PROJECT_ENDPOINT\");\nPersistentAgentsClient client = new PersistentAgentsClientBuilder()\n    .endpoint(endpoint)\n    .credential(new DefaultAzureCredentialBuilder().build())\n    .buildClient();\n```\n\n## Key Concepts\n\nThe Azure AI Agents Persistent SDK provides a low-level API for managing persistent agents that can be reused across sessions.\n\n### Client Hierarchy\n\n| Client | Purpose |\n|--------|---------|\n| `PersistentAgentsClient` | Sync client for agent operations |\n| `PersistentAgentsAsyncClient` | Async client for agent operations |\n\n## Core Workflow\n\n### 1. Create Agent\n\n```java\n\u002F\u002F Create agent with tools\nPersistentAgent agent = client.createAgent(\n    modelDeploymentName,\n    \"Math Tutor\",\n    \"You are a personal math tutor.\"\n);\n```\n\n### 2. Create Thread\n\n```java\nPersistentAgentThread thread = client.createThread();\n```\n\n### 3. Add Message\n\n```java\nclient.createMessage(\n    thread.getId(),\n    MessageRole.USER,\n    \"I need help with equations.\"\n);\n```\n\n### 4. Run Agent\n\n```java\nThreadRun run = client.createRun(thread.getId(), agent.getId());\n\n\u002F\u002F Poll for completion\nwhile (run.getStatus() == RunStatus.QUEUED || run.getStatus() == RunStatus.IN_PROGRESS) {\n    Thread.sleep(500);\n    run = client.getRun(thread.getId(), run.getId());\n}\n```\n\n### 5. Get Response\n\n```java\nPagedIterable\u003CPersistentThreadMessage> messages = client.listMessages(thread.getId());\nfor (PersistentThreadMessage message : messages) {\n    System.out.println(message.getRole() + \": \" + message.getContent());\n}\n```\n\n### 6. Cleanup\n\n```java\nclient.deleteThread(thread.getId());\nclient.deleteAgent(agent.getId());\n```\n\n## Best Practices\n\n1. **Use DefaultAzureCredential** for production authentication\n2. **Poll with appropriate delays** — 500ms recommended between status checks\n3. **Clean up resources** — Delete threads and agents when done\n4. **Handle all run statuses** — Check for RequiresAction, Failed, Cancelled\n5. **Use async client** for better throughput in high-concurrency scenarios\n\n## Error Handling\n\n```java\nimport com.azure.core.exception.HttpResponseException;\n\ntry {\n    PersistentAgent agent = client.createAgent(modelName, name, instructions);\n} catch (HttpResponseException e) {\n    System.err.println(\"Error: \" + e.getResponse().getStatusCode() + \" - \" + e.getMessage());\n}\n```\n\n## Reference Links\n\n| Resource | URL |\n|----------|-----|\n| Maven Package | https:\u002F\u002Fcentral.sonatype.com\u002Fartifact\u002Fcom.azure\u002Fazure-ai-agents-persistent |\n| GitHub Source | https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-for-java\u002Ftree\u002Fmain\u002Fsdk\u002Fai\u002Fazure-ai-agents-persistent |\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n",{},"release\u002Fv4.2.11-panel-pro","a92ea02bcf7e2b3dbaf46d49696c29a3cb490d4f",".github\u002Fskills\u002Fazure-ai-agents-persistent-java","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-","https:\u002F\u002Fgithub.com\u002Fjaviertarazon","2026-07-12 07:10:45",{"source":7,"skillName":5,"commands":34,"prompt":44,"zipAvailable":45},[35,38,41],{"tool":36,"command":37},"npx","npx skills add javiertarazon\u002Fide-agente-free-jt7- --skill azure-ai-agents-persistent-java",{"tool":39,"command":40},"bunx","bunx skills add javiertarazon\u002Fide-agente-free-jt7- --skill azure-ai-agents-persistent-java",{"tool":42,"command":43},"pnpm","pnpm dlx skills add javiertarazon\u002Fide-agente-free-jt7- --skill azure-ai-agents-persistent-java","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fazure-ai-agents-persistent-java\u002FSKILL.md",true,[],[48,80,107,127,142,164],{"skillNo":49,"name":50,"nameZh":6,"description":51,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":52,"categories":53,"keywords":59,"publishedAt":22},"01M71TQ7Q6Z10VWF3C2H5X1KW9","zustand-store-ts","Create Zustand stores with TypeScript, subscribeWithSelector middleware, and proper state\u002Faction separation. Use when building React state management, creating global stores, or implementing reacti...","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzustand-store-ts\u002FSKILL.md",[54],{"categoryNo":55,"categoryName":56,"taxonomyType":57,"taxonomyTypeDesc":58},"01JBSEEDCAT000000000000009","前端开发","SCENARIO","使用场景",[60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79],"zustand","store","zustand store ts","community","middleware","implementing","use","react state management","when","unknown","react","with","state","create","state management","typescript","action","management","separation","global",{"skillNo":81,"name":82,"nameZh":6,"description":83,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":84,"categories":85,"keywords":89,"publishedAt":22},"01M71TQ5EAR40G6W0MV5ZDVEZT","zoom-automation","Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzoom-automation\u002FSKILL.md",[86],{"categoryNo":87,"categoryName":88,"taxonomyType":57,"taxonomyTypeDesc":58},"01JBSEEDCAT000000000000023","Skill与智能体开发",[90,91,92,63,93,94,95,96,97,69,98,99,100,101,102,103,104,105,77,106],"zoom automation","zoom","automation","creation","for","search","schemas","MCP","first","via","meeting","search tools","tracking","webinars","composio","recordings","Tools",{"skillNo":108,"name":109,"nameZh":6,"description":110,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":111,"categories":112,"keywords":114,"publishedAt":22},"01M71TQ29B1EYBCEAP1ZBGXQ1A","zoho-crm-automation","Automate Zoho CRM tasks via Rube MCP (Composio): create\u002Fupdate records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzoho-crm-automation\u002FSKILL.md",[113],{"categoryNo":87,"categoryName":88,"taxonomyType":57,"taxonomyTypeDesc":58},[115,116,92,117,118,119,63,120,121,94,122,95,96,123,97,69,124,125,126,73],"crm automation","zoho crm automation","crm","zoho crm","zoho","leads","manage leads","manage","records","convert","tasks","contacts",{"skillNo":128,"name":129,"nameZh":6,"description":130,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":131,"categories":132,"keywords":134,"publishedAt":22},"01M71TPZPMN60DH0XV58KVHY23","zendesk-automation","Automate Zendesk tasks via Rube MCP (Composio): tickets, users, organizations, replies. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzendesk-automation\u002FSKILL.md",[133],{"categoryNo":87,"categoryName":88,"taxonomyType":57,"taxonomyTypeDesc":58},[135,92,136,63,94,95,96,97,137,69,125,138,139,98,99,140,101,104,106,141],"zendesk automation","zendesk","organizations","replies","users","tickets","automate",{"skillNo":143,"name":144,"nameZh":6,"description":145,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":146,"categories":147,"keywords":148,"publishedAt":22},"01M71TPXDWKHKG4N6TVEPXWD0N","zapier-make-patterns","No-code automation democratizes workflow building. Zapier and Make (formerly Integromat) let non-developers automate business processes without writing code. But no-code doesn't mean no-complexity ...","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzapier-make-patterns\u002FSKILL.md",[],[149,150,151,152,153,154,155,156,157,92,158,69,159,160,161,162,163,141],"zapier make patterns","zapier","patterns","make","No-Code","complexity","writing","spawner","business","workflow","code","integromat","apache","processes","but",{"skillNo":165,"name":166,"nameZh":6,"description":167,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":6,"repositoryNo":11,"starsCount":12,"licenseSpdxId":13,"licenseFileUrl":6,"sourceHtmlUrl":168,"categories":169,"keywords":173,"publishedAt":22},"01M71TPT5T10WXNKW9G7ZXZ27W","youtube-summarizer","Extract transcripts from YouTube videos and generate comprehensive, detailed summaries using intelligent analysis frameworks","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fyoutube-summarizer\u002FSKILL.md",[170],{"categoryNo":171,"categoryName":172,"taxonomyType":57,"taxonomyTypeDesc":58},"01JBSEEDCAT000000000000016","图像与多媒体",[174,175,176,177,63,178,179,180,181,182,183,184,159,185,186,187,188,189,190,191],"summarizer","youtube","youtube summarizer","Video","content-analysis","frameworks","copilot","2025","github-copilot","extract transcripts","analysis","codex","cli","summaries","github","generate","summarization","2026"]