mirror of
https://github.com/tiennm99/goclaw.git
synced 2026-10-15 02:16:56 +00:00
feat(agent): honor per-agent tools.rate_limit_per_hour (#1263)
The agent config UI (tools-profile-section) and i18n already expose a per-agent "Rate Limit (per hour)" field saved into tools_config, but the backend ignored it — the tool rate limiter only ever used the global tools.rate_limit_per_hour. Wire the field through: ToolPolicySpec gains RateLimitPerHour; the agent loop threads it into the tool-execution context; the registry passes it to the limiter, which uses it in place of the global max when > 0 (0 inherits the global).
This commit is contained in:
1 parent
c0531e1e07
commit
eaa011dae3
7 files changed
+64
-6
No files matched your search
@@ -113,6 +113,9 @@ func (l *Loop) injectContext(ctx context.Context, req *RunRequest) (contextSetup
|
||||
waitToolCfg = l.agentToolPolicy.Wait
|
||||
ctx = tools.WithWaitToolConfig(ctx, waitToolCfg)
|
||||
}
|
||||
if l.agentToolPolicy != nil && l.agentToolPolicy.RateLimitPerHour > 0 {
|
||||
ctx = tools.WithToolRateLimitOverride(ctx, l.agentToolPolicy.RateLimitPerHour)
|
||||
}
|
||||
if l.sandboxCfg != nil {
|
||||
ctx = tools.WithSandboxConfig(ctx, l.sandboxCfg)
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user