createGetPackageInfoTool function
Tool<Object, ToolOptions, Object>
createGetPackageInfoTool(
)
Implementation
Tool createGetPackageInfoTool() {
return Tool.fromFunction<GetPackageInfoInput, String>(
name: 'get_package_info',
description:
'Fetch comprehensive information about a specific package from pub.flutter-io.cn. '
'Returns: version, description, homepage, repository URL, pub points, popularity score, '
'like count, SDK constraints, dependencies, and dev dependencies. '
'Use this to gather detailed metrics for packages you are considering recommending. '
'Call this for your top 2-3 candidates after searching to make informed comparisons.',
inputJsonSchema: object({
'package': string().min(1).meta(
const MetadataEntry(description: 'Package name to get info for')),
}).toJsonSchema(),
func: (GetPackageInfoInput input) async =>
await _fetchPackageInfo(input.package),
getInputFromJson: (json) => GetPackageInfoInput.fromJson(json),
);
}