2026-08-28 11:51:48 +08:00
|
|
|
// 进程外 Weather 插件。同样只做 stdio 适配,天气实现仍在 MAF1.Core。
|
2026-08-26 18:06:02 +08:00
|
|
|
using MAF1.Agents.Weather;
|
|
|
|
|
using MAF1.PluginContract;
|
|
|
|
|
using MAF1.Tools;
|
|
|
|
|
using MAF1.Utils;
|
|
|
|
|
using Microsoft.Extensions.Configuration;
|
|
|
|
|
|
|
|
|
|
PluginRequest request = await PluginStdio.ReadRequestAsync();
|
|
|
|
|
PluginStdio.ApplyCredentialsToEnvironment(request.Credentials);
|
|
|
|
|
|
|
|
|
|
IConfiguration config = PluginStdio.LoadHostConfiguration();
|
|
|
|
|
AgentFactory factory = new(AgentFactory.Load(config));
|
|
|
|
|
WeatherOptions weatherOptions = config.GetSection("Weather").Get<WeatherOptions>() ?? new WeatherOptions();
|
|
|
|
|
using HttpClient http = WeatherTools.CreateHttpClient();
|
|
|
|
|
var result = await WeatherAgent.RunAsync(
|
|
|
|
|
WeatherAgent.Create(factory, new WeatherTools(weatherOptions, http)),
|
|
|
|
|
request.Inputs);
|
|
|
|
|
await PluginStdio.WriteOutputsAsync(result.Outputs);
|
|
|
|
|
return 0;
|