Files

324 lines
8.0 KiB
JSON
Raw Permalink Normal View History

{
// ============================================================
// 铭奕精密科技 MOM 系统 - OpenClaw 多 Agent 网关配置
// ============================================================
// 环境变量API keys 存放在 .env 中,通过 ${VAR} 引用)
env: {
shellEnv: {
enabled: true,
timeoutMs: 15000
}
},
// 认证配置
auth: {
profiles: {
"anthropic:mingyi": {
provider: "anthropic",
mode: "api_key"
},
"openai:mingyi": {
provider: "openai",
mode: "api_key"
}
},
order: {
anthropic: ["anthropic:mingyi"],
openai: ["openai:mingyi"]
}
},
// 日志配置
logging: {
level: "info",
file: "~/.openclaw/logs/mom-system.log",
consoleLevel: "info",
consoleStyle: "pretty",
redactSensitive: "tools"
},
// 消息格式
messages: {
messagePrefix: "[铭奕MOM]",
responsePrefix: ">",
ackReaction: "👀",
ackReactionScope: "group-mentions"
},
// 路由与消息队列
routing: {
groupChat: {
mentionPatterns: ["@铭奕MOM", "@mom", "@mingyi"],
historyLimit: 100
},
queue: {
mode: "collect",
debounceMs: 1500,
cap: 30,
drop: "summarize"
}
},
// Session 行为
session: {
scope: "per-sender",
reset: {
mode: "daily",
atHour: 4,
idleMinutes: 60
},
resetTriggers: ["/new", "/reset", "/重置"],
store: "~/.openclaw/sessions/sessions.json",
maintenance: {
mode: "warn",
pruneAfter: "30d",
maxEntries: 1000,
rotateBytes: "20mb",
resetArchiveRetention: "90d",
maxDiskBytes: "1gb"
},
typingIntervalSeconds: 3
},
// ============================================================
// 通道配置预留企业微信、钉钉、Slack
// ============================================================
channels: {
defaults: {
groupPolicy: "allowlist",
heartbeat: {
showOk: false,
showAlerts: true,
useIndicator: true
}
},
// 企业微信 - 工厂主要通讯工具
// 注意:需要对接企业微信 API配置 corpId / agentId / secret
// whatsapp 通道用作企业微信桥接的占位
whatsapp: {
dmPolicy: "allowlist",
allowFrom: ["+86_REPLACE_PRODUCTION_MANAGER_PHONE"],
groupPolicy: "allowlist",
groupAllowFrom: ["+86_REPLACE_PRODUCTION_MANAGER_PHONE"],
groups: {
"*": { requireMention: true }
},
textChunkLimit: 4000,
mediaMaxMb: 50
},
// Slack - 技术团队协作
slack: {
enabled: false,
botToken: "${SLACK_BOT_TOKEN}",
appToken: "${SLACK_APP_TOKEN}",
channels: {
"#mom-production": { allow: true, requireMention: false },
"#mom-quality": { allow: true, requireMention: true },
"#mom-warehouse": { allow: true, requireMention: true },
"#mom-equipment": { allow: true, requireMention: true },
"#mom-alerts": { allow: true, requireMention: false }
},
dm: {
enabled: true,
allowFrom: ["${SLACK_ADMIN_USER_ID}"]
}
},
// Telegram - 备用通道
telegram: {
enabled: false,
botToken: "${TELEGRAM_BOT_TOKEN}",
dmPolicy: "allowlist",
allowFrom: ["${TELEGRAM_ADMIN_ID}"],
groups: {
"*": { requireMention: true }
}
},
// 按通道指定 Agent 模型
modelByChannel: {
slack: {
"#mom-production": "anthropic/claude-sonnet-4-5",
"#mom-alerts": "anthropic/claude-sonnet-4-5"
}
}
},
// ============================================================
// Agent 配置 - 7 个专业 Agent
// ============================================================
agents: {
defaults: {
userTimezone: "Asia/Shanghai",
model: {
primary: "anthropic/claude-sonnet-4-5",
fallbacks: ["anthropic/claude-opus-4-6", "openai/gpt-4o"]
},
models: {
"anthropic/claude-opus-4-6": { alias: "opus" },
"anthropic/claude-sonnet-4-5": { alias: "sonnet" },
"openai/gpt-4o": { alias: "gpt" }
},
thinkingDefault: "medium",
verboseDefault: "off",
elevatedDefault: "on",
timeoutSeconds: 600,
mediaMaxMb: 10,
maxConcurrent: 5
},
list: [
// ---- 1. 生产总控 Agent ----
{
id: "production-master",
workspace: "~/.openclaw/workspace-production-master",
model: {
primary: "anthropic/claude-sonnet-4-5",
fallbacks: ["anthropic/claude-opus-4-6"]
}
},
// ---- 2. 模具管理 Agent ----
{
id: "mold-manager",
workspace: "~/.openclaw/workspace-mold-manager",
model: {
primary: "anthropic/claude-sonnet-4-5",
fallbacks: ["anthropic/claude-opus-4-6"]
}
},
// ---- 3. 注塑管理 Agent ----
{
id: "injection-manager",
workspace: "~/.openclaw/workspace-injection-manager",
model: {
primary: "anthropic/claude-sonnet-4-5",
fallbacks: ["anthropic/claude-opus-4-6"]
}
},
// ---- 4. 质量管理 Agent ----
{
id: "quality-inspector",
workspace: "~/.openclaw/workspace-quality-inspector",
model: {
primary: "anthropic/claude-sonnet-4-5",
fallbacks: ["anthropic/claude-opus-4-6"]
}
},
// ---- 5. 仓储物流 Agent ----
{
id: "warehouse-logistics",
workspace: "~/.openclaw/workspace-warehouse-logistics",
model: {
primary: "anthropic/claude-sonnet-4-5",
fallbacks: ["anthropic/claude-opus-4-6"]
}
},
// ---- 6. 设备管理 Agent ----
{
id: "equipment-manager",
workspace: "~/.openclaw/workspace-equipment-manager",
model: {
primary: "anthropic/claude-sonnet-4-5",
fallbacks: ["anthropic/claude-opus-4-6"]
}
},
// ---- 7. 数据分析 Agent ----
{
id: "data-analyst",
workspace: "~/.openclaw/workspace-data-analyst",
model: {
primary: "anthropic/claude-opus-4-6",
fallbacks: ["anthropic/claude-sonnet-4-5"]
}
}
]
},
// ============================================================
// 工具权限配置
// ============================================================
tools: {
allow: ["exec", "process", "read", "write", "edit", "apply_patch"],
deny: ["browser", "canvas"],
exec: {
backgroundMs: 15000,
timeoutSec: 1800,
cleanupMs: 1800000
},
media: {
audio: {
enabled: true,
maxBytes: 20971520,
models: [
{ provider: "openai", model: "gpt-4o-mini-transcribe" }
],
timeoutSeconds: 120
},
video: {
enabled: false
}
},
elevated: {
enabled: true,
allowFrom: {
whatsapp: ["+86_REPLACE_PRODUCTION_MANAGER_PHONE"],
slack: ["${SLACK_ADMIN_USER_ID}"]
}
}
},
// ============================================================
// 定时任务
// ============================================================
cron: {
enabled: true,
store: "~/.openclaw/cron/cron.json",
maxConcurrentRuns: 3,
sessionRetention: "48h"
},
// ============================================================
// 网关配置
// ============================================================
gateway: {
mode: "local",
port: 18789,
bind: "loopback",
controlUi: {
enabled: true,
basePath: "/openclaw"
},
auth: {
mode: "token",
token: "${GATEWAY_TOKEN}"
},
reload: {
mode: "hybrid",
debounceMs: 300
}
},
// ============================================================
// Skills 配置
// ============================================================
skills: {
allowBundled: ["gemini"],
load: {
extraDirs: ["~/.openclaw/workspace-production-master/skills"]
},
install: {
preferBrew: true,
nodeManager: "npm"
}
}
}