[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-azure-foundry-memory":3,"mdc--y8unt4-key":49,"related-repo-azure-foundry-memory":823,"related-org-azure-foundry-memory":935},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":21,"repoUrl":22,"updatedAt":23,"license":24,"forks":25,"topics":26,"repo":44,"sourceUrl":47,"mdContent":48},"foundry-memory","manage persistent memory in Foundry","Persistent long-term memory via Foundry Memory Store APIs. User preferences and chat summaries survive pod restarts — no Foundry hosted agent needed.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"azure","Azure (Microsoft)","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fazure.png","Azure",[13,15,18],{"name":11,"slug":8,"type":14},"tag",{"name":16,"slug":17,"type":14},"Memory","memory",{"name":19,"slug":20,"type":14},"Agents","agents",28,"https:\u002F\u002Fgithub.com\u002FAzure\u002Fkars","2026-07-12T08:18:33.204838",null,2,[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"agent","agentic-framework","agentmesh","ai-agent","ai-agents-automation","ai-sandbox","end-to-end-encryption","hermes","hermes-agent","kubernetes","kubernetes-sandbox","microsoft","openclaw","reference","runtime-security","sandbox","zero-trust",{"repoUrl":22,"stars":21,"forks":25,"topics":45,"description":46},[27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"Agent Reference Stack for Kubernetes (kars) - an open source stack from Microsoft for running AI agents safely on Kubernetes. Multi-runtime, Foundry-aware, hardened per-agent sandboxes, governed egress, end-to-end encrypted inter-agent mesh.","https:\u002F\u002Fgithub.com\u002FAzure\u002Fkars\u002Ftree\u002FHEAD\u002Fruntimes\u002Fopenclaw\u002Fskills\u002Ffoundry-memory","---\nname: foundry-memory\ndescription: Persistent long-term memory via Foundry Memory Store APIs. User preferences and chat summaries survive pod restarts — no Foundry hosted agent needed.\nmetadata: {\"openclaw\": {\"requires\": {\"env\": [\"FOUNDRY_PROJECT_ENDPOINT\"]}, \"primaryEnv\": \"FOUNDRY_PROJECT_ENDPOINT\"}}\n---\n\n# Foundry Memory — Memory Store APIs\n\nYou have access to persistent long-term memory via Azure AI Foundry Memory Store. Memory survives pod restarts, upgrades, and session boundaries. The system uses embedding models for semantic search and chat models to extract\u002Fconsolidate memories automatically.\n\n## Memory Persistence — How It Works\n\nMemories are stored server-side in Foundry's managed Memory Store (not in the pod). They persist across pod restarts, upgrades, and session boundaries.\n\n**Scope** is the key to persistence. Always use `$SANDBOX_NAME` (environment variable) as the scope. This is the agent's stable identity — the CRD name (e.g., `my-agent`) — and never changes even when pods restart.\n\n```bash\n# Read the stable scope from environment\nSCOPE=$(printenv SANDBOX_NAME)\n# Use it in all memory operations\n```\n\nFor per-user memory within an agent, use a composite scope like `${SANDBOX_NAME}-${user_id}`.\n\n## Why use this instead of local files\n\nLocal files in `\u002Fsandbox\u002F` are ephemeral. Foundry Memory Store is managed, uses vector search (text-embedding-3-small), and supports:\n- **User profile memory**: preferences, name, restrictions\n- **Chat summary memory**: distilled summaries of past conversations\n\n## Endpoint\n\nAll requests: `http:\u002F\u002Flocalhost:8443` with `?api-version=2025-11-15-preview`. Auth is automatic.\n\n## Operations\n\n### Create a memory store\n\n```bash\ncurl -s -X POST 'http:\u002F\u002Flocalhost:8443\u002Fmemory_stores?api-version=2025-11-15-preview' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"name\":\"agent-memory\",\"description\":\"Agent persistent memory\",\"definition\":{\"kind\":\"default\",\"chat_model\":\"gpt-4.1\",\"embedding_model\":\"text-embedding-3-small\",\"options\":{\"user_profile_enabled\":true,\"chat_summary_enabled\":true}}}'\n```\n\n### Store memories from conversation\n\n```bash\ncurl -s -X POST 'http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:update_memories?api-version=2025-11-15-preview' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"items\":[{\"role\":\"user\",\"content\":\"I prefer dark roast coffee and code in Rust\",\"type\":\"message\"},{\"role\":\"assistant\",\"content\":\"Noted!\",\"type\":\"message\"}],\"scope\":\"$SANDBOX_NAME\",\"update_delay\":0}'\n```\n\nReturns `{\"update_id\": \"...\", \"status\": \"queued\"}`. The system asynchronously extracts memories using the chat model.\n\n### Search memories (with semantic embedding)\n\n```bash\ncurl -s -X POST 'http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:search_memories?api-version=2025-11-15-preview' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"scope\":\"$SANDBOX_NAME\",\"items\":[{\"role\":\"user\",\"content\":\"What coffee does the user like?\",\"type\":\"message\"}],\"options\":{\"max_memories\":10}}'\n```\n\nReturns `memories[]` array with content, kind (user_profile\u002Fchat_summary), and usage (embedding_tokens).\n\n### List all memories for scope (no embedding)\n\n```bash\ncurl -s -X POST 'http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:search_memories?api-version=2025-11-15-preview' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"scope\":\"$SANDBOX_NAME\",\"options\":{\"max_memories\":50}}'\n```\n\n### Delete memories for a scope\n\n```bash\ncurl -s -X POST 'http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:delete_scope?api-version=2025-11-15-preview' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"scope\":\"$SANDBOX_NAME\"}'\n```\n\n## When to use\n\n- User says \"remember this\", \"save this for later\"\n- Start of session: search memories for the user to personalize\n- After meaningful conversation: store key facts via update_memories\n- User asks \"what do you know about me\"\n\n## When NOT to use\n\n- For searching documents (use foundry-knowledge skill)\n- For temporary scratch data (use local files)\n- For real-time web info (use foundry-web-search skill)\n",{"data":50,"body":56},{"name":4,"description":6,"metadata":51},{"openclaw":52},{"requires":53,"primaryEnv":55},{"env":54},[55],"FOUNDRY_PROJECT_ENDPOINT",{"type":57,"children":58},"root",[59,68,74,81,86,114,178,191,197,210,235,241,262,268,275,372,378,464,477,483,569,581,587,672,678,764,770,793,799,817],{"type":60,"tag":61,"props":62,"children":64},"element","h1",{"id":63},"foundry-memory-memory-store-apis",[65],{"type":66,"value":67},"text","Foundry Memory — Memory Store APIs",{"type":60,"tag":69,"props":70,"children":71},"p",{},[72],{"type":66,"value":73},"You have access to persistent long-term memory via Azure AI Foundry Memory Store. Memory survives pod restarts, upgrades, and session boundaries. The system uses embedding models for semantic search and chat models to extract\u002Fconsolidate memories automatically.",{"type":60,"tag":75,"props":76,"children":78},"h2",{"id":77},"memory-persistence-how-it-works",[79],{"type":66,"value":80},"Memory Persistence — How It Works",{"type":60,"tag":69,"props":82,"children":83},{},[84],{"type":66,"value":85},"Memories are stored server-side in Foundry's managed Memory Store (not in the pod). They persist across pod restarts, upgrades, and session boundaries.",{"type":60,"tag":69,"props":87,"children":88},{},[89,95,97,104,106,112],{"type":60,"tag":90,"props":91,"children":92},"strong",{},[93],{"type":66,"value":94},"Scope",{"type":66,"value":96}," is the key to persistence. Always use ",{"type":60,"tag":98,"props":99,"children":101},"code",{"className":100},[],[102],{"type":66,"value":103},"$SANDBOX_NAME",{"type":66,"value":105}," (environment variable) as the scope. This is the agent's stable identity — the CRD name (e.g., ",{"type":60,"tag":98,"props":107,"children":109},{"className":108},[],[110],{"type":66,"value":111},"my-agent",{"type":66,"value":113},") — and never changes even when pods restart.",{"type":60,"tag":115,"props":116,"children":121},"pre",{"className":117,"code":118,"language":119,"meta":120,"style":120},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Read the stable scope from environment\nSCOPE=$(printenv SANDBOX_NAME)\n# Use it in all memory operations\n","bash","",[122],{"type":60,"tag":98,"props":123,"children":124},{"__ignoreMap":120},[125,137,169],{"type":60,"tag":126,"props":127,"children":130},"span",{"class":128,"line":129},"line",1,[131],{"type":60,"tag":126,"props":132,"children":134},{"style":133},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[135],{"type":66,"value":136},"# Read the stable scope from environment\n",{"type":60,"tag":126,"props":138,"children":139},{"class":128,"line":25},[140,146,152,158,164],{"type":60,"tag":126,"props":141,"children":143},{"style":142},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[144],{"type":66,"value":145},"SCOPE",{"type":60,"tag":126,"props":147,"children":149},{"style":148},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[150],{"type":66,"value":151},"=$(",{"type":60,"tag":126,"props":153,"children":155},{"style":154},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[156],{"type":66,"value":157},"printenv",{"type":60,"tag":126,"props":159,"children":161},{"style":160},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[162],{"type":66,"value":163}," SANDBOX_NAME",{"type":60,"tag":126,"props":165,"children":166},{"style":148},[167],{"type":66,"value":168},")\n",{"type":60,"tag":126,"props":170,"children":172},{"class":128,"line":171},3,[173],{"type":60,"tag":126,"props":174,"children":175},{"style":133},[176],{"type":66,"value":177},"# Use it in all memory operations\n",{"type":60,"tag":69,"props":179,"children":180},{},[181,183,189],{"type":66,"value":182},"For per-user memory within an agent, use a composite scope like ",{"type":60,"tag":98,"props":184,"children":186},{"className":185},[],[187],{"type":66,"value":188},"${SANDBOX_NAME}-${user_id}",{"type":66,"value":190},".",{"type":60,"tag":75,"props":192,"children":194},{"id":193},"why-use-this-instead-of-local-files",[195],{"type":66,"value":196},"Why use this instead of local files",{"type":60,"tag":69,"props":198,"children":199},{},[200,202,208],{"type":66,"value":201},"Local files in ",{"type":60,"tag":98,"props":203,"children":205},{"className":204},[],[206],{"type":66,"value":207},"\u002Fsandbox\u002F",{"type":66,"value":209}," are ephemeral. Foundry Memory Store is managed, uses vector search (text-embedding-3-small), and supports:",{"type":60,"tag":211,"props":212,"children":213},"ul",{},[214,225],{"type":60,"tag":215,"props":216,"children":217},"li",{},[218,223],{"type":60,"tag":90,"props":219,"children":220},{},[221],{"type":66,"value":222},"User profile memory",{"type":66,"value":224},": preferences, name, restrictions",{"type":60,"tag":215,"props":226,"children":227},{},[228,233],{"type":60,"tag":90,"props":229,"children":230},{},[231],{"type":66,"value":232},"Chat summary memory",{"type":66,"value":234},": distilled summaries of past conversations",{"type":60,"tag":75,"props":236,"children":238},{"id":237},"endpoint",[239],{"type":66,"value":240},"Endpoint",{"type":60,"tag":69,"props":242,"children":243},{},[244,246,252,254,260],{"type":66,"value":245},"All requests: ",{"type":60,"tag":98,"props":247,"children":249},{"className":248},[],[250],{"type":66,"value":251},"http:\u002F\u002Flocalhost:8443",{"type":66,"value":253}," with ",{"type":60,"tag":98,"props":255,"children":257},{"className":256},[],[258],{"type":66,"value":259},"?api-version=2025-11-15-preview",{"type":66,"value":261},". Auth is automatic.",{"type":60,"tag":75,"props":263,"children":265},{"id":264},"operations",[266],{"type":66,"value":267},"Operations",{"type":60,"tag":269,"props":270,"children":272},"h3",{"id":271},"create-a-memory-store",[273],{"type":66,"value":274},"Create a memory store",{"type":60,"tag":115,"props":276,"children":278},{"className":117,"code":277,"language":119,"meta":120,"style":120},"curl -s -X POST 'http:\u002F\u002Flocalhost:8443\u002Fmemory_stores?api-version=2025-11-15-preview' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"name\":\"agent-memory\",\"description\":\"Agent persistent memory\",\"definition\":{\"kind\":\"default\",\"chat_model\":\"gpt-4.1\",\"embedding_model\":\"text-embedding-3-small\",\"options\":{\"user_profile_enabled\":true,\"chat_summary_enabled\":true}}}'\n",[279],{"type":60,"tag":98,"props":280,"children":281},{"__ignoreMap":120},[282,325,350],{"type":60,"tag":126,"props":283,"children":284},{"class":128,"line":129},[285,290,295,300,305,310,315,320],{"type":60,"tag":126,"props":286,"children":287},{"style":154},[288],{"type":66,"value":289},"curl",{"type":60,"tag":126,"props":291,"children":292},{"style":160},[293],{"type":66,"value":294}," -s",{"type":60,"tag":126,"props":296,"children":297},{"style":160},[298],{"type":66,"value":299}," -X",{"type":60,"tag":126,"props":301,"children":302},{"style":160},[303],{"type":66,"value":304}," POST",{"type":60,"tag":126,"props":306,"children":307},{"style":148},[308],{"type":66,"value":309}," '",{"type":60,"tag":126,"props":311,"children":312},{"style":160},[313],{"type":66,"value":314},"http:\u002F\u002Flocalhost:8443\u002Fmemory_stores?api-version=2025-11-15-preview",{"type":60,"tag":126,"props":316,"children":317},{"style":148},[318],{"type":66,"value":319},"'",{"type":60,"tag":126,"props":321,"children":322},{"style":142},[323],{"type":66,"value":324}," \\\n",{"type":60,"tag":126,"props":326,"children":327},{"class":128,"line":25},[328,333,337,342,346],{"type":60,"tag":126,"props":329,"children":330},{"style":160},[331],{"type":66,"value":332},"  -H",{"type":60,"tag":126,"props":334,"children":335},{"style":148},[336],{"type":66,"value":309},{"type":60,"tag":126,"props":338,"children":339},{"style":160},[340],{"type":66,"value":341},"Content-Type: application\u002Fjson",{"type":60,"tag":126,"props":343,"children":344},{"style":148},[345],{"type":66,"value":319},{"type":60,"tag":126,"props":347,"children":348},{"style":142},[349],{"type":66,"value":324},{"type":60,"tag":126,"props":351,"children":352},{"class":128,"line":171},[353,358,362,367],{"type":60,"tag":126,"props":354,"children":355},{"style":160},[356],{"type":66,"value":357},"  -d",{"type":60,"tag":126,"props":359,"children":360},{"style":148},[361],{"type":66,"value":309},{"type":60,"tag":126,"props":363,"children":364},{"style":160},[365],{"type":66,"value":366},"{\"name\":\"agent-memory\",\"description\":\"Agent persistent memory\",\"definition\":{\"kind\":\"default\",\"chat_model\":\"gpt-4.1\",\"embedding_model\":\"text-embedding-3-small\",\"options\":{\"user_profile_enabled\":true,\"chat_summary_enabled\":true}}}",{"type":60,"tag":126,"props":368,"children":369},{"style":148},[370],{"type":66,"value":371},"'\n",{"type":60,"tag":269,"props":373,"children":375},{"id":374},"store-memories-from-conversation",[376],{"type":66,"value":377},"Store memories from conversation",{"type":60,"tag":115,"props":379,"children":381},{"className":117,"code":380,"language":119,"meta":120,"style":120},"curl -s -X POST 'http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:update_memories?api-version=2025-11-15-preview' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"items\":[{\"role\":\"user\",\"content\":\"I prefer dark roast coffee and code in Rust\",\"type\":\"message\"},{\"role\":\"assistant\",\"content\":\"Noted!\",\"type\":\"message\"}],\"scope\":\"$SANDBOX_NAME\",\"update_delay\":0}'\n",[382],{"type":60,"tag":98,"props":383,"children":384},{"__ignoreMap":120},[385,421,444],{"type":60,"tag":126,"props":386,"children":387},{"class":128,"line":129},[388,392,396,400,404,408,413,417],{"type":60,"tag":126,"props":389,"children":390},{"style":154},[391],{"type":66,"value":289},{"type":60,"tag":126,"props":393,"children":394},{"style":160},[395],{"type":66,"value":294},{"type":60,"tag":126,"props":397,"children":398},{"style":160},[399],{"type":66,"value":299},{"type":60,"tag":126,"props":401,"children":402},{"style":160},[403],{"type":66,"value":304},{"type":60,"tag":126,"props":405,"children":406},{"style":148},[407],{"type":66,"value":309},{"type":60,"tag":126,"props":409,"children":410},{"style":160},[411],{"type":66,"value":412},"http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:update_memories?api-version=2025-11-15-preview",{"type":60,"tag":126,"props":414,"children":415},{"style":148},[416],{"type":66,"value":319},{"type":60,"tag":126,"props":418,"children":419},{"style":142},[420],{"type":66,"value":324},{"type":60,"tag":126,"props":422,"children":423},{"class":128,"line":25},[424,428,432,436,440],{"type":60,"tag":126,"props":425,"children":426},{"style":160},[427],{"type":66,"value":332},{"type":60,"tag":126,"props":429,"children":430},{"style":148},[431],{"type":66,"value":309},{"type":60,"tag":126,"props":433,"children":434},{"style":160},[435],{"type":66,"value":341},{"type":60,"tag":126,"props":437,"children":438},{"style":148},[439],{"type":66,"value":319},{"type":60,"tag":126,"props":441,"children":442},{"style":142},[443],{"type":66,"value":324},{"type":60,"tag":126,"props":445,"children":446},{"class":128,"line":171},[447,451,455,460],{"type":60,"tag":126,"props":448,"children":449},{"style":160},[450],{"type":66,"value":357},{"type":60,"tag":126,"props":452,"children":453},{"style":148},[454],{"type":66,"value":309},{"type":60,"tag":126,"props":456,"children":457},{"style":160},[458],{"type":66,"value":459},"{\"items\":[{\"role\":\"user\",\"content\":\"I prefer dark roast coffee and code in Rust\",\"type\":\"message\"},{\"role\":\"assistant\",\"content\":\"Noted!\",\"type\":\"message\"}],\"scope\":\"$SANDBOX_NAME\",\"update_delay\":0}",{"type":60,"tag":126,"props":461,"children":462},{"style":148},[463],{"type":66,"value":371},{"type":60,"tag":69,"props":465,"children":466},{},[467,469,475],{"type":66,"value":468},"Returns ",{"type":60,"tag":98,"props":470,"children":472},{"className":471},[],[473],{"type":66,"value":474},"{\"update_id\": \"...\", \"status\": \"queued\"}",{"type":66,"value":476},". The system asynchronously extracts memories using the chat model.",{"type":60,"tag":269,"props":478,"children":480},{"id":479},"search-memories-with-semantic-embedding",[481],{"type":66,"value":482},"Search memories (with semantic embedding)",{"type":60,"tag":115,"props":484,"children":486},{"className":117,"code":485,"language":119,"meta":120,"style":120},"curl -s -X POST 'http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:search_memories?api-version=2025-11-15-preview' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"scope\":\"$SANDBOX_NAME\",\"items\":[{\"role\":\"user\",\"content\":\"What coffee does the user like?\",\"type\":\"message\"}],\"options\":{\"max_memories\":10}}'\n",[487],{"type":60,"tag":98,"props":488,"children":489},{"__ignoreMap":120},[490,526,549],{"type":60,"tag":126,"props":491,"children":492},{"class":128,"line":129},[493,497,501,505,509,513,518,522],{"type":60,"tag":126,"props":494,"children":495},{"style":154},[496],{"type":66,"value":289},{"type":60,"tag":126,"props":498,"children":499},{"style":160},[500],{"type":66,"value":294},{"type":60,"tag":126,"props":502,"children":503},{"style":160},[504],{"type":66,"value":299},{"type":60,"tag":126,"props":506,"children":507},{"style":160},[508],{"type":66,"value":304},{"type":60,"tag":126,"props":510,"children":511},{"style":148},[512],{"type":66,"value":309},{"type":60,"tag":126,"props":514,"children":515},{"style":160},[516],{"type":66,"value":517},"http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:search_memories?api-version=2025-11-15-preview",{"type":60,"tag":126,"props":519,"children":520},{"style":148},[521],{"type":66,"value":319},{"type":60,"tag":126,"props":523,"children":524},{"style":142},[525],{"type":66,"value":324},{"type":60,"tag":126,"props":527,"children":528},{"class":128,"line":25},[529,533,537,541,545],{"type":60,"tag":126,"props":530,"children":531},{"style":160},[532],{"type":66,"value":332},{"type":60,"tag":126,"props":534,"children":535},{"style":148},[536],{"type":66,"value":309},{"type":60,"tag":126,"props":538,"children":539},{"style":160},[540],{"type":66,"value":341},{"type":60,"tag":126,"props":542,"children":543},{"style":148},[544],{"type":66,"value":319},{"type":60,"tag":126,"props":546,"children":547},{"style":142},[548],{"type":66,"value":324},{"type":60,"tag":126,"props":550,"children":551},{"class":128,"line":171},[552,556,560,565],{"type":60,"tag":126,"props":553,"children":554},{"style":160},[555],{"type":66,"value":357},{"type":60,"tag":126,"props":557,"children":558},{"style":148},[559],{"type":66,"value":309},{"type":60,"tag":126,"props":561,"children":562},{"style":160},[563],{"type":66,"value":564},"{\"scope\":\"$SANDBOX_NAME\",\"items\":[{\"role\":\"user\",\"content\":\"What coffee does the user like?\",\"type\":\"message\"}],\"options\":{\"max_memories\":10}}",{"type":60,"tag":126,"props":566,"children":567},{"style":148},[568],{"type":66,"value":371},{"type":60,"tag":69,"props":570,"children":571},{},[572,573,579],{"type":66,"value":468},{"type":60,"tag":98,"props":574,"children":576},{"className":575},[],[577],{"type":66,"value":578},"memories[]",{"type":66,"value":580}," array with content, kind (user_profile\u002Fchat_summary), and usage (embedding_tokens).",{"type":60,"tag":269,"props":582,"children":584},{"id":583},"list-all-memories-for-scope-no-embedding",[585],{"type":66,"value":586},"List all memories for scope (no embedding)",{"type":60,"tag":115,"props":588,"children":590},{"className":117,"code":589,"language":119,"meta":120,"style":120},"curl -s -X POST 'http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:search_memories?api-version=2025-11-15-preview' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"scope\":\"$SANDBOX_NAME\",\"options\":{\"max_memories\":50}}'\n",[591],{"type":60,"tag":98,"props":592,"children":593},{"__ignoreMap":120},[594,629,652],{"type":60,"tag":126,"props":595,"children":596},{"class":128,"line":129},[597,601,605,609,613,617,621,625],{"type":60,"tag":126,"props":598,"children":599},{"style":154},[600],{"type":66,"value":289},{"type":60,"tag":126,"props":602,"children":603},{"style":160},[604],{"type":66,"value":294},{"type":60,"tag":126,"props":606,"children":607},{"style":160},[608],{"type":66,"value":299},{"type":60,"tag":126,"props":610,"children":611},{"style":160},[612],{"type":66,"value":304},{"type":60,"tag":126,"props":614,"children":615},{"style":148},[616],{"type":66,"value":309},{"type":60,"tag":126,"props":618,"children":619},{"style":160},[620],{"type":66,"value":517},{"type":60,"tag":126,"props":622,"children":623},{"style":148},[624],{"type":66,"value":319},{"type":60,"tag":126,"props":626,"children":627},{"style":142},[628],{"type":66,"value":324},{"type":60,"tag":126,"props":630,"children":631},{"class":128,"line":25},[632,636,640,644,648],{"type":60,"tag":126,"props":633,"children":634},{"style":160},[635],{"type":66,"value":332},{"type":60,"tag":126,"props":637,"children":638},{"style":148},[639],{"type":66,"value":309},{"type":60,"tag":126,"props":641,"children":642},{"style":160},[643],{"type":66,"value":341},{"type":60,"tag":126,"props":645,"children":646},{"style":148},[647],{"type":66,"value":319},{"type":60,"tag":126,"props":649,"children":650},{"style":142},[651],{"type":66,"value":324},{"type":60,"tag":126,"props":653,"children":654},{"class":128,"line":171},[655,659,663,668],{"type":60,"tag":126,"props":656,"children":657},{"style":160},[658],{"type":66,"value":357},{"type":60,"tag":126,"props":660,"children":661},{"style":148},[662],{"type":66,"value":309},{"type":60,"tag":126,"props":664,"children":665},{"style":160},[666],{"type":66,"value":667},"{\"scope\":\"$SANDBOX_NAME\",\"options\":{\"max_memories\":50}}",{"type":60,"tag":126,"props":669,"children":670},{"style":148},[671],{"type":66,"value":371},{"type":60,"tag":269,"props":673,"children":675},{"id":674},"delete-memories-for-a-scope",[676],{"type":66,"value":677},"Delete memories for a scope",{"type":60,"tag":115,"props":679,"children":681},{"className":117,"code":680,"language":119,"meta":120,"style":120},"curl -s -X POST 'http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:delete_scope?api-version=2025-11-15-preview' \\\n  -H 'Content-Type: application\u002Fjson' \\\n  -d '{\"scope\":\"$SANDBOX_NAME\"}'\n",[682],{"type":60,"tag":98,"props":683,"children":684},{"__ignoreMap":120},[685,721,744],{"type":60,"tag":126,"props":686,"children":687},{"class":128,"line":129},[688,692,696,700,704,708,713,717],{"type":60,"tag":126,"props":689,"children":690},{"style":154},[691],{"type":66,"value":289},{"type":60,"tag":126,"props":693,"children":694},{"style":160},[695],{"type":66,"value":294},{"type":60,"tag":126,"props":697,"children":698},{"style":160},[699],{"type":66,"value":299},{"type":60,"tag":126,"props":701,"children":702},{"style":160},[703],{"type":66,"value":304},{"type":60,"tag":126,"props":705,"children":706},{"style":148},[707],{"type":66,"value":309},{"type":60,"tag":126,"props":709,"children":710},{"style":160},[711],{"type":66,"value":712},"http:\u002F\u002Flocalhost:8443\u002Fmemory_stores\u002Fagent-memory:delete_scope?api-version=2025-11-15-preview",{"type":60,"tag":126,"props":714,"children":715},{"style":148},[716],{"type":66,"value":319},{"type":60,"tag":126,"props":718,"children":719},{"style":142},[720],{"type":66,"value":324},{"type":60,"tag":126,"props":722,"children":723},{"class":128,"line":25},[724,728,732,736,740],{"type":60,"tag":126,"props":725,"children":726},{"style":160},[727],{"type":66,"value":332},{"type":60,"tag":126,"props":729,"children":730},{"style":148},[731],{"type":66,"value":309},{"type":60,"tag":126,"props":733,"children":734},{"style":160},[735],{"type":66,"value":341},{"type":60,"tag":126,"props":737,"children":738},{"style":148},[739],{"type":66,"value":319},{"type":60,"tag":126,"props":741,"children":742},{"style":142},[743],{"type":66,"value":324},{"type":60,"tag":126,"props":745,"children":746},{"class":128,"line":171},[747,751,755,760],{"type":60,"tag":126,"props":748,"children":749},{"style":160},[750],{"type":66,"value":357},{"type":60,"tag":126,"props":752,"children":753},{"style":148},[754],{"type":66,"value":309},{"type":60,"tag":126,"props":756,"children":757},{"style":160},[758],{"type":66,"value":759},"{\"scope\":\"$SANDBOX_NAME\"}",{"type":60,"tag":126,"props":761,"children":762},{"style":148},[763],{"type":66,"value":371},{"type":60,"tag":75,"props":765,"children":767},{"id":766},"when-to-use",[768],{"type":66,"value":769},"When to use",{"type":60,"tag":211,"props":771,"children":772},{},[773,778,783,788],{"type":60,"tag":215,"props":774,"children":775},{},[776],{"type":66,"value":777},"User says \"remember this\", \"save this for later\"",{"type":60,"tag":215,"props":779,"children":780},{},[781],{"type":66,"value":782},"Start of session: search memories for the user to personalize",{"type":60,"tag":215,"props":784,"children":785},{},[786],{"type":66,"value":787},"After meaningful conversation: store key facts via update_memories",{"type":60,"tag":215,"props":789,"children":790},{},[791],{"type":66,"value":792},"User asks \"what do you know about me\"",{"type":60,"tag":75,"props":794,"children":796},{"id":795},"when-not-to-use",[797],{"type":66,"value":798},"When NOT to use",{"type":60,"tag":211,"props":800,"children":801},{},[802,807,812],{"type":60,"tag":215,"props":803,"children":804},{},[805],{"type":66,"value":806},"For searching documents (use foundry-knowledge skill)",{"type":60,"tag":215,"props":808,"children":809},{},[810],{"type":66,"value":811},"For temporary scratch data (use local files)",{"type":60,"tag":215,"props":813,"children":814},{},[815],{"type":66,"value":816},"For real-time web info (use foundry-web-search skill)",{"type":60,"tag":818,"props":819,"children":820},"style",{},[821],{"type":66,"value":822},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":824,"total":934},[825,843,855,878,888,902,917],{"slug":826,"name":826,"fn":827,"description":828,"org":829,"tags":830,"stars":21,"repoUrl":22,"updatedAt":842},"agt-governance","enforce behavioral governance for agents","Behavioral governance for OpenClaw agents via AGT — tool-level policy, inter-agent trust, audit logging.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[831,832,835,836,839],{"name":19,"slug":20,"type":14},{"name":833,"slug":834,"type":14},"Audit","audit",{"name":11,"slug":8,"type":14},{"name":837,"slug":838,"type":14},"Governance","governance",{"name":840,"slug":841,"type":14},"Policy","policy","2026-07-12T08:18:34.446985",{"slug":844,"name":844,"fn":845,"description":846,"org":847,"tags":848,"stars":21,"repoUrl":22,"updatedAt":854},"foundry-agents","inspect and invoke Foundry prompt agents","Query and inspect Foundry prompt agents and invoke Foundry tools via the Responses API. OpenClaw is the orchestrator — Foundry provides managed AI services.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[849,850,853],{"name":19,"slug":20,"type":14},{"name":851,"slug":852,"type":14},"API Development","api-development",{"name":11,"slug":8,"type":14},"2026-07-12T08:18:31.798351",{"slug":856,"name":856,"fn":857,"description":858,"org":859,"tags":860,"stars":21,"repoUrl":22,"updatedAt":877},"foundry-code","execute Python code in Azure Foundry","Python code execution via Azure AI Foundry Responses API with code_interpreter tool. Data analysis, charts, and math in a managed sandbox.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[861,862,865,868,871,874],{"name":11,"slug":8,"type":14},{"name":863,"slug":864,"type":14},"Charts","charts",{"name":866,"slug":867,"type":14},"Data Analysis","data-analysis",{"name":869,"slug":870,"type":14},"Data Visualization","data-visualization",{"name":872,"slug":873,"type":14},"Mathematics","mathematics",{"name":875,"slug":876,"type":14},"Python","python","2026-07-12T08:18:30.4206",{"slug":879,"name":879,"fn":880,"description":881,"org":882,"tags":883,"stars":21,"repoUrl":22,"updatedAt":887},"foundry-conversations","manage persistent conversations via Foundry","Manage persistent conversations via Foundry Conversations API. Create conversations, add messages, and maintain history across sessions.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[884,885,886],{"name":19,"slug":20,"type":14},{"name":11,"slug":8,"type":14},{"name":16,"slug":17,"type":14},"2026-07-12T08:18:38.407887",{"slug":889,"name":889,"fn":890,"description":891,"org":892,"tags":893,"stars":21,"repoUrl":22,"updatedAt":901},"foundry-deployments","query Foundry model deployments and infrastructure","Query model deployments, connections, and indexes in the Foundry project. Discover available models and infrastructure.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[894,895,898],{"name":11,"slug":8,"type":14},{"name":896,"slug":897,"type":14},"Infrastructure","infrastructure",{"name":899,"slug":900,"type":14},"LLM","llm","2026-07-12T08:18:39.662409",{"slug":903,"name":903,"fn":904,"description":905,"org":906,"tags":907,"stars":21,"repoUrl":22,"updatedAt":916},"foundry-evaluations","evaluate agent quality with Foundry Evals","Evaluate agent quality using Foundry OpenAI Evals API. Create evaluations, run them against models, and analyze results.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[908,909,912,913],{"name":11,"slug":8,"type":14},{"name":910,"slug":911,"type":14},"Evals","evals",{"name":899,"slug":900,"type":14},{"name":914,"slug":915,"type":14},"OpenAI","openai","2026-07-12T08:18:40.889909",{"slug":918,"name":918,"fn":919,"description":920,"org":921,"tags":922,"stars":21,"repoUrl":22,"updatedAt":933},"foundry-knowledge","retrieve knowledge via Foundry RAG","Knowledge retrieval (RAG) via Foundry file_search and azure_ai_search tools. Agentic retrieval with citations — uses Responses API.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[923,924,927,930],{"name":11,"slug":8,"type":14},{"name":925,"slug":926,"type":14},"Knowledge Management","knowledge-management",{"name":928,"slug":929,"type":14},"Research","research",{"name":931,"slug":932,"type":14},"Search","search","2026-07-12T08:18:35.894301",11,{"items":936,"total":1107},[937,952,971,988,1003,1018,1031,1046,1057,1069,1082,1095],{"slug":938,"name":938,"fn":939,"description":940,"org":941,"tags":942,"stars":949,"repoUrl":950,"updatedAt":951},"azure-arg-external-evaluation-policy-author","author and test Azure Resource Graph policies","Use when the user wants to author, design, or test an Azure Policy that queries Azure Resource Graph (ARG) at request-time — i.e. a policy whose deny\u002Faudit decision depends on data from elsewhere in the subscription (sibling\u002Fparent resource state, RG-wide invariants, multi-hop relationships, etc.). Formally called Azure Policy External Evaluation; sometimes referred to colloquially as \"Invoke\". Drives an iterative KQL co-design loop against the user's real subscription via `az graph query`, then emits a policy definition, assignment, `.http` test flow, and an `EXPLANATION.md` companion. Read-only; never provisions anything.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[943,944,947,948],{"name":11,"slug":8,"type":14},{"name":945,"slug":946,"type":14},"Compliance","compliance",{"name":837,"slug":838,"type":14},{"name":840,"slug":841,"type":14},1686,"https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-policy","2026-07-12T08:17:48.378432",{"slug":953,"name":953,"fn":954,"description":955,"org":956,"tags":957,"stars":968,"repoUrl":969,"updatedAt":970},"azure-blueprints-migration","migrate Azure Blueprints to Template Specs","Use when a user needs to migrate off Azure Blueprints (definitions and\u002For assignments) to Template Specs and Deployment Stacks before the January 31, 2027 retirement. Covers inventory, export, conversion to Bicep, policy decoupling, Template Spec publishing, Deployment Stack deployment with deny-settings, validation, and cutover.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[958,959,962,965],{"name":11,"slug":8,"type":14},{"name":960,"slug":961,"type":14},"Deployment","deployment",{"name":963,"slug":964,"type":14},"Infrastructure as Code","infrastructure-as-code",{"name":966,"slug":967,"type":14},"Migration","migration",260,"https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-blueprints","2026-07-12T08:17:49.646405",{"slug":972,"name":972,"fn":973,"description":974,"org":975,"tags":976,"stars":985,"repoUrl":986,"updatedAt":987},"apiview-feedback-resolution","resolve APIView feedback on Azure SDKs","Analyze and resolve APIView review feedback on Azure SDK PRs. **UTILITY SKILL**. USE FOR: APIView comments, API review feedback, SDK API surface changes. DO NOT USE FOR: general code review, non-APIView feedback. INVOKES: azure-sdk-mcp:azsdk_apiview_get_comments, azure-sdk-mcp:azsdk_typespec_customized_code_update.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[977,978,979,982],{"name":851,"slug":852,"type":14},{"name":11,"slug":8,"type":14},{"name":980,"slug":981,"type":14},"Code Review","code-review",{"name":983,"slug":984,"type":14},"Documentation","documentation",133,"https:\u002F\u002Fgithub.com\u002FAzure\u002Fazure-sdk-tools","2026-07-12T08:17:43.350876",{"slug":989,"name":989,"fn":990,"description":991,"org":992,"tags":993,"stars":985,"repoUrl":986,"updatedAt":1002},"azsdk-common-live-and-recorded-tests","deploy resources and run Azure SDK tests","Deploy test resources and run Azure SDK tests in live, record, or playback mode. WHEN: \"run live tests\", \"run recorded tests\", \"deploy test resources\", \"record tests\", \"run tests in record mode\", \"clean up test resources\", \"run tests against live resources\". DO NOT USE FOR: writing new tests, authoring Bicep templates, playback-only test runs without resource deployment. INVOKES: azure-sdk-mcp:azsdk_package_run_tests.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[994,995,996,999],{"name":11,"slug":8,"type":14},{"name":960,"slug":961,"type":14},{"name":997,"slug":998,"type":14},"SDK","sdk",{"name":1000,"slug":1001,"type":14},"Testing","testing","2026-07-12T08:17:44.718943",{"slug":1004,"name":1004,"fn":1005,"description":1006,"org":1007,"tags":1008,"stars":985,"repoUrl":986,"updatedAt":1017},"azsdk-common-prepare-release-plan","manage Azure SDK release plan work items","Create, get, update, abandon, and link SDK PRs to release plan work items for Azure SDK releases. **UTILITY SKILL**. USE FOR: \"create release plan\", \"get release plan\", \"update release plan\", \"update API spec in release plan\", \"update SDK details in release plan\", \"abandon release plan\", \"link SDK PR to plan\", \"namespace approval\", \"check release plan status\". DO NOT USE FOR: SDK code generation, pipeline troubleshooting, API review feedback. INVOKES: azure-sdk-mcp:azsdk_create_release_plan, azure-sdk-mcp:azsdk_get_release_plan, azure-sdk-mcp:azsdk_get_release_plan_for_spec_pr, azure-sdk-mcp:azsdk_update_release_plan, azure-sdk-mcp:azsdk_update_api_spec_pull_request_in_release_plan, azure-sdk-mcp:azsdk_update_sdk_details_in_release_plan, azure-sdk-mcp:azsdk_abandon_release_plan, azure-sdk-mcp:azsdk_link_sdk_pull_request_to_release_plan, azure-sdk-mcp:azsdk_link_namespace_approval_issue.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1009,1010,1013,1016],{"name":11,"slug":8,"type":14},{"name":1011,"slug":1012,"type":14},"GitHub","github",{"name":1014,"slug":1015,"type":14},"Project Management","project-management",{"name":997,"slug":998,"type":14},"2026-07-12T08:17:38.345387",{"slug":1019,"name":1019,"fn":1020,"description":1021,"org":1022,"tags":1023,"stars":985,"repoUrl":986,"updatedAt":1030},"azsdk-common-sdk-release","release Azure SDK packages","Check release readiness and trigger the release pipeline for Azure SDK packages. **UTILITY SKILL**. USE FOR: \"release SDK\", \"trigger release\", \"check release readiness\", \"release pipeline\", \"publish package\", \"ship SDK\". DO NOT USE FOR: SDK development, code generation, pipeline debugging, release plan creation. INVOKES: azure-sdk-mcp:azsdk_release_sdk.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1024,1025,1028,1029],{"name":11,"slug":8,"type":14},{"name":1026,"slug":1027,"type":14},"CI\u002FCD","ci-cd",{"name":960,"slug":961,"type":14},{"name":997,"slug":998,"type":14},"2026-07-12T08:17:34.27607",{"slug":1032,"name":1032,"fn":1033,"description":1034,"org":1035,"tags":1036,"stars":985,"repoUrl":986,"updatedAt":1045},"azure-typespec-author","author and modify Azure TypeSpec API specifications","Authors and modifies Azure TypeSpec (.tsp) API specifications. USE FOR: any TypeSpec\u002Ftsp change — api versions (add, bump, preview, stable, promote), resources, operations, models, properties, decorators, visibility, constraints, breaking changes, LRO, suppressions, operationId, spread model. Covers ARM resource-manager and data-plane services. DO NOT USE FOR: SDK generation, releasing SDK packages, or single MCP tool calls. INVOKES: azure-sdk-mcp:azsdk_typespec_generate_authoring_plan, azure-sdk-mcp:azsdk_run_typespec_validation.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1037,1038,1039,1042],{"name":851,"slug":852,"type":14},{"name":11,"slug":8,"type":14},{"name":1040,"slug":1041,"type":14},"OpenAPI","openapi",{"name":1043,"slug":1044,"type":14},"Technical Writing","technical-writing","2026-07-12T08:17:39.603232",{"slug":1047,"name":1047,"fn":1048,"description":1049,"org":1050,"tags":1051,"stars":985,"repoUrl":986,"updatedAt":1056},"generate-sdk-locally","generate and test Azure SDKs locally","Generate, build, and test Azure SDKs locally from TypeSpec with automatic customization. WHEN: \"generate SDK locally\", \"build SDK\", \"run SDK tests\", \"run CI checks\", \"validate package\", \"run checks\", \"update changelog\", \"fix SDK build errors\", \"fix breaking changes\", \"resolve SDK generation errors\", \"customize TypeSpec\", \"rename SDK client\", \"rename SDK model\", \"hide operation from SDK\", \"fix analyzer errors\", \"resolve customization drift\", \"create subclient\", \"update metadata\", \"update version\". DO NOT USE FOR: publishing to package registries, CI pipeline configuration, API design review. INVOKES: azsdk_verify_setup, azsdk_package_generate_code, azsdk_package_build_code, azsdk_package_run_check, azsdk_package_run_tests, azsdk_customized_code_update, azsdk_package_update_changelog_content, azsdk_package_update_metadata, azsdk_package_update_version.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1052,1053,1054,1055],{"name":11,"slug":8,"type":14},{"name":1026,"slug":1027,"type":14},{"name":997,"slug":998,"type":14},{"name":1000,"slug":1001,"type":14},"2026-07-12T08:17:37.08523",{"slug":1058,"name":1058,"fn":1059,"description":1060,"org":1061,"tags":1062,"stars":985,"repoUrl":986,"updatedAt":1068},"markdown-token-optimizer","optimize markdown files for token efficiency","Analyze markdown files for token efficiency and reduce context-window bloat. **UTILITY SKILL**. DO NOT USE FOR: code optimization, general file editing, non-markdown files. TRIGGERS: optimize markdown, reduce tokens, token count, token bloat, too many tokens, make concise, shrink file, file too large, optimize for AI, token efficiency, verbose markdown, reduce file size. INVOKES: waza CLI.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1063,1064,1067],{"name":899,"slug":900,"type":14},{"name":1065,"slug":1066,"type":14},"Performance","performance",{"name":1043,"slug":1044,"type":14},"2026-07-12T08:17:42.080413",{"slug":1070,"name":1070,"fn":1071,"description":1072,"org":1073,"tags":1074,"stars":985,"repoUrl":986,"updatedAt":1081},"pipeline-troubleshooting","troubleshoot Azure SDK CI pipelines","Diagnose and resolve failures in Azure SDK CI and generation pipelines. **UTILITY SKILL**. USE FOR: \"pipeline failed\", \"build failure\", \"CI check failing\", \"SDK generation error\", \"reproduce pipeline locally\", \"debug SDK pipeline\". DO NOT USE FOR: local build issues without pipeline context, API design review, SDK publishing. INVOKES: azure-sdk-mcp:azsdk_analyze_pipeline, azure-sdk-mcp:azsdk_package_build_code, azure-sdk-mcp:azsdk_package_run_check.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1075,1076,1077,1080],{"name":11,"slug":8,"type":14},{"name":1026,"slug":1027,"type":14},{"name":1078,"slug":1079,"type":14},"Debugging","debugging",{"name":997,"slug":998,"type":14},"2026-07-12T08:17:40.821512",{"slug":1083,"name":1083,"fn":1084,"description":1085,"org":1086,"tags":1087,"stars":985,"repoUrl":986,"updatedAt":1094},"sensei","improve skill frontmatter compliance","**WORKFLOW SKILL** — Iteratively improve skill frontmatter compliance using the Ralph loop pattern. WHEN: \"run sensei\", \"sensei help\", \"improve skill\", \"fix frontmatter\", \"skill compliance\", \"frontmatter audit\", \"score skill\", \"check skill tokens\". INVOKES: token counting tools, test runners, git commands. FOR SINGLE OPERATIONS: use token CLI directly for counts\u002Fchecks.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1088,1089,1090,1093],{"name":11,"slug":8,"type":14},{"name":945,"slug":946,"type":14},{"name":1091,"slug":1092,"type":14},"Process Optimization","process-optimization",{"name":1043,"slug":1044,"type":14},"2026-07-12T08:17:32.970921",{"slug":1096,"name":1096,"fn":1097,"description":1098,"org":1099,"tags":1100,"stars":985,"repoUrl":986,"updatedAt":1106},"skill-authoring","author agent skills for agentskills.io","Write Agent Skills that comply with the agentskills.io specification. WHEN: \"create a skill\", \"new skill\", \"write a skill\", \"skill template\", \"skill structure\", \"review skill\", \"skill PR\", \"skill compliance\", \"SKILL.md format\", \"skill frontmatter\", \"skill best practices\". DO NOT USE FOR: improving existing skills (use sensei), general documentation. INVOKES: waza CLI.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[1101,1102,1105],{"name":983,"slug":984,"type":14},{"name":1103,"slug":1104,"type":14},"Plugin Development","plugin-development",{"name":1043,"slug":1044,"type":14},"2026-07-12T08:17:35.873862",109]