You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: Limit tools to discovery, dynamic Actor management, and help; simplify Actor input schema; return all dataset items at once with only relevant fields in outputs (#158)
* Disable internal tools except actor details, help tool, search actors. Improve help tool, search actors and get actor details output.
* Return only relevant output dataset properies if defined in storage views defiintion, if dump all properties. Fix input schema for Actors without any input schema.
* WIP filter out non integer input props that are not required
* minor tools description and param improvements
* Update tests/integration/suite.ts
Co-authored-by: Michal Kalita <[email protected]>
* split long one liner
---------
Co-authored-by: Michal Kalita <[email protected]>
.describe(`Actor ID or full name in the format "username/name", e.g., "apify/rag-web-browser".`),
15
+
});
16
+
17
+
interfaceIGetActorDetailsToolResult{
18
+
id: string;
19
+
actorFullName: string;
20
+
21
+
isPublic: boolean;
22
+
isDeprecated: boolean;
23
+
createdAt: string;
24
+
modifiedAt: string;
25
+
26
+
categories?: string[];
27
+
description: string;
28
+
readme: string;
29
+
30
+
inputSchema: IActorInputSchema;
31
+
32
+
pricingInfo: string;// We convert the pricing info into a string representation
33
+
34
+
usageStatistics: {
35
+
totalUsers: {
36
+
allTime: number;
37
+
last7Days: number;
38
+
last30Days: number;
39
+
last90Days: number;
40
+
};
41
+
failedRunsInLast30Days: number|string;// string for 'unknown' case
42
+
}
43
+
}
44
+
45
+
exportconstgetActorDetailsTool: ToolEntry={
46
+
type: 'internal',
47
+
tool: {
48
+
name: HelperTools.ACTOR_GET_DETAILS,
49
+
description: `Retrieve information about an Actor by its ID or full name.
50
+
The Actor name is always composed of "username/name", for example, "apify/rag-web-browser".
51
+
This tool returns information about the Actor, including whether it is public or deprecated, when it was created or modified, the categories in which the Actor is listed, a description, a README (the Actor's documentation), the input schema, and usage statistics—such as how many users are using it and the number of failed runs of the Actor.
52
+
For example, use this tool when a user wants to know more about a specific Actor or wants to use optional or advanced parameters of the Actor that are not listed in the default Actor tool input schema - so you know the details and how to pass them.`,
content: [{type: 'text',text: `Actor information for '${parsed.actor}' was not found. Please check the Actor ID or name and ensure the Actor exists.`}],
0 commit comments