1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
|
<?php return [
'version' => '1.0',
'info' => ['style' => 'ROA', 'product' => 'AgentExplorer', 'version' => '2026-03-17'],
'directories' => ['GetSkillContent', 'SearchSkills', 'ListCategories'],
'components' => [
'schemas' => [
'Category' => [
'description' => 'Category Details',
'type' => 'object',
'properties' => [
'code' => ['title' => '', 'description' => 'Level 1 Category Code', 'type' => 'string', 'example' => 'compute'],
'name' => ['title' => '', 'description' => 'Level 1 Category Name', 'type' => 'string', 'example' => '计算'],
'children' => [
'title' => '',
'description' => 'Sub-categories',
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
'code' => ['title' => '', 'description' => 'Level 2 Category Code', 'type' => 'string', 'example' => 'ecs'],
'name' => ['title' => '', 'description' => 'Level 2 Category Name', 'type' => 'string', 'example' => '弹性计算'],
],
'description' => '',
'title' => '',
'example' => '',
],
'example' => '',
],
],
'title' => '',
'example' => '',
],
'Skill' => [
'description' => 'The Agent Skill details.',
'type' => 'object',
'properties' => [
'skillName' => ['title' => '', 'description' => 'The English name of the Agent Skill, which serves as a unique identifier.', 'type' => 'string', 'example' => 'deploy-to-vercel'],
'displayName' => ['title' => '', 'description' => 'The display name of the Agent Skill.', 'type' => 'string', 'example' => 'ECS 实例管理'],
'description' => ['title' => '', 'description' => 'The description of the Agent Skill.', 'type' => 'string', 'example' => 'ECS 实例管理'],
'categoryCode' => ['title' => '', 'description' => 'The primary category code.', 'type' => 'string', 'example' => 'compute'],
'categoryName' => ['title' => '', 'description' => 'The primary category name.', 'type' => 'string', 'example' => '计算'],
'subCategoryCode' => ['title' => '', 'description' => 'The secondary category code.', 'type' => 'string', 'example' => 'ecs'],
'subCategoryName' => ['title' => '', 'description' => 'The secondary category name.', 'type' => 'string', 'example' => '弹性计算'],
'likeCount' => ['title' => '', 'description' => 'The number of likes.', 'type' => 'integer', 'format' => 'int32', 'example' => '128'],
'installCount' => ['title' => '', 'description' => 'The number of installations.', 'type' => 'integer', 'format' => 'int32', 'example' => '1024'],
'createdAt' => ['title' => '', 'description' => 'The time when the Agent Skill was created.', 'type' => 'string', 'example' => '2026-01-01T00:00:00Z'],
'updatedAt' => ['title' => '', 'description' => 'The time when the Agent Skill was last updated.', 'type' => 'string', 'example' => '2026-03-17T00:00:00Z'],
'descriptionEn' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'nameEn' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'categoryNameEn' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'subCategoryNameEn' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
'githubPath' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
],
'title' => '',
'example' => '',
],
],
],
'apis' => [
'GetSkillContent' => [
'summary' => 'Get the SKILL.md file content of the specified Agent Skill',
'path' => '/openapi/skills/{skillName}',
'methods' => ['get'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREopenapiexplorerIZJ64T'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'skillName',
'in' => 'path',
'schema' => ['title' => '', 'description' => 'skill name', 'type' => 'string', 'required' => true, 'example' => 'ecs-manager'],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '1764D64D-5262-55DA-BDBF-1F949B1B34F7'],
'content' => ['title' => '', 'description' => 'SKILL.md file content', 'type' => 'string', 'example' => '---'."\n"
.'name: alibabacloud-find-skills'."\n"
.'description: "Search for official Alibaba Cloud Agent Skills based on user requirements"'."\n"
.'---'."\n"
."\n"
.'Agent Skill Body Content Here'],
],
'example' => '',
],
],
],
'errorCodes' => [
404 => [
['errorCode' => 'NotFound.Skill', 'errorMessage' => 'Specified skill not found.', 'description' => 'The specified Skill does not exist.'],
],
500 => [
['errorCode' => 'InternalServerError', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The request failed due to a temporary server failure.'],
['errorCode' => 'OperationFailed', 'errorMessage' => 'Get skill content failed.', 'description' => 'Failed to get Skill content'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"1764D64D-5262-55DA-BDBF-1F949B1B34F7\\",\\n \\"content\\": \\"---\\\\nname: alibabacloud-find-skills\\\\ndescription: \\\\\\"Search for official Alibaba Cloud Agent Skills based on user requirements\\\\\\"\\\\n---\\\\n\\\\nAgent Skill Body Content Here\\"\\n}","type":"json"}]',
'title' => 'Get Agent Skill File Content',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
],
'ListCategories' => [
'summary' => 'List all Alibaba Cloud Skills categories.',
'path' => '/openapi/categories',
'methods' => ['get'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'list',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREopenapiexplorerIZJ64T'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [],
'responses' => [
200 => [
'schema' => [
'title' => 'Schema of Response',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
'requestId' => ['title' => 'Id of the request', 'description' => 'request ID', 'type' => 'string', 'example' => '099A671E-FA21-5A36-8A73-918572DDEF53'],
'message' => ['description' => 'Response message', 'type' => 'string', 'example' => 'success', 'title' => ''],
'data' => [
'description' => 'The returned category list',
'type' => 'array',
'items' => ['description' => 'Details of the returned category', '$ref' => '#/components/schemas/Category', 'title' => '', 'example' => ''],
'title' => '',
'example' => '',
],
],
'example' => '',
],
],
],
'errorCodes' => [
500 => [
['errorCode' => 'InternalServerError', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The request failed due to a temporary server failure.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"099A671E-FA21-5A36-8A73-918572DDEF53\\",\\n \\"message\\": \\"success\\",\\n \\"data\\": [\\n {\\n \\"code\\": \\"compute\\",\\n \\"name\\": \\"计算\\",\\n \\"children\\": [\\n {\\n \\"code\\": \\"ecs\\",\\n \\"name\\": \\"弹性计算\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]',
'title' => 'Obtain information about all Agent Skills categories',
'changeSet' => [],
'translator' => 'machine',
'flowControl' => [
'flowControlList' => [],
],
],
'SearchSkills' => [
'summary' => 'Searches for Alibaba Cloud Agent Skills by keyword or category.',
'path' => '/openapi/skills',
'methods' => ['get'],
'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
'consumes' => ['application/json'],
'produces' => ['application/json'],
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeNodes' => ['FEATUREopenapiexplorerIZJ64T'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'keyword',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The search keyword.', 'type' => 'string', 'required' => false, 'example' => 'ecs'],
],
[
'name' => 'categoryCode',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The skill category code. Separate multiple codes with commas. For a second-level category, use the format: first-level category.second-level category.', 'type' => 'string', 'example' => 'compute.serverless,network', 'required' => false],
],
[
'name' => 'nextToken',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The token for the next query. Set this to the NextToken value returned by the previous API call.', 'type' => 'string', 'example' => 'AAAAAZjtYxxxxxxxx', 'required' => false],
],
[
'name' => 'maxResults',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The maximum number of entries per page for a paged query. Maximum value: 100. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'required' => false],
],
[
'name' => 'skip',
'in' => 'query',
'schema' => ['title' => '', 'description' => 'The number of entries to skip for pagination.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'required' => false],
],
[
'name' => 'searchMode',
'in' => 'query',
'schema' => ['title' => '', 'type' => 'string', 'description' => '', 'example' => ''],
],
],
'responses' => [
200 => [
'schema' => [
'title' => '',
'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
'requestId' => ['title' => '', 'description' => 'Id of the request', 'type' => 'string', 'example' => '53EAEBC0-4DEC-5AF4-AA21-3923D5A819C3'],
'nextToken' => ['title' => '', 'description' => 'The NextToken value, which is used to retrieve more results.', 'type' => 'string', 'example' => 'AAAAAZjtYxxxxxxxx'],
'maxResults' => ['title' => '', 'description' => 'The maximum number of entries per page for a paged query. Maximum value: 100. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'],
'totalCount' => ['title' => '', 'description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '22'],
'data' => [
'description' => 'The list of skills returned.',
'type' => 'array',
'items' => ['description' => 'The details of the skill returned.', '$ref' => '#/components/schemas/Skill', 'title' => '', 'example' => ''],
'title' => '',
'example' => '',
],
],
'example' => '',
],
],
],
'errorCodes' => [
400 => [
['errorCode' => 'InvalidParam.NextToken', 'errorMessage' => 'The specified NextToken is not valid.', 'description' => ''],
['errorCode' => 'NextTokenParameterMismatch', 'errorMessage' => 'The request uses the same nextToken as the previous request, but with different parameters. NextTokens should not be reused across non-identical requests. Each unique request must have a distinct nextToken.', 'description' => ''],
],
500 => [
['errorCode' => 'InternalServerError', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => 'The request failed due to a temporary server failure.'],
],
],
'staticInfo' => ['returnType' => 'synchronous'],
'title' => 'Search Alibaba Cloud agent skills',
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
'responseDemo' => '[{"errorExample":"","example":"{\\n \\"requestId\\": \\"53EAEBC0-4DEC-5AF4-AA21-3923D5A819C3\\",\\n \\"nextToken\\": \\"AAAAAZjtYxxxxxxxx\\",\\n \\"maxResults\\": 20,\\n \\"totalCount\\": 22,\\n \\"data\\": [\\n {\\n \\"skillName\\": \\"deploy-to-vercel\\",\\n \\"displayName\\": \\"ECS 实例管理\\",\\n \\"description\\": \\"ECS 实例管理\\",\\n \\"categoryCode\\": \\"compute\\",\\n \\"categoryName\\": \\"计算\\",\\n \\"subCategoryCode\\": \\"ecs\\",\\n \\"subCategoryName\\": \\"弹性计算\\",\\n \\"likeCount\\": 128,\\n \\"installCount\\": 1024,\\n \\"createdAt\\": \\"2026-01-01T00:00:00Z\\",\\n \\"updatedAt\\": \\"2026-03-17T00:00:00Z\\",\\n \\"descriptionEn\\": \\"\\",\\n \\"nameEn\\": \\"\\",\\n \\"categoryNameEn\\": \\"\\",\\n \\"subCategoryNameEn\\": \\"\\",\\n \\"githubPath\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]',
],
],
'endpoints' => [
['regionId' => 'public', 'regionName' => 'Public network', 'areaId' => 'other', 'areaName' => 'Other', 'public' => 'agentexplorer.aliyuncs.com', 'endpoint' => 'agentexplorer.aliyuncs.com', 'vpc' => ''],
],
'errorCodes' => [
['code' => 'InternalServerError', 'message' => 'The request has failed due to a temporary failure of the server.', 'http_code' => 500, 'description' => 'The request failed due to a temporary server failure.'],
['code' => 'InvalidParam.NextToken', 'message' => 'The specified NextToken is not valid.', 'http_code' => 400, 'description' => ''],
['code' => 'NextTokenParameterMismatch', 'message' => 'The request uses the same nextToken as the previous request, but with different parameters. NextTokens should not be reused across non-identical requests. Each unique request must have a distinct nextToken.', 'http_code' => 400, 'description' => ''],
['code' => 'NotFound.Skill', 'message' => 'Specified skill not found.', 'http_code' => 404, 'description' => 'The specified Skill does not exist.'],
['code' => 'OperationFailed', 'message' => 'Get skill content failed.', 'http_code' => 500, 'description' => 'Failed to get Skill content'],
],
'changeSet' => [],
'flowControl' => [
'flowControlList' => [],
],
];
|