{ "providers": { "aliyun": { "type": "openai", "base_url": "https://api.openai.com/v1", "api_key": "", "extra_headers": {} }, "openai": { "type": "openai", "base_url": "https://api.openai.com/v1", "api_key": "", "extra_headers": {} }, "anthropic": { "type": "anthropic", "base_url": "https://api.anthropic.com/v1", "api_key": "", "extra_headers": {} } }, "models": { "qwen-plus": { "model_id": "qwen-plus", "temperature": 0.0, "max_tokens": 8192 }, "gpt-4o": { "model_id": "gpt-4o", "temperature": 0.7, "max_tokens": 4096 }, "claude-sonnet-4-20250514": { "model_id": "claude-sonnet-4-20250514", "temperature": 0.7, "max_tokens": 8192 } }, "agents": { "default": { "provider": "aliyun", "model": "qwen-plus", "max_tool_iterations": 20, "token_limit": 128000 } }, "gateway": { "host": "127.0.0.1", "port": 19876, "session_ttl_hours": 168 }, "client": { "gateway_url": "ws://127.0.0.1:19876/ws" }, "channels": { "feishu": { "enabled": true, "app_id": "", "app_secret": "", "allow_from": ["*"], "agent": "default", "media_dir": "~/.picobot/media/feishu", "reaction_emoji": "Typing" } }, "memory": { "consolidation_provider": null, "consolidation_model": null, "recall_limit": 5, "consolidation_turn_threshold": 10, "idle_consolidation_minutes": 10, "timeline_retention_days": 90, "max_failures_before_degrade": 3 }, "workspace_dir": "~/.picobot/workspace" }