-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig.example.json
More file actions
138 lines (133 loc) · 6.13 KB
/
Copy pathconfig.example.json
File metadata and controls
138 lines (133 loc) · 6.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
{
"_comment_main": "This is an example configuration file for AgenticMaid. All comments are illustrative; actual JSON does not support comments. Use descriptive keys like '_comment' or remove them for a clean JSON.",
"multi_agent_dispatch": {
"_comment": "Configuration for the multi-agent dispatch feature.",
"enabled": true,
"default_mode": "concurrent",
"allowed_invocations": {
"_comment": "Defines which agent can invoke which other agent(s). Use '*' for wildcards.",
"summary_agent_config_ref": [
"report_agent_v2"
],
"report_agent_v2": [],
"orchestrator_agent": [
"*"
]
}
},
"model": {
"_comment": "Optional global model configuration. These can be overridden by specific service configurations or .env file settings.",
"default_provider": "Google",
"default_model_name": "gemini-2.5-pro",
"default_api_key": "your_global_default_google_api_key_here_if_not_in_env",
"default_base_url": "your_global_default_base_url_here_if_needed"
},
"ai_services": {
"_comment_ai": "Configuration for different AI/LLM services. Keys here are service names you can reference.",
"google_gemini_default": {
"_comment": "Example for a Google Gemini service. API key and model can also come from .env.",
"provider": "Google",
"model": "gemini-2.5-pro",
"api_key": "your_google_api_key_here_or_leave_blank_to_use_env"
},
"anthropic_claude4_opus": {
"_comment": "Example for an Anthropic service.",
"provider": "Anthropic",
"model": "claude-4-opus",
"api_key": "your_anthropic_api_key_here_or_leave_blank_to_use_env"
},
"azure_openai_service": {
"_comment": "Example for Azure OpenAI service.",
"provider": "AzureOpenAI",
"model": "your-azure-deployment-name",
"api_key": "your_azure_openai_api_key_from_env_or_here",
"azure_endpoint": "https://your-resource-name.openai.azure.com/",
"azure_deployment": "your-azure-deployment-name",
"api_version": "2023-05-15"
},
"another_lm_studio_like": {
"_comment": "Example for a local LM Studio like service (OpenAI compatible).",
"provider": "OpenAI",
"model": "local-model-name-provided-by-lm-studio",
"api_key": "not_needed_for_local_lm_studio",
"base_url": "http://localhost:1234/v1"
}
},
"mcp_servers": {
"_comment_mcp": "Configuration for Multi-Server MCP Client. Define your MCP server instances here.",
"server_1_local_fastapi": {
"_comment": "Example of an MCP server running locally via FastAPI.",
"adapter_type": "fastapi",
"base_url": "http://localhost:8001/mcp/v1",
"name": "Local FastAPI MCP Server",
"description": "A local MCP server for development and testing, using FastAPI adapter."
},
"server_2_command_line": {
"_comment": "Example of an MCP server accessed via a command-line tool.",
"adapter_type": "cli",
"command_template": "python /path/to/mcp_cli_tool.py --action {action} --params '{params_json}'",
"name": "Command Line MCP Server",
"description": "An MCP server interacted with via a CLI tool."
}
},
"scheduled_tasks": [
{
"_comment": "Example of a scheduled task. 'agent_id' or 'model_config_name' is used to determine the agent/LLM.",
"name": "Hourly Summary Bot",
"cron_expression": "0 * * * *",
"cron_expression": "0 * * * *",
"prompt": "Generate a brief summary of activities from the last hour.",
"agent_id": "summary_agent_config_ref",
"model_config_name": "google_gemini_default",
"enabled": true
},
{
"_comment": "Another example task, disabled.",
"name": "Daily Report Generator",
"cron_expression": "0 9 * * 1-5",
"prompt": "Compile the daily report for management.",
"agent_id": "report_agent_v2",
"enabled": false
}
],
"agents": {
"_comment_agents": "Optional: Pre-define agent configurations that can be referenced by scheduled tasks or chat services.",
"summary_agent_config_ref": {
"model_config_name": "google_gemini_default",
"description": "Agent for generating summaries.",
"system_prompt": "You are a helpful assistant that generates summaries.",
"role_prompt": "Your role is to act as a summarizer."
},
"report_agent_v2": {
"model_config_name": "anthropic_claude4_opus",
"description": "Agent specialized for detailed report generation.",
"system_prompt": "You are an expert report writer.",
"role_prompt": "Your role is to create detailed reports."
},
"orchestrator_agent": {
"model_config_name": "google_gemini_default",
"description": "An agent that can call any other agent.",
"system_prompt": "You are an orchestrator. The available agents are: summary_agent_config_ref, report_agent_v2. You can use the 'dispatch' tool to delegate tasks to them."
}
},
"chat_services": [
{
"_comment": "Configuration for a chat service. 'llm_service_name' refers to a key in 'ai_services'.",
"service_id": "general_support_chat_gemini",
"llm_service_name": "google_gemini_default",
"system_prompt": "You are a helpful and friendly customer support assistant for the AgenticMaid project. Your goal is to provide clear, accurate, and concise answers.",
"role_prompt": "Please answer the user's question based on the project's documentation and capabilities. Be polite and professional.",
"streaming_api_endpoint": "/chat/v1/streams/general_support_chat_gemini",
"_comment_streaming": "Conceptual endpoint for clients to connect for streaming responses.",
"non_streaming_api_endpoint": "/chat/v1/completions/general_support_chat_gemini",
"_comment_non_streaming": "Conceptual endpoint for clients to get full responses."
},
{
"service_id": "advanced_claude_chat",
"llm_service_name": "anthropic_claude4_opus",
"streaming_api_endpoint": "/chat/v1/streams/advanced_claude_chat",
"non_streaming_api_endpoint": "/chat/v1/completions/advanced_claude_chat"
}
],
"default_llm_service_name": "google_gemini_default"
}