mirror of
https://github.com/NoFxAiOS/nofx.git
synced 2026-07-13 07:46:54 +08:00
fix(agent): reduce verbose responses — focus answers on user's question only
Root cause: when planner fails (402 payment), legacy loop dumps all system context to LLM which outputs everything. Also final response prompt was too weak — LLM treated all observations as required output. Changes: - Strengthen system prompt: "answer ONLY what user asked", no tables/tutorials unless requested, no self-intro repeats, no "next step" suggestions - Add compact observation summary for final response (step summaries only, no raw JSON blobs) - Domain-filtered tool selection in legacy loop to prevent over-fetching - Fix domain routing: "钱包/wallet" → account domain (not model), with exchange configs included for wallet context - Widen wallet fast-path: no longer requires "claw402" keyword - Anti-repetition instructions in planner step selector Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -8,11 +8,19 @@ import (
|
||||
|
||||
func isModelWalletBalanceQuestion(text string) bool {
|
||||
lower := strings.ToLower(strings.TrimSpace(text))
|
||||
if lower == "" || !strings.Contains(lower, "claw402") {
|
||||
if lower == "" {
|
||||
return false
|
||||
}
|
||||
return containsAny(lower, []string{"余额", "balance", "usdc"}) &&
|
||||
containsAny(lower, []string{"钱包", "wallet", "主钱包", "base"})
|
||||
// Direct wallet address questions: "我的钱包地址", "wallet address", etc.
|
||||
if containsAny(lower, []string{"钱包", "wallet"}) && containsAny(lower, []string{"地址", "address"}) {
|
||||
return true
|
||||
}
|
||||
// Balance questions with wallet context
|
||||
if containsAny(lower, []string{"余额", "balance", "usdc"}) &&
|
||||
containsAny(lower, []string{"钱包", "wallet", "主钱包", "base", "claw402"}) {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (a *Agent) handleModelWalletBalanceQuestion(storeUserID, lang, text string) (string, bool) {
|
||||
|
||||
Reference in New Issue
Block a user