1 line
280 KiB
JSON
1 line
280 KiB
JSON
{"repo": "andu-bit/ghostclaw", "files": {"pkg/config/defaults.go": {"f0d8af5b9291c0d8e767cbe4f27c499568fcd755": {"t": 1785746081.8288152, "n": 9778, "h": "bfc72eadb1414287", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\nimport (\n\t\"os\"\n\t\"path/filepath\"\n)\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\t// Determine the base path for the workspace.\n\t// Priority: $GHOSTCLAW_HOME > ~/.ghostclaw\n\tvar homePath string\n\tif ghostclawHome := os.Getenv(\"GHOSTCLAW_HOME\"); ghostclawHome != \"\" {\n\t\thomePath = ghostclawHome\n\t} else {\n\t\tuserHome, _ := os.UserHomeDir()\n\t\thomePath = filepath.Join(userHome, \".ghostclaw\")\n\t}\n\tworkspacePath := filepath.Join(homePath, \"workspace\")\n\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: workspacePath,\n\t\t\t\tRestrictToWorkspace: false, // GhostClaw: Autonomous mode allowed\n\t\t\t\tProvider: \"gemini\",\n\t\t\t\tModel: \"gemini/chat-bison-001\",\n\t\t\t\tMaxTokens: 32768,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tUseNative: false,\n\t\t\t\tSessionStorePath: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComAIBot: WeComAIBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookPath: \"/webhook/wecom-aibot\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t\tMaxSteps: 10,\n\t\t\t\tWelcomeMessage: \"Hello! I'm your AI assistant. How can I help you today?\",\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tToken: \"ghostclaw_secret_2026\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"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\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini/chat-bison-001\",\n\t\t\t\tModel: \"chat-bison-001\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"AIzaSyBhiKZ3flzbUCxxGGO23KO5S18QfmBBzCY\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tFetchLimitBytes: 10 * 1024 * 1024, // 10MB by default\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t\tMCP: MCPConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tServers: map[string]MCPServerConfig{},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "4e348e39ac637f7466bdcf10809e3f2960810e31": {"t": 1785759668.4500024, "n": 9548, "h": "65fab283bef344dc", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\nimport (\n\t\"os\"\n\t\"path/filepath\"\n)\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\t// Determine the base path for the workspace.\n\t// Priority: $PICOCLAW_HOME > ~/.picoclaw\n\tvar homePath string\n\tif picoclawHome := os.Getenv(\"PICOCLAW_HOME\"); picoclawHome != \"\" {\n\t\thomePath = picoclawHome\n\t} else {\n\t\tuserHome, _ := os.UserHomeDir()\n\t\thomePath = filepath.Join(userHome, \".picoclaw\")\n\t}\n\tworkspacePath := filepath.Join(homePath, \"workspace\")\n\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: workspacePath,\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"\",\n\t\t\t\tMaxTokens: 32768,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tUseNative: false,\n\t\t\t\tSessionStorePath: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComAIBot: WeComAIBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookPath: \"/webhook/wecom-aibot\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t\tMaxSteps: 10,\n\t\t\t\tWelcomeMessage: \"Hello! I'm your AI assistant. How can I help you today?\",\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tFetchLimitBytes: 10 * 1024 * 1024, // 10MB by default\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t\tMCP: MCPConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tServers: map[string]MCPServerConfig{},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "6caee427bb4c4556ff06c17ded8b36a4c4364e8b": {"t": 1785759691.703343, "n": 9518, "h": "d42a0cacbe1cc167", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\nimport (\n\t\"os\"\n\t\"path/filepath\"\n)\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\t// Determine the base path for the workspace.\n\t// Priority: $PICOCLAW_HOME > ~/.picoclaw\n\tvar homePath string\n\tif picoclawHome := os.Getenv(\"PICOCLAW_HOME\"); picoclawHome != \"\" {\n\t\thomePath = picoclawHome\n\t} else {\n\t\tuserHome, _ := os.UserHomeDir()\n\t\thomePath = filepath.Join(userHome, \".picoclaw\")\n\t}\n\tworkspacePath := filepath.Join(homePath, \"workspace\")\n\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: workspacePath,\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"\",\n\t\t\t\tMaxTokens: 32768,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tUseNative: false,\n\t\t\t\tSessionStorePath: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComAIBot: WeComAIBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/wecom-aibot\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t\tMaxSteps: 10,\n\t\t\t\tWelcomeMessage: \"Hello! I'm your AI assistant. How can I help you today?\",\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tFetchLimitBytes: 10 * 1024 * 1024, // 10MB by default\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "b86bf5b7ea9ad38d41152de58feda2672bd602d5": {"t": 1785759693.42276, "n": 9133, "h": "588d088f53a98d65", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\nimport (\n\t\"os\"\n\t\"path/filepath\"\n)\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\t// Determine the base path for the workspace.\n\t// Priority: $PICOCLAW_HOME > ~/.picoclaw\n\tvar homePath string\n\tif picoclawHome := os.Getenv(\"PICOCLAW_HOME\"); picoclawHome != \"\" {\n\t\thomePath = picoclawHome\n\t} else {\n\t\tuserHome, _ := os.UserHomeDir()\n\t\thomePath = filepath.Join(userHome, \".picoclaw\")\n\t}\n\tworkspacePath := filepath.Join(homePath, \"workspace\")\n\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: workspacePath,\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"\",\n\t\t\t\tMaxTokens: 32768,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tUseNative: false,\n\t\t\t\tSessionStorePath: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tFetchLimitBytes: 10 * 1024 * 1024, // 10MB by default\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "d4bc28c11366b9f9b787ecd0d540591214f97473": {"t": 1785759694.9492764, "n": 9065, "h": "6ec2af9f509e97f7", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\nimport (\n\t\"os\"\n\t\"path/filepath\"\n)\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\t// Determine the base path for the workspace.\n\t// Priority: $PICOCLAW_HOME > ~/.picoclaw\n\tvar homePath string\n\tif picoclawHome := os.Getenv(\"PICOCLAW_HOME\"); picoclawHome != \"\" {\n\t\thomePath = picoclawHome\n\t} else {\n\t\tuserHome, _ := os.UserHomeDir()\n\t\thomePath = filepath.Join(userHome, \".picoclaw\")\n\t}\n\tworkspacePath := filepath.Join(homePath, \"workspace\")\n\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: workspacePath,\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"\",\n\t\t\t\tMaxTokens: 32768,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tUseNative: false,\n\t\t\t\tSessionStorePath: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "b88e590c6ce0040805c2e3045c30dfcae0da1ae9": {"t": 1785759696.8585756, "n": 8749, "h": "c1c958d29b41aaa2", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"\",\n\t\t\t\tMaxTokens: 32768,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tUseNative: false,\n\t\t\t\tSessionStorePath: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tFetchLimitBytes: 10 * 1024 * 1024, // 10MB by default\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "257b0d82b52e8ad12f702a647b7702d0a8551f16": {"t": 1785759698.4112666, "n": 8769, "h": "bc55ab8f4ad1246e", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"\",\n\t\t\t\tMaxTokens: 32768,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tUseNative: false,\n\t\t\t\tSessionStorePath: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t\tMCP: MCPConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tServers: map[string]MCPServerConfig{},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "fa68023ac24c91fd92ebcc83966b56cecc891dff": {"t": 1785759700.1776085, "n": 8681, "h": "8e5120bbbe726801", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"\",\n\t\t\t\tMaxTokens: 32768,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tUseNative: false,\n\t\t\t\tSessionStorePath: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "b1a6b3898d84afd5e979d740aac0b625347f59cd": {"t": 1785759702.016786, "n": 8605, "h": "e8e1357347984eda", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"\",\n\t\t\t\tMaxTokens: 32768,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "29d4019e628b57f50c15116c4597191a28ac2433": {"t": 1785759704.3159523, "n": 8088, "h": "066c9cae74d7c40c", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"\",\n\t\t\t\tMaxTokens: 32768,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "b6927c9a7af751ef483e3cb7f7009d8b716bd6d4": {"t": 1785759706.7339542, "n": 8094, "h": "a0ac916e7529112e", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 50,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "21654f1335aa8039edbacc8ed84a9cd4c04793b2": {"t": 1785759709.2977085, "n": 8094, "h": "ac3587377f6f67cc", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "c8a553f109793bc73cef24a955ca0ef895597838": {"t": 1785759711.8542798, "n": 8082, "h": "20053caab81f019a", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"main\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "4ada4063d7862cf4a1fc4637afce2da7ff722d2c": {"t": 1785759714.6541953, "n": 8611, "h": "96d2737555654aec", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "2fa51d7b868672ab2fd054396216fa68184b3ad6": {"t": 1785759717.3085265, "n": 8067, "h": "8cca963daeab1c47", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"main\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "60b68b305a1eb61057945ed6efe2b2ef2b3264ee": {"t": 1785759720.166205, "n": 8513, "h": "b30a59322cc7dd6f", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "c1ed163e77f23e2e81f99e4952907dbecc89de23": {"t": 1785759722.3053966, "n": 8687, "h": "f4e61f9d35819c68", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tUseNative: false,\n\t\t\t\tSessionStorePath: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tTyping: TypingConfig{Enabled: true},\n\t\t\t\tPlaceholder: PlaceholderConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tText: \"Thinking... 💭\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tPico: PicoConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tPingInterval: 30,\n\t\t\t\tReadTimeout: 60,\n\t\t\t\tWriteTimeout: 10,\n\t\t\t\tMaxConnections: 100,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tMediaCleanup: MediaCleanupConfig{\n\t\t\t\tEnabled: true,\n\t\t\t\tMaxAge: 30,\n\t\t\t\tInterval: 5,\n\t\t\t},\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "f8b656ec378663df1c2b262923c7ac935846a576": {"t": 1785759724.0095859, "n": 8157, "h": "621f233d038cc484", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"per-channel-peer\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tGroupTrigger: GroupTriggerConfig{MentionOnly: true},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"127.0.0.1\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tProxy: \"\",\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "65422a16a4f9a04ecc55b066b800e92859b9f376": {"t": 1785759728.2820048, "n": 8065, "h": "2665ca0948eb19ee", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"main\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// Mistral AI - https://console.mistral.ai/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"mistral-small\",\n\t\t\t\tModel: \"mistral/mistral-small-latest\",\n\t\t\t\tAPIBase: \"https://api.mistral.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "d867e86dbead31f9b63ba757c022c0cfc3adae09": {"t": 1785759733.496931, "n": 7944, "h": "f3b23f93aa005ac8", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"main\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t\tMCP: MCPConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tServers: map[string]MCPServerConfig{},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "1ef33c90ed91891f4787df7b31b935df1372cbeb": {"t": 1785759736.7173939, "n": 7856, "h": "f60b3db0a4bf530a", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"main\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "2fb2a733d425ac6b023fd0adcc18a2ee3abc1618": {"t": 1785759739.3458686, "n": 7219, "h": "20f26b74f0d53118", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"main\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tMentionOnly: false,\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "d692cc0cc62cfa3a56ad692c31a5020f7e5c3392": {"t": 1785759741.6771917, "n": 7189, "h": "1fc8c5f5277b05ff", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"main\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t\tSkills: SkillsToolsConfig{\n\t\t\t\tRegistries: SkillsRegistriesConfig{\n\t\t\t\t\tClawHub: ClawHubRegistryConfig{\n\t\t\t\t\t\tEnabled: true,\n\t\t\t\t\t\tBaseURL: \"https://clawhub.ai\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tMaxConcurrentSearches: 2,\n\t\t\t\tSearchCache: SearchCacheConfig{\n\t\t\t\t\tMaxSize: 50,\n\t\t\t\t\tTTLSeconds: 300,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "59772cdbf25904a40ae24dddf55a7767e3f4be4d": {"t": 1785759743.2347684, "n": 7467, "h": "0d5be46f12794883", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"main\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tWeCom: WeComConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookURL: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18793,\n\t\t\t\tWebhookPath: \"/webhook/wecom\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t\tWeComApp: WeComAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tCorpID: \"\",\n\t\t\t\tCorpSecret: \"\",\n\t\t\t\tAgentID: 0,\n\t\t\t\tToken: \"\",\n\t\t\t\tEncodingAESKey: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18792,\n\t\t\t\tWebhookPath: \"/webhook/wecom-app\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t\tReplyTimeout: 5,\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "f1223eec42838d1903f665d7c8407c68056ce2ab": {"t": 1785759744.9393694, "n": 6887, "h": "27a69236b369fb4c", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"main\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t\tExec: ExecConfig{\n\t\t\t\tEnableDenyPatterns: true,\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "723f4e84ef0f7ce393f169e0a09231347f09c025": {"t": 1785759746.853703, "n": 6830, "h": "15ad9da1c2122820", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{\n\t\t\tDMScope: \"main\",\n\t\t},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "23c39f41dfb7e79f316ba5af8ac21a472535b73c": {"t": 1785759748.3059673, "n": 6808, "h": "779fe2c37d79973c", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: nil, // nil means use provider default\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "dc9fb327c2efdca728aa4a49ab21e311499f7021": {"t": 1785759749.7273667, "n": 6774, "h": "28ad75430e24c1d1", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: 0.7,\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4.6\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4.6\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}, "5cd1597674494b8620753099f653f0cbd7366ba3": {"t": 1785759751.0685973, "n": 6779, "h": "75cdd01b7292eb2a", "c": "// PicoClaw - Ultra-lightweight personal AI agent\n// License: MIT\n//\n// Copyright (c) 2026 PicoClaw contributors\n\npackage config\n\n// DefaultConfig returns the default configuration for PicoClaw.\nfunc DefaultConfig() *Config {\n\treturn &Config{\n\t\tAgents: AgentsConfig{\n\t\t\tDefaults: AgentDefaults{\n\t\t\t\tWorkspace: \"~/.picoclaw/workspace\",\n\t\t\t\tRestrictToWorkspace: true,\n\t\t\t\tProvider: \"\",\n\t\t\t\tModel: \"glm-4.7\",\n\t\t\t\tMaxTokens: 8192,\n\t\t\t\tTemperature: 0.7,\n\t\t\t\tMaxToolIterations: 20,\n\t\t\t},\n\t\t},\n\t\tBindings: []AgentBinding{},\n\t\tSession: SessionConfig{},\n\t\tChannels: ChannelsConfig{\n\t\t\tWhatsApp: WhatsAppConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBridgeURL: \"ws://localhost:3001\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tTelegram: TelegramConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tFeishu: FeishuConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tEncryptKey: \"\",\n\t\t\t\tVerificationToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDiscord: DiscordConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tMaixCam: MaixCamConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tHost: \"0.0.0.0\",\n\t\t\t\tPort: 18790,\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tQQ: QQConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tAppID: \"\",\n\t\t\t\tAppSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tDingTalk: DingTalkConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tClientID: \"\",\n\t\t\t\tClientSecret: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tSlack: SlackConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tBotToken: \"\",\n\t\t\t\tAppToken: \"\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tLINE: LINEConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tChannelSecret: \"\",\n\t\t\t\tChannelAccessToken: \"\",\n\t\t\t\tWebhookHost: \"0.0.0.0\",\n\t\t\t\tWebhookPort: 18791,\n\t\t\t\tWebhookPath: \"/webhook/line\",\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t\tOneBot: OneBotConfig{\n\t\t\t\tEnabled: false,\n\t\t\t\tWSUrl: \"ws://127.0.0.1:3001\",\n\t\t\t\tAccessToken: \"\",\n\t\t\t\tReconnectInterval: 5,\n\t\t\t\tGroupTriggerPrefix: []string{},\n\t\t\t\tAllowFrom: FlexibleStringSlice{},\n\t\t\t},\n\t\t},\n\t\tProviders: ProvidersConfig{\n\t\t\tOpenAI: OpenAIProviderConfig{WebSearch: true},\n\t\t},\n\t\tModelList: []ModelConfig{\n\t\t\t// ============================================\n\t\t\t// Add your API key to the model you want to use\n\t\t\t// ============================================\n\n\t\t\t// Zhipu AI (智谱) - https://open.bigmodel.cn/usercenter/apikeys\n\t\t\t{\n\t\t\t\tModelName: \"glm-4.7\",\n\t\t\t\tModel: \"zhipu/glm-4.7\",\n\t\t\t\tAPIBase: \"https://open.bigmodel.cn/api/paas/v4\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenAI - https://platform.openai.com/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"gpt-5.2\",\n\t\t\t\tModel: \"openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://api.openai.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Anthropic Claude - https://console.anthropic.com/settings/keys\n\t\t\t{\n\t\t\t\tModelName: \"claude-sonnet-4\",\n\t\t\t\tModel: \"anthropic/claude-sonnet-4-20250514\",\n\t\t\t\tAPIBase: \"https://api.anthropic.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// DeepSeek - https://platform.deepseek.com/\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-chat\",\n\t\t\t\tModel: \"deepseek/deepseek-chat\",\n\t\t\t\tAPIBase: \"https://api.deepseek.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Google Gemini - https://ai.google.dev/\n\t\t\t{\n\t\t\t\tModelName: \"gemini-2.0-flash\",\n\t\t\t\tModel: \"gemini/gemini-2.0-flash-exp\",\n\t\t\t\tAPIBase: \"https://generativelanguage.googleapis.com/v1beta\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Qwen (通义千问) - https://dashscope.console.aliyun.com/apiKey\n\t\t\t{\n\t\t\t\tModelName: \"qwen-plus\",\n\t\t\t\tModel: \"qwen/qwen-plus\",\n\t\t\t\tAPIBase: \"https://dashscope.aliyuncs.com/compatible-mode/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Moonshot (月之暗面) - https://platform.moonshot.cn/console/api-keys\n\t\t\t{\n\t\t\t\tModelName: \"moonshot-v1-8k\",\n\t\t\t\tModel: \"moonshot/moonshot-v1-8k\",\n\t\t\t\tAPIBase: \"https://api.moonshot.cn/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Groq - https://console.groq.com/keys\n\t\t\t{\n\t\t\t\tModelName: \"llama-3.3-70b\",\n\t\t\t\tModel: \"groq/llama-3.3-70b-versatile\",\n\t\t\t\tAPIBase: \"https://api.groq.com/openai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// OpenRouter (100+ models) - https://openrouter.ai/keys\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-auto\",\n\t\t\t\tModel: \"openrouter/auto\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t\t{\n\t\t\t\tModelName: \"openrouter-gpt-5.2\",\n\t\t\t\tModel: \"openrouter/openai/gpt-5.2\",\n\t\t\t\tAPIBase: \"https://openrouter.ai/api/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// NVIDIA - https://build.nvidia.com/\n\t\t\t{\n\t\t\t\tModelName: \"nemotron-4-340b\",\n\t\t\t\tModel: \"nvidia/nemotron-4-340b-instruct\",\n\t\t\t\tAPIBase: \"https://integrate.api.nvidia.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Cerebras - https://inference.cerebras.ai/\n\t\t\t{\n\t\t\t\tModelName: \"cerebras-llama-3.3-70b\",\n\t\t\t\tModel: \"cerebras/llama-3.3-70b\",\n\t\t\t\tAPIBase: \"https://api.cerebras.ai/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Volcengine (火山引擎) - https://console.volcengine.com/ark\n\t\t\t{\n\t\t\t\tModelName: \"doubao-pro\",\n\t\t\t\tModel: \"volcengine/doubao-pro-32k\",\n\t\t\t\tAPIBase: \"https://ark.cn-beijing.volces.com/api/v3\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// ShengsuanYun (神算云)\n\t\t\t{\n\t\t\t\tModelName: \"deepseek-v3\",\n\t\t\t\tModel: \"shengsuanyun/deepseek-v3\",\n\t\t\t\tAPIBase: \"https://api.shengsuanyun.com/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\n\t\t\t// Antigravity (Google Cloud Code Assist) - OAuth only\n\t\t\t{\n\t\t\t\tModelName: \"gemini-flash\",\n\t\t\t\tModel: \"antigravity/gemini-3-flash\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// GitHub Copilot - https://github.com/settings/tokens\n\t\t\t{\n\t\t\t\tModelName: \"copilot-gpt-5.2\",\n\t\t\t\tModel: \"github-copilot/gpt-5.2\",\n\t\t\t\tAPIBase: \"http://localhost:4321\",\n\t\t\t\tAuthMethod: \"oauth\",\n\t\t\t},\n\n\t\t\t// Ollama (local) - https://ollama.com\n\t\t\t{\n\t\t\t\tModelName: \"llama3\",\n\t\t\t\tModel: \"ollama/llama3\",\n\t\t\t\tAPIBase: \"http://localhost:11434/v1\",\n\t\t\t\tAPIKey: \"ollama\",\n\t\t\t},\n\n\t\t\t// VLLM (local) - http://localhost:8000\n\t\t\t{\n\t\t\t\tModelName: \"local-model\",\n\t\t\t\tModel: \"vllm/custom-model\",\n\t\t\t\tAPIBase: \"http://localhost:8000/v1\",\n\t\t\t\tAPIKey: \"\",\n\t\t\t},\n\t\t},\n\t\tGateway: GatewayConfig{\n\t\t\tHost: \"0.0.0.0\",\n\t\t\tPort: 18790,\n\t\t},\n\t\tTools: ToolsConfig{\n\t\t\tWeb: WebToolsConfig{\n\t\t\t\tBrave: BraveConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tDuckDuckGo: DuckDuckGoConfig{\n\t\t\t\t\tEnabled: true,\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t\tPerplexity: PerplexityConfig{\n\t\t\t\t\tEnabled: false,\n\t\t\t\t\tAPIKey: \"\",\n\t\t\t\t\tMaxResults: 5,\n\t\t\t\t},\n\t\t\t},\n\t\t\tCron: CronToolsConfig{\n\t\t\t\tExecTimeoutMinutes: 5,\n\t\t\t},\n\t\t},\n\t\tHeartbeat: HeartbeatConfig{\n\t\t\tEnabled: true,\n\t\t\tInterval: 30,\n\t\t},\n\t\tDevices: DevicesConfig{\n\t\t\tEnabled: false,\n\t\t\tMonitorUSB: true,\n\t\t},\n\t}\n}\n"}}}} |