From b00ff5bc5d8f5ce7449f44bc5ff335b99b9cbf02 Mon Sep 17 00:00:00 2001 From: lc6464 <64722907+lc6464@users.noreply.github.com> Date: Fri, 1 May 2026 15:20:35 +0800 Subject: [PATCH 01/26] fix(openai_compat): parse reasoning_content in streaming responses --- pkg/providers/openai_compat/provider.go | 18 ++++--- pkg/providers/openai_compat/provider_test.go | 51 ++++++++++++++++++++ 2 files changed, 63 insertions(+), 6 deletions(-) diff --git a/pkg/providers/openai_compat/provider.go b/pkg/providers/openai_compat/provider.go index be3e77a43..7003709a7 100644 --- a/pkg/providers/openai_compat/provider.go +++ b/pkg/providers/openai_compat/provider.go @@ -419,6 +419,7 @@ func parseStreamResponse( onChunk func(accumulated string), ) (*LLMResponse, error) { var textContent strings.Builder + var reasoningContent strings.Builder var finishReason string var usage *UsageInfo @@ -451,8 +452,9 @@ func parseStreamResponse( var chunk struct { Choices []struct { Delta struct { - Content string `json:"content"` - ToolCalls []struct { + Content string `json:"content"` + ReasoningContent string `json:"reasoning_content"` + ToolCalls []struct { Index int `json:"index"` ID string `json:"id"` Function *struct { @@ -487,6 +489,9 @@ func parseStreamResponse( onChunk(textContent.String()) } } + if choice.Delta.ReasoningContent != "" { + reasoningContent.WriteString(choice.Delta.ReasoningContent) + } // Accumulate tool call deltas for _, tc := range choice.Delta.ToolCalls { @@ -544,10 +549,11 @@ func parseStreamResponse( } return &LLMResponse{ - Content: textContent.String(), - ToolCalls: toolCalls, - FinishReason: finishReason, - Usage: usage, + Content: textContent.String(), + ReasoningContent: reasoningContent.String(), + ToolCalls: toolCalls, + FinishReason: finishReason, + Usage: usage, }, nil } diff --git a/pkg/providers/openai_compat/provider_test.go b/pkg/providers/openai_compat/provider_test.go index 4f68fb393..fbda447b4 100644 --- a/pkg/providers/openai_compat/provider_test.go +++ b/pkg/providers/openai_compat/provider_test.go @@ -1195,6 +1195,57 @@ func TestProviderChatStream_CustomHeadersInjected(t *testing.T) { } } +func TestProviderChatStream_ParsesReasoningContent(t *testing.T) { + server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + w.Header().Set("Content-Type", "text/event-stream") + _, _ = w.Write([]byte( + "data: {\"choices\":[{\"delta\":{\"reasoning_content\":\"Let me \",\"content\":\"Checking \",\"tool_calls\":[{\"index\":0,\"id\":\"call_1\",\"function\":{\"name\":\"get_weather\",\"arguments\":\"{\\\"city\\\":\"}}]}}]}\n\n", + )) + _, _ = w.Write([]byte( + "data: {\"choices\":[{\"delta\":{\"reasoning_content\":\"think step by step.\",\"content\":\"the weather\",\"tool_calls\":[{\"index\":0,\"function\":{\"arguments\":\"\\\"Hangzhou\\\"}\"}}]},\"finish_reason\":\"tool_calls\"}],\"usage\":{\"prompt_tokens\":10,\"completion_tokens\":6,\"total_tokens\":16}}\n\n", + )) + _, _ = w.Write([]byte("data: [DONE]\n\n")) + })) + defer server.Close() + + p := NewProvider("key", server.URL, "") + out, err := p.ChatStream( + t.Context(), + []Message{{Role: "user", Content: "weather?"}}, + nil, + "deepseek-v4-flash", + nil, + nil, + ) + if err != nil { + t.Fatalf("ChatStream() error = %v", err) + } + if out.Content != "Checking the weather" { + t.Fatalf("Content = %q, want %q", out.Content, "Checking the weather") + } + if out.ReasoningContent != "Let me think step by step." { + t.Fatalf("ReasoningContent = %q, want %q", out.ReasoningContent, "Let me think step by step.") + } + if len(out.ToolCalls) != 1 { + t.Fatalf("len(ToolCalls) = %d, want 1", len(out.ToolCalls)) + } + if out.ToolCalls[0].ID != "call_1" { + t.Fatalf("ToolCalls[0].ID = %q, want %q", out.ToolCalls[0].ID, "call_1") + } + if out.ToolCalls[0].Name != "get_weather" { + t.Fatalf("ToolCalls[0].Name = %q, want %q", out.ToolCalls[0].Name, "get_weather") + } + if out.ToolCalls[0].Arguments["city"] != "Hangzhou" { + t.Fatalf("ToolCalls[0].Arguments[city] = %v, want %q", out.ToolCalls[0].Arguments["city"], "Hangzhou") + } + if out.FinishReason != "tool_calls" { + t.Fatalf("FinishReason = %q, want %q", out.FinishReason, "tool_calls") + } + if out.Usage == nil || out.Usage.TotalTokens != 16 { + t.Fatalf("Usage = %#v, want total tokens 16", out.Usage) + } +} + type roundTripperFunc func(*http.Request) (*http.Response, error) func (f roundTripperFunc) RoundTrip(r *http.Request) (*http.Response, error) { From 09d3dff4322c24a361ac9d1307d5344436358fe6 Mon Sep 17 00:00:00 2001 From: Anton Bogdanovich <27antonb@gmail.com> Date: Sun, 3 May 2026 20:40:20 -0700 Subject: [PATCH 02/26] fix telegram media group album handling --- docs/channels/telegram/README.md | 4 +- pkg/channels/telegram/telegram.go | 295 ++++++++++++++++++++----- pkg/channels/telegram/telegram_test.go | 188 ++++++++++++++++ pkg/config/config.go | 11 +- pkg/config/defaults.go | 5 +- 5 files changed, 437 insertions(+), 66 deletions(-) diff --git a/docs/channels/telegram/README.md b/docs/channels/telegram/README.md index a4138009e..215d80afe 100644 --- a/docs/channels/telegram/README.md +++ b/docs/channels/telegram/README.md @@ -15,7 +15,8 @@ The Telegram channel uses long polling via the Telegram Bot API for bot-based co "token": "123456789:ABCdefGHIjklMNOpqrsTUVwxyz", "allow_from": ["123456789"], "proxy": "", - "use_markdown_v2": false + "use_markdown_v2": false, + "media_group_delay_ms": 500 } } } @@ -28,6 +29,7 @@ The Telegram channel uses long polling via the Telegram Bot API for bot-based co | allow_from | array | No | Allowlist of user IDs; empty means all users are allowed | | proxy | string | No | Proxy URL for connecting to the Telegram API (e.g. http://127.0.0.1:7890) | | use_markdown_v2 | bool | No | Enable Telegram MarkdownV2 formatting | +| media_group_delay_ms | int | No | Idle delay before processing Telegram media groups/albums. Defaults to 500 ms | ## Setup diff --git a/pkg/channels/telegram/telegram.go b/pkg/channels/telegram/telegram.go index cebebfed6..b3685a7c6 100644 --- a/pkg/channels/telegram/telegram.go +++ b/pkg/channels/telegram/telegram.go @@ -11,6 +11,7 @@ import ( "net/url" "os" "regexp" + "slices" "strconv" "strings" "sync" @@ -43,20 +44,38 @@ var ( reInlineCode = regexp.MustCompile("`([^`]+)`") ) +const defaultMediaGroupDelay = 500 * time.Millisecond + type TelegramChannel struct { *channels.BaseChannel - bot *telego.Bot - bh *th.BotHandler - bc *config.Channel - chatIDs map[string]int64 - ctx context.Context - cancel context.CancelFunc - tgCfg *config.TelegramSettings - progress *channels.ToolFeedbackAnimator + bot *telego.Bot + bh *th.BotHandler + bc *config.Channel + chatIDsMu sync.Mutex + chatIDs map[string]int64 + ctx context.Context + cancel context.CancelFunc + tgCfg *config.TelegramSettings + progress *channels.ToolFeedbackAnimator registerFunc func(context.Context, []commands.Definition) error commandRegDelayFn func(int) time.Duration commandRegCancel context.CancelFunc + + mediaGroupMu sync.Mutex + mediaGroups map[string]*telegramMediaGroup + mediaGroupDelay time.Duration +} + +type telegramMediaGroup struct { + messages []*telego.Message + timer *time.Timer + generation uint64 +} + +type telegramMessageParts struct { + content []string + mediaPaths []string } func NewTelegramChannel( @@ -112,11 +131,21 @@ func NewTelegramChannel( bc: bc, chatIDs: make(map[string]int64), tgCfg: telegramCfg, + + mediaGroups: make(map[string]*telegramMediaGroup), + mediaGroupDelay: telegramMediaGroupDelay(telegramCfg), } ch.progress = channels.NewToolFeedbackAnimator(ch.EditMessage) return ch, nil } +func telegramMediaGroupDelay(telegramCfg *config.TelegramSettings) time.Duration { + if telegramCfg != nil && telegramCfg.MediaGroupDelayMS > 0 { + return time.Duration(telegramCfg.MediaGroupDelayMS) * time.Millisecond + } + return defaultMediaGroupDelay +} + func (c *TelegramChannel) Start(ctx context.Context) error { logger.InfoC("telegram", "Starting Telegram bot (polling mode)...") @@ -167,6 +196,7 @@ func (c *TelegramChannel) Stop(ctx context.Context) error { if c.bh != nil { _ = c.bh.StopWithContext(ctx) } + c.flushPendingMediaGroups(ctx) // Cancel our context (stops long polling) if c.cancel != nil { @@ -713,6 +743,131 @@ func (c *TelegramChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMe } func (c *TelegramChannel) handleMessage(ctx context.Context, message *telego.Message) error { + if message != nil && strings.TrimSpace(message.MediaGroupID) != "" { + return c.bufferMediaGroupMessage(ctx, message) + } + return c.handleMessages(ctx, []*telego.Message{message}) +} + +func (c *TelegramChannel) bufferMediaGroupMessage(ctx context.Context, message *telego.Message) error { + if message == nil { + return fmt.Errorf("message is nil") + } + groupID := strings.TrimSpace(message.MediaGroupID) + if groupID == "" { + return c.handleMessages(ctx, []*telego.Message{message}) + } + + msgCopy := *message + msgCopy.Photo = append([]telego.PhotoSize(nil), message.Photo...) + key := fmt.Sprintf("%d:%s", message.Chat.ID, groupID) + + c.mediaGroupMu.Lock() + if c.mediaGroups == nil { + c.mediaGroups = make(map[string]*telegramMediaGroup) + } + group := c.mediaGroups[key] + if group == nil { + group = &telegramMediaGroup{} + c.mediaGroups[key] = group + } + group.messages = append(group.messages, &msgCopy) + group.generation++ + generation := group.generation + if group.timer != nil { + group.timer.Stop() + } + delay := c.mediaGroupDelay + if delay <= 0 { + delay = defaultMediaGroupDelay + } + group.timer = time.AfterFunc(delay, func() { + c.flushMediaGroup(c.ctx, key, generation) + }) + c.mediaGroupMu.Unlock() + + logger.DebugCF("telegram", "Buffered media group message", map[string]any{ + "chat_id": message.Chat.ID, + "media_group_id": groupID, + "message_id": message.MessageID, + }) + return nil +} + +func (c *TelegramChannel) flushPendingMediaGroups(ctx context.Context) { + c.mediaGroupMu.Lock() + keys := make([]string, 0, len(c.mediaGroups)) + for key, group := range c.mediaGroups { + if group.timer != nil { + group.timer.Stop() + } + keys = append(keys, key) + } + c.mediaGroupMu.Unlock() + + for _, key := range keys { + c.flushMediaGroup(ctx, key, 0) + } +} + +func (c *TelegramChannel) flushMediaGroup(ctx context.Context, key string, generation uint64) { + c.mediaGroupMu.Lock() + group := c.mediaGroups[key] + if group == nil { + c.mediaGroupMu.Unlock() + return + } + if generation != 0 && group.generation != generation { + c.mediaGroupMu.Unlock() + return + } + delete(c.mediaGroups, key) + if group.timer != nil { + group.timer.Stop() + } + messages := append([]*telego.Message(nil), group.messages...) + c.mediaGroupMu.Unlock() + + if len(messages) == 0 { + return + } + slices.SortFunc(messages, func(a, b *telego.Message) int { + switch { + case a == nil && b == nil: + return 0 + case a == nil: + return -1 + case b == nil: + return 1 + default: + return a.MessageID - b.MessageID + } + }) + if ctx == nil { + ctx = context.Background() + } + if err := c.handleMessages(ctx, messages); err != nil { + logger.ErrorCF("telegram", "Failed to handle media group", map[string]any{ + "key": key, + "error": err.Error(), + }) + } +} + +func (c *TelegramChannel) handleMessages(ctx context.Context, messages []*telego.Message) error { + if len(messages) == 0 { + return nil + } + message := messages[0] + for _, candidate := range messages { + if candidate == nil { + continue + } + if strings.TrimSpace(candidate.Text) != "" || strings.TrimSpace(candidate.Caption) != "" { + message = candidate + break + } + } if message == nil { return fmt.Errorf("message is nil") } @@ -740,7 +895,9 @@ func (c *TelegramChannel) handleMessage(ctx context.Context, message *telego.Mes } chatID := message.Chat.ID + c.chatIDsMu.Lock() c.chatIDs[platformID] = chatID + c.chatIDsMu.Unlock() content := "" mediaPaths := []string{} @@ -764,61 +921,18 @@ func (c *TelegramChannel) handleMessage(ctx context.Context, message *telego.Mes return localPath // fallback: use raw path } - if message.Text != "" { - content += message.Text - } - - if message.Caption != "" { - if content != "" { - content += "\n" + for i, msg := range messages { + if msg == nil { + continue } - content += message.Caption - } - - if len(message.Photo) > 0 { - photo := message.Photo[len(message.Photo)-1] - photoPath := c.downloadPhoto(ctx, photo.FileID) - if photoPath != "" { - mediaPaths = append(mediaPaths, storeMedia(photoPath, "photo.jpg")) + parts := c.collectTelegramMessageParts(ctx, msg, i, len(messages), storeMedia) + for _, part := range parts.content { if content != "" { content += "\n" } - content += "[image: photo]" - } - } - - if message.Voice != nil { - voicePath := c.downloadFile(ctx, message.Voice.FileID, ".ogg") - if voicePath != "" { - mediaPaths = append(mediaPaths, storeMedia(voicePath, "voice.ogg")) - - if content != "" { - content += "\n" - } - content += "[voice]" - } - } - - if message.Audio != nil { - audioPath := c.downloadFile(ctx, message.Audio.FileID, ".mp3") - if audioPath != "" { - mediaPaths = append(mediaPaths, storeMedia(audioPath, "audio.mp3")) - if content != "" { - content += "\n" - } - content += "[audio]" - } - } - - if message.Document != nil { - docPath := c.downloadFile(ctx, message.Document.FileID, "") - if docPath != "" { - mediaPaths = append(mediaPaths, storeMedia(docPath, "document")) - if content != "" { - content += "\n" - } - content += "[file]" + content += part } + mediaPaths = append(mediaPaths, parts.mediaPaths...) } if content == "" && len(mediaPaths) == 0 { @@ -917,6 +1031,71 @@ func (c *TelegramChannel) handleMessage(ctx context.Context, message *telego.Mes return nil } +func (c *TelegramChannel) collectTelegramMessageParts( + ctx context.Context, + msg *telego.Message, + index int, + total int, + storeMedia func(localPath, filename string) string, +) telegramMessageParts { + parts := telegramMessageParts{} + if msg == nil { + return parts + } + if text := strings.TrimSpace(msg.Text); text != "" { + parts.content = append(parts.content, text) + } + if caption := strings.TrimSpace(msg.Caption); caption != "" { + parts.content = append(parts.content, caption) + } + if len(msg.Photo) > 0 { + photo := msg.Photo[len(msg.Photo)-1] + photoPath := c.downloadPhoto(ctx, photo.FileID) + if photoPath != "" { + photoNumber := index + 1 + parts.mediaPaths = append(parts.mediaPaths, storeMedia(photoPath, fmt.Sprintf("photo-%d.jpg", photoNumber))) + parts.content = append(parts.content, fmt.Sprintf("[image: photo %d]", photoNumber)) + } + } + if msg.Voice != nil { + voicePath := c.downloadFile(ctx, msg.Voice.FileID, ".ogg") + if voicePath != "" { + parts.mediaPaths = append(parts.mediaPaths, storeMedia(voicePath, indexedMediaFilename("voice", ".ogg", index, total))) + parts.content = append(parts.content, "[voice]") + } + } + if msg.Audio != nil { + audioPath := c.downloadFile(ctx, msg.Audio.FileID, ".mp3") + if audioPath != "" { + filename := msg.Audio.FileName + if strings.TrimSpace(filename) == "" { + filename = indexedMediaFilename("audio", ".mp3", index, total) + } + parts.mediaPaths = append(parts.mediaPaths, storeMedia(audioPath, filename)) + parts.content = append(parts.content, "[audio]") + } + } + if msg.Document != nil { + docPath := c.downloadFile(ctx, msg.Document.FileID, "") + if docPath != "" { + filename := msg.Document.FileName + if strings.TrimSpace(filename) == "" { + filename = indexedMediaFilename("document", "", index, total) + } + parts.mediaPaths = append(parts.mediaPaths, storeMedia(docPath, filename)) + parts.content = append(parts.content, "[file]") + } + } + return parts +} + +func indexedMediaFilename(prefix, ext string, index int, total int) string { + if total <= 1 { + return prefix + ext + } + return fmt.Sprintf("%s-%d%s", prefix, index+1, ext) +} + func (c *TelegramChannel) prependTelegramQuotedReply(content string, reply *telego.Message) string { quoted := strings.TrimSpace(telegramQuotedContent(reply)) if quoted == "" { diff --git a/pkg/channels/telegram/telegram_test.go b/pkg/channels/telegram/telegram_test.go index 69c76b430..14d025064 100644 --- a/pkg/channels/telegram/telegram_test.go +++ b/pkg/channels/telegram/telegram_test.go @@ -10,6 +10,7 @@ import ( "strconv" "strings" "testing" + "time" "github.com/mymmrac/telego" ta "github.com/mymmrac/telego/telegoapi" @@ -1100,3 +1101,190 @@ func TestHandleMessage_EmptyContent_Ignored(t *testing.T) { default: } } + +func TestHandleMessage_MediaGroupCombinesCaptionMessages(t *testing.T) { + messageBus, ch := newMediaGroupTestChannel(10 * time.Millisecond) + base := testMediaGroupMessage("album-1") + first := base + first.MessageID = 1 + second := base + second.MessageID = 2 + second.Caption = "meal caption" + + require.NoError(t, ch.handleMessage(context.Background(), &first)) + require.NoError(t, ch.handleMessage(context.Background(), &second)) + + select { + case inbound := <-messageBus.InboundChan(): + assert.Equal(t, "2", inbound.Context.MessageID) + assert.Equal(t, "meal caption", inbound.Content) + case <-time.After(time.Second): + t.Fatal("timed out waiting for combined media group message") + } +} + +func TestHandleMessage_MediaGroupWaitsForStaggeredMessages(t *testing.T) { + messageBus, ch := newMediaGroupTestChannel(100 * time.Millisecond) + base := testMediaGroupMessage("album-staggered") + first := base + first.MessageID = 1 + first.Caption = "first caption" + second := base + second.MessageID = 2 + second.Caption = "second caption" + + require.NoError(t, ch.handleMessage(context.Background(), &first)) + time.Sleep(50 * time.Millisecond) + require.NoError(t, ch.handleMessage(context.Background(), &second)) + + select { + case inbound := <-messageBus.InboundChan(): + t.Fatalf("media group flushed before idle delay reset: %#v", inbound) + case <-time.After(75 * time.Millisecond): + } + + select { + case inbound := <-messageBus.InboundChan(): + assert.Equal(t, "1", inbound.Context.MessageID) + assert.Equal(t, "first caption\nsecond caption", inbound.Content) + case <-time.After(time.Second): + t.Fatal("timed out waiting for staggered media group message") + } +} + +func TestFlushMediaGroupIgnoresStaleTimerGeneration(t *testing.T) { + messageBus, ch := newMediaGroupTestChannel(time.Hour) + base := testMediaGroupMessage("album-generation") + first := base + first.MessageID = 1 + first.Caption = "first" + second := base + second.MessageID = 2 + second.Caption = "second" + key := "456:album-generation" + + ch.mediaGroupMu.Lock() + ch.mediaGroups[key] = &telegramMediaGroup{ + messages: []*telego.Message{&first, &second}, + generation: 2, + } + ch.mediaGroupMu.Unlock() + + ch.flushMediaGroup(context.Background(), key, 1) + + select { + case inbound := <-messageBus.InboundChan(): + t.Fatalf("stale media group generation flushed unexpectedly: %#v", inbound) + default: + } + + ch.mediaGroupMu.Lock() + _, stillPending := ch.mediaGroups[key] + ch.mediaGroupMu.Unlock() + require.True(t, stillPending, "stale flush should leave the current batch pending") + + ch.flushMediaGroup(context.Background(), key, 2) + + select { + case inbound := <-messageBus.InboundChan(): + assert.Equal(t, "1", inbound.Context.MessageID) + assert.Equal(t, "first\nsecond", inbound.Content) + case <-time.After(time.Second): + t.Fatal("timed out waiting for current generation media group flush") + } +} + +func TestHandleMessage_MediaGroupAfterDelayStartsNewBatch(t *testing.T) { + messageBus, ch := newMediaGroupTestChannel(10 * time.Millisecond) + base := testMediaGroupMessage("album-split") + first := base + first.MessageID = 1 + first.Caption = "first" + second := base + second.MessageID = 2 + second.Caption = "second" + + require.NoError(t, ch.handleMessage(context.Background(), &first)) + select { + case inbound := <-messageBus.InboundChan(): + assert.Equal(t, "1", inbound.Context.MessageID) + assert.Equal(t, "first", inbound.Content) + case <-time.After(time.Second): + t.Fatal("timed out waiting for first media group batch") + } + + require.NoError(t, ch.handleMessage(context.Background(), &second)) + select { + case inbound := <-messageBus.InboundChan(): + assert.Equal(t, "2", inbound.Context.MessageID) + assert.Equal(t, "second", inbound.Content) + case <-time.After(time.Second): + t.Fatal("timed out waiting for second media group batch") + } +} + +func TestStopFlushesPendingMediaGroups(t *testing.T) { + messageBus, ch := newMediaGroupTestChannel(time.Hour) + base := testMediaGroupMessage("album-stop") + msg := base + msg.MessageID = 1 + msg.Caption = "caption before stop" + + require.NoError(t, ch.handleMessage(context.Background(), &msg)) + require.NoError(t, ch.Stop(context.Background())) + + select { + case inbound := <-messageBus.InboundChan(): + assert.Equal(t, "1", inbound.Context.MessageID) + assert.Equal(t, "caption before stop", inbound.Content) + case <-time.After(time.Second): + t.Fatal("timed out waiting for pending media group flush on stop") + } +} + +func TestNewTelegramChannelUsesConfiguredMediaGroupDelay(t *testing.T) { + ch, err := NewTelegramChannel( + &config.Channel{Type: config.ChannelTelegram, Enabled: true}, + &config.TelegramSettings{ + Token: *config.NewSecureString(testToken), + MediaGroupDelayMS: 750, + }, + bus.NewMessageBus(), + ) + require.NoError(t, err) + assert.Equal(t, 750*time.Millisecond, ch.mediaGroupDelay) + + ch, err = NewTelegramChannel( + &config.Channel{Type: config.ChannelTelegram, Enabled: true}, + &config.TelegramSettings{Token: *config.NewSecureString(testToken)}, + bus.NewMessageBus(), + ) + require.NoError(t, err) + assert.Equal(t, defaultMediaGroupDelay, ch.mediaGroupDelay) +} + +func newMediaGroupTestChannel(delay time.Duration) (*bus.MessageBus, *TelegramChannel) { + messageBus := bus.NewMessageBus() + ch := &TelegramChannel{ + BaseChannel: channels.NewBaseChannel("telegram", nil, messageBus, nil), + chatIDs: make(map[string]int64), + ctx: context.Background(), + mediaGroups: make(map[string]*telegramMediaGroup), + mediaGroupDelay: delay, + } + return messageBus, ch +} + +func testMediaGroupMessage(mediaGroupID string) telego.Message { + return telego.Message{ + Chat: telego.Chat{ + ID: 456, + Type: "private", + }, + From: &telego.User{ + ID: 789, + FirstName: "User", + }, + MediaGroupID: mediaGroupID, + } +} diff --git a/pkg/config/config.go b/pkg/config/config.go index c9d90e0f8..7956cc090 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -359,11 +359,12 @@ type WhatsAppSettings struct { } type TelegramSettings struct { - Token SecureString `json:"token,omitzero" yaml:"token,omitempty" env:"PICOCLAW_CHANNELS_TELEGRAM_TOKEN"` - BaseURL string `json:"base_url" yaml:"-" env:"PICOCLAW_CHANNELS_TELEGRAM_BASE_URL"` - Proxy string `json:"proxy" yaml:"-" env:"PICOCLAW_CHANNELS_TELEGRAM_PROXY"` - Streaming StreamingConfig `json:"streaming,omitempty" yaml:"-"` - UseMarkdownV2 bool `json:"use_markdown_v2" yaml:"-" env:"PICOCLAW_CHANNELS_TELEGRAM_USE_MARKDOWN_V2"` + Token SecureString `json:"token,omitzero" yaml:"token,omitempty" env:"PICOCLAW_CHANNELS_TELEGRAM_TOKEN"` + BaseURL string `json:"base_url" yaml:"-" env:"PICOCLAW_CHANNELS_TELEGRAM_BASE_URL"` + Proxy string `json:"proxy" yaml:"-" env:"PICOCLAW_CHANNELS_TELEGRAM_PROXY"` + Streaming StreamingConfig `json:"streaming,omitempty" yaml:"-"` + UseMarkdownV2 bool `json:"use_markdown_v2" yaml:"-" env:"PICOCLAW_CHANNELS_TELEGRAM_USE_MARKDOWN_V2"` + MediaGroupDelayMS int `json:"media_group_delay_ms" yaml:"-" env:"PICOCLAW_CHANNELS_TELEGRAM_MEDIA_GROUP_DELAY_MS"` } type FeishuSettings struct { diff --git a/pkg/config/defaults.go b/pkg/config/defaults.go index 8e2494ae5..26f00fa84 100644 --- a/pkg/config/defaults.go +++ b/pkg/config/defaults.go @@ -496,8 +496,9 @@ func defaultChannels() ChannelsConfig { "typing": map[string]any{"enabled": true}, "placeholder": map[string]any{"enabled": true, "text": []string{"Thinking... 💭"}}, "settings": map[string]any{ - "streaming": map[string]any{"enabled": true, "throttle_seconds": 3, "min_growth_chars": 200}, - "use_markdown_v2": false, + "streaming": map[string]any{"enabled": true, "throttle_seconds": 3, "min_growth_chars": 200}, + "use_markdown_v2": false, + "media_group_delay_ms": 500, }, }, "feishu": map[string]any{}, From 6801cc7ab8971019c0385e30470077f4307f4b1c Mon Sep 17 00:00:00 2001 From: Anton Bogdanovich <27antonb@gmail.com> Date: Thu, 7 May 2026 14:52:10 -0700 Subject: [PATCH 03/26] fix(telegram): wrap long voice media append --- pkg/channels/telegram/telegram.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkg/channels/telegram/telegram.go b/pkg/channels/telegram/telegram.go index b3685a7c6..0965bcedc 100644 --- a/pkg/channels/telegram/telegram.go +++ b/pkg/channels/telegram/telegram.go @@ -1060,7 +1060,10 @@ func (c *TelegramChannel) collectTelegramMessageParts( if msg.Voice != nil { voicePath := c.downloadFile(ctx, msg.Voice.FileID, ".ogg") if voicePath != "" { - parts.mediaPaths = append(parts.mediaPaths, storeMedia(voicePath, indexedMediaFilename("voice", ".ogg", index, total))) + parts.mediaPaths = append( + parts.mediaPaths, + storeMedia(voicePath, indexedMediaFilename("voice", ".ogg", index, total)), + ) parts.content = append(parts.content, "[voice]") } } From 255a67e2dabd58184ae49b5db58eb84de03aa075 Mon Sep 17 00:00:00 2001 From: lxowalle <83055338+lxowalle@users.noreply.github.com> Date: Tue, 12 May 2026 10:18:59 +0800 Subject: [PATCH 04/26] docs: add LicheeRV-Claw AliExpress news (#2854) * docs: add LicheeRV-Claw AliExpress news * * update picture * * update multi-language docs * * update taobao link for readme.zh.md --- README.md | 8 ++++++++ assets/licheerv-claw.jpg | Bin 0 -> 220081 bytes docs/project/README.fr.md | 8 ++++++++ docs/project/README.id.md | 8 ++++++++ docs/project/README.it.md | 8 ++++++++ docs/project/README.ja.md | 8 ++++++++ docs/project/README.ko.md | 8 ++++++++ docs/project/README.ms.md | 8 ++++++++ docs/project/README.pt-br.md | 8 ++++++++ docs/project/README.vi.md | 8 ++++++++ docs/project/README.zh.md | 14 +++++++++++--- 11 files changed, 83 insertions(+), 3 deletions(-) create mode 100644 assets/licheerv-claw.jpg diff --git a/README.md b/README.md index 62a6f2974..ae7f6ee54 100644 --- a/README.md +++ b/README.md @@ -56,6 +56,14 @@ ## 📢 News +2026-05-11 🛒 **LicheeRV-Claw on AliExpress!** You can now purchase LicheeRV-Claw from [AliExpress](https://www.aliexpress.com/item/1005006519668532.html), making it easier to try PicoClaw on compact RISC-V hardware. + +

+ + LicheeRV-Claw on AliExpress + +

+ 2026-03-31 📱 **Android Support!** PicoClaw now runs on Android! Download the APK at [picoclaw.io](https://picoclaw.io/download) 2026-03-25 🚀 **v0.2.4 Released!** Agent architecture overhaul (SubTurn, Hooks, Steering, EventBus), WeChat/WeCom integration, security hardening (.security.yml, sensitive data filtering), new providers (AWS Bedrock, Azure, Xiaomi MiMo), and 35 bug fixes. PicoClaw has reached **26K Stars**! diff --git a/assets/licheerv-claw.jpg b/assets/licheerv-claw.jpg new file mode 100644 index 0000000000000000000000000000000000000000..afcf6b8d345e1715ad050cf27e5d89db80371ce6 GIT binary patch literal 220081 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⊤`-z^&OKb=!&YW5A^~3ky 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 + 2026-03-31 📱 **Support Android !** PicoClaw fonctionne maintenant sur Android ! Téléchargez l'APK sur [picoclaw.io](https://picoclaw.io/download) 2026-03-25 🚀 **v0.2.4 publiée !** Refonte de l'architecture Agent (SubTurn, Hooks, Steering, EventBus), intégration WeChat/WeCom, renforcement de la sécurité (.security.yml, filtrage des données sensibles), nouveaux providers (AWS Bedrock, Azure, Xiaomi MiMo), et 35 corrections de bugs. PicoClaw a atteint **26K Stars** ! diff --git a/docs/project/README.id.md b/docs/project/README.id.md index b03be36d7..49568f654 100644 --- a/docs/project/README.id.md +++ b/docs/project/README.id.md @@ -56,6 +56,14 @@ ## 📢 Berita +2026-05-11 🛒 **LicheeRV-Claw tersedia di AliExpress!** Kini Anda dapat membeli LicheeRV-Claw di [AliExpress](https://www.aliexpress.com/item/1005006519668532.html), sehingga lebih mudah mencoba PicoClaw di hardware RISC-V ringkas. + +

+ + LicheeRV-Claw on AliExpress + +

+ 2026-03-31 📱 **Dukungan Android!** PicoClaw sekarang berjalan di Android! Unduh APK di [picoclaw.io](https://picoclaw.io/download) 2026-03-25 🚀 **v0.2.4 Dirilis!** Perombakan arsitektur Agent (SubTurn, Hooks, Steering, EventBus), integrasi WeChat/WeCom, penguatan keamanan (.security.yml, penyaringan data sensitif), provider baru (AWS Bedrock, Azure, Xiaomi MiMo), dan 35 perbaikan bug. PicoClaw telah mencapai **26K Stars**! diff --git a/docs/project/README.it.md b/docs/project/README.it.md index 3a1a0460c..4d04718f4 100644 --- a/docs/project/README.it.md +++ b/docs/project/README.it.md @@ -56,6 +56,14 @@ ## 📢 Novità +2026-05-11 🛒 **LicheeRV-Claw disponibile su AliExpress!** Ora puoi acquistare LicheeRV-Claw su [AliExpress](https://www.aliexpress.com/item/1005006519668532.html), rendendo più semplice provare PicoClaw su hardware RISC-V compatto. + +

+ + LicheeRV-Claw on AliExpress + +

+ 2026-03-31 📱 **Supporto Android!** PicoClaw ora funziona su Android! Scarica l'APK su [picoclaw.io](https://picoclaw.io/download) 2026-03-25 🚀 **v0.2.4 rilasciata!** Revisione dell'architettura Agent (SubTurn, Hooks, Steering, EventBus), integrazione WeChat/WeCom, rafforzamento della sicurezza (.security.yml, filtraggio dati sensibili), nuovi provider (AWS Bedrock, Azure, Xiaomi MiMo) e 35 correzioni di bug. PicoClaw raggiunge **26K Stars**! diff --git a/docs/project/README.ja.md b/docs/project/README.ja.md index 591faa13a..1a1e9f469 100644 --- a/docs/project/README.ja.md +++ b/docs/project/README.ja.md @@ -56,6 +56,14 @@ ## 📢 ニュース +2026-05-11 🛒 **LicheeRV-Claw が AliExpress で購入可能に!** [AliExpress](https://www.aliexpress.com/item/1005006519668532.html) から LicheeRV-Claw を購入できるようになり、コンパクトな RISC-V ハードウェアで PicoClaw を試しやすくなりました。 + +

+ + LicheeRV-Claw on AliExpress + +

+ 2026-03-31 📱 **Android サポート!** PicoClawがAndroidで動作!APKは[picoclaw.io](https://picoclaw.io/download)からダウンロード 2026-03-25 🚀 **v0.2.4 リリース!** Agent アーキテクチャ全面刷新(SubTurn、Hooks、Steering、EventBus)、WeChat/WeCom 統合、セキュリティ強化(.security.yml、機密データフィルタリング)、新プロバイダー(AWS Bedrock、Azure、Xiaomi MiMo)、35 件のバグ修正。PicoClaw **26K ⭐** 達成! diff --git a/docs/project/README.ko.md b/docs/project/README.ko.md index f47cda8a1..2c79d161a 100644 --- a/docs/project/README.ko.md +++ b/docs/project/README.ko.md @@ -56,6 +56,14 @@ ## 📢 뉴스 +2026-05-11 🛒 **LicheeRV-Claw를 AliExpress에서 구매할 수 있습니다!** 이제 [AliExpress](https://www.aliexpress.com/item/1005006519668532.html)에서 LicheeRV-Claw를 구매해 소형 RISC-V 하드웨어에서 PicoClaw를 더 쉽게 사용해 볼 수 있습니다. + +

+ + LicheeRV-Claw on AliExpress + +

+ 2026-03-31 📱 **Android 지원!** PicoClaw가 이제 Android에서 실행됩니다! APK는 [picoclaw.io](https://picoclaw.io/download)에서 다운로드하세요. 2026-03-25 🚀 **v0.2.4 출시!** 에이전트 아키텍처 전면 개편(SubTurn, Hooks, Steering, EventBus), WeChat/WeCom 통합, 보안 강화(`.security.yml`, 민감 정보 필터링), 새 프로바이더(AWS Bedrock, Azure, Xiaomi MiMo), 그리고 35건의 버그 수정이 포함되었습니다. PicoClaw는 **26K 스타**를 달성했습니다! diff --git a/docs/project/README.ms.md b/docs/project/README.ms.md index daef86d9e..068208fac 100644 --- a/docs/project/README.ms.md +++ b/docs/project/README.ms.md @@ -56,6 +56,14 @@ ## 📢 Berita +2026-05-11 🛒 **LicheeRV-Claw tersedia di AliExpress!** Anda kini boleh membeli LicheeRV-Claw di [AliExpress](https://www.aliexpress.com/item/1005006519668532.html), menjadikannya lebih mudah untuk mencuba PicoClaw pada perkakasan RISC-V yang kompak. + +

+ + LicheeRV-Claw on AliExpress + +

+ 2026-03-31 📱 **Sokongan Android!** PicoClaw sekarang berjalan di Android! Muat turun APK di [picoclaw.io](https://picoclaw.io/download) 2026-03-25 🚀 **v0.2.4 Dikeluarkan!** Penstrukturan semula seni bina Agent (SubTurn, Hooks, Steering, EventBus), integrasi WeChat/WeCom, penguatan keselamatan (.security.yml, penapisan data sensitif), penyedia baharu (AWS Bedrock, Azure, Xiaomi MiMo), dan 35 pembetulan pepijat. PicoClaw mencapai **26K Stars**! diff --git a/docs/project/README.pt-br.md b/docs/project/README.pt-br.md index 6ba80cf11..b69b04caf 100644 --- a/docs/project/README.pt-br.md +++ b/docs/project/README.pt-br.md @@ -56,6 +56,14 @@ ## 📢 Novidades +2026-05-11 🛒 **LicheeRV-Claw no AliExpress!** Agora você pode comprar o LicheeRV-Claw no [AliExpress](https://www.aliexpress.com/item/1005006519668532.html), facilitando testar o PicoClaw em hardware RISC-V compacto. + +

+ + LicheeRV-Claw on AliExpress + +

+ 2026-03-31 📱 **Suporte Android!** PicoClaw agora roda no Android! Baixe o APK em [picoclaw.io](https://picoclaw.io/download) 2026-03-25 🚀 **v0.2.4 Lançada!** Reformulação da arquitetura Agent (SubTurn, Hooks, Steering, EventBus), integração WeChat/WeCom, fortalecimento de segurança (.security.yml, filtragem de dados sensíveis), novos providers (AWS Bedrock, Azure, Xiaomi MiMo) e 35 correções de bugs. O PicoClaw atingiu **26K Stars**! diff --git a/docs/project/README.vi.md b/docs/project/README.vi.md index d319ef6c4..7311fb21e 100644 --- a/docs/project/README.vi.md +++ b/docs/project/README.vi.md @@ -56,6 +56,14 @@ ## 📢 Tin tức +2026-05-11 🛒 **LicheeRV-Claw đã có trên AliExpress!** Bạn hiện có thể mua LicheeRV-Claw trên [AliExpress](https://www.aliexpress.com/item/1005006519668532.html), giúp việc thử PicoClaw trên phần cứng RISC-V nhỏ gọn dễ dàng hơn. + +

+ + LicheeRV-Claw on AliExpress + +

+ 2026-03-31 📱 **Hỗ trợ Android!** PicoClaw giờ chạy trên Android! Tải APK tại [picoclaw.io](https://picoclaw.io/download) 2026-03-25 🚀 **v0.2.4 đã phát hành!** Tái cấu trúc kiến trúc Agent (SubTurn, Hooks, Steering, EventBus), tích hợp WeChat/WeCom, tăng cường bảo mật (.security.yml, lọc dữ liệu nhạy cảm), provider mới (AWS Bedrock, Azure, Xiaomi MiMo) và 35 bản vá lỗi. PicoClaw đã đạt **26K Stars**! diff --git a/docs/project/README.zh.md b/docs/project/README.zh.md index 77f5010b7..66e2f7ebe 100644 --- a/docs/project/README.zh.md +++ b/docs/project/README.zh.md @@ -56,6 +56,14 @@ ## 📢 新闻 +2026-05-11 🛒 **LicheeRV-Claw 已上架淘宝!** 现在可以在 [淘宝](https://item.taobao.com/item.htm?abbucket=20&id=764939520376) 购买 LicheeRV-Claw,更方便地在小型 RISC-V 硬件上体验 PicoClaw。 + +

+ + LicheeRV-Claw on Taobao + +

+ 2026-03-31 📱 **Android 支持!** PicoClaw 现可在 Android 上运行!APK 下载地址:[picoclaw.io](https://picoclaw.io/download) 2026-03-25 🚀 **v0.2.4 发布!** Agent 架构全面重构(SubTurn、Hook、Steering、EventBus)、微信/企业微信深度集成、安全体系升级(.security.yml、敏感数据过滤)、新增 Provider(AWS Bedrock、Azure、小米 MiMo),以及 35 项 Bug 修复。PicoClaw 已达 **26K ⭐**! @@ -144,9 +152,9 @@ _*近期版本因快速合并 PR 可能占用 10–20MB,资源优化已列入 PicoClaw 几乎可以部署在任何 Linux 设备上! -- $9.9 [LicheeRV-Nano](https://www.aliexpress.com/item/1005006519668532.html) E(网口) 或 W(WiFi6) 版本,用于极简家庭助手 -- $30~50 [NanoKVM](https://www.aliexpress.com/item/1005007369816019.html),或 $100 [NanoKVM-Pro](https://www.aliexpress.com/item/1005010048471263.html),用于自动化服务器运维 -- $50 [MaixCAM](https://www.aliexpress.com/item/1005008053333693.html) 或 $100 [MaixCAM2](https://www.kickstarter.com/projects/zepan/maixcam2-build-your-next-gen-4k-ai-camera),用于智能监控 +- $9.9 [LicheeRV-Nano](https://item.taobao.com/item.htm?id=764939520376) E(网口) 或 W(WiFi6) 版本,用于极简家庭助手 +- $30~50 [NanoKVM](https://item.taobao.com/item.htm?id=811206560480),或 $100 [NanoKVM-Pro](https://item.taobao.com/item.htm?id=994419942411),用于自动化服务器运维 +- $50 [MaixCAM](https://item.taobao.com/item.htm?id=784724795837) 或 $100 [MaixCAM2](https://item.taobao.com/item.htm?id=1050380368975),用于智能监控 From 223ebdf0c77461fbaef4beaa9f9eb223962b5f70 Mon Sep 17 00:00:00 2001 From: lxowalle <83055338+lxowalle@users.noreply.github.com> Date: Tue, 12 May 2026 11:23:06 +0800 Subject: [PATCH 05/26] docs: add evolution config controls (#2852) * docs: add evolution config controls * docs: address evolution config review --- config/config.example.json | 9 ++ docs/architecture/README.md | 1 + docs/architecture/agent-self-evolution.md | 47 ++++++ docs/guides/configuration.md | 30 ++++ docs/guides/configuration.zh.md | 30 ++++ web/README.md | 2 +- .../src/components/config/config-page.tsx | 28 ++++ .../src/components/config/config-sections.tsx | 146 ++++++++++++++++++ .../src/components/config/form-model.ts | 56 +++++++ web/frontend/src/i18n/locales/en.json | 22 +++ web/frontend/src/i18n/locales/pt-br.json | 22 +++ web/frontend/src/i18n/locales/zh.json | 22 +++ 12 files changed, 414 insertions(+), 1 deletion(-) create mode 100644 docs/architecture/agent-self-evolution.md diff --git a/config/config.example.json b/config/config.example.json index 910c4fbd3..2be964ec6 100644 --- a/config/config.example.json +++ b/config/config.example.json @@ -20,6 +20,15 @@ } } }, + "evolution": { + "enabled": false, + "mode": "observe", + "state_dir": "", + "min_task_count": 2, + "min_success_ratio": 0.7, + "cold_path_trigger": "after_turn", + "cold_path_times": [] + }, "model_list": [ { "model_name": "gpt-5.4", diff --git a/docs/architecture/README.md b/docs/architecture/README.md index e5fc3b540..17e144ebd 100644 --- a/docs/architecture/README.md +++ b/docs/architecture/README.md @@ -7,6 +7,7 @@ Internal architecture notes for major runtime mechanisms and subsystem design. - [Session System](session-system.md): session scope allocation, JSONL persistence, alias compatibility, and migration. ([ZH](session-system.zh.md)) - [Routing System](routing-system.md): agent dispatch, session policy selection, and light/heavy model routing. ([ZH](routing-system.zh.md)) - [Runtime Events](runtime-events.md): runtime event envelope, centralized event logging, filters, and examples. ([ZH](runtime-events.zh.md)) +- [Agent Self-Evolution](agent-self-evolution.md): learning records, draft generation, application modes, and state layout. - [Hook System Guide](hooks/README.md): current hook architecture and protocol details. - [Agent Refactor](agent-refactor/README.md): notes and checkpoints for the agent refactor work. diff --git a/docs/architecture/agent-self-evolution.md b/docs/architecture/agent-self-evolution.md new file mode 100644 index 000000000..40e040fa0 --- /dev/null +++ b/docs/architecture/agent-self-evolution.md @@ -0,0 +1,47 @@ +# Agent Self-Evolution + +Agent self-evolution lets PicoClaw learn from completed turns and turn repeated successful behavior into skill improvements. The runtime is controlled by the top-level `evolution` config block. + +## Flow + +The hot path runs at the end of an agent turn. When `evolution.enabled` is true, it records a learning record with the turn summary, success state, used skills, tool executions, and session/workspace metadata. Heartbeat turns are skipped. + +The cold path groups related task records, checks the configured success threshold, and prepares skill drafts for patterns that have enough evidence. Drafts can target new skills or append/replace/merge existing workspace skills. + +The apply path validates generated `SKILL.md` content before writing. Invalid drafts are rejected before a skill directory or file is created. + +## Safety Considerations + +Evolution creates a persistent feedback loop: user input can become a task record, task records can be clustered into an LLM-generated draft, and an accepted draft can become `SKILL.md` content that is loaded into future agent prompts. Treat generated skill content as prompt-sensitive material, especially in `apply` mode. + +The current local scanner is a narrow guardrail, not a complete safety boundary. It rejects structurally invalid drafts and a small set of obvious secret-like substrings, but it does not reliably detect prompt injection, unsafe instructions, or every form of sensitive data. Use `observe` or `draft` when human review is required before skill changes reach disk. + +In `apply` mode, accepted drafts can update workspace skills automatically. Existing skills are backed up before replacement, but recovery is manual: an operator must restore the desired backup if an applied skill should be rolled back. + +## Modes + +| Mode | Behavior | +|------|----------| +| `observe` | Record learning data only. No cold-path draft generation runs automatically. | +| `draft` | Record learning data and generate candidate skill drafts when the cold path runs. | +| `apply` | Generate drafts and allow accepted drafts to update workspace skills. | + +When `evolution.enabled` is false, `mode` is treated as disabled at runtime. + +## Cold Path Trigger + +`cold_path_trigger` only matters in `draft` and `apply` modes. + +| Trigger | Behavior | +|---------|----------| +| `after_turn` | Run the cold path after eligible turns. | +| `scheduled` | Run the cold path at configured `cold_path_times`. | +| `manual` | Do not run automatically. There is no user-facing Web/API/CLI trigger yet; code can still invoke `Runtime.RunColdPathOnce`. | + +`cold_path_times` uses `HH:MM` strings and is ignored unless the trigger is `scheduled`. + +## State + +By default, evolution state is stored under the workspace. `state_dir` can redirect that state to another directory. The state includes learning records, clustered pattern records, drafts, and skill profiles. + +For user-facing configuration fields, see the [Configuration Guide](../guides/configuration.md#agent-self-evolution). diff --git a/docs/guides/configuration.md b/docs/guides/configuration.md index 3bec847ba..64a61f241 100644 --- a/docs/guides/configuration.md +++ b/docs/guides/configuration.md @@ -69,6 +69,36 @@ PicoClaw stores data in your configured workspace (default: `~/.picoclaw/workspa > **Note:** Changes to `AGENT.md`, `SOUL.md`, `USER.md` and `memory/MEMORY.md` are automatically detected at runtime via file modification time (mtime) tracking. You do **not** need to restart the gateway after editing these files — the agent picks up the new content on the next request. +### Agent Self-Evolution + +The `evolution` block controls PicoClaw's self-evolution runtime. When enabled, the agent records completed turns as learning records. In higher modes it can group repeated successful patterns, generate skill drafts, and optionally apply accepted drafts into workspace skills. + +```json +{ + "evolution": { + "enabled": false, + "mode": "observe", + "state_dir": "", + "min_task_count": 2, + "min_success_ratio": 0.7, + "cold_path_trigger": "after_turn", + "cold_path_times": [] + } +} +``` + +| Field | Default | Description | +|-------|---------|-------------| +| `enabled` | `false` | Enables learning-record capture for completed agent turns. Heartbeat turns are ignored. | +| `mode` | `observe` | `observe` records data only. `draft` can generate candidate skill drafts. `apply` can apply accepted drafts to workspace skills. | +| `state_dir` | `""` | Optional directory for evolution state. Leave empty to use the default under the workspace. | +| `min_task_count` | `2` | Minimum related task records required before a pattern is eligible for draft generation. | +| `min_success_ratio` | `0.7` | Minimum success ratio for a task cluster. Use a value greater than `0` and up to `1`. | +| `cold_path_trigger` | `after_turn` | Runs draft generation `after_turn`, on a `scheduled` cadence, or disables automatic cold-path runs when set to `manual`. There is no user-facing manual trigger yet. Applies only in `draft` and `apply` modes. | +| `cold_path_times` | `[]` | Scheduled run times used when `cold_path_trigger` is `scheduled`, written as `HH:MM` strings. | + +Use `observe` first if you want to inspect learning records without generating skill changes. Use `draft` when you want PicoClaw to prepare reviewable improvements. Use `apply` only when you are comfortable letting accepted drafts update workspace skills. + ### Web launcher dashboard **picoclaw-launcher** serves a browser UI that requires password sign-in first. On first run, open `/launcher-setup` to create the dashboard password. Later manual sign-ins use `/launcher-login`. diff --git a/docs/guides/configuration.zh.md b/docs/guides/configuration.zh.md index c41c3dae0..a6e4d42b9 100644 --- a/docs/guides/configuration.zh.md +++ b/docs/guides/configuration.zh.md @@ -67,6 +67,36 @@ PicoClaw 将数据存储在您配置的工作区中(默认:`~/.picoclaw/work > **提示:** 对 `AGENT.md`、`SOUL.md`、`USER.md` 和 `memory/MEMORY.md` 的修改会通过文件修改时间(mtime)在运行时自动检测。**无需重启 gateway**,Agent 将在下一次请求时自动加载最新内容。 +### Agent 自进化 + +`evolution` 配置块控制 PicoClaw 的自进化运行时。启用后,Agent 会把已完成的回合记录为学习记录。在更高模式下,它可以聚类重复出现的成功模式、生成技能草稿,并可选择把已接受的草稿应用到工作区技能中。 + +```json +{ + "evolution": { + "enabled": false, + "mode": "observe", + "state_dir": "", + "min_task_count": 2, + "min_success_ratio": 0.7, + "cold_path_trigger": "after_turn", + "cold_path_times": [] + } +} +``` + +| 字段 | 默认值 | 说明 | +|------|--------|------| +| `enabled` | `false` | 启用已完成 Agent 回合的学习记录采集。Heartbeat 回合会被忽略。 | +| `mode` | `observe` | `observe` 只记录数据;`draft` 可生成候选技能草稿;`apply` 可将已接受草稿应用到工作区技能。 | +| `state_dir` | `""` | 自进化状态的可选目录。留空时使用工作区下的默认位置。 | +| `min_task_count` | `2` | 一个模式具备生成草稿资格前所需的最小相关任务记录数。 | +| `min_success_ratio` | `0.7` | 任务聚类所需的最小成功率,取值需大于 `0`,且不超过 `1`。 | +| `cold_path_trigger` | `after_turn` | 草稿生成可在 `after_turn` 后运行、按 `scheduled` 定时运行;设置为 `manual` 时会关闭自动冷路径运行。目前还没有用户可用的手动触发入口。仅在 `draft` 和 `apply` 模式下生效。 | +| `cold_path_times` | `[]` | 当 `cold_path_trigger` 为 `scheduled` 时使用的运行时间,格式为 `HH:MM` 字符串。 | + +如果你只想先检查学习记录,建议从 `observe` 开始。需要生成可审查改进时使用 `draft`。只有在你接受让已通过的草稿更新工作区技能时,才使用 `apply`。 + ### Web 启动器控制台 用 **picoclaw-launcher** 打开浏览器控制台前需要先使用密码登录。首次启动时打开 `/launcher-setup` 创建 dashboard 登录密码;后续手动登录使用 `/launcher-login`。 diff --git a/web/README.md b/web/README.md index 87760cd94..774ad8f5d 100644 --- a/web/README.md +++ b/web/README.md @@ -55,7 +55,7 @@ The current frontend exposes these major pages and flows: - `/agent/tools` - View tool availability and enable or disable tool switches through config-backed APIs. - `/config` - - Edit agent defaults, exec controls, cron controls, heartbeat, device monitoring, launcher networking, and launch-at-login settings. + - Edit agent defaults, self-evolution, exec controls, cron controls, heartbeat, device monitoring, launcher networking, and launch-at-login settings. - `/logs` - View the in-memory gateway log buffer and clear it. diff --git a/web/frontend/src/components/config/config-page.tsx b/web/frontend/src/components/config/config-page.tsx index f74b258f6..8af5815f0 100644 --- a/web/frontend/src/components/config/config-page.tsx +++ b/web/frontend/src/components/config/config-page.tsx @@ -20,6 +20,7 @@ import { AgentDefaultsSection, CronSection, DevicesSection, + EvolutionSection, ExecSection, LauncherSection, MCPSection, @@ -33,6 +34,7 @@ import { type MCPServerForm, buildFormFromConfig, parseCIDRText, + parseFloatField, parseIntField, parseJSONObjectField, parseMultilineList, @@ -281,6 +283,16 @@ export function ConfigPage() { "Cron exec timeout", { min: 0 }, ) + const evolutionMinTaskCount = parseIntField( + form.evolutionMinTaskCount, + "Evolution minimum task count", + { min: 1 }, + ) + const evolutionMinSuccessRatio = parseFloatField( + form.evolutionMinSuccessRatio, + "Evolution minimum success ratio", + { min: 0.01, max: 1 }, + ) const mcpDiscoveryValidationEnabled = form.mcpEnabled && form.mcpDiscoveryEnabled const mcpDiscoveryPatch: Record = { @@ -500,6 +512,20 @@ export function ConfigPage() { session: { dm_scope: dmScope, }, + evolution: { + enabled: form.evolutionEnabled, + mode: form.evolutionMode, + state_dir: + form.evolutionStateDir.trim() === "" + ? null + : form.evolutionStateDir.trim(), + min_task_count: evolutionMinTaskCount, + min_success_ratio: evolutionMinSuccessRatio, + cold_path_trigger: form.evolutionColdPathTrigger, + cold_path_times: parseMultilineList( + form.evolutionColdPathTimesText, + ), + }, tools: { cron: { allow_command: form.allowCommand, @@ -661,6 +687,8 @@ export function ConfigPage() { + + void } +interface EvolutionSectionProps { + form: CoreConfigForm + onFieldChange: UpdateCoreField +} + +export function EvolutionSection({ + form, + onFieldChange, +}: EvolutionSectionProps) { + const { t } = useTranslation() + + return ( + + + onFieldChange("evolutionEnabled", checked) + } + /> + + + + + + + onFieldChange("evolutionStateDir", e.target.value)} + placeholder="e.g. /var/lib/picoclaw/evolution" + /> + + + + + onFieldChange("evolutionMinTaskCount", e.target.value) + } + /> + + + + + onFieldChange("evolutionMinSuccessRatio", e.target.value) + } + /> + + + + + + + {form.evolutionColdPathTrigger === "scheduled" && ( + +

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%0D|BmiOY<91 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 + + LicheeRV-Claw on AliExpress + +