From 5a4e42d1b643e42509ed6fe60ef336adad5a027d Mon Sep 17 00:00:00 2001 From: Anton Bogdanovich <27antonb@gmail.com> Date: Mon, 11 May 2026 16:04:26 -0700 Subject: [PATCH 01/21] feat(message): support media attachments in outbound tool --- pkg/agent/agent_init.go | 16 ++ pkg/agent/agent_test.go | 6 +- pkg/channels/feishu/feishu_64.go | 17 ++ pkg/channels/slack/slack.go | 22 ++ pkg/channels/telegram/telegram.go | 177 +++++++++++++++++ pkg/channels/telegram/telegram_test.go | 265 +++++++++++++++++++++++++ pkg/tools/integration/message.go | 242 ++++++++++++++++++++-- pkg/tools/integration/message_test.go | 118 +++++++++-- 8 files changed, 836 insertions(+), 27 deletions(-) diff --git a/pkg/agent/agent_init.go b/pkg/agent/agent_init.go index 50f0227a1..14b3f8bfe 100644 --- a/pkg/agent/agent_init.go +++ b/pkg/agent/agent_init.go @@ -161,9 +161,16 @@ func registerSharedTools( // Message tool if cfg.Tools.IsToolEnabled("message") { messageTool := tools.NewMessageTool() + messageTool.ConfigureLocalMedia( + agent.Workspace, + cfg.Agents.Defaults.RestrictToWorkspace, + cfg.Agents.Defaults.GetMaxMediaSize(), + allowReadPaths, + ) messageTool.SetSendCallback(func( ctx context.Context, channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, ) error { pubCtx, pubCancel := context.WithTimeout(context.Background(), 5*time.Second) defer pubCancel() @@ -173,6 +180,15 @@ func registerSharedTools( tools.ToolSessionKey(ctx), tools.ToolSessionScope(ctx), ) + if len(mediaParts) > 0 { + return msgBus.PublishOutboundMedia(pubCtx, bus.OutboundMediaMessage{ + Context: outboundCtx, + AgentID: outboundAgentID, + SessionKey: outboundSessionKey, + Scope: outboundScope, + Parts: mediaParts, + }) + } return msgBus.PublishOutbound(pubCtx, bus.OutboundMessage{ Context: outboundCtx, AgentID: outboundAgentID, diff --git a/pkg/agent/agent_test.go b/pkg/agent/agent_test.go index 29c2b32ea..6196b3f0b 100644 --- a/pkg/agent/agent_test.go +++ b/pkg/agent/agent_test.go @@ -377,7 +377,11 @@ func TestPublishResponseIfNeeded_DismissesToolFeedbackWhenMessageToolAlreadySent t.Fatal("expected default agent") } mt := tools.NewMessageTool() - mt.SetSendCallback(func(ctx context.Context, channel, chatID, content, replyToMessageID string) error { + mt.SetSendCallback(func( + ctx context.Context, + channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, + ) error { return nil }) defaultAgent.Tools.Register(mt) diff --git a/pkg/channels/feishu/feishu_64.go b/pkg/channels/feishu/feishu_64.go index d09c021c7..5fd28806c 100644 --- a/pkg/channels/feishu/feishu_64.go +++ b/pkg/channels/feishu/feishu_64.go @@ -497,10 +497,18 @@ func (c *FeishuChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMess return nil, fmt.Errorf("no media store available: %w", channels.ErrSendFailed) } + caption := firstMediaCaption(msg.Parts) + sentAny := false for _, part := range msg.Parts { if err := c.sendMediaPart(ctx, msg.ChatID, part, store); err != nil { return nil, err } + sentAny = true + } + if sentAny && caption != "" { + if _, err := c.sendText(ctx, msg.ChatID, caption); err != nil { + return nil, err + } } if hasTrackedMsg { @@ -557,6 +565,15 @@ func (c *FeishuChannel) sendMediaPart( return nil } +func firstMediaCaption(parts []bus.MediaPart) string { + for _, part := range parts { + if caption := strings.TrimSpace(part.Caption); caption != "" { + return caption + } + } + return "" +} + // --- Inbound message handling --- func (c *FeishuChannel) handleMessageReceive(ctx context.Context, event *larkim.P2MessageReceiveV1) error { diff --git a/pkg/channels/slack/slack.go b/pkg/channels/slack/slack.go index fa62a4605..566422fdb 100644 --- a/pkg/channels/slack/slack.go +++ b/pkg/channels/slack/slack.go @@ -171,6 +171,8 @@ func (c *SlackChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMessa return nil, fmt.Errorf("no media store available: %w", channels.ErrSendFailed) } + caption := slackFirstMediaCaption(msg.Parts) + sentAny := false for _, part := range msg.Parts { localPath, err := store.Resolve(part.Ref) if err != nil { @@ -205,6 +207,17 @@ func (c *SlackChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMessa }) return nil, fmt.Errorf("slack send media: %w", channels.ErrTemporary) } + sentAny = true + } + + if sentAny && caption != "" { + opts := []slack.MsgOption{slack.MsgOptionText(caption, false)} + if threadTS != "" { + opts = append(opts, slack.MsgOptionTS(threadTS)) + } + if _, _, err := c.api.PostMessageContext(ctx, channelID, opts...); err != nil { + return nil, fmt.Errorf("slack send media caption fallback: %w", channels.ErrTemporary) + } } // UploadFile does not expose the posted message timestamp in its @@ -212,6 +225,15 @@ func (c *SlackChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMessa return nil, nil } +func slackFirstMediaCaption(parts []bus.MediaPart) string { + for _, part := range parts { + if caption := strings.TrimSpace(part.Caption); caption != "" { + return caption + } + } + return "" +} + // ReactToMessage implements channels.ReactionCapable. // It adds an "eyes" (👀) reaction to the inbound message and returns an undo function // that removes the reaction. diff --git a/pkg/channels/telegram/telegram.go b/pkg/channels/telegram/telegram.go index 45672e5ee..1a57fc6ed 100644 --- a/pkg/channels/telegram/telegram.go +++ b/pkg/channels/telegram/telegram.go @@ -45,6 +45,7 @@ var ( ) const defaultMediaGroupDelay = 500 * time.Millisecond +const telegramCaptionLimit = 1024 type TelegramChannel struct { *channels.BaseChannel @@ -639,6 +640,34 @@ func (c *TelegramChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMe } var messageIDs []string + leadingCaption := telegramLeadingCaption(msg.Parts) + if len([]rune(leadingCaption)) > telegramCaptionLimit { + leadingIDs, leadingErr := c.sendCaptionText(ctx, chatID, threadID, leadingCaption) + if leadingErr != nil { + return nil, leadingErr + } + messageIDs = append(messageIDs, leadingIDs...) + msg = telegramClearMediaCaptions(msg) + } + + if len(msg.Parts) > 1 && telegramCanSendMediaGroup(msg.Parts) { + groupIDs, err := c.sendImageMediaGroups(ctx, chatID, threadID, store, msg.Parts) + if err != nil { + logger.ErrorCF("telegram", "Failed to send media group", map[string]any{ + "count": len(msg.Parts), + "error": err.Error(), + }) + return nil, fmt.Errorf("telegram send media group: %w", channels.ErrTemporary) + } + if len(groupIDs) > 0 { + messageIDs = append(messageIDs, groupIDs...) + if hasTrackedMsg { + c.dismissTrackedToolFeedbackMessage(ctx, trackedChatID, trackedMsgID) + } + return messageIDs, nil + } + } + for _, part := range msg.Parts { localPath, err := store.Resolve(part.Ref) if err != nil { @@ -742,6 +771,154 @@ func (c *TelegramChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMe return messageIDs, nil } +func telegramCanSendMediaGroup(parts []bus.MediaPart) bool { + if len(parts) < 2 { + return false + } + for _, part := range parts { + if part.Type != "image" { + return false + } + } + return true +} + +func (c *TelegramChannel) sendImageMediaGroups( + ctx context.Context, + chatID int64, + threadID int, + store media.MediaStore, + parts []bus.MediaPart, +) ([]string, error) { + const maxGroupSize = 10 + + messageIDs := make([]string, 0, len(parts)) + for start := 0; start < len(parts); start += maxGroupSize { + end := start + maxGroupSize + if end > len(parts) { + end = len(parts) + } + groupIDs, err := c.sendSingleImageMediaGroup(ctx, chatID, threadID, store, parts[start:end]) + if err != nil { + return nil, err + } + messageIDs = append(messageIDs, groupIDs...) + } + return messageIDs, nil +} + +func (c *TelegramChannel) sendSingleImageMediaGroup( + ctx context.Context, + chatID int64, + threadID int, + store media.MediaStore, + parts []bus.MediaPart, +) ([]string, error) { + opened := make([]*os.File, 0, len(parts)) + defer func() { + for _, file := range opened { + file.Close() + } + }() + + inputMedia := make([]telego.InputMedia, 0, len(parts)) + for i, part := range parts { + localPath, err := store.Resolve(part.Ref) + if err != nil { + logger.ErrorCF("telegram", "Failed to resolve media ref for media group", map[string]any{ + "ref": part.Ref, + "error": err.Error(), + }) + return nil, err + } + + file, err := os.Open(localPath) + if err != nil { + logger.ErrorCF("telegram", "Failed to open media file for media group", map[string]any{ + "path": localPath, + "error": err.Error(), + }) + return nil, err + } + opened = append(opened, file) + + mediaItem := &telego.InputMediaPhoto{ + Type: telego.MediaTypePhoto, + Media: telego.InputFile{File: file}, + } + if i == 0 { + mediaItem.Caption = part.Caption + } + inputMedia = append(inputMedia, mediaItem) + } + + results, err := c.bot.SendMediaGroup(ctx, &telego.SendMediaGroupParams{ + ChatID: tu.ID(chatID), + MessageThreadID: threadID, + Media: inputMedia, + }) + if err != nil { + return nil, err + } + + messageIDs := make([]string, 0, len(results)) + for _, result := range results { + messageIDs = append(messageIDs, strconv.Itoa(result.MessageID)) + } + return messageIDs, nil +} + +func (c *TelegramChannel) sendCaptionText( + ctx context.Context, + chatID int64, + threadID int, + text string, +) ([]string, error) { + text = strings.TrimSpace(text) + if text == "" { + return nil, nil + } + chunks := channels.SplitMessage(text, c.MaxMessageLength()) + messageIDs := make([]string, 0, len(chunks)) + for _, chunk := range chunks { + chunk = strings.TrimSpace(chunk) + if chunk == "" { + continue + } + msgID, err := c.sendChunk(ctx, sendChunkParams{ + chatID: chatID, + threadID: threadID, + content: chunk, + mdFallback: chunk, + useMarkdownV2: false, + }) + if err != nil { + return nil, err + } + messageIDs = append(messageIDs, msgID) + } + return messageIDs, nil +} + +func telegramLeadingCaption(parts []bus.MediaPart) string { + if len(parts) == 0 { + return "" + } + return strings.TrimSpace(parts[0].Caption) +} + +func telegramClearMediaCaptions(msg bus.OutboundMediaMessage) bus.OutboundMediaMessage { + if len(msg.Parts) == 0 { + return msg + } + cloned := msg + cloned.Parts = append([]bus.MediaPart(nil), msg.Parts...) + for i := range cloned.Parts { + cloned.Parts[i].Caption = "" + } + return cloned +} + func (c *TelegramChannel) handleMessage(ctx context.Context, message *telego.Message) error { if message != nil && strings.TrimSpace(message.MediaGroupID) != "" { return c.bufferMediaGroupMessage(ctx, message) diff --git a/pkg/channels/telegram/telegram_test.go b/pkg/channels/telegram/telegram_test.go index 0ebde1328..db5a8e784 100644 --- a/pkg/channels/telegram/telegram_test.go +++ b/pkg/channels/telegram/telegram_test.go @@ -110,6 +110,17 @@ func successResponseWithMessageID(t *testing.T, messageID int) *ta.Response { return &ta.Response{Ok: true, Result: b} } +func successMediaGroupResponse(t *testing.T, messageIDs ...int) *ta.Response { + t.Helper() + messages := make([]telego.Message, 0, len(messageIDs)) + for _, messageID := range messageIDs { + messages = append(messages, telego.Message{MessageID: messageID}) + } + b, err := json.Marshal(messages) + require.NoError(t, err) + return &ta.Response{Ok: true, Result: b} +} + func successUserResponse(t *testing.T, user *telego.User) *ta.Response { t.Helper() b, err := json.Marshal(user) @@ -237,6 +248,260 @@ func TestSendMedia_ImageNonDimensionErrorDoesNotFallback(t *testing.T) { assert.NotContains(t, caller.calls[0].URL, "sendDocument") } +func TestSendMedia_MultipleImagesUseMediaGroup(t *testing.T) { + constructor := &multipartRecordingConstructor{} + caller := &stubCaller{ + callFn: func(ctx context.Context, url string, data *ta.RequestData) (*ta.Response, error) { + if strings.Contains(url, "sendMediaGroup") { + return successMediaGroupResponse(t, 101, 102), nil + } + t.Fatalf("unexpected API call: %s", url) + return nil, nil + }, + } + ch := newTestChannelWithConstructor(t, caller, constructor) + + store := media.NewFileMediaStore() + ch.SetMediaStore(store) + + tmpDir := t.TempDir() + firstPath := filepath.Join(tmpDir, "first.png") + secondPath := filepath.Join(tmpDir, "second.png") + require.NoError(t, os.WriteFile(firstPath, []byte("first-image"), 0o644)) + require.NoError(t, os.WriteFile(secondPath, []byte("second-image"), 0o644)) + + firstRef, err := store.Store(firstPath, media.MediaMeta{Filename: "first.png", ContentType: "image/png"}, "scope-1") + require.NoError(t, err) + secondRef, err := store.Store(secondPath, media.MediaMeta{Filename: "second.png", ContentType: "image/png"}, "scope-1") + require.NoError(t, err) + + ids, err := ch.SendMedia(context.Background(), bus.OutboundMediaMessage{ + ChatID: "12345", + Parts: []bus.MediaPart{ + {Type: "image", Ref: firstRef, Caption: "album caption"}, + {Type: "image", Ref: secondRef}, + }, + }) + + require.NoError(t, err) + assert.Equal(t, []string{"101", "102"}, ids) + require.Len(t, caller.calls, 1) + assert.Contains(t, caller.calls[0].URL, "sendMediaGroup") + require.Len(t, constructor.calls, 1) + require.Len(t, constructor.calls[0].FileSizes, 2) + + var mediaPayload []map[string]any + require.NoError(t, json.Unmarshal([]byte(constructor.calls[0].Parameters["media"]), &mediaPayload)) + require.Len(t, mediaPayload, 2) + assert.Equal(t, "album caption", mediaPayload[0]["caption"]) + _, hasSecondCaption := mediaPayload[1]["caption"] + assert.False(t, hasSecondCaption) +} + +func TestSendMedia_MoreThanTenImagesSplitIntoMediaGroups(t *testing.T) { + constructor := &multipartRecordingConstructor{} + callIndex := 0 + caller := &stubCaller{ + callFn: func(ctx context.Context, url string, data *ta.RequestData) (*ta.Response, error) { + if !strings.Contains(url, "sendMediaGroup") { + t.Fatalf("unexpected API call: %s", url) + } + callIndex++ + if callIndex == 1 { + return successMediaGroupResponse(t, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010), nil + } + if callIndex == 2 { + return successMediaGroupResponse(t, 1011, 1012, 1013, 1014, 1015), nil + } + t.Fatalf("unexpected sendMediaGroup call #%d", callIndex) + return nil, nil + }, + } + ch := newTestChannelWithConstructor(t, caller, constructor) + + store := media.NewFileMediaStore() + ch.SetMediaStore(store) + + tmpDir := t.TempDir() + parts := make([]bus.MediaPart, 0, 15) + for i := 0; i < 15; i++ { + path := filepath.Join(tmpDir, "image-"+strconv.Itoa(i)+".png") + require.NoError(t, os.WriteFile(path, []byte("img-"+strconv.Itoa(i)), 0o644)) + ref, err := store.Store(path, media.MediaMeta{Filename: filepath.Base(path), ContentType: "image/png"}, "scope-1") + require.NoError(t, err) + part := bus.MediaPart{Type: "image", Ref: ref} + if i == 0 { + part.Caption = "long album caption" + } + parts = append(parts, part) + } + + ids, err := ch.SendMedia(context.Background(), bus.OutboundMediaMessage{ + ChatID: "12345", + Parts: parts, + }) + + require.NoError(t, err) + assert.Equal(t, []string{ + "1001", "1002", "1003", "1004", "1005", + "1006", "1007", "1008", "1009", "1010", + "1011", "1012", "1013", "1014", "1015", + }, ids) + require.Len(t, caller.calls, 2) + require.Len(t, constructor.calls, 2) +} + +func TestSendMedia_SingleImageLongCaptionSendsTextFirst(t *testing.T) { + constructor := &multipartRecordingConstructor{} + longCaption := strings.Repeat("a", telegramCaptionLimit) + " tail overflow" + caller := &stubCaller{ + callFn: func(ctx context.Context, url string, data *ta.RequestData) (*ta.Response, error) { + switch { + case strings.Contains(url, "sendMessage"): + return successResponseWithMessageID(t, 201), nil + case strings.Contains(url, "sendPhoto"): + return successResponseWithMessageID(t, 202), nil + default: + t.Fatalf("unexpected API call: %s", url) + return nil, nil + } + }, + } + ch := newTestChannelWithConstructor(t, caller, constructor) + + store := media.NewFileMediaStore() + ch.SetMediaStore(store) + + tmpDir := t.TempDir() + path := filepath.Join(tmpDir, "image.png") + require.NoError(t, os.WriteFile(path, []byte("img"), 0o644)) + ref, err := store.Store(path, media.MediaMeta{Filename: "image.png", ContentType: "image/png"}, "scope-1") + require.NoError(t, err) + + ids, err := ch.SendMedia(context.Background(), bus.OutboundMediaMessage{ + ChatID: "12345", + Parts: []bus.MediaPart{{ + Type: "image", + Ref: ref, + Caption: longCaption, + }}, + }) + + require.NoError(t, err) + assert.Equal(t, []string{"201", "202"}, ids) + require.Len(t, caller.calls, 2) + assert.Contains(t, caller.calls[0].URL, "sendMessage") + assert.Contains(t, caller.calls[1].URL, "sendPhoto") + assert.Equal(t, "", constructor.calls[0].Parameters["caption"]) +} + +func TestSendMedia_MediaGroupLongCaptionSendsTextFirst(t *testing.T) { + constructor := &multipartRecordingConstructor{} + longCaption := strings.Repeat("b", telegramCaptionLimit) + " trailing explanation" + caller := &stubCaller{ + callFn: func(ctx context.Context, url string, data *ta.RequestData) (*ta.Response, error) { + switch { + case strings.Contains(url, "sendMessage"): + return successResponseWithMessageID(t, 301), nil + case strings.Contains(url, "sendMediaGroup"): + return successMediaGroupResponse(t, 302, 303), nil + default: + t.Fatalf("unexpected API call: %s", url) + return nil, nil + } + }, + } + ch := newTestChannelWithConstructor(t, caller, constructor) + + store := media.NewFileMediaStore() + ch.SetMediaStore(store) + + tmpDir := t.TempDir() + firstPath := filepath.Join(tmpDir, "first.png") + secondPath := filepath.Join(tmpDir, "second.png") + require.NoError(t, os.WriteFile(firstPath, []byte("first-image"), 0o644)) + require.NoError(t, os.WriteFile(secondPath, []byte("second-image"), 0o644)) + + firstRef, err := store.Store(firstPath, media.MediaMeta{Filename: "first.png", ContentType: "image/png"}, "scope-1") + require.NoError(t, err) + secondRef, err := store.Store(secondPath, media.MediaMeta{Filename: "second.png", ContentType: "image/png"}, "scope-1") + require.NoError(t, err) + + ids, err := ch.SendMedia(context.Background(), bus.OutboundMediaMessage{ + ChatID: "12345", + Parts: []bus.MediaPart{ + {Type: "image", Ref: firstRef, Caption: longCaption}, + {Type: "image", Ref: secondRef}, + }, + }) + + require.NoError(t, err) + assert.Equal(t, []string{"301", "302", "303"}, ids) + require.Len(t, caller.calls, 2) + assert.Contains(t, caller.calls[0].URL, "sendMessage") + assert.Contains(t, caller.calls[1].URL, "sendMediaGroup") +} + +func TestSendMedia_MultiGroupLongCaptionSendsTextBeforeGroups(t *testing.T) { + constructor := &multipartRecordingConstructor{} + longCaption := strings.Repeat("c", telegramCaptionLimit) + " overflow before second album" + callOrder := make([]string, 0, 3) + caller := &stubCaller{ + callFn: func(ctx context.Context, url string, data *ta.RequestData) (*ta.Response, error) { + switch { + case strings.Contains(url, "sendMessage"): + callOrder = append(callOrder, "text") + return successResponseWithMessageID(t, 499), nil + case strings.Contains(url, "sendMediaGroup"): + callOrder = append(callOrder, "group") + if len(callOrder) == 2 { + return successMediaGroupResponse(t, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410), nil + } + if len(callOrder) == 3 { + return successMediaGroupResponse(t, 411, 412, 413, 414, 415), nil + } + t.Fatalf("unexpected sendMediaGroup order: %v", callOrder) + return nil, nil + default: + t.Fatalf("unexpected API call: %s", url) + return nil, nil + } + }, + } + ch := newTestChannelWithConstructor(t, caller, constructor) + + store := media.NewFileMediaStore() + ch.SetMediaStore(store) + + tmpDir := t.TempDir() + parts := make([]bus.MediaPart, 0, 15) + for i := 0; i < 15; i++ { + path := filepath.Join(tmpDir, "image-"+strconv.Itoa(i)+".png") + require.NoError(t, os.WriteFile(path, []byte("img-"+strconv.Itoa(i)), 0o644)) + ref, err := store.Store(path, media.MediaMeta{Filename: filepath.Base(path), ContentType: "image/png"}, "scope-1") + require.NoError(t, err) + part := bus.MediaPart{Type: "image", Ref: ref} + if i == 0 { + part.Caption = longCaption + } + parts = append(parts, part) + } + + ids, err := ch.SendMedia(context.Background(), bus.OutboundMediaMessage{ + ChatID: "12345", + Parts: parts, + }) + + require.NoError(t, err) + assert.Equal(t, []string{ + "499", + "401", "402", "403", "404", "405", + "406", "407", "408", "409", "410", + "411", "412", "413", "414", "415", + }, ids) + assert.Equal(t, []string{"text", "group", "group"}, callOrder) +} + func TestSend_EmptyContent(t *testing.T) { caller := &stubCaller{ callFn: func(ctx context.Context, url string, data *ta.RequestData) (*ta.Response, error) { diff --git a/pkg/tools/integration/message.go b/pkg/tools/integration/message.go index 98d87bcb3..f7b7b7fdc 100644 --- a/pkg/tools/integration/message.go +++ b/pkg/tools/integration/message.go @@ -3,10 +3,32 @@ package integrationtools import ( "context" "fmt" + "mime" + "os" + "path/filepath" + "regexp" + "strings" "sync" + + "github.com/h2non/filetype" + + "github.com/sipeed/picoclaw/pkg/bus" + "github.com/sipeed/picoclaw/pkg/config" + "github.com/sipeed/picoclaw/pkg/media" + fstools "github.com/sipeed/picoclaw/pkg/tools/fs" ) -type SendCallbackWithContext func(ctx context.Context, channel, chatID, content, replyToMessageID string) error +type SendCallbackWithContext func( + ctx context.Context, + channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, +) error + +type messageMediaArg struct { + Path string + Type string + Filename string +} // sentTarget records the channel+chatID that the message tool sent to. type sentTarget struct { @@ -16,10 +38,13 @@ type sentTarget struct { type MessageTool struct { sendCallback SendCallbackWithContext + workspace string + restrict bool + maxFileSize int + mediaStore media.MediaStore + allowPaths []*regexp.Regexp mu sync.Mutex - // sentTargets tracks targets sent to in the current round, keyed by session key - // to support parallel turns for different sessions. - sentTargets map[string][]sentTarget + sentTargets map[string][]sentTarget } func NewMessageTool() *MessageTool { @@ -33,7 +58,7 @@ func (t *MessageTool) Name() string { } func (t *MessageTool) Description() string { - return "Send a message to user on a chat channel. Use this when you want to communicate something." + return "Send a message to the user on a chat channel. Supports text-only, media-only, or text with media attachments." } func (t *MessageTool) Parameters() map[string]any { @@ -42,7 +67,29 @@ func (t *MessageTool) Parameters() map[string]any { "properties": map[string]any{ "content": map[string]any{ "type": "string", - "description": "The message content to send", + "description": "Optional message text. When media is present, this text is used as the caption/body for the media message.", + }, + "media": map[string]any{ + "type": "array", + "description": "Optional local media attachments to send with the message.", + "items": map[string]any{ + "type": "object", + "properties": map[string]any{ + "path": map[string]any{ + "type": "string", + "description": "Path to the local file. Relative paths are resolved from workspace.", + }, + "type": map[string]any{ + "type": "string", + "description": "Optional media type hint: image, audio, video, or file.", + }, + "filename": map[string]any{ + "type": "string", + "description": "Optional display filename. Defaults to the basename of path.", + }, + }, + "required": []string{"path"}, + }, }, "channel": map[string]any{ "type": "string", @@ -57,10 +104,32 @@ func (t *MessageTool) Parameters() map[string]any { "description": "Optional: reply target message ID for channels that support threaded replies", }, }, - "required": []string{"content"}, + "anyOf": []map[string]any{ + {"required": []string{"content"}}, + {"required": []string{"media"}}, + }, } } +func (t *MessageTool) ConfigureLocalMedia( + workspace string, + restrict bool, + maxFileSize int, + allowPaths []*regexp.Regexp, +) { + t.workspace = workspace + t.restrict = restrict + if maxFileSize <= 0 { + maxFileSize = config.DefaultMaxMediaSize + } + t.maxFileSize = maxFileSize + t.allowPaths = allowPaths +} + +func (t *MessageTool) SetMediaStore(store media.MediaStore) { + t.mediaStore = store +} + // ResetSentInRound resets the per-round send tracker for the given session key. // Called by the agent loop at the start of each inbound message processing round. func (t *MessageTool) ResetSentInRound(sessionKey string) { @@ -98,9 +167,14 @@ func (t *MessageTool) SetSendCallback(callback SendCallbackWithContext) { } func (t *MessageTool) Execute(ctx context.Context, args map[string]any) *ToolResult { - content, ok := args["content"].(string) - if !ok { - return &ToolResult{ForLLM: "content is required", IsError: true} + content, _ := args["content"].(string) + content = strings.TrimSpace(content) + mediaArgs, err := parseMessageMediaArgs(args["media"]) + if err != nil { + return &ToolResult{ForLLM: err.Error(), IsError: true} + } + if content == "" && len(mediaArgs) == 0 { + return &ToolResult{ForLLM: "content or media is required", IsError: true} } channel, _ := args["channel"].(string) @@ -122,7 +196,12 @@ func (t *MessageTool) Execute(ctx context.Context, args map[string]any) *ToolRes return &ToolResult{ForLLM: "Message sending not configured", IsError: true} } - if err := t.sendCallback(ctx, channel, chatID, content, replyToMessageID); err != nil { + parts, err := t.buildMediaParts(channel, chatID, content, mediaArgs) + if err != nil { + return &ToolResult{ForLLM: err.Error(), IsError: true, Err: err} + } + + if err := t.sendCallback(ctx, channel, chatID, content, replyToMessageID, parts); err != nil { return &ToolResult{ ForLLM: fmt.Sprintf("sending message: %v", err), IsError: true, @@ -135,9 +214,146 @@ func (t *MessageTool) Execute(ctx context.Context, args map[string]any) *ToolRes t.sentTargets[sessionKey] = append(t.sentTargets[sessionKey], sentTarget{Channel: channel, ChatID: chatID}) t.mu.Unlock() - // Silent: user already received the message directly + status := fmt.Sprintf("Message sent to %s:%s", channel, chatID) + if len(parts) > 0 { + status = fmt.Sprintf("Message with %d media attachment(s) sent to %s:%s", len(parts), channel, chatID) + } + return &ToolResult{ - ForLLM: fmt.Sprintf("Message sent to %s:%s", channel, chatID), + ForLLM: status, Silent: true, } } + +func parseMessageMediaArgs(raw any) ([]messageMediaArg, error) { + if raw == nil { + return nil, nil + } + items, ok := raw.([]any) + if !ok { + return nil, fmt.Errorf("media must be an array") + } + result := make([]messageMediaArg, 0, len(items)) + for i, item := range items { + obj, ok := item.(map[string]any) + if !ok { + return nil, fmt.Errorf("media[%d] must be an object", i) + } + path, _ := obj["path"].(string) + path = strings.TrimSpace(path) + if path == "" { + return nil, fmt.Errorf("media[%d].path is required", i) + } + typ, _ := obj["type"].(string) + filename, _ := obj["filename"].(string) + result = append(result, messageMediaArg{ + Path: path, + Type: strings.TrimSpace(typ), + Filename: strings.TrimSpace(filename), + }) + } + return result, nil +} + +func (t *MessageTool) buildMediaParts( + channel, chatID, content string, + mediaArgs []messageMediaArg, +) ([]bus.MediaPart, error) { + if len(mediaArgs) == 0 { + return nil, nil + } + if t.mediaStore == nil { + return nil, fmt.Errorf("media store not configured") + } + if strings.TrimSpace(t.workspace) == "" { + return nil, fmt.Errorf("message media delivery is not configured") + } + + scope := fmt.Sprintf("tool:message:%s:%s", channel, chatID) + parts := make([]bus.MediaPart, 0, len(mediaArgs)) + for i, item := range mediaArgs { + resolved, err := fstools.ValidatePathWithAllowPaths(item.Path, t.workspace, t.restrict, t.allowPaths) + if err != nil { + return nil, fmt.Errorf("invalid media[%d].path: %w", i, err) + } + info, err := os.Stat(resolved) + if err != nil { + return nil, fmt.Errorf("media[%d] file not found: %w", i, err) + } + if info.IsDir() { + return nil, fmt.Errorf("media[%d] path is a directory, expected a file", i) + } + if t.maxFileSize > 0 && info.Size() > int64(t.maxFileSize) { + return nil, fmt.Errorf("media[%d] file too large: %d bytes (max %d bytes)", i, info.Size(), t.maxFileSize) + } + + filename := item.Filename + if filename == "" { + filename = filepath.Base(resolved) + } + contentType := detectMessageMediaType(resolved) + partType := normalizeMessageMediaType(item.Type, filename, contentType) + ref, err := t.mediaStore.Store(resolved, media.MediaMeta{ + Filename: filename, + ContentType: contentType, + Source: "tool:message", + CleanupPolicy: media.CleanupPolicyForgetOnly, + }, scope) + if err != nil { + return nil, fmt.Errorf("failed to register media[%d]: %w", i, err) + } + + part := bus.MediaPart{ + Type: partType, + Ref: ref, + Filename: filename, + ContentType: contentType, + } + if i == 0 && content != "" { + part.Caption = content + } + parts = append(parts, part) + } + return parts, nil +} + +func detectMessageMediaType(path string) string { + kind, err := filetype.MatchFile(path) + if err == nil && kind != filetype.Unknown { + return kind.MIME.Value + } + if ext := filepath.Ext(path); ext != "" { + if t := mime.TypeByExtension(ext); t != "" { + return t + } + } + return "application/octet-stream" +} + +func normalizeMessageMediaType(typeHint, filename, contentType string) string { + switch strings.ToLower(strings.TrimSpace(typeHint)) { + case "image", "audio", "video", "file": + return strings.ToLower(strings.TrimSpace(typeHint)) + } + + ct := strings.ToLower(strings.TrimSpace(contentType)) + switch { + case strings.HasPrefix(ct, "image/"): + return "image" + case strings.HasPrefix(ct, "audio/"): + return "audio" + case strings.HasPrefix(ct, "video/"): + return "video" + } + + switch strings.ToLower(filepath.Ext(filename)) { + case ".jpg", ".jpeg", ".png", ".gif", ".webp", ".bmp": + return "image" + case ".mp3", ".wav", ".ogg", ".oga", ".m4a", ".flac": + return "audio" + case ".mp4", ".mov", ".mkv", ".webm", ".avi": + return "video" + default: + return "file" + } +} diff --git a/pkg/tools/integration/message_test.go b/pkg/tools/integration/message_test.go index c7b7d2b6e..2d3329d3d 100644 --- a/pkg/tools/integration/message_test.go +++ b/pkg/tools/integration/message_test.go @@ -3,8 +3,13 @@ package integrationtools import ( "context" "errors" + "os" + "path/filepath" + "regexp" "testing" + "github.com/sipeed/picoclaw/pkg/bus" + "github.com/sipeed/picoclaw/pkg/media" "github.com/sipeed/picoclaw/pkg/session" ) @@ -12,10 +17,17 @@ func TestMessageTool_Execute_Success(t *testing.T) { tool := NewMessageTool() var sentChannel, sentChatID, sentContent string - tool.SetSendCallback(func(ctx context.Context, channel, chatID, content, replyToMessageID string) error { + tool.SetSendCallback(func( + ctx context.Context, + channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, + ) error { sentChannel = channel sentChatID = chatID sentContent = content + if len(mediaParts) != 0 { + t.Fatalf("expected no media parts, got %d", len(mediaParts)) + } if ToolAgentID(ctx) != "" || ToolSessionKey(ctx) != "" || ToolSessionScope(ctx) != nil { t.Fatalf("expected empty turn metadata in basic context, got agent=%q session=%q scope=%+v", ToolAgentID(ctx), ToolSessionKey(ctx), ToolSessionScope(ctx)) @@ -67,7 +79,11 @@ func TestMessageTool_Execute_WithCustomChannel(t *testing.T) { tool := NewMessageTool() var sentChannel, sentChatID string - tool.SetSendCallback(func(ctx context.Context, channel, chatID, content, replyToMessageID string) error { + tool.SetSendCallback(func( + ctx context.Context, + channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, + ) error { sentChannel = channel sentChatID = chatID return nil @@ -102,7 +118,11 @@ func TestMessageTool_Execute_SendFailure(t *testing.T) { tool := NewMessageTool() sendErr := errors.New("network error") - tool.SetSendCallback(func(ctx context.Context, channel, chatID, content, replyToMessageID string) error { + tool.SetSendCallback(func( + ctx context.Context, + channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, + ) error { return sendErr }) @@ -142,12 +162,12 @@ func TestMessageTool_Execute_MissingContent(t *testing.T) { result := tool.Execute(ctx, args) - // Verify error result for missing content + // Verify error result for missing content/media if !result.IsError { - t.Error("Expected IsError=true for missing content") + t.Error("Expected IsError=true for missing content/media") } - if result.ForLLM != "content is required" { - t.Errorf("Expected ForLLM 'content is required', got '%s'", result.ForLLM) + if result.ForLLM != "content or media is required" { + t.Errorf("Expected ForLLM 'content or media is required', got '%s'", result.ForLLM) } } @@ -155,7 +175,11 @@ func TestMessageTool_Execute_NoTargetChannel(t *testing.T) { tool := NewMessageTool() // No WithToolContext — channel/chatID are empty - tool.SetSendCallback(func(ctx context.Context, channel, chatID, content, replyToMessageID string) error { + tool.SetSendCallback(func( + ctx context.Context, + channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, + ) error { return nil }) @@ -226,9 +250,9 @@ func TestMessageTool_Parameters(t *testing.T) { } // Check required properties - required, ok := params["required"].([]string) - if !ok || len(required) != 1 || required[0] != "content" { - t.Error("Expected 'content' to be required") + anyOf, ok := params["anyOf"].([]map[string]any) + if !ok || len(anyOf) != 2 { + t.Fatal("Expected anyOf content/media requirement") } // Check content property @@ -240,6 +264,14 @@ func TestMessageTool_Parameters(t *testing.T) { t.Error("Expected content type to be 'string'") } + mediaProp, ok := props["media"].(map[string]any) + if !ok { + t.Fatal("Expected 'media' property") + } + if mediaProp["type"] != "array" { + t.Error("Expected media type to be 'array'") + } + // Check channel property (optional) channelProp, ok := props["channel"].(map[string]any) if !ok { @@ -272,7 +304,11 @@ func TestMessageTool_Execute_WithReplyToMessageID(t *testing.T) { tool := NewMessageTool() var sentReplyTo string - tool.SetSendCallback(func(ctx context.Context, channel, chatID, content, replyToMessageID string) error { + tool.SetSendCallback(func( + ctx context.Context, + channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, + ) error { sentReplyTo = replyToMessageID return nil }) @@ -297,7 +333,11 @@ func TestMessageTool_Execute_PropagatesTurnSessionMetadata(t *testing.T) { var gotAgentID, gotSessionKey string var gotScope *session.SessionScope - tool.SetSendCallback(func(ctx context.Context, channel, chatID, content, replyToMessageID string) error { + tool.SetSendCallback(func( + ctx context.Context, + channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, + ) error { gotAgentID = ToolAgentID(ctx) gotSessionKey = ToolSessionKey(ctx) gotScope = ToolSessionScope(ctx) @@ -329,3 +369,55 @@ func TestMessageTool_Execute_PropagatesTurnSessionMetadata(t *testing.T) { t.Fatalf("ToolSessionScope() = %+v, want chat scope", gotScope) } } + +func TestMessageTool_Execute_WithMedia(t *testing.T) { + tool := NewMessageTool() + store := media.NewFileMediaStore() + dir := t.TempDir() + imgPath := filepath.Join(dir, "photo.jpg") + if err := os.WriteFile(imgPath, []byte("fake image bytes"), 0o644); err != nil { + t.Fatalf("write image: %v", err) + } + tool.ConfigureLocalMedia(dir, true, 1024*1024, []*regexp.Regexp{}) + tool.SetMediaStore(store) + + var gotContent string + var gotParts []bus.MediaPart + tool.SetSendCallback(func( + ctx context.Context, + channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, + ) error { + gotContent = content + gotParts = append([]bus.MediaPart(nil), mediaParts...) + return nil + }) + + ctx := WithToolContext(context.Background(), "telegram", "-1001") + result := tool.Execute(ctx, map[string]any{ + "content": "Caption text", + "media": []any{ + map[string]any{ + "path": imgPath, + }, + }, + }) + if result.IsError { + t.Fatalf("expected success, got error: %s", result.ForLLM) + } + if gotContent != "Caption text" { + t.Fatalf("content = %q, want Caption text", gotContent) + } + if len(gotParts) != 1 { + t.Fatalf("expected 1 media part, got %d", len(gotParts)) + } + if gotParts[0].Caption != "Caption text" { + t.Fatalf("first part caption = %q, want Caption text", gotParts[0].Caption) + } + if gotParts[0].Ref == "" { + t.Fatal("expected media ref to be populated") + } + if gotParts[0].Type == "" { + t.Fatal("expected media type to be inferred") + } +} From 987f117f318c90228724a51c15838552ff21fcb1 Mon Sep 17 00:00:00 2001 From: Anton Bogdanovich <27antonb@gmail.com> Date: Mon, 11 May 2026 16:18:12 -0700 Subject: [PATCH 02/21] style(telegram): satisfy formatter rules --- pkg/channels/telegram/telegram.go | 6 ++++-- pkg/channels/telegram/telegram_test.go | 24 ++++++++++++++++++++---- 2 files changed, 24 insertions(+), 6 deletions(-) diff --git a/pkg/channels/telegram/telegram.go b/pkg/channels/telegram/telegram.go index 1a57fc6ed..8fe325b25 100644 --- a/pkg/channels/telegram/telegram.go +++ b/pkg/channels/telegram/telegram.go @@ -44,8 +44,10 @@ var ( reInlineCode = regexp.MustCompile("`([^`]+)`") ) -const defaultMediaGroupDelay = 500 * time.Millisecond -const telegramCaptionLimit = 1024 +const ( + defaultMediaGroupDelay = 500 * time.Millisecond + telegramCaptionLimit = 1024 +) type TelegramChannel struct { *channels.BaseChannel diff --git a/pkg/channels/telegram/telegram_test.go b/pkg/channels/telegram/telegram_test.go index db5a8e784..b52f2c9b2 100644 --- a/pkg/channels/telegram/telegram_test.go +++ b/pkg/channels/telegram/telegram_test.go @@ -272,7 +272,11 @@ func TestSendMedia_MultipleImagesUseMediaGroup(t *testing.T) { firstRef, err := store.Store(firstPath, media.MediaMeta{Filename: "first.png", ContentType: "image/png"}, "scope-1") require.NoError(t, err) - secondRef, err := store.Store(secondPath, media.MediaMeta{Filename: "second.png", ContentType: "image/png"}, "scope-1") + secondRef, err := store.Store( + secondPath, + media.MediaMeta{Filename: "second.png", ContentType: "image/png"}, + "scope-1", + ) require.NoError(t, err) ids, err := ch.SendMedia(context.Background(), bus.OutboundMediaMessage{ @@ -327,7 +331,11 @@ func TestSendMedia_MoreThanTenImagesSplitIntoMediaGroups(t *testing.T) { for i := 0; i < 15; i++ { path := filepath.Join(tmpDir, "image-"+strconv.Itoa(i)+".png") require.NoError(t, os.WriteFile(path, []byte("img-"+strconv.Itoa(i)), 0o644)) - ref, err := store.Store(path, media.MediaMeta{Filename: filepath.Base(path), ContentType: "image/png"}, "scope-1") + ref, err := store.Store( + path, + media.MediaMeta{Filename: filepath.Base(path), ContentType: "image/png"}, + "scope-1", + ) require.NoError(t, err) part := bus.MediaPart{Type: "image", Ref: ref} if i == 0 { @@ -424,7 +432,11 @@ func TestSendMedia_MediaGroupLongCaptionSendsTextFirst(t *testing.T) { firstRef, err := store.Store(firstPath, media.MediaMeta{Filename: "first.png", ContentType: "image/png"}, "scope-1") require.NoError(t, err) - secondRef, err := store.Store(secondPath, media.MediaMeta{Filename: "second.png", ContentType: "image/png"}, "scope-1") + secondRef, err := store.Store( + secondPath, + media.MediaMeta{Filename: "second.png", ContentType: "image/png"}, + "scope-1", + ) require.NoError(t, err) ids, err := ch.SendMedia(context.Background(), bus.OutboundMediaMessage{ @@ -478,7 +490,11 @@ func TestSendMedia_MultiGroupLongCaptionSendsTextBeforeGroups(t *testing.T) { for i := 0; i < 15; i++ { path := filepath.Join(tmpDir, "image-"+strconv.Itoa(i)+".png") require.NoError(t, os.WriteFile(path, []byte("img-"+strconv.Itoa(i)), 0o644)) - ref, err := store.Store(path, media.MediaMeta{Filename: filepath.Base(path), ContentType: "image/png"}, "scope-1") + ref, err := store.Store( + path, + media.MediaMeta{Filename: filepath.Base(path), ContentType: "image/png"}, + "scope-1", + ) require.NoError(t, err) part := bus.MediaPart{Type: "image", Ref: ref} if i == 0 { From c05e5e29c6b69a5c23b10b38ef5779ec6a547098 Mon Sep 17 00:00:00 2001 From: Anton Bogdanovich <27antonb@gmail.com> Date: Mon, 11 May 2026 16:32:24 -0700 Subject: [PATCH 03/21] test(message): cover pico and weixin media text semantics --- pkg/channels/pico/pico_test.go | 69 ++++++++++++++++++++++++++++++ pkg/channels/weixin/weixin_test.go | 59 +++++++++++++++++++++++++ 2 files changed, 128 insertions(+) diff --git a/pkg/channels/pico/pico_test.go b/pkg/channels/pico/pico_test.go index a793d7ad7..9cdf79044 100644 --- a/pkg/channels/pico/pico_test.go +++ b/pkg/channels/pico/pico_test.go @@ -835,6 +835,75 @@ func TestSendMedia_DismissesTrackedToolFeedbackMessage(t *testing.T) { } } +func TestSendMedia_IncludesCaptionAndAttachmentsInSinglePayload(t *testing.T) { + ch := newTestPicoChannel(t) + store := media.NewFileMediaStore() + ch.SetMediaStore(store) + + if err := ch.Start(context.Background()); err != nil { + t.Fatalf("Start() error = %v", err) + } + defer ch.Stop(context.Background()) + + clientConn, received, cleanup := newTestPicoWebSocket(t) + defer cleanup() + ch.addConnForTest(&picoConn{id: "conn-1", conn: clientConn, sessionID: "sess-1"}) + + localPath := filepath.Join(t.TempDir(), "photo.png") + if err := os.WriteFile(localPath, []byte("png-body"), 0o600); err != nil { + t.Fatalf("WriteFile() error = %v", err) + } + + ref, err := store.Store(localPath, media.MediaMeta{ + Filename: "photo.png", + ContentType: "image/png", + }, "test-scope") + if err != nil { + t.Fatalf("Store() error = %v", err) + } + + _, err = ch.SendMedia(context.Background(), bus.OutboundMediaMessage{ + ChatID: "pico:sess-1", + Parts: []bus.MediaPart{{ + Ref: ref, + Type: "image", + Filename: "photo.png", + ContentType: "image/png", + Caption: "recipe translation", + }}, + }) + if err != nil { + t.Fatalf("SendMedia() error = %v", err) + } + + select { + case msg := <-received: + if msg.Type != TypeMessageCreate { + t.Fatalf("message type = %q, want %q", msg.Type, TypeMessageCreate) + } + payload := msg.Payload + if got := payload[PayloadKeyContent]; got != "recipe translation" { + t.Fatalf("content = %#v, want %q", got, "recipe translation") + } + rawAttachments, ok := payload["attachments"].([]any) + if !ok || len(rawAttachments) != 1 { + t.Fatalf("attachments = %#v, want 1 attachment", payload["attachments"]) + } + attachment, ok := rawAttachments[0].(map[string]any) + if !ok { + t.Fatalf("attachment = %#v, want map", rawAttachments[0]) + } + if got := attachment["type"]; got != "image" { + t.Fatalf("attachment type = %#v, want image", got) + } + if got := attachment["filename"]; got != "photo.png" { + t.Fatalf("attachment filename = %#v, want photo.png", got) + } + case <-time.After(time.Second): + t.Fatal("expected media payload to be delivered") + } +} + func TestPicoDownloadURLForRef(t *testing.T) { got, err := picoDownloadURLForRef("media://attachment-1") if err != nil { diff --git a/pkg/channels/weixin/weixin_test.go b/pkg/channels/weixin/weixin_test.go index aea2cbb0c..587c35a8e 100644 --- a/pkg/channels/weixin/weixin_test.go +++ b/pkg/channels/weixin/weixin_test.go @@ -4,6 +4,7 @@ import ( "bytes" "context" "encoding/base64" + "encoding/json" "errors" "io" "net/http" @@ -319,3 +320,61 @@ func TestSelectInboundMediaItemFallsBackToRefMessage(t *testing.T) { t.Fatalf("selectInboundMediaItem().Type = %d, want %d", item.Type, MessageItemTypeImage) } } + +func TestSendUploadedMedia_SendsCaptionAsSeparateTextBeforeMedia(t *testing.T) { + var requests []SendMessageReq + ch := &WeixinChannel{ + api: &ApiClient{ + BaseURL: "https://ilinkai.weixin.qq.com/", + HttpClient: &http.Client{Transport: roundTripFunc(func(r *http.Request) (*http.Response, error) { + if r.URL.Path != "/ilink/bot/sendmessage" { + t.Fatalf("sendmessage path = %q, want /ilink/bot/sendmessage", r.URL.Path) + } + var req SendMessageReq + if err := json.NewDecoder(r.Body).Decode(&req); err != nil { + t.Fatalf("decode sendmessage req: %v", err) + } + requests = append(requests, req) + return &http.Response{ + StatusCode: http.StatusOK, + Body: io.NopCloser(bytes.NewReader([]byte(`{"ret":0,"errcode":0}`))), + Header: make(http.Header), + }, nil + })}, + }, + typingCache: make(map[string]typingTicketCacheEntry), + } + + err := ch.sendUploadedMedia( + context.Background(), + "user-1", + "ctx-1", + "recipe translation", + UploadMediaTypeImage, + &uploadedFileInfo{ + downloadParam: "download-token", + aesKeyHex: "31323334353637383930616263646566", + fileSize: 11, + cipherSize: 16, + filename: "photo.png", + }, + ) + if err != nil { + t.Fatalf("sendUploadedMedia() error = %v", err) + } + if len(requests) != 2 { + t.Fatalf("sendUploadedMedia() sent %d requests, want 2", len(requests)) + } + if len(requests[0].Msg.ItemList) != 1 || requests[0].Msg.ItemList[0].Type != MessageItemTypeText { + t.Fatalf("first request item = %+v, want text item", requests[0].Msg.ItemList) + } + if got := requests[0].Msg.ItemList[0].TextItem.Text; got != "recipe translation" { + t.Fatalf("first request text = %q, want recipe translation", got) + } + if len(requests[1].Msg.ItemList) != 1 || requests[1].Msg.ItemList[0].Type != MessageItemTypeImage { + t.Fatalf("second request item = %+v, want image item", requests[1].Msg.ItemList) + } + if requests[1].Msg.ItemList[0].ImageItem == nil || requests[1].Msg.ItemList[0].ImageItem.Media == nil { + t.Fatalf("second request image media = %+v, want media ref", requests[1].Msg.ItemList[0].ImageItem) + } +} From 1bf0d898deffda90d12356cbfb053985199e6ed8 Mon Sep 17 00:00:00 2001 From: Anton Bogdanovich <27antonb@gmail.com> Date: Mon, 11 May 2026 16:45:01 -0700 Subject: [PATCH 04/21] test(message): cover slack and feishu media fallbacks --- pkg/channels/feishu/feishu_64.go | 8 ++- pkg/channels/feishu/feishu_64_test.go | 39 ++++++++++++++ pkg/channels/slack/slack.go | 22 +++++--- pkg/channels/slack/slack_test.go | 78 +++++++++++++++++++++++++++ 4 files changed, 139 insertions(+), 8 deletions(-) diff --git a/pkg/channels/feishu/feishu_64.go b/pkg/channels/feishu/feishu_64.go index 5fd28806c..2fef72273 100644 --- a/pkg/channels/feishu/feishu_64.go +++ b/pkg/channels/feishu/feishu_64.go @@ -52,6 +52,8 @@ type FeishuChannel struct { progress *channels.ToolFeedbackAnimator deleteMessageFn func(context.Context, string, string) error + sendMediaPartFn func(context.Context, string, bus.MediaPart, media.MediaStore) error + sendTextFn func(context.Context, string, string) (string, error) } type cachedMessage struct { @@ -78,6 +80,8 @@ func NewFeishuChannel(bc *config.Channel, cfg *config.FeishuSettings, bus *bus.M client: lark.NewClient(cfg.AppID, cfg.AppSecret.String(), opts...), } ch.deleteMessageFn = ch.deleteMessageAPI + ch.sendMediaPartFn = ch.sendMediaPart + ch.sendTextFn = ch.sendText ch.progress = channels.NewToolFeedbackAnimator(ch.EditMessage) ch.SetOwner(ch) return ch, nil @@ -500,13 +504,13 @@ func (c *FeishuChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMess caption := firstMediaCaption(msg.Parts) sentAny := false for _, part := range msg.Parts { - if err := c.sendMediaPart(ctx, msg.ChatID, part, store); err != nil { + if err := c.sendMediaPartFn(ctx, msg.ChatID, part, store); err != nil { return nil, err } sentAny = true } if sentAny && caption != "" { - if _, err := c.sendText(ctx, msg.ChatID, caption); err != nil { + if _, err := c.sendTextFn(ctx, msg.ChatID, caption); err != nil { return nil, err } } diff --git a/pkg/channels/feishu/feishu_64_test.go b/pkg/channels/feishu/feishu_64_test.go index d256325ad..1dbacab89 100644 --- a/pkg/channels/feishu/feishu_64_test.go +++ b/pkg/channels/feishu/feishu_64_test.go @@ -9,7 +9,9 @@ import ( larkim "github.com/larksuite/oapi-sdk-go/v3/service/im/v1" + "github.com/sipeed/picoclaw/pkg/bus" "github.com/sipeed/picoclaw/pkg/channels" + "github.com/sipeed/picoclaw/pkg/media" ) func TestExtractContent(t *testing.T) { @@ -319,6 +321,43 @@ func TestFinalizeTrackedToolFeedbackMessage_ClearAfterSuccessfulEdit(t *testing. } } +func TestSendMedia_SendsCaptionFallbackAfterMedia(t *testing.T) { + ch := &FeishuChannel{ + BaseChannel: channels.NewBaseChannel("feishu", nil, nil, nil), + progress: channels.NewToolFeedbackAnimator(nil), + } + ch.SetRunning(true) + ch.SetMediaStore(media.NewFileMediaStore()) + + var mediaOrder []string + var textCalls []string + ch.sendMediaPartFn = func(ctx context.Context, chatID string, part bus.MediaPart, store media.MediaStore) error { + mediaOrder = append(mediaOrder, part.Type) + return nil + } + ch.sendTextFn = func(ctx context.Context, chatID, text string) (string, error) { + textCalls = append(textCalls, chatID+"|"+text) + return "msg-1", nil + } + + _, err := ch.SendMedia(context.Background(), bus.OutboundMediaMessage{ + ChatID: "oc_123", + Parts: []bus.MediaPart{ + {Type: "image", Caption: "shared caption"}, + {Type: "file"}, + }, + }) + if err != nil { + t.Fatalf("SendMedia() error = %v", err) + } + if len(mediaOrder) != 2 { + t.Fatalf("media sends = %v, want 2 sends", mediaOrder) + } + if len(textCalls) != 1 || textCalls[0] != "oc_123|shared caption" { + t.Fatalf("textCalls = %v, want [oc_123|shared caption]", textCalls) + } +} + func TestFinalizeTrackedToolFeedbackMessage_StopsTrackingBeforeEdit(t *testing.T) { ch := &FeishuChannel{ progress: channels.NewToolFeedbackAnimator(nil), diff --git a/pkg/channels/slack/slack.go b/pkg/channels/slack/slack.go index 566422fdb..b021feda9 100644 --- a/pkg/channels/slack/slack.go +++ b/pkg/channels/slack/slack.go @@ -29,6 +29,8 @@ type SlackChannel struct { ctx context.Context cancel context.CancelFunc pendingAcks sync.Map + uploadFileFn func(context.Context, slack.UploadFileParameters) error + postTextFn func(context.Context, string, string, string) error } type slackMessageRef struct { @@ -63,6 +65,18 @@ func NewSlackChannel( config: cfg, api: api, socketClient: socketClient, + uploadFileFn: func(ctx context.Context, params slack.UploadFileParameters) error { + _, err := api.UploadFileContext(ctx, params) + return err + }, + postTextFn: func(ctx context.Context, channelID, threadTS, text string) error { + opts := []slack.MsgOption{slack.MsgOptionText(text, false)} + if threadTS != "" { + opts = append(opts, slack.MsgOptionTS(threadTS)) + } + _, _, err := api.PostMessageContext(ctx, channelID, opts...) + return err + }, }, nil } @@ -193,7 +207,7 @@ func (c *SlackChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMessa title = filename } - _, err = c.api.UploadFileContext(ctx, slack.UploadFileParameters{ + err = c.uploadFileFn(ctx, slack.UploadFileParameters{ Channel: channelID, ThreadTimestamp: threadTS, File: localPath, @@ -211,11 +225,7 @@ func (c *SlackChannel) SendMedia(ctx context.Context, msg bus.OutboundMediaMessa } if sentAny && caption != "" { - opts := []slack.MsgOption{slack.MsgOptionText(caption, false)} - if threadTS != "" { - opts = append(opts, slack.MsgOptionTS(threadTS)) - } - if _, _, err := c.api.PostMessageContext(ctx, channelID, opts...); err != nil { + if err := c.postTextFn(ctx, channelID, threadTS, caption); err != nil { return nil, fmt.Errorf("slack send media caption fallback: %w", channels.ErrTemporary) } } diff --git a/pkg/channels/slack/slack_test.go b/pkg/channels/slack/slack_test.go index a72521d67..b85f3f028 100644 --- a/pkg/channels/slack/slack_test.go +++ b/pkg/channels/slack/slack_test.go @@ -1,10 +1,17 @@ package slack import ( + "context" + "os" + "path/filepath" "testing" + slacksdk "github.com/slack-go/slack" + "github.com/sipeed/picoclaw/pkg/bus" + "github.com/sipeed/picoclaw/pkg/channels" "github.com/sipeed/picoclaw/pkg/config" + "github.com/sipeed/picoclaw/pkg/media" ) func TestParseSlackChatID(t *testing.T) { @@ -184,3 +191,74 @@ func TestSlackChannelIsAllowed(t *testing.T) { } }) } + +func TestSendMedia_SendsCaptionFallbackAfterUploads(t *testing.T) { + ch := &SlackChannel{ + BaseChannel: channels.NewBaseChannel("slack", nil, nil, nil), + } + ch.SetRunning(true) + + store := media.NewFileMediaStore() + ch.SetMediaStore(store) + + tmpDir := t.TempDir() + localPath := filepath.Join(tmpDir, "report.txt") + if err := os.WriteFile(localPath, []byte("attachment body"), 0o600); err != nil { + t.Fatalf("WriteFile() error = %v", err) + } + ref, err := store.Store(localPath, media.MediaMeta{ + Filename: "report.txt", + ContentType: "text/plain", + }, "test-scope") + if err != nil { + t.Fatalf("Store() error = %v", err) + } + + var uploaded []slackUploadRecord + var posted []string + ch.uploadFileFn = func(ctx context.Context, params slacksdk.UploadFileParameters) error { + uploaded = append(uploaded, slackUploadRecord{ + Channel: params.Channel, + Thread: params.ThreadTimestamp, + File: params.File, + Name: params.Filename, + Title: params.Title, + }) + return nil + } + ch.postTextFn = func(ctx context.Context, channelID, threadTS, text string) error { + posted = append(posted, channelID+"|"+threadTS+"|"+text) + return nil + } + + _, err = ch.SendMedia(context.Background(), bus.OutboundMediaMessage{ + ChatID: "C123456/1234567890.123456", + Parts: []bus.MediaPart{{ + Ref: ref, + Type: "file", + Filename: "report.txt", + ContentType: "text/plain", + Caption: "shared caption", + }}, + }) + if err != nil { + t.Fatalf("SendMedia() error = %v", err) + } + if len(uploaded) != 1 { + t.Fatalf("uploads = %v, want 1 upload", uploaded) + } + if uploaded[0].Title != "shared caption" { + t.Fatalf("upload title = %q, want shared caption", uploaded[0].Title) + } + if len(posted) != 1 || posted[0] != "C123456|1234567890.123456|shared caption" { + t.Fatalf("posted = %v, want fallback text in same thread", posted) + } +} + +type slackUploadRecord struct { + Channel string + Thread string + File string + Name string + Title string +} From ceebda35ee5a519017ecba6b2098d093f93bd9df Mon Sep 17 00:00:00 2001 From: Anton Bogdanovich <27antonb@gmail.com> Date: Fri, 22 May 2026 16:20:59 -0700 Subject: [PATCH 05/21] fix(message): gate local media attachments --- docs/guides/configuration.md | 1 + pkg/agent/agent_init.go | 40 ++++++--- pkg/config/config.go | 8 +- pkg/config/config_test.go | 10 +++ pkg/config/defaults.go | 7 +- pkg/tools/integration/message.go | 124 +++++++++++++++----------- pkg/tools/integration/message_test.go | 64 +++++++++++-- 7 files changed, 178 insertions(+), 76 deletions(-) diff --git a/docs/guides/configuration.md b/docs/guides/configuration.md index ef4802a78..d582676e7 100644 --- a/docs/guides/configuration.md +++ b/docs/guides/configuration.md @@ -400,6 +400,7 @@ Even with `restrict_to_workspace: false`, the `exec` tool blocks these dangerous |------------|------|---------|-------------| | `tools.allow_read_paths` | string[] | `[]` | Additional paths allowed for reading outside workspace | | `tools.allow_write_paths` | string[] | `[]` | Additional paths allowed for writing outside workspace | +| `tools.message.media_enabled` | bool | `false` | Allows the `message` tool to attach local media files by path. This is separate from `tools.send_file.enabled`; enable it only when unified text/media/caption delivery is intended. | ### Read File Mode diff --git a/pkg/agent/agent_init.go b/pkg/agent/agent_init.go index 14b3f8bfe..17629892d 100644 --- a/pkg/agent/agent_init.go +++ b/pkg/agent/agent_init.go @@ -161,19 +161,19 @@ func registerSharedTools( // Message tool if cfg.Tools.IsToolEnabled("message") { messageTool := tools.NewMessageTool() - messageTool.ConfigureLocalMedia( - agent.Workspace, - cfg.Agents.Defaults.RestrictToWorkspace, - cfg.Agents.Defaults.GetMaxMediaSize(), - allowReadPaths, - ) + if cfg.Tools.Message.MediaEnabled { + messageTool.ConfigureLocalMedia( + agent.Workspace, + cfg.Agents.Defaults.RestrictToWorkspace, + cfg.Agents.Defaults.GetMaxMediaSize(), + allowReadPaths, + ) + } messageTool.SetSendCallback(func( ctx context.Context, channel, chatID, content, replyToMessageID string, mediaParts []bus.MediaPart, ) error { - pubCtx, pubCancel := context.WithTimeout(context.Background(), 5*time.Second) - defer pubCancel() outboundCtx := bus.NewOutboundContext(channel, chatID, replyToMessageID) outboundAgentID, outboundSessionKey, outboundScope := outboundTurnMetadata( tools.ToolAgentID(ctx), @@ -181,22 +181,38 @@ func registerSharedTools( tools.ToolSessionScope(ctx), ) if len(mediaParts) > 0 { - return msgBus.PublishOutboundMedia(pubCtx, bus.OutboundMediaMessage{ + outboundMedia := bus.OutboundMediaMessage{ + Channel: channel, + ChatID: chatID, Context: outboundCtx, AgentID: outboundAgentID, SessionKey: outboundSessionKey, Scope: outboundScope, Parts: mediaParts, - }) + } + if al.channelManager != nil && channel != "" { + return al.channelManager.SendMedia(ctx, outboundMedia) + } + pubCtx, pubCancel := context.WithTimeout(context.Background(), 5*time.Second) + defer pubCancel() + return msgBus.PublishOutboundMedia(pubCtx, outboundMedia) } - return msgBus.PublishOutbound(pubCtx, bus.OutboundMessage{ + outboundMessage := bus.OutboundMessage{ + Channel: channel, + ChatID: chatID, Context: outboundCtx, AgentID: outboundAgentID, SessionKey: outboundSessionKey, Scope: outboundScope, Content: content, ReplyToMessageID: replyToMessageID, - }) + } + if al.channelManager != nil && channel != "" { + return al.channelManager.SendMessage(ctx, outboundMessage) + } + pubCtx, pubCancel := context.WithTimeout(context.Background(), 5*time.Second) + defer pubCancel() + return msgBus.PublishOutbound(pubCtx, outboundMessage) }) agent.Tools.Register(messageTool) } diff --git a/pkg/config/config.go b/pkg/config/config.go index d9608d11e..b36014b9f 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -814,6 +814,12 @@ type ToolConfig struct { Enabled bool `json:"enabled" yaml:"-" env:"ENABLED"` } +type MessageToolsConfig struct { + ToolConfig `yaml:"-" envPrefix:"PICOCLAW_TOOLS_MESSAGE_"` + + MediaEnabled bool `json:"media_enabled" yaml:"-" env:"PICOCLAW_TOOLS_MESSAGE_MEDIA_ENABLED"` +} + type BraveConfig struct { Enabled bool `json:"enabled" yaml:"-" env:"PICOCLAW_TOOLS_WEB_BRAVE_ENABLED"` APIKeys SecureStrings `json:"api_keys,omitzero" yaml:"api_keys,omitempty" env:"PICOCLAW_TOOLS_WEB_BRAVE_API_KEYS"` @@ -1026,7 +1032,7 @@ type ToolsConfig struct { InstallSkill ToolConfig `json:"install_skill" yaml:"-" envPrefix:"PICOCLAW_TOOLS_INSTALL_SKILL_"` ListDir ToolConfig `json:"list_dir" yaml:"-" envPrefix:"PICOCLAW_TOOLS_LIST_DIR_"` LoadImage ToolConfig `json:"load_image" yaml:"-" envPrefix:"PICOCLAW_TOOLS_LOAD_IMAGE_"` - Message ToolConfig `json:"message" yaml:"-" envPrefix:"PICOCLAW_TOOLS_MESSAGE_"` + Message MessageToolsConfig `json:"message" yaml:"-"` ReadFile ReadFileToolConfig `json:"read_file" yaml:"-" envPrefix:"PICOCLAW_TOOLS_READ_FILE_"` Serial ToolConfig `json:"serial" yaml:"-" envPrefix:"PICOCLAW_TOOLS_SERIAL_"` SendFile ToolConfig `json:"send_file" yaml:"-" envPrefix:"PICOCLAW_TOOLS_SEND_FILE_"` diff --git a/pkg/config/config_test.go b/pkg/config/config_test.go index e34f23895..213090a15 100644 --- a/pkg/config/config_test.go +++ b/pkg/config/config_test.go @@ -1480,6 +1480,16 @@ func TestLoadConfig_LoadImageCanBeDisabled(t *testing.T) { } } +func TestDefaultConfig_MessageMediaDisabled(t *testing.T) { + cfg := DefaultConfig() + if !cfg.Tools.Message.Enabled { + t.Fatal("DefaultConfig().Tools.Message.Enabled should be true") + } + if cfg.Tools.Message.MediaEnabled { + t.Fatal("DefaultConfig().Tools.Message.MediaEnabled should be false") + } +} + func TestToolsConfig_GetFilterMinLength(t *testing.T) { tests := []struct { name string diff --git a/pkg/config/defaults.go b/pkg/config/defaults.go index c411aadf3..d7bd16875 100644 --- a/pkg/config/defaults.go +++ b/pkg/config/defaults.go @@ -447,8 +447,11 @@ func DefaultConfig() *Config { LoadImage: ToolConfig{ Enabled: true, }, - Message: ToolConfig{ - Enabled: true, + Message: MessageToolsConfig{ + ToolConfig: ToolConfig{ + Enabled: true, + }, + MediaEnabled: false, }, ReadFile: ReadFileToolConfig{ Enabled: true, diff --git a/pkg/tools/integration/message.go b/pkg/tools/integration/message.go index f7b7b7fdc..fbd8305c6 100644 --- a/pkg/tools/integration/message.go +++ b/pkg/tools/integration/message.go @@ -37,14 +37,15 @@ type sentTarget struct { } type MessageTool struct { - sendCallback SendCallbackWithContext - workspace string - restrict bool - maxFileSize int - mediaStore media.MediaStore - allowPaths []*regexp.Regexp - mu sync.Mutex - sentTargets map[string][]sentTarget + sendCallback SendCallbackWithContext + workspace string + restrict bool + maxFileSize int + mediaStore media.MediaStore + allowPaths []*regexp.Regexp + localMediaEnabled bool + mu sync.Mutex + sentTargets map[string][]sentTarget } func NewMessageTool() *MessageTool { @@ -58,57 +59,66 @@ func (t *MessageTool) Name() string { } func (t *MessageTool) Description() string { + if !t.localMediaEnabled { + return "Send a text message to the user on a chat channel." + } return "Send a message to the user on a chat channel. Supports text-only, media-only, or text with media attachments." } func (t *MessageTool) Parameters() map[string]any { - return map[string]any{ - "type": "object", - "properties": map[string]any{ - "content": map[string]any{ - "type": "string", - "description": "Optional message text. When media is present, this text is used as the caption/body for the media message.", - }, - "media": map[string]any{ - "type": "array", - "description": "Optional local media attachments to send with the message.", - "items": map[string]any{ - "type": "object", - "properties": map[string]any{ - "path": map[string]any{ - "type": "string", - "description": "Path to the local file. Relative paths are resolved from workspace.", - }, - "type": map[string]any{ - "type": "string", - "description": "Optional media type hint: image, audio, video, or file.", - }, - "filename": map[string]any{ - "type": "string", - "description": "Optional display filename. Defaults to the basename of path.", - }, - }, - "required": []string{"path"}, - }, - }, - "channel": map[string]any{ - "type": "string", - "description": "Optional: target channel (telegram, whatsapp, etc.)", - }, - "chat_id": map[string]any{ - "type": "string", - "description": "Optional: target chat/user ID", - }, - "reply_to_message_id": map[string]any{ - "type": "string", - "description": "Optional: reply target message ID for channels that support threaded replies", - }, + properties := map[string]any{ + "content": map[string]any{ + "type": "string", + "description": "Optional message text. When media is present, this text is used as the caption/body for the media message.", }, - "anyOf": []map[string]any{ - {"required": []string{"content"}}, - {"required": []string{"media"}}, + "channel": map[string]any{ + "type": "string", + "description": "Optional: target channel (telegram, whatsapp, etc.)", + }, + "chat_id": map[string]any{ + "type": "string", + "description": "Optional: target chat/user ID", + }, + "reply_to_message_id": map[string]any{ + "type": "string", + "description": "Optional: reply target message ID for channels that support threaded replies", }, } + params := map[string]any{ + "type": "object", + "properties": properties, + "required": []string{"content"}, + } + if t.localMediaEnabled { + properties["media"] = map[string]any{ + "type": "array", + "description": "Optional local media attachments to send with the message. Requires tools.message.media_enabled.", + "items": map[string]any{ + "type": "object", + "properties": map[string]any{ + "path": map[string]any{ + "type": "string", + "description": "Path to the local file. Relative paths are resolved from workspace.", + }, + "type": map[string]any{ + "type": "string", + "description": "Optional media type hint: image, audio, video, or file.", + }, + "filename": map[string]any{ + "type": "string", + "description": "Optional display filename. Defaults to the basename of path.", + }, + }, + "required": []string{"path"}, + }, + } + delete(params, "required") + params["anyOf"] = []map[string]any{ + {"required": []string{"content"}}, + {"required": []string{"media"}}, + } + } + return params } func (t *MessageTool) ConfigureLocalMedia( @@ -124,6 +134,7 @@ func (t *MessageTool) ConfigureLocalMedia( } t.maxFileSize = maxFileSize t.allowPaths = allowPaths + t.localMediaEnabled = true } func (t *MessageTool) SetMediaStore(store media.MediaStore) { @@ -173,6 +184,12 @@ func (t *MessageTool) Execute(ctx context.Context, args map[string]any) *ToolRes if err != nil { return &ToolResult{ForLLM: err.Error(), IsError: true} } + if len(mediaArgs) > 0 && !t.localMediaEnabled { + return &ToolResult{ + ForLLM: "message media attachments are disabled; enable tools.message.media_enabled to send local media through message", + IsError: true, + } + } if content == "" && len(mediaArgs) == 0 { return &ToolResult{ForLLM: "content or media is required", IsError: true} } @@ -262,6 +279,9 @@ func (t *MessageTool) buildMediaParts( if len(mediaArgs) == 0 { return nil, nil } + if !t.localMediaEnabled { + return nil, fmt.Errorf("message media attachments are disabled") + } if t.mediaStore == nil { return nil, fmt.Errorf("media store not configured") } diff --git a/pkg/tools/integration/message_test.go b/pkg/tools/integration/message_test.go index 2d3329d3d..eea345c1c 100644 --- a/pkg/tools/integration/message_test.go +++ b/pkg/tools/integration/message_test.go @@ -250,9 +250,9 @@ func TestMessageTool_Parameters(t *testing.T) { } // Check required properties - anyOf, ok := params["anyOf"].([]map[string]any) - if !ok || len(anyOf) != 2 { - t.Fatal("Expected anyOf content/media requirement") + required, ok := params["required"].([]string) + if !ok || len(required) != 1 || required[0] != "content" { + t.Fatal("Expected content-only required schema when local media is disabled") } // Check content property @@ -264,12 +264,8 @@ func TestMessageTool_Parameters(t *testing.T) { t.Error("Expected content type to be 'string'") } - mediaProp, ok := props["media"].(map[string]any) - if !ok { - t.Fatal("Expected 'media' property") - } - if mediaProp["type"] != "array" { - t.Error("Expected media type to be 'array'") + if _, hasMedia := props["media"]; hasMedia { + t.Fatal("did not expect 'media' property when local media is disabled") } // Check channel property (optional) @@ -300,6 +296,56 @@ func TestMessageTool_Parameters(t *testing.T) { } } +func TestMessageTool_Parameters_WithLocalMediaEnabled(t *testing.T) { + tool := NewMessageTool() + tool.ConfigureLocalMedia(t.TempDir(), true, 1024*1024, nil) + params := tool.Parameters() + + props, ok := params["properties"].(map[string]any) + if !ok { + t.Fatal("Expected properties to be a map") + } + mediaProp, ok := props["media"].(map[string]any) + if !ok { + t.Fatal("Expected 'media' property") + } + if mediaProp["type"] != "array" { + t.Error("Expected media type to be 'array'") + } + anyOf, ok := params["anyOf"].([]map[string]any) + if !ok || len(anyOf) != 2 { + t.Fatal("Expected anyOf content/media requirement") + } + if _, ok := params["required"]; ok { + t.Fatal("did not expect top-level required content when media is enabled") + } +} + +func TestMessageTool_Execute_WithMediaDisabled(t *testing.T) { + tool := NewMessageTool() + tool.SetSendCallback(func( + ctx context.Context, + channel, chatID, content, replyToMessageID string, + mediaParts []bus.MediaPart, + ) error { + t.Fatal("send callback should not run when message media is disabled") + return nil + }) + + ctx := WithToolContext(context.Background(), "telegram", "-1001") + result := tool.Execute(ctx, map[string]any{ + "media": []any{ + map[string]any{"path": "photo.jpg"}, + }, + }) + if !result.IsError { + t.Fatal("expected error when message media is disabled") + } + if result.ForLLM != "message media attachments are disabled; enable tools.message.media_enabled to send local media through message" { + t.Fatalf("unexpected error: %q", result.ForLLM) + } +} + func TestMessageTool_Execute_WithReplyToMessageID(t *testing.T) { tool := NewMessageTool() From d609e83313f6b6fcae5e5fdbc1f4e4e0bb2dd98e Mon Sep 17 00:00:00 2001 From: Martin Zapletal <105368210+KrtCZ@users.noreply.github.com> Date: Sat, 23 May 2026 13:16:25 +0200 Subject: [PATCH 06/21] Add Czech (cs) locale (792 strings) --- web/frontend/src/i18n/locales/cs.json | 958 ++++++++++++++++++++++++++ 1 file changed, 958 insertions(+) create mode 100644 web/frontend/src/i18n/locales/cs.json diff --git a/web/frontend/src/i18n/locales/cs.json b/web/frontend/src/i18n/locales/cs.json new file mode 100644 index 000000000..8f3fa9a25 --- /dev/null +++ b/web/frontend/src/i18n/locales/cs.json @@ -0,0 +1,958 @@ +{ + "navigation": { + "chat": "Chat", + "model_group": "Modely", + "models": "Modely", + "credentials": "PřihlaÅĄovací Ãēdaje", + "agent_group": "Agent", + "hub": "Hub", + "skills": "Dovednosti", + "tools": "NÃĄstroje", + "services": "SluÅžby", + "channels_group": "KanÃĄly", + "show_more_channels": "Více", + "show_less_channels": "MÊně", + "config": "Nastavení", + "logs": "Logy" + }, + "launcherLogin": { + "title": "PřihlÃĄÅĄení", + "description": "Zadejte heslo k dashboardu pro pokračení.", + "passwordLabel": "Heslo", + "passwordPlaceholder": "Zadejte heslo", + "submit": "PřihlÃĄsit se", + "errorInvalid": "NesprÃĄvnÊ heslo. Zkuste to znovu.", + "errorNetwork": "Chyba sítě. Zkuste to znovu." + }, + "launcherSetup": { + "title": "Nastavení hesla k dashboardu", + "description": "Zvolte heslo pro ochranu přístupu k dashboardu. Budete ho zadÃĄvat při kaÅždÊm přihlÃĄÅĄení.", + "passwordLabel": "Heslo", + "passwordPlaceholder": "Alespoň 8 znaků", + "confirmLabel": "Potvrzení hesla", + "confirmPlaceholder": "Zopakujte heslo", + "submit": "Nastavit heslo", + "errorMismatch": "Hesla se neshodují.", + "errorNetwork": "Chyba sítě. Zkuste to znovu." + }, + "chat": { + "welcome": "Jak vÃĄm mohu dnes pomoci?", + "welcomeDesc": "Zeptejte se mě na počasí, nastavení nebo jinÊ Ãēkoly. Jsem tu, abych vÃĄm pomohl.", + "placeholder": "NapiÅĄte zprÃĄvu...", + "disabledPlaceholder": { + "gatewayUnknown": "Chat nedostupnÃŊ: stav gateway se stÃĄle zjiÅĄÅĨuje. Počkejte chvíli, pak strÃĄnku obnovte nebo restartujte Launcher.", + "gatewayStarting": "Chat nedostupnÃŊ: gateway se spouÅĄtí. Počkejte na dokončení spuÅĄtění a zkuste to znovu.", + "gatewayRestarting": "Chat nedostupnÃŊ: gateway se restartuje. Počkejte na dokončení restartu.", + "gatewayStopping": "Chat nedostupnÃŊ: gateway se zastavuje. Počkejte na zastavení a pak gateway spusÅĨte znovu.", + "gatewayStopped": "Chat nedostupnÃŊ: gateway není spuÅĄtěna. Klikněte na Spustit gateway v horní liÅĄtě a zkuste to znovu.", + "gatewayError": "Chat nedostupnÃŊ: gateway je ve stavu chyby. Zkontrolujte logy a restartujte gateway nebo Launcher.", + "websocketConnecting": "PřipojovÃĄní ke chat sluÅžbě... Čekejte prosím.", + "websocketDisconnected": "Chat nedostupnÃŊ: WebSocket spojení bylo přeruÅĄeno. Zkontrolujte síÅĨ a stav gateway, obnovte strÃĄnku nebo restartujte Launcher.", + "websocketError": "Chat nedostupnÃŊ: WebSocket spojení selhalo. Zkontrolujte síÅĨ a stav gateway a zkuste to znovu.", + "noDefaultModel": "Chat nedostupnÃŊ: ÅžÃĄdnÃŊ vÃŊchozí model není vybrÃĄn. Nastavte vÃŊchozí model na strÃĄnce Modely." + }, + "newChat": "NovÃŊ chat", + "notConnected": "Gateway není spuÅĄtěna. SpusÅĨte ji pro zahÃĄjení chatu.", + "thinking": { + "step1": "PřemÃŊÅĄlím...", + "step2": "Analyzuji vÃĄÅĄ poÅžadavek...", + "step3": "Připravuji odpověď...", + "step4": "UÅž brzy..." + }, + "reasoningLabel": "UvaÅžovÃĄní", + "toolCallsLabel": "VolÃĄní nÃĄstrojů", + "toolCallExplanationLabel": "PoznÃĄmka k volÃĄní", + "toolCallFunctionLabel": "Shrnutí volÃĄní", + "toolCallArgumentsLabel": "Argumenty", + "showAssistantDetails": "Zobrazit Ãēvahy a volÃĄní nÃĄstrojů", + "assistantDetailVisibility": { + "none": "SkrÃŊt oboje", + "thought": "Zobrazit jen Ãēvahy", + "toolCalls": "Zobrazit jen volÃĄní nÃĄstrojů", + "all": "Zobrazit oboje" + }, + "toolLabel": "NÃĄstroj", + "codeLabel": "KÃŗd", + "copyMessage": "Kopírovat zprÃĄvu", + "copyCode": "Kopírovat kÃŗd", + "copiedLabel": "ZkopírovÃĄno", + "expandCode": "Rozbalit kÃŗd", + "collapseCode": "Sbalit kÃŗd", + "history": "Historie", + "noHistory": "Zatím ÅžÃĄdnÃĄ historie chatu", + "historyLoadFailed": "Načtení historie chatu selhalo", + "historyOpenFailed": "Otevření historie chatu selhalo", + "loadingMore": "NačítÃĄm dalÅĄÃ­...", + "deleteSession": "Smazat relaci", + "messagesCount": "{{count}} zprÃĄv", + "noModel": "Vyberte model", + "inputDisabled": { + "notConnected": "Gateway není spuÅĄtěna. SpusÅĨte ji pro zahÃĄjení chatu.", + "noModel": "ÅŊÃĄdnÃŊ vÃŊchozí model není nastaven. Přejděte na strÃĄnku Modely." + }, + "sendMessage": "Odeslat zprÃĄvu", + "sendHint": "Enter pro odeslÃĄní\nShift + Enter pro novÃŊ Å™ÃĄdek", + "contextTitle": "Kontext", + "contextDetail": "Zobrazit detail", + "attachImage": "Přidat obrÃĄzky", + "removeImage": "Odebrat obrÃĄzek", + "uploadedImage": "NahranÃŊ obrÃĄzek", + "invalidImage": "\"{{name}}\" není podporovanÃŊ formÃĄt obrÃĄzku.", + "imageTooLarge": "\"{{name}}\" překračuje limit {{size}}.", + "imageReadFailed": "Čtení souboru \"{{name}}\" selhalo.", + "empty": { + "noConfiguredModel": "ÅŊÃĄdnÃŊ model není nakonfigurovÃĄn", + "noConfiguredModelDescription": "Před zahÃĄjením chatu musíte nakonfigurovat alespoň jeden AI model s API klíčem.", + "goToModels": "Přejít na Modely", + "noSelectedModel": "ÅŊÃĄdnÃŊ model není vybrÃĄn", + "noSelectedModelDescription": "MÃĄte nakonfigurovanÊ modely, ale ÅžÃĄdnÃŊ není nastaven jako vÃŊchozí. Před zahÃĄjením chatu vyberte model.", + "notRunning": "Gateway není spuÅĄtěna", + "notRunningDescription": "Pro zahÃĄjení chatu spusÅĨte gateway. PouÅžijte tlačítko Spustit gateway v horní liÅĄtě." + }, + "modelGroup": { + "apikey": "API Key", + "oauth": "OAuth", + "local": "LokÃĄlní" + } + }, + "header": { + "logout": { + "tooltip": "OdhlÃĄsit se", + "confirm": "OdhlÃĄsit se", + "description": "Opravdu se chcete odhlÃĄsit z dashboardu?" + }, + "gateway": { + "stopDialog": { + "title": "Zastavit gateway?", + "description": "Opravdu chcete gateway zastavit? Tím se ukončí aktivní chat relace a zastaví inference.", + "confirm": "Zastavit gateway" + }, + "action": { + "start": "Spustit gateway", + "stop": "Zastavit gateway", + "restart": "Restartovat gateway" + }, + "status": { + "starting": "SpouÅĄtění gateway...", + "restarting": "RestartovÃĄní gateway...", + "stopping": "ZastavovÃĄní gateway..." + }, + "restartRequired": "Změny konfigurace se projeví aÅž po restartu gateway." + } + }, + "common": { + "cancel": "ZruÅĄit", + "close": "Zavřít", + "save": "UloÅžit", + "saving": "UklÃĄdÃĄm...", + "reset": "Resetovat", + "confirm": "Potvrdit", + "fix": "Opravit", + "saveChangesTitle": "MÃĄte neuloÅženÊ změny konfigurace", + "restartRequiredTitle": "VyÅžadovÃĄn restart gateway", + "restartRequiredDesc": "NejnovějÅĄÃ­ konfigurace {{name}} byla uloÅžena. Pro aktivaci restartujte gateway." + }, + "labels": { + "loading": "NačítÃĄm..." + }, + "footer": { + "version": "Verze", + "commit": "Commit", + "build": "Build", + "version_unknown": "NeznÃĄmÃĄ" + }, + "credentials": { + "description": "SprÃĄva OAuth a token přihlaÅĄovacích Ãēdajů pro podporovanÊ providery.", + "loading": "NačítÃĄm přihlaÅĄovací Ãēdaje...", + "providers": { + "openai": { + "description": "Podporuje browser OAuth, device code a token přihlÃĄÅĄení." + }, + "anthropic": { + "description": "PouŞívÃĄ token přihlÃĄÅĄení pro přístup ke Claude." + }, + "antigravity": { + "description": "PouŞívÃĄ browser OAuth pro Google Cloud Code Assist." + } + }, + "status": { + "connected": "Připojeno", + "needsRefresh": "VyÅžaduje obnovení", + "expired": "VyprÅĄelo", + "notLoggedIn": "NepřihlÃĄÅĄeno" + }, + "actions": { + "browser": "Browser OAuth", + "deviceCode": "Device Code", + "stopLoading": "Zastavit načítÃĄní", + "saveToken": "UloÅžit", + "logout": "OdhlÃĄsit" + }, + "logoutDialog": { + "title": "OdhlÃĄsit providera?", + "description": "Tím se odstraní uloÅženÊ přihlaÅĄovací Ãēdaje pro {{provider}}." + }, + "fields": { + "openaiToken": "OpenAI token", + "anthropicToken": "Anthropic token" + }, + "labels": { + "account": "Účet", + "email": "E-mail", + "project": "Projekt" + }, + "errors": { + "loadFailed": "Načtení přihlaÅĄovacích Ãēdajů selhalo", + "flowFailed": "Ověření auth flow selhalo", + "loginFailed": "PřihlÃĄÅĄení selhalo", + "logoutFailed": "OdhlÃĄÅĄení selhalo", + "invalidBrowserResponse": "NeplatnÃĄ odpověď browser přihlÃĄÅĄení", + "invalidDeviceResponse": "NeplatnÃĄ odpověď device code", + "popupBlocked": "Nelze otevřít novou zÃĄloÅžku. Povolte prosím pop-upy a zkuste to znovu." + }, + "flow": { + "current": "AktuÃĄlní stav autentizace", + "pending": "ČekÃĄm na autorizaci...", + "success": "Autentizace ÃēspÄ›ÅĄnÃĄ", + "error": "Autentizace selhala", + "expired": "Autentizační relace vyprÅĄela" + }, + "device": { + "title": "OpenAI Device Login", + "description": "Otevřete ověřovací strÃĄnku a zadejte níŞe uvedenÃŊ kÃŗd. Tato strÃĄnka se obnoví automaticky.", + "code": "UÅživatelskÃŊ kÃŗd", + "url": "Ověřovací URL", + "polling": "ZjiÅĄÅĨuji stav přihlÃĄÅĄení...", + "open": "Otevřít ověřovací strÃĄnku" + } + }, + "models": { + "description": "Nastavení API klíčů pro AI providery. V chatu jsou dostupnÊ pouze nakonfigurovanÊ modely.", + "defaultChangeSuccess": "VÃŊchozí model aktualizovÃĄn.", + "unsavedPrompt": "Tato změna jeÅĄtě nebyla uloÅžena. UloÅžte ji do konfigurace modelu.", + "restartHint": "Změny konfigurace modelu se projeví po restartu gateway.", + "loadError": "Načtení modelů selhalo", + "retry": "Zkusit znovu", + "providerCatalogUnavailable": "Katalog poskytovatelů backendu není dostupnÃŊ. VÃŊběr novÃŊch poskytovatelů je zakÃĄzÃĄn, dokud se API modelů ÃēspÄ›ÅĄně nenačte.", + "noDefaultHintPrefix": "Zatím není nastaven ÅžÃĄdnÃŊ vÃŊchozí model. Klikněte na", + "noDefaultHintSuffix": "pro nastavení.", + "status": { + "available": "DostupnÃŊ", + "unconfigured": "NenakonfigurovÃĄn", + "unreachable": "SluÅžba nedostupnÃĄ" + }, + "badge": { + "default": "VÃŊchozí", + "virtual": "VirtuÃĄlní" + }, + "action": { + "edit": "Upravit API klíč", + "setDefault": "Nastavit jako vÃŊchozí", + "delete": "Smazat model", + "setDefaultDisabled": { + "setting": "Nastavuji jako vÃŊchozí...", + "unavailable": "NedostupnÃŊ model nelze nastavit jako vÃŊchozí", + "isDefault": "JiÅž je vÃŊchozím modelem", + "isVirtual": "VirtuÃĄlní model nelze nastavit jako vÃŊchozí", + "unsupportedProvider": "Tento poskytovatel podporuje pouze ASR a nemůŞe bÃŊt vÃŊchozím modelem chatu." + }, + "deleteDisabled": { + "isDefault": "VÃŊchozí model nelze smazat" + } + }, + "defaultOnSave": { + "label": "VÃŊchozí model", + "description": "Po uloÅžení automaticky nastavit tento model jako vÃŊchozí.", + "unsupportedProvider": "Tento poskytovatel můŞe bÃŊt uloÅžen v seznamu modelů, ale nemůŞe bÃŊt pouÅžit jako vÃŊchozí model chatu." + }, + "add": { + "button": "Přidat model", + "title": "Přidat vlastní model", + "description": "Přidejte OpenAI-kompatibilní nebo nativní endpoint modelu.", + "modelName": "Alias modelu", + "modelNamePlaceholder": "např. my-gpt4", + "modelNameHint": "KrÃĄtkÃŊ nÃĄzev pro identifikaci modelu v konverzacích.", + "modelId": "IdentifikÃĄtor modelu", + "modelIdPlaceholder": "např. gpt-4o nebo openai/gpt-4o", + "modelIdHint": "Pokud není uveden Provider, hodnoty jako openai/gpt-4o se interpretují ve formÃĄtu provider/model. Je-li Provider uveden, toto pole se bere jako kanonickÊ ID modelu a neparsuje se z něj prefix providera.", + "errorRequired": "Toto pole je povinnÊ.", + "errorDuplicateModelName": "Alias modelu jiÅž existuje. PouÅžijte jinÃŊ nÃĄzev.", + "saveError": "PřidÃĄní modelu selhalo", + "saveSuccess": "Model přidÃĄn.", + "confirm": "Přidat model" + }, + "delete": { + "title": "Smazat model?", + "description": "\"{{name}}\" bude trvale odstraněn ze seznamu modelů. Tuto akci nelze vrÃĄtit.", + "confirm": "Smazat" + }, + "advanced": { + "toggle": "PokročilÊ moÅžnosti" + }, + "field": { + "provider": "Provider", + "providerPlaceholder": "např. openai", + "providerHint": "VolitelnÊ. Pokud je uvedeno, pouÅžije se jako skutečnÃŊ provider a IdentifikÃĄtor modelu se bere jako kanonickÊ ID.", + "providerInvalid": "AktuÃĄlní poskytovatel je neplatnÃŊ. Vyberte podporovanÊho poskytovatele.", + "selectProviderFirst": "Nejprve vyberte poskytovatele", + "apiBase": "API Base URL", + "apiKey": "API Key", + "apiKeyPlaceholder": "Zadejte API klíč", + "apiKeyPlaceholderSet": "Ponechte prÃĄzdnÊ pro zachovÃĄní stÃĄvajícího klíče", + "proxy": "HTTP Proxy", + "proxyHint": "VolitelnÊ. např. http://127.0.0.1:7890", + "authMethod": "Metoda autentizace", + "authMethodHint": "Metoda autentizace: oauth, token. Ponechte prÃĄzdnÊ pro autentizaci API klíčem.", + "authMethodManagedHint": "Tento poskytovatel spravuje reÅžim ověřovÃĄní automaticky.", + "connectMode": "ReÅžim připojení", + "connectModeHint": "ReÅžim připojení pro CLI-based providery: stdio nebo grpc.", + "workspace": "Cesta k workspace", + "workspaceHint": "Pracovní adresÃĄÅ™ pro CLI-based providery (např. GitHub Copilot).", + "requestTimeout": "Timeout poÅžadavku (s)", + "requestTimeoutHint": "MaximÃĄlní počet sekund čekÃĄní na odpověď. 0 = pouŞít vÃŊchozí.", + "rpm": "Rate Limit (RPM)", + "rpmHint": "MaximÃĄlní počet poÅžadavků za minutu. 0 = bez omezení.", + "thinkingLevel": "Úroveň uvaÅžovÃĄní", + "thinkingLevelHint": "RozÅĄÃ­Å™enÃŊ thinking budget: off, low, medium, high, xhigh, adaptive.", + "providerDefault": "vÃŊchozí poskytovatele", + "maxTokensField": "Pole Max Tokens", + "maxTokensFieldHint": "Přepsat nÃĄzev pole poÅžadavku pro max tokens, např. max_completion_tokens.", + "toolSchemaTransform": "Transformace schÊmatu nÃĄstroje", + "toolSchemaTransformHint": "VolitelnÃĄ transformace kompatibility pro JSON schÊmata nÃĄstrojů. Ponechte prÃĄzdnÊ pro nativní chovÃĄní. PodporovanÊ hodnoty: simple.", + "streamingEnabled": "StreamovanÊ vÃŊstupy", + "streamingEnabledHint": "Povolit tomuto modelu streamovanÊ poÅžadavky. Musí bÃŊt rovněŞ povoleno streamovÃĄní v nastavení kanÃĄlu.", + "extraBody": "Extra Body", + "extraBodyHint": "DodatečnÃĄ JSON pole pro vloÅžení do těla poÅžadavku, např. {\"reasoning_split\": true}.", + "customHeaders": "Vlastní hlavičky", + "customHeadersHint": "DodatečnÊ HTTP hlavičky vklÃĄdanÊ do kaÅždÊho poÅžadavku, např. {\"X-Source\": \"coding-plan\"}.", + "invalidJson": "NeplatnÃŊ formÃĄt JSON" + }, + "edit": { + "title": "Nastavení {{name}}", + "apiKeyHint": "Klíč je jiÅž nastaven. Ponechte prÃĄzdnÊ pro zachovÃĄní beze změny.", + "oauthNote": "Tento provider pouŞívÃĄ OAuth — API klíč není vyÅžadovÃĄn.", + "saveError": "UloÅžení selhalo", + "saveSuccess": "Konfigurace modelu uloÅžena." + }, + "fetch": { + "title": "Načíst dostupnÊ modely", + "description": "Načíst seznam modelů od poskytovatele.", + "providerLabel": "Poskytovatel:", + "needApiKey": "Nejprve zadejte API klíč pro načtení modelů.", + "fetching": "NačítÃĄní modelů...", + "retry": "Zkusit znovu", + "filterPlaceholder": "Filtrovat modely...", + "found": "Nalezen {{count}} model", + "found_plural": "Nalezeno {{count}} modelů", + "shown": "(zobrazeno {{count}})", + "selectAll": "Vybrat vÅĄe", + "deselectAll": "ZruÅĄit vÃŊběr vÅĄech", + "fill": "Doplnit {{count}} vybranÃŊ model", + "fill_plural": "Doplnit {{count}} vybranÊ modely", + "failed": "Načtení modelů selhalo" + }, + "catalog": { + "button": "UloÅženÊ katalogy", + "title": "UloÅženÊ katalogy modelů", + "description": "Dříve načtenÊ seznamy modelů, uloÅženÊ podle API klíče. Vyberte modely a přidejte je do konfigurace.", + "loading": "NačítÃĄní katalogů...", + "empty": "Zatím ÅžÃĄdnÊ uloÅženÊ katalogy. Načtěte modely od poskytovatele a uloÅžte katalog.", + "filterPlaceholder": "Filtrovat modely...", + "models": "modely", + "fetchedAt": "Načteno", + "delete": "Smazat katalog", + "refresh": "Aktualizovat ze zdroje", + "found": "Nalezen {{count}} model", + "found_plural": "Nalezeno {{count}} modelů", + "selectAll": "Vybrat vÅĄe", + "deselectAll": "ZruÅĄit vÃŊběr vÅĄech", + "addSelected": "Přidat {{count}} vybranÊ", + "addSuccess": "PřidÃĄno {{count}} modelů do konfigurace.", + "needApiKey": "Tyto modely vyÅžadují API klíč. Po importu bude nutnÊ nastavit přihlaÅĄovací Ãēdaje." + }, + "test": { + "title": "Test připojení modelu", + "description": "Ověřit, Åže je endpoint modelu dostupnÃŊ a sprÃĄvně nakonfigurovanÃŊ.", + "modelLabel": "Model:", + "identifierLabel": "IdentifikÃĄtor:", + "endpointLabel": "Endpoint:", + "testConnection": "Testovat připojení", + "testing": "Testuji připojení...", + "success": "Připojení ÃēspÄ›ÅĄnÊ", + "responseTime": "Doba odezvy: {{ms}} ms", + "failed": "Připojení selhalo", + "status": "Stav: {{status}}", + "testFailed": "Test selhal", + "testAgain": "Testovat znovu" + }, + "validation": { + "whitespace": "IdentifikÃĄtor modelu nesmí obsahovat mezery", + "leadingSlash": "Nesmí začínat lomítkem /", + "consecutiveSlash": "Nesmí obsahovat po sobě jdoucí lomítka /", + "useProvider": "Bude pouÅžit '{{provider}}' jako poskytovatel", + "defaultToOpenAI": "ÅŊÃĄdnÃŊ poskytovatel nezadÃĄn, vÃŊchozí je OpenAI", + "emptyModel": "NÃĄzev modelu nesmí bÃŊt prÃĄzdnÃŊ", + "shouldUse": "'{{provider}}' by měl pouŞívat '{{alias}}'", + "didYouMean": "Mysleli jste '{{closest}}'?", + "unknownProvider": "NeznÃĄmÃŊ poskytovatel '{{provider}}'", + "parsed": "poskytovatel={{provider}}, model={{model}}" + }, + "combobox": { + "selectProvider": "Vyberte poskytovatele...", + "searchProvider": "Hledat poskytovatele...", + "noProvider": "ÅŊÃĄdnÃŊ poskytovatel nenalezen.", + "noCatalog": "Katalog poskytovatele není dostupnÃŊ.", + "local": "lokÃĄlní" + } + }, + "channels": { + "loadError": "Načtení kanÃĄlů selhalo", + "name": { + "telegram": "Telegram", + "discord": "Discord", + "slack": "Slack", + "feishu": "Feishu", + "dingtalk": "DingTalk", + "line": "LINE", + "qq": "QQ", + "onebot": "OneBot", + "wecom": "WeCom", + "whatsapp": "WhatsApp", + "whatsapp_native": "WhatsApp Native", + "pico": "Web", + "maixcam": "MaixCam", + "matrix": "Matrix", + "irc": "IRC", + "weixin": "WeChat", + "mqtt": "MQTT" + }, + "weixin": { + "bindTitle": "Propojení Ãēčtu WeChat", + "bindDesc": "Naskenujte QR kÃŗd pomocí WeChat pro propojení osobního Ãēčtu.", + "bind": "Propojit WeChat", + "rebind": "Znovu propojit", + "bound": "WeChat propojen", + "notBound": "Účet WeChat zatím není propojen.", + "generating": "Generuji QR kÃŗd...", + "scanHint": "Otevřete WeChat a naskenujte QR kÃŗd", + "scanned": "NaskenovÃĄno — potvrďte ve WeChat", + "expired": "QR kÃŗd vyprÅĄel", + "retry": "Zkusit znovu", + "refresh": "Obnovit QR", + "errorGeneric": "Nastala chyba. Zkuste to znovu." + }, + "wecom": { + "bindTitle": "Propojení WeCom", + "bindDesc": "Naskenujte QR kÃŗd pomocí WeCom pro propojení AI Bota.", + "bind": "Propojit WeCom", + "rebind": "Znovu propojit", + "bound": "WeCom propojen", + "notBound": "WeCom AI Bot zatím není propojen.", + "generating": "Generuji QR kÃŗd...", + "scanHint": "Otevřete WeCom a naskenujte QR kÃŗd", + "scanned": "NaskenovÃĄno, potvrďte ve WeCom", + "expired": "QR kÃŗd vyprÅĄel", + "retry": "Zkusit znovu", + "refresh": "Obnovit QR", + "errorGeneric": "Nastala chyba. Zkuste to znovu." + }, + "field": { + "token": "Bot Token", + "tokenPlaceholder": "Zadejte bot token", + "botToken": "Bot Token", + "appToken": "App Token", + "appId": "App ID", + "appSecret": "App Secret", + "verificationToken": "Verification Token", + "encryptKey": "Encrypt Key", + "baseUrl": "API Base URL", + "proxy": "HTTP Proxy", + "mentionOnly": "Pouze při zmínce", + "typingEnabled": "IndikÃĄtor psaní", + "placeholderEnabled": "Placeholder zprÃĄva", + "placeholderText": "Text placeholderu", + "streamingEnabled": "StreamovanÊ vÃŊstupy", + "streamingThrottleSeconds": "Interval aktualizací (s)", + "streamingMinGrowthChars": "MinimÃĄlní přírůstek znaků", + "groupTriggerMentionOnly": "Pouze zmínka ve skupině", + "groupTriggerPrefixes": "Prefixy pro spuÅĄtění ve skupině", + "groupTriggerPrefixesPlaceholder": "např. /, !, ?", + "randomReactionEmoji": "NÃĄhodnÃĄ emoji reakce", + "randomReactionEmojiPlaceholder": "např. THUMBSUP, HEART, SMILE", + "isLark": "Lark (mezinÃĄrodní)", + "allowFrom": "Povolit od", + "allowFromPlaceholder": "např. 123456, 789012", + "allowOrigins": "PovolenÊ originy", + "allowOriginsPlaceholder": "např. https://example.com, http://localhost:5173", + "removeListItem": "Odebrat {{value}}", + "secretPlaceholder": "Zadejte secret", + "secretHintSet": "Hodnota je jiÅž nastavena. Ponechte prÃĄzdnÊ pro zachovÃĄní beze změny." + }, + "page": { + "notFound": "KanÃĄl \"{{name}}\" není podporovÃĄn.", + "saveSuccess": "Nastavení kanÃĄlu uloÅženo.", + "saveError": "UloÅžení nastavení kanÃĄlu selhalo", + "savePrompt": "Tato změna jeÅĄtě nebyla uloÅžena. UloÅžte ji do konfigurace kanÃĄlu.", + "docLink": "Dokumentace", + "enableLabel": "Aktivovat kanÃĄl", + "restartRequiredTitle": "VyÅžadovÃĄn restart gateway", + "restartRequiredDesc": "Poslední nastavení {{name}} bylo uloÅženo. Pro aktivaci restartujte gateway." + }, + "form": { + "desc": { + "token": "PřístupovÃŊ token bota pro připojení k API platformy.", + "botToken": "Token bota pro odesílÃĄní a příjem zprÃĄv.", + "appToken": "Token aplikace pro Socket Mode připojení.", + "appId": "UnikÃĄtní ID aplikace pro autentizaci.", + "appSecret": "Secret aplikace pro podepisovÃĄní a autentizaci.", + "verificationToken": "Verification token pro event callbacky.", + "encryptKey": "Å ifrovací klíč pro deÅĄifrovÃĄní callback payloadů.", + "baseUrl": "ZÃĄkladní URL API platformy. VÃŊchozí je oficÃĄlní endpoint.", + "proxy": "Adresa HTTP proxy pro odchozí síÅĨovÃŊ provoz.", + "mentionOnly": "Reagovat pouze při explicitní zmínce bota ve skupinovÃŊch chatech.", + "typingEnabled": "Zobrazovat stav psaní během generovÃĄní odpovědi.", + "placeholderEnabled": "Aktivovat dočasnÊ placeholder zprÃĄvy před odeslÃĄním finÃĄlní odpovědi.", + "streamingEnabled": "Povolit tomuto kanÃĄlu zobrazovat streamovanÊ vÃŊstupy poskytovatele. Musí bÃŊt rovněŞ povoleno streamovÃĄní v nastavení modelu.", + "streamingThrottleSeconds": "MinimÃĄlní interval mezi průběŞnÃŊmi aktualizacemi streamu. 0 znamenÃĄ pouŞít vÃŊchozí hodnotu. FinÃĄlní odpovědi nejsou omezovÃĄny.", + "streamingMinGrowthChars": "MinimÃĄlní přírůstek textu před odeslÃĄním dalÅĄÃ­ průběŞnÊ aktualizace streamu. 0 znamenÃĄ pouŞít vÃŊchozí hodnotu. FinÃĄlní odpovědi nejsou omezovÃĄny.", + "groupTriggerMentionOnly": "Ve skupinovÃŊch chatech reagovat pouze při zmínce bota.", + "groupTriggerPrefixes": "Vlastní prefixy pro spuÅĄtění ve skupinovÊm chatu. PřidÃĄvejte poloÅžky po jednÊ nebo vloÅžte více hodnot najednou.", + "randomReactionEmoji": "PicoClaw přidÃĄvÃĄ emoji reakce na zprÃĄvy uÅživatelů jako potvrzení přijetí. Příklady: \"THUMBSUP\", \"HEART\", \"SMILE\". Ponechte prÃĄzdnÊ pro vÃŊchozí emoji \"Pin\".", + "isLark": "PouŞít mezinÃĄrodní domÊnu Lark (open.larksuite.com) místo domÊny Feishu (open.feishu.cn).", + "allowFrom": "PovolenÃĄ ID uÅživatelů nebo skupin. PřidÃĄvejte po jednom nebo vloÅžte více hodnot najednou.", + "allowOrigins": "PovolenÊ origin domÊny. PřidÃĄvejte po jednom nebo vloÅžte více hodnot najednou.", + "wsUrl": "URL WebSocket sluÅžby.", + "reconnectInterval": "Interval pro opětovnÊ připojení po vÃŊpadku (sekundy).", + "bridgeUrl": "URL bridge sluÅžby.", + "sessionStorePath": "LokÃĄlní cesta pro uloÅžení relací.", + "useNative": "Zda pouŞít nativní klientskÃŊ reÅžim.", + "host": "Adresa hostitele sluÅžby.", + "port": "Port sluÅžby.", + "homeserver": "URL Matrix homeserveru.", + "userId": "UÅživatelskÊ ID Ãēčtu.", + "deviceId": "ID zařízení.", + "joinOnInvite": "Automaticky vstoupit do místností při pozvÃĄní.", + "clientId": "Client ID pro autentizaci platformy.", + "corpId": "Corp ID organizace.", + "agentId": "Agent ID podnikovÊ aplikace.", + "webhookUrl": "CelÃĄ URL webhooku.", + "webhookHost": "Hostitel pro naslouchÃĄní webhooku.", + "webhookPort": "Port pro naslouchÃĄní webhooku.", + "webhookPath": "Cesta route webhooku.", + "replyTimeout": "Timeout odpovědi v sekundÃĄch.", + "maxSteps": "MaximÃĄlní počet kroků zpracovÃĄní.", + "welcomeMessage": "Obsah uvítací zprÃĄvy pro novÊ relace.", + "allowTokenQuery": "Povolit token v URL query parametrech.", + "pingInterval": "Interval heartbeatu připojení v sekundÃĄch.", + "readTimeout": "Timeout čtení v sekundÃĄch.", + "writeTimeout": "Timeout zÃĄpisu v sekundÃĄch.", + "maxConnections": "MaximÃĄlní počet souběŞnÃŊch připojení.", + "server": "Adresa IRC serveru.", + "tls": "Zda aktivovat TLS.", + "nick": "Přezdívka bota.", + "user": "IRC uÅživatelskÊ jmÊno.", + "realName": "ZobrazovanÊ celÊ jmÊno.", + "channels": "IRC kanÃĄly pro připojení.", + "requestCaps": "Seznam IRC capabilities poÅžadovanÃŊch při připojení.", + "maxBase64FileSizeMiB": "MaximÃĄlní velikost v MiB pro převod lokÃĄlních souborů do base64 před nahrÃĄním. 0 znamenÃĄ bez omezení. Platí pouze pro lokÃĄlní soubory, ne pro URL uploady.", + "genericField": "SlouŞí ke konfiguraci {{field}}.", + "broker": "Adresa MQTT brokeru.", + "mqttAgentId": "JedinečnÃŊ identifikÃĄtor tÊto instance, pouŞívÃĄ se k sestavení cesty tÊmatu.", + "topicPrefix": "Prefix tÊmatu. VÃŊchozí hodnota je /picoclaw.", + "mqttUsername": "UÅživatelskÊ jmÊno pro ověření u brokeru (volitelnÊ).", + "mqttPassword": "Heslo pro ověření u brokeru (volitelnÊ).", + "mqttClientId": "ID MQTT klienta. Ponechte prÃĄzdnÊ pro automatickÊ generovÃĄní.", + "keepAlive": "Interval keepalive v sekundÃĄch. VÃŊchozí hodnota je 60.", + "qos": "Úroveň QoS zprÃĄv: 0 = nejvÃŊÅĄe jednou, 1 = alespoň jednou, 2 = přesně jednou." + } + }, + "validation": { + "requiredField": "Toto pole je povinnÊ." + }, + "mqtt": { + "protocolTitle": "Referenční příručka protokolu", + "protocolDesc": "Klienti odesílají a přijímají zprÃĄvy pomocí nÃĄsledujícího formÃĄtu tÊmatu a obsahu.", + "uplink": "Uplink (Klient → Agent)", + "downlink": "Downlink (Agent → Klient)", + "topicParams": "Parametry tÊmatu", + "fieldText": "text", + "uplinkTextDesc": "PřirozenÃŊ pokyn od uÅživatele (povinnÊ).", + "downlinkTextDesc": "Text odpovědi agenta. V reÅžimu streamovÃĄní zřetězte více zprÃĄv ve sprÃĄvnÊm pořadí pro Ãēplnou odpověď.", + "topicPrefixDesc": "Prefix tÊmatu, odpovídÃĄ vÃŊÅĄe uvedenÊ konfiguraci.", + "agentIdDesc": "ID agenta, odpovídÃĄ vÃŊÅĄe uvedenÊ konfiguraci.", + "clientIdDesc": "IdentifikÃĄtor definovanÃŊ klientem. Doporučení: vygenerujte UUID při prvním spuÅĄtění a uloÅžte jej, aby stejnÊ zařízení vÅždy pouŞívalo stejnÊ ID.", + "clientIdPlaceholder": "Automaticky generovÃĄno, pokud je prÃĄzdnÊ", + "secretSet": "JiÅž nakonfigurovÃĄno. Ponechte prÃĄzdnÊ pro zachovÃĄní stÃĄvající hodnoty.", + "secretEmpty": "Není nakonfigurovÃĄno" + } + }, + "pages": { + "agent": { + "load_error": "Načtení informací o podpoře agenta selhalo.", + "skills": { + "empty": "ÅŊÃĄdnÊ dovednosti nejsou aktuÃĄlně dostupnÊ.", + "install_success": "{{name}} nainstalovÃĄno.", + "install_error": "Instalace dovednosti selhala.", + "search_placeholder": "Hledat podle nÃĄzvu, popisu nebo registru", + "source_label": "Typ", + "sort_label": "Řadit", + "import": "Importovat dovednost", + "import_success": "Dovednost importovÃĄna.", + "import_error": "Import dovednosti selhal.", + "import_invalid_type": "PodporovÃĄny jsou pouze soubory dovedností ve formÃĄtu Markdown nebo ZIP.", + "import_invalid_size": "Soubor dovednosti musí bÃŊt menÅĄÃ­ neÅž 1 MB.", + "import_constraints": "Import souboru dovednosti ve formÃĄtu Markdown nebo ZIP, max. 1 MB", + "view": "Zobrazit", + "delete": "Smazat", + "delete_title": "Smazat dovednost?", + "delete_description": "\"{{name}}\" bude odstraněna z dovedností workspace.", + "delete_confirm": "Smazat", + "delete_success": "Dovednost smazÃĄna.", + "delete_error": "SmazÃĄní dovednosti selhalo.", + "viewer_title": "Obsah dovednosti", + "viewer_description": "Zde si přečtěte aktuÃĄlní obsah SKILL.md.", + "load_detail_error": "Načtení obsahu dovednosti selhalo.", + "no_description": "Popis není k dispozici.", + "no_results": "ÅŊÃĄdnÊ dovednosti neodpovídají aktuÃĄlním filtrům.", + "dropzone_title": "Importovat do workspace", + "dropzone_description": "PřetÃĄhněte soubor dovednosti nebo vyberte ze disku.", + "dropzone_label": "PřetÃĄhněte soubor dovednosti sem", + "dropzone_active": "PusÅĨte pro import dovednosti", + "dropzone_release": "Dovednost bude normalizovÃĄna a uloÅžena do adresÃĄÅ™e dovedností workspace.", + "marketplace_title": "Objevit dovednosti", + "marketplace_description": "Prohledejte registry dovedností a nainstalujte uÅžitečnÊ dovednosti do tohoto workspace", + "marketplace_search_placeholder": "Hledat schopnosti jako github, docker, database...", + "marketplace_search_action": "Hledat", + "marketplace_search_status": "Stav hledÃĄní", + "marketplace_install_status": "Stav instalace", + "marketplace_notice_title": "Bezpečnostní upozornění", + "marketplace_notice_body": "Dovednosti z registru jsou obsah třetích stran. Před instalací zkontrolujte autora, URL strÃĄnky, instrukce a veÅĄkerÃŊ poÅžadovanÃŊ kÃŗd nebo přihlaÅĄovací Ãēdaje.", + "marketplace_status_disabled": "ZakÃĄzÃĄno. Nejprve aktivujte přísluÅĄnÃŊ nÃĄstroj na strÃĄnce NÃĄstroje.", + "marketplace_status_enable_hint": "Nejprve aktivujte přísluÅĄnÃŊ nÃĄstroj na strÃĄnce NÃĄstroje.", + "marketplace_search_error": "ProhledÃĄní registrů selhalo.", + "marketplace_loading_results": "HledÃĄm dovednosti...", + "marketplace_loading_more": "NačítÃĄm dalÅĄÃ­ dovednosti...", + "marketplace_results_title": "{{count}} vÃŊsledků pro \"{{query}}\"", + "marketplace_results_hint": "VÃŊsledky z registru se instalují do aktuÃĄlního workspace.", + "marketplace_install_action": "Instalovat", + "marketplace_installed": "NainstalovÃĄno", + "marketplace_view_installed": "Zobrazit lokÃĄlní", + "marketplace_installed_hint": "JiÅž dostupnÊ v tomto workspace jako \"{{name}}\".", + "marketplace_empty_results": "ÅŊÃĄdnÊ instalovatelnÊ dovednosti neodpovídají \"{{query}}\".", + "marketplace_idle": "Hledejte schopnost pro zobrazení instalovatelnÃŊch dovedností z nakonfigurovanÃŊch registrů.", + "marketplace_unavailable": "ProhledÃĄvÃĄní registrů je momentÃĄlně nedostupnÊ. Zkontrolujte nastavení nÃĄstrojů Dovednosti.", + "sort": { + "name_asc": "NÃĄzev (A-Z)", + "name_desc": "NÃĄzev (Z-A)", + "source": "Typ" + }, + "origin": { + "all": "VÅĄechny typy", + "builtin": "VestavěnÊ", + "third_party": "Třetí strany", + "manual": "Ruční" + }, + "summary": { + "total": "Celkem dovedností" + }, + "detail_tabs": { + "preview": "NÃĄhled", + "raw": "ZdrojovÃŊ text", + "meta": "Metadata" + }, + "metadata": { + "name": "NÃĄzev", + "description": "Popis", + "registry": "Registr", + "url": "URL", + "version": "NainstalovanÃĄ verze", + "lines": "Počet Å™ÃĄdků", + "characters": "Počet znaků" + }, + "marketplace_installDisabled": { + "installing": "Instaluji...", + "installed": "JiÅž nainstalovÃĄno", + "cannotInstall": "Nelze nainstalovat: přísluÅĄnÃŊ nÃĄstroj není aktivní" + } + }, + "tools": { + "search_placeholder": "Hledat nÃĄstroje...", + "no_results": "ÅŊÃĄdnÊ nÃĄstroje neodpovídají kritÊriím.", + "filter": { + "all": "VÅĄechny stavy", + "enabled": "Aktivní", + "disabled": "Neaktivní", + "blocked": "BlokovanÊ" + }, + "empty": "ÅŊÃĄdnÊ nÃĄstroje nejsou dostupnÊ.", + "enable_success": "NÃĄstroj aktivovÃĄn.", + "disable_success": "NÃĄstroj deaktivovÃĄn.", + "toggle_error": "Aktualizace stavu nÃĄstroje selhala.", + "library_title": "Knihovna nÃĄstrojů", + "library_description": "ProchÃĄzejte a spravujte sadu nÃĄstrojů dostupnÃŊch pro vaÅĄe AI agenty.", + "web_search": { + "title": "WebovÊ vyhledÃĄvÃĄní", + "description": "Poskytuje agentům schopnost webovÊho vyhledÃĄvÃĄní pro nalezení aktuÃĄlních informací. Automaticky směruje na optimÃĄlního aktivního providera.", + "unsaved_prompt": "Tato změna jeÅĄtě nebyla uloÅžena. UloÅžte ji do konfigurace webovÊho vyhledÃĄvÃĄní.", + "global_settings": "ObecnÊ", + "providers_config": "Integrace", + "load_error": "Načtení nastavení webovÊho vyhledÃĄvÃĄní selhalo.", + "save": "UloÅžit změny", + "open_settings": "Otevřít nastavení", + "save_success": "Nastavení ÃēspÄ›ÅĄně uloÅženo.", + "save_error": "UloÅžení nastavení selhalo.", + "provider": "PrimÃĄrní provider", + "provider_description": "Vyberte vÃŊchozího providera pro zpracovÃĄní poÅžadavků webovÊho vyhledÃĄvÃĄní.", + "proxy": "HTTPS Proxy", + "proxy_description": "VolitelnÃĄ globÃĄlní HTTP/S proxy pro podkladovÊ webovÊ poÅžadavky.", + "prefer_native": "Preferovat nativní vyhledÃĄvÃĄní", + "prefer_native_hint": "Pokud je aktivní, model můŞe pouŞít vlastní vestavěnou schopnost vyhledÃĄvÃĄní místo nakonfigurovanÊho seznamu providerů.", + "provider_hint": "Aktivujte tohoto providera a vyplňte poÅžadovanÃĄ nastavení připojení.", + "max_results": "Max vÃŊsledků", + "base_url": "Base URL", + "base_url_placeholder": "VolitelnÊ přepsÃĄní endpointu", + "api_key": "API Key / Token", + "api_key_placeholder": "Zadejte API klíč, ponechte prÃĄzdnÊ pro zachovÃĄní stÃĄvajícího", + "none": "NedostupnÊ" + }, + "status": { + "enabled": "Aktivní", + "disabled": "Neaktivní", + "blocked": "BlokovÃĄno" + }, + "categories": { + "automation": "Automatizace", + "filesystem": "SouborovÃŊ systÊm", + "web": "Web", + "communication": "Komunikace", + "skills": "Dovednosti", + "agents": "Agenti", + "hardware": "Hardware", + "discovery": "Discovery" + }, + "reasons": { + "requires_linux": "Tento nÃĄstroj funguje pouze na Linux hostech s potřebnÃŊmi soubory zařízení.", + "requires_serial_platform": "Tento nÃĄstroj aktuÃĄlně podporuje hostitele Linux, macOS a Windows s dostupnÃŊmi sÊriovÃŊmi porty.", + "requires_skills": "Nejprve aktivujte `tools.skills`, aby byl tento nÃĄstroj registru dovedností dostupnÃŊ.", + "requires_subagent": "Nejprve aktivujte `tools.subagent`, aby nÃĄstroj spawn mohl delegovat prÃĄci.", + "requires_mcp_discovery": "Nejprve aktivujte `tools.mcp.discovery`, aby byly nÃĄstroje MCP discovery dostupnÊ.", + "requires_web_search_provider": "Nakonfigurujte alespoň jednoho připravenÊho externího providera webovÊho vyhledÃĄvÃĄní." + } + } + }, + "config": { + "load_error": "Načtení konfigurace selhalo. Obnovte strÃĄnku a zkuste to znovu.", + "workspace": "AdresÃĄÅ™ workspace", + "workspace_hint": "ZÃĄkladní adresÃĄÅ™ pro operace s agentovÃŊmi soubory.", + "restrict_workspace": "Omezit na workspace", + "restrict_workspace_hint": "Povolit operace se soubory pouze uvnitř workspace.", + "split_on_marker": "Chatty reÅžim", + "split_on_marker_hint": "Rozděluje dlouhÊ zprÃĄvy na krÃĄtkÊ jako při skutečnÊm lidskÊm chatu.", + "tool_feedback_enabled": "Tool Feedback", + "tool_feedback_enabled_hint": "Odeslat krÃĄtkou poznÃĄmku o provedení do aktuÃĄlního chatu před spuÅĄtěním kaÅždÊho nÃĄstroje.", + "tool_feedback_separate_messages": "OddělenÊ zprÃĄvy zpětnÊ vazby", + "tool_feedback_separate_messages_hint": "KaÅždou aktualizaci zpětnÊ vazby nÃĄstroje uchovejte jako samostatnou zprÃĄvu chatu místo opakovanÊho pouÅžití jedinÊ průběŞnÊ zprÃĄvy.", + "tool_feedback_max_args_length": "DÊlka Tool Feedbacku", + "tool_feedback_max_args_length_hint": "MaximÃĄlní počet znaků zobrazenÃŊch v kaÅždÊ tool feedback zprÃĄvě. Nastavte 0 pro vÃŊchozí hodnotu.", + "exec_enabled": "Povolit příkazy", + "exec_enabled_hint": "Aktivuje nebo deaktivuje spouÅĄtění příkazů. Pokud je deaktivovÃĄno, ÅžÃĄdnÊ příkazy se nespustí.", + "allow_remote": "Povolit vzdÃĄlenÊ příkazy", + "allow_remote_hint": "Pokud je aktivní, vzdÃĄlenÊ relace nebo ne-lokÃĄlní kontexty mohou takÊ spouÅĄtět příkazy. Pokud je deaktivovÃĄno, spouÅĄtění příkazů je omezeno na lokÃĄlní bezpečnÊ kontexty.", + "enable_deny_patterns": "Aktivovat blacklist", + "enable_deny_patterns_hint": "Pokud je aktivní, aplikace blokuje příkazy odpovídající vestavěnÃŊm nebezpečnÃŊm vzorům a vlastnímu blacklistu příkazů níŞe.", + "exec_timeout_seconds": "Timeout příkazu (sekundy)", + "exec_timeout_seconds_hint": "MaximÃĄlní doba běhu příkazů. Nastavte 0 pro vÃŊchozí timeout.", + "custom_deny_patterns": "Blacklist příkazů", + "custom_deny_patterns_hint": "Přidejte vlastní pravidla pro blokovÃĄní příkazů, jeden regulÃĄrní vÃŊraz na Å™ÃĄdek. Příkaz odpovídající jakÊmukoli pravidlu bude zablokovÃĄn.", + "custom_allow_patterns": "Whitelist příkazů", + "custom_allow_patterns_hint": "Přidejte vlastní pravidla pro povolení příkazů, jeden regulÃĄrní vÃŊraz na Å™ÃĄdek. Příkaz odpovídající jakÊmukoli pravidlu přeskočí blacklist, ale ostatní bezpečnostní limity stÃĄle platí.", + "custom_patterns_placeholder": "^rm\\s+-rf\\b\n^git\\s+push\\b", + "pattern_detector_title": "NÃĄstroj pro testovÃĄní vzorů", + "pattern_detector_hint": "Zadejte příkaz pro otestovÃĄní, zda odpovídÃĄ některÊmu vzoru blacklistu nebo whitelistu.", + "pattern_detector_input_placeholder": "Zadejte příkaz pro test, např. rm -rf /tmp", + "pattern_detector_test_button": "Testovat", + "pattern_detector_result_allowed": "Povoleno (odpovídÃĄ whitelistu)", + "pattern_detector_result_blocked": "BlokovÃĄno (odpovídÃĄ blacklistu)", + "pattern_detector_result_no_match": "ÅŊÃĄdnÃĄ shoda (pouÅžijí se vÃŊchozí pravidla)", + "allow_shell_execution": "Povolit naplÃĄnovanÊ příkazy", + "allow_shell_execution_hint": "Povolit naplÃĄnovanÃŊm ÃēlohÃĄm vÃŊchozí spouÅĄtění příkazů. Pokud je deaktivovÃĄno, uÅživatelÊ musí předat command_confirm=true pro naplÃĄnovÃĄní příkazu.", + "cron_exec_timeout": "Timeout naplÃĄnovanÊho příkazu (minuty)", + "cron_exec_timeout_hint": "MaximÃĄlní doba běhu naplÃĄnovanÃŊch příkazů. Nastavte 0 pro deaktivaci timeoutu.", + "max_tokens": "Max Tokens", + "max_tokens_hint": "Horní limit tokenů na odpověď modelu.", + "context_window": "Context Window", + "context_window_hint": "Kapacita kontextovÊho okna modelu v tokenech. Ponechte prÃĄzdnÊ pro vÃŊchozí (4× max tokens).", + "max_tool_iterations": "Max Tool Iterations", + "max_tool_iterations_hint": "MaximÃĄlní počet smyček volÃĄní nÃĄstrojů v jednom Ãēkolu.", + "summarize_threshold": "PrÃĄh pro sumarizaci zprÃĄv", + "summarize_threshold_hint": "Spustit sumarizaci po tomto počtu zprÃĄv.", + "summarize_token_percent": "Procento tokenů pro sumarizaci", + "summarize_token_percent_hint": "PouŞívÃĄ se při spuÅĄtění sumarizace konverzace.", + "turn_profile": "ZÃĄsady kontextu poÅžadavku", + "turn_profile_hint": "Řídí, jakÃŊ kontext nese kaÅždÃŊ poÅžadavek. Ponechte zakÃĄzÃĄno pro zachovÃĄní běŞnÊho chovÃĄní chatu.", + "turn_profile_enabled": "Povolit zÃĄsadu", + "turn_profile_enabled_hint": "Pokud je povoleno, tato zÃĄsada se pouÅžije na kaÅždÃŊ novÃŊ tah. Pokud je zakÃĄzÃĄno, PicoClaw pouŞívÃĄ původní chovÃĄní kontextu.", + "turn_profile_mode_default": "VÃŊchozí", + "turn_profile_mode_off": "Vypnuto", + "turn_profile_mode_custom": "PovolenÃŊ seznam", + "turn_profile_history": "HistorickÃŊ kontext", + "turn_profile_history_hint": "VÃŊchozí nastavení zahrnuje předchozí zprÃĄvy z tÊto session. Vypnutí způsobí, Åže tah bude fungovat jako novÃŊ chat a jeho vÃŊsledek se neuloŞí do historie.", + "turn_profile_system_prompt": "SystÊmovÃŊ kontext", + "turn_profile_system_prompt_hint": "VÃŊchozí nastavení zahrnuje identitu PicoClaw, workspace, paměÅĨ a instrukce runtime. Vypnuto zachovÃĄ pouze systÊmovÊ prompty explicitně dodanÊ poÅžadavkem.", + "turn_profile_skills": "Dovednostní prompty", + "turn_profile_skills_hint": "VÃŊchozí nastavení zahrnuje dostupnÊ dovednosti a aktivní instrukce. Vypnuto je skryje. PovolenÃŊ seznam zachovÃĄ jen dovednosti zadanÊ jeden nÃĄzev na Å™ÃĄdek.", + "turn_profile_skills_allow_placeholder": "nÃĄzev-dovednosti\ndalÅĄÃ­-dovednost", + "turn_profile_tools": "VolatelnÊ nÃĄstroje", + "turn_profile_tools_hint": "VÃŊchozí nastavení zpřístupní běŞnÊ nÃĄstroje. Vypnuto zabrÃĄní volÃĄní nÃĄstrojů. PovolenÃŊ seznam zachovÃĄ pouze nÃĄstroje zadanÊ jeden nÃĄzev na Å™ÃĄdek, například web_search.", + "turn_profile_tools_allow_placeholder": "web_search\nweb_fetch", + "session_scope": "Rozsah relace", + "session_scope_hint": "Způsob izolace kontextu chatu mezi partnery/kanÃĄly.", + "session_scope_per_channel_peer": "Podle kanÃĄlu + partnera", + "session_scope_per_channel_peer_desc": "OddělenÃŊ kontext pro kaÅždÊho uÅživatele v kaÅždÊm kanÃĄlu.", + "session_scope_per_channel": "Podle kanÃĄlu", + "session_scope_per_channel_desc": "Jeden sdílenÃŊ kontext na kanÃĄl.", + "session_scope_per_peer": "Podle partnera", + "session_scope_per_peer_desc": "Jeden kontext na uÅživatele napříč kanÃĄly.", + "session_scope_global": "GlobÃĄlní", + "session_scope_global_desc": "VÅĄechny zprÃĄvy sdílejí jeden globÃĄlní kontext.", + "heartbeat_enabled": "Heartbeat", + "heartbeat_enabled_hint": "Odesílat pravidelnÊ heartbeat zprÃĄvy.", + "heartbeat_interval": "Interval heartbeatu (minuty)", + "heartbeat_interval_hint": "Interval v minutÃĄch mezi heartbeat signÃĄly.", + "devices_enabled": "Aktivovat zařízení", + "devices_enabled_hint": "Aktivovat integrace hardwarovÃŊch zařízení.", + "monitor_usb": "Sledovat USB", + "monitor_usb_hint": "Sledovat udÃĄlosti připojení/odpojení USB při aktivních zařízeních.", + "autostart_label": "Spustit při přihlÃĄÅĄení", + "autostart_hint": "Automaticky spustit PicoClaw Web při přihlÃĄÅĄení.", + "autostart_unsupported": "SpuÅĄtění při přihlÃĄÅĄení není na tÊto platformě podporovÃĄno.", + "autostart_load_error": "Načtení stavu spuÅĄtění při přihlÃĄÅĄení selhalo.", + "server_port": "Port sluÅžby", + "server_port_hint": "HTTP port pouŞívanÃŊ PicoClaw Web.", + "launcher_section_hint": "Změny v tÊto sekci se projeví aÅž po restartu launcheru.", + "gateway_restart_hint": "Změny v tÊto ÄÃĄsti se projeví po restartu gateway.", + "dashboard_password": "PřihlaÅĄovací heslo", + "dashboard_password_hint": "Nastavit novÊ přihlaÅĄovací heslo.", + "dashboard_password_placeholder": "Alespoň 8 znaků", + "dashboard_password_confirm": "Potvrzení novÊho hesla", + "dashboard_password_confirm_hint": "Zadejte novÊ přihlaÅĄovací heslo znovu.", + "dashboard_password_confirm_placeholder": "Zopakujte heslo", + "dashboard_password_required": "Zadejte a potvrďte novÊ přihlaÅĄovací heslo.", + "dashboard_password_mismatch": "PřihlaÅĄovací hesla se neshodují.", + "dashboard_password_min_length": "PřihlaÅĄovací heslo musí mít alespoň 8 znaků.", + "lan_access": "Aktivovat přístup z LAN", + "lan_access_hint": "Povolit přístup z ostatních zařízení v lokÃĄlní síti.", + "allowed_cidrs": "PovolenÊ síÅĨovÊ CIDRy", + "allowed_cidrs_hint": "Ke sluÅžbě mají přístup pouze klienti z těchto CIDR rozsahů. Jeden na Å™ÃĄdek nebo oddělenÊ ÄÃĄrkou. Ponechte prÃĄzdnÊ pro povolení vÅĄech.", + "allowed_cidrs_placeholder": "192.168.1.0/24\n10.0.0.0/8", + "evolution_section_hint": "Nechte agenta učit se z dokončenÃŊch tahů a připravovat vylepÅĄení dovedností.", + "evolution_enabled": "Povolit evoluci", + "evolution_enabled_hint": "ZaznamenÃĄvat data učení pro dokončenÊ tahy. ReÅžimy NÃĄvrh a Aplikovat mohou takÊ generovat aktualizace dovedností.", + "evolution_mode": "ReÅžim evoluce", + "evolution_mode_hint": "Pozorovat — pouze zaznamenÃĄvÃĄ data. NÃĄvrh — připravuje kandidÃĄtní dovednosti. Aplikovat — můŞe zapsat přijatÊ nÃĄvrhy do dovedností workspace.", + "evolution_mode_observe": "SledovÃĄní", + "evolution_mode_draft": "NÃĄvrh", + "evolution_mode_apply": "Aplikace", + "evolution_state_dir": "AdresÃĄÅ™ stavu", + "evolution_state_dir_hint": "VolitelnÃŊ adresÃĄÅ™ pro stav evoluce. Ponechte prÃĄzdnÊ pro pouÅžití vÃŊchozího workspace.", + "evolution_min_task_count": "MinimÃĄlní počet Ãēloh", + "evolution_min_task_count_hint": "MinimÃĄlní počet příbuznÃŊch Ãēloh, neÅž můŞe vzor vytvořit nÃĄvrh.", + "evolution_min_success_ratio": "MinimÃĄlní poměr ÃēspÄ›ÅĄnosti", + "evolution_min_success_ratio_hint": "PoÅžadovanÃŊ poměr ÃēspÄ›ÅĄnosti pro seskupenÊ Ãēlohy. Zadejte hodnotu větÅĄÃ­ neÅž 0 a nejvÃŊÅĄe 1.", + "evolution_cold_path_trigger": "SpouÅĄtěč zpracovÃĄní", + "evolution_cold_path_trigger_hint": "Zvolte, kdy se spustí generovÃĄní nÃĄvrhů pro způsobilÊ zÃĄznamy učení.", + "evolution_cold_path_after_turn": "Po kaÅždÊm tahu", + "evolution_cold_path_scheduled": "PlÃĄnovaně", + "evolution_cold_path_manual": "Vypnuto", + "evolution_cold_path_times": "PlÃĄnovanÊ časy", + "evolution_cold_path_times_hint": "Časy spuÅĄtění plÃĄnovanÊho zpracovÃĄní. Zadejte jednu hodnotu HH:MM na Å™ÃĄdek.", + "mcp_section_hint": "Konfigurujte MCP servery bez ruční Ãēpravy souboru config.json.", + "mcp_enabled": "Povolit MCP", + "mcp_enabled_hint": "Zapnout nebo vypnout integraci MCP serverů.", + "mcp_discovery_enabled": "Povolit MCP Discovery", + "mcp_discovery_enabled_hint": "Povolit nÃĄstrojům MCP Discovery prohledÃĄvat registrovanÊ MCP servery.", + "mcp_discovery_ttl": "TTL odemčení nÃĄstrojů discovery", + "mcp_discovery_ttl_hint": "Počet TTL tiků, po kterÊ zůstÃĄvají nalezenÊ nÃĄstroje dostupnÊ po vyhledÃĄvÃĄní.", + "mcp_discovery_max_results": "MaximÃĄlní počet vÃŊsledků discovery", + "mcp_discovery_max_results_hint": "MaximÃĄlní počet shod MCP discovery vrÃĄcenÃŊch na dotaz.", + "mcp_discovery_use_bm25": "PouŞít BM25 řazení", + "mcp_discovery_use_bm25_hint": "PouŞít lexikÃĄlní skÃŗrovÃĄní BM25 pro vÃŊsledky MCP discovery.", + "mcp_discovery_use_regex": "Povolit regex vyhledÃĄvÃĄní", + "mcp_discovery_use_regex_hint": "Povolit shodu na zÃĄkladě regulÃĄrních vÃŊrazů v MCP discovery.", + "mcp_servers": "MCP servery", + "mcp_servers_hint": "PřidÃĄvejte, upravujte nebo odebírejte MCP servery.", + "mcp_server_new": "NovÃŊ MCP server", + "mcp_server_add": "Přidat server", + "mcp_server_remove": "Odebrat", + "mcp_server_enabled": "Povoleno", + "mcp_server_discovery_mode": "ReÅžim discovery", + "mcp_server_discovery_mode_inherit": "Sledovat globÃĄlní reÅžim discovery", + "mcp_server_discovery_mode_deferred": "OdloÅženÊ discovery", + "mcp_server_discovery_mode_eager": "OkamÅžitÃĄ registrace", + "mcp_server_name_placeholder": "NÃĄzev serveru (např. github)", + "mcp_server_url_placeholder": "URL serveru (např. https://example.com/mcp)", + "mcp_server_command_placeholder": "Příkaz (např. npx)", + "mcp_server_env_file_placeholder": "Cesta k souboru prostředí (volitelnÊ)", + "mcp_server_args_placeholder": "Argumenty, jeden na Å™ÃĄdek", + "mcp_server_env_placeholder": "JSON objekt prostředí", + "mcp_server_headers_placeholder": "JSON objekt hlaviček", + "sections": { + "agent": "Agent", + "runtime": "Runtime", + "evolution": "Evoluce", + "mcp": "MCP", + "exec": "SpouÅĄtění příkazů", + "cron": "Cron Ãēlohy", + "launcher": "Launcher", + "devices": "Zařízení" + }, + "open_raw": "Raw konfigurace", + "back_to_visual": "VizuÃĄlní konfigurace", + "raw_json_title": "Raw JSON konfigurace", + "json_placeholder": "Zadejte platnou JSON konfiguraci...", + "save_success": "Konfigurace ÃēspÄ›ÅĄně uloÅžena.", + "save_error": "UloÅžení konfigurace selhalo.", + "reset_confirm_title": "Resetovat změny", + "reset_confirm_desc": "Opravdu chcete zahodit neuloÅženÊ změny a vrÃĄtit se k poslednímu uloÅženÊmu stavu?", + "reset_success": "Změny byly obnoveny na poslední uloÅženÃŊ stav.", + "invalid_json": "NeplatnÃŊ formÃĄt JSON.", + "format_success": "JSON ÃēspÄ›ÅĄně naformÃĄtovÃĄn.", + "format_error": "NeplatnÃŊ formÃĄt JSON.", + "format": "FormÃĄtovat", + "unsaved_changes": "MÃĄte neuloÅženÊ změny.", + "factory_reset": "TovÃĄrní nastavení", + "factory_reset_confirm_title": "Obnovit tovÃĄrní nastavení", + "factory_reset_confirm_desc": "Tímto obnovíte veÅĄkerou konfiguraci na tovÃĄrní nastavení. API klíče a bezpečnostní Ãēdaje budou zachovÃĄny. ZÃĄloha aktuÃĄlní konfigurace bude vytvořena.", + "factory_reset_confirm": "Obnovit vÃŊchozí nastavení", + "factory_reset_success": "Konfigurace byla obnovena na tovÃĄrní nastavení.", + "factory_reset_error": "Obnovení konfigurace selhalo." + }, + "logs": { + "log_level_error": "Aktualizace Ãērovně logovÃĄní selhala.", + "clear": "Vymazat logy", + "empty": "ČekÃĄm na logy..." + } + }, + "tour": { + "skip": "Přeskočit průvodce", + "prev": "Předchozí", + "next": "DalÅĄÃ­", + "finish": "Dokončit", + "welcome": { + "title": "Vítejte v PicoClaw", + "description": "PicoClaw je vÃŊkonnÃĄ platforma pro AI asistenty. Pojďme si dÃĄt chvíli na dokončení zÃĄkladního nastavení." + }, + "models": { + "title": "Nakonfigurujte modely", + "description": "Klikněte na nabídku \"Modely\" vlevo pro nastavení API klíčů pro AI providery. V chatu lze pouŞít pouze nakonfigurovanÊ modely." + }, + "gateway": { + "title": "SpusÅĨte gateway", + "description": "Po nakonfigurovÃĄní modelů klikněte na tlačítko \"Spustit gateway\" nahoře pro zahÃĄjení chatu s AI." + }, + "docs": { + "title": "Zobrazit dokumentaci", + "description": "Potřebujete dalÅĄÃ­ pomoc? Klikněte na tlačítko dokumentace v pravÊm horním rohu pro zobrazení podrobnÃŊch průvodců a dokumentace ke konfiguraci." + } + } +} From edcae17b41bd54bf7e8758b1040772cc560da78e Mon Sep 17 00:00:00 2001 From: Martin Zapletal <105368210+KrtCZ@users.noreply.github.com> Date: Sat, 23 May 2026 13:35:44 +0200 Subject: [PATCH 07/21] Register Czech (cs) locale in i18n config --- web/frontend/src/i18n/index.ts | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/web/frontend/src/i18n/index.ts b/web/frontend/src/i18n/index.ts index 4da7b3f0d..8c0248915 100644 --- a/web/frontend/src/i18n/index.ts +++ b/web/frontend/src/i18n/index.ts @@ -1,4 +1,5 @@ import dayjs from "dayjs" +import "dayjs/locale/cs" import "dayjs/locale/en" import "dayjs/locale/pt-br" import "dayjs/locale/zh-cn" @@ -11,6 +12,7 @@ import { initReactI18next } from "react-i18next" import en from "./locales/en.json" import ptBr from "./locales/pt-br.json" import zh from "./locales/zh.json" +import cs from "./locales/cs.json" dayjs.extend(relativeTime) dayjs.extend(localizedFormat) @@ -34,6 +36,9 @@ i18n zh: { translation: zh, }, + cs: { + translation: cs, + }, }, fallbackLng: "en", debug: false, @@ -48,6 +53,8 @@ i18n.on("languageChanged", (lng) => { dayjs.locale("zh-cn") } else if (lng.startsWith("pt")) { dayjs.locale("pt-br") + } else if (lng.startsWith("cs")) { + dayjs.locale("cs") } else { dayjs.locale("en") } From 23e1485a9829c8131387e6306f40a95ec9baa4b7 Mon Sep 17 00:00:00 2001 From: Martin Zapletal <105368210+KrtCZ@users.noreply.github.com> Date: Sat, 23 May 2026 13:42:03 +0200 Subject: [PATCH 08/21] =?UTF-8?q?Add=20=C4=8Ce=C5=A1tina=20to=20language?= =?UTF-8?q?=20switcher?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/frontend/src/components/app-header.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/web/frontend/src/components/app-header.tsx b/web/frontend/src/components/app-header.tsx index 700cc21e0..30c05ee45 100644 --- a/web/frontend/src/components/app-header.tsx +++ b/web/frontend/src/components/app-header.tsx @@ -294,6 +294,9 @@ export function AppHeader() { i18n.changeLanguage("zh")}> įŽ€äŊ“中文 + i18n.changeLanguage("cs")}> + ČeÅĄtina + From 9825b4782f1f62170d6581f4552fc347c34e488b Mon Sep 17 00:00:00 2001 From: lc6464 Date: Tue, 26 May 2026 14:05:20 +0800 Subject: [PATCH 09/21] fix(seahorse,session): preserve created_at across history bootstrap --- pkg/agent/context_seahorse.go | 9 ++ pkg/agent/context_seahorse_test.go | 5 ++ pkg/seahorse/short_engine.go | 132 +++++++++++++++++++++++------ pkg/seahorse/short_engine_test.go | 86 +++++++++++++++++-- pkg/seahorse/store.go | 92 ++++++++++++++++---- pkg/seahorse/store_test.go | 14 +++ pkg/session/manager.go | 29 ++++--- pkg/session/manager_test.go | 29 +++++++ 8 files changed, 340 insertions(+), 56 deletions(-) diff --git a/pkg/agent/context_seahorse.go b/pkg/agent/context_seahorse.go index 2a10d2457..6bd32c216 100644 --- a/pkg/agent/context_seahorse.go +++ b/pkg/agent/context_seahorse.go @@ -6,6 +6,7 @@ import ( "context" "encoding/json" "fmt" + "time" "github.com/sipeed/picoclaw/pkg/logger" "github.com/sipeed/picoclaw/pkg/providers" @@ -200,6 +201,7 @@ func providerToSeahorseMessage(msg protocoltypes.Message) seahorse.Message { ModelName: msg.ModelName, ReasoningContent: msg.ReasoningContent, TokenCount: tokenizer.EstimateMessageTokens(msg), + CreatedAt: normalizeSeahorseMessageCreatedAt(msg.CreatedAt), } // Convert ToolCalls → MessageParts @@ -235,6 +237,13 @@ func providerToSeahorseMessage(msg protocoltypes.Message) seahorse.Message { return result } +func normalizeSeahorseMessageCreatedAt(createdAt *time.Time) time.Time { + if createdAt == nil || createdAt.IsZero() { + return time.Time{} + } + return createdAt.UTC().Truncate(time.Second) +} + // seahorseToProviderMessages converts a seahorse.AssembleResult to []providers.Message. func seahorseToProviderMessages(result *seahorse.AssembleResult) []protocoltypes.Message { messages := make([]protocoltypes.Message, 0, len(result.Messages)) diff --git a/pkg/agent/context_seahorse_test.go b/pkg/agent/context_seahorse_test.go index 101f72ee2..497e1fc44 100644 --- a/pkg/agent/context_seahorse_test.go +++ b/pkg/agent/context_seahorse_test.go @@ -171,11 +171,13 @@ func TestProviderToSeahorseMessageWithMedia(t *testing.T) { } func TestProviderToSeahorseMessageWithReasoning(t *testing.T) { + createdAt := time.Date(2026, 5, 6, 7, 8, 9, 123000000, time.UTC) msg := protocoltypes.Message{ Role: "assistant", Content: "response text", ModelName: "gpt-5.4-mini", ReasoningContent: "I thought about this carefully", + CreatedAt: &createdAt, } result := providerToSeahorseMessage(msg) @@ -185,6 +187,9 @@ func TestProviderToSeahorseMessageWithReasoning(t *testing.T) { if result.ModelName != "gpt-5.4-mini" { t.Errorf("ModelName = %q, want %q", result.ModelName, "gpt-5.4-mini") } + if !result.CreatedAt.Equal(time.Date(2026, 5, 6, 7, 8, 9, 0, time.UTC)) { + t.Errorf("CreatedAt = %v, want 2026-05-06 07:08:09 UTC", result.CreatedAt) + } } func TestSeahorseToProviderMessagesWithReasoning(t *testing.T) { diff --git a/pkg/seahorse/short_engine.go b/pkg/seahorse/short_engine.go index d275da516..ef493bd18 100644 --- a/pkg/seahorse/short_engine.go +++ b/pkg/seahorse/short_engine.go @@ -9,6 +9,7 @@ import ( "regexp" "strings" "sync" + "time" _ "modernc.org/sqlite" @@ -261,6 +262,7 @@ func (e *Engine) Ingest(ctx context.Context, sessionKey string, messages []Messa msg.ModelName, msg.ReasoningContent, msg.TokenCount, + msg.CreatedAt, ) } else { added, err = e.store.AddMessageWithReasoning( @@ -271,6 +273,7 @@ func (e *Engine) Ingest(ctx context.Context, sessionKey string, messages []Messa msg.ModelName, msg.ReasoningContent, msg.TokenCount, + msg.CreatedAt, ) } if err != nil { @@ -445,10 +448,14 @@ func (e *Engine) Bootstrap(ctx context.Context, sessionKey string, messages []Me if err != nil { return fmt.Errorf("bootstrap: repair model_name: %w", err) } - if (repairedReasoning || repairedModelName) && len(dbMsgs) == len(messages) { + repairedCreatedAt, err := e.repairBootstrapCreatedAt(ctx, dbMsgs, messages) + if err != nil { + return fmt.Errorf("bootstrap: repair created_at: %w", err) + } + if (repairedReasoning || repairedModelName || repairedCreatedAt) && len(dbMsgs) == len(messages) { matched := true for i := range messages { - if !messageMatches(dbMsgs[i], messages[i]) { + if !messagesMatch(dbMsgs[i], messages[i], messageMatchOptions{}) { matched = false break } @@ -462,7 +469,7 @@ func (e *Engine) Bootstrap(ctx context.Context, sessionKey string, messages []Me if len(dbMsgs) == len(messages) { matched := true for i := range messages { - if !messageMatches(dbMsgs[i], messages[i]) { + if !messagesMatch(dbMsgs[i], messages[i], messageMatchOptions{}) { matched = false break } @@ -477,7 +484,7 @@ func (e *Engine) Bootstrap(ctx context.Context, sessionKey string, messages []Me compareLen := min(len(dbMsgs), len(messages)) for i := range compareLen { - if messageMatches(dbMsgs[i], messages[i]) { + if messagesMatch(dbMsgs[i], messages[i], messageMatchOptions{}) { anchor = i } else { // Mismatch detected - log details and rebuild @@ -578,7 +585,11 @@ func (e *Engine) repairBootstrapReasoningContent(ctx context.Context, dbMsgs, me } for i := range overlap { - if !messageMatchesIgnoringReasoningAndModelName(dbMsgs[i], messages[i]) { + if !messagesMatch(dbMsgs[i], messages[i], messageMatchOptions{ + IgnoreReasoningContent: true, + IgnoreModelName: true, + IgnoreCreatedAt: true, + }) { return false, nil } if dbMsgs[i].ReasoningContent == messages[i].ReasoningContent { @@ -629,7 +640,11 @@ func (e *Engine) repairBootstrapModelName(ctx context.Context, dbMsgs, messages } for i := range overlap { - if !messageMatchesIgnoringReasoningAndModelName(dbMsgs[i], messages[i]) { + if !messagesMatch(dbMsgs[i], messages[i], messageMatchOptions{ + IgnoreReasoningContent: true, + IgnoreModelName: true, + IgnoreCreatedAt: true, + }) { return false, nil } if dbMsgs[i].ModelName == messages[i].ModelName { @@ -666,6 +681,64 @@ func (e *Engine) repairBootstrapModelName(ctx context.Context, dbMsgs, messages return true, nil } +func (e *Engine) repairBootstrapCreatedAt(ctx context.Context, dbMsgs, messages []Message) (bool, error) { + if len(dbMsgs) == 0 || len(messages) == 0 { + return false, nil + } + + overlap := min(len(messages), len(dbMsgs)) + + var updates []struct { + index int + messageID int64 + createdAt time.Time + } + + for i := range overlap { + if !messagesMatch(dbMsgs[i], messages[i], messageMatchOptions{ + IgnoreReasoningContent: true, + IgnoreModelName: true, + IgnoreCreatedAt: true, + }) { + return false, nil + } + + wantCreatedAt := normalizeMessageCreatedAt(messages[i].CreatedAt) + if wantCreatedAt.IsZero() { + return false, nil + } + if dbMsgs[i].CreatedAt.Equal(wantCreatedAt) { + continue + } + + updates = append(updates, struct { + index int + messageID int64 + createdAt time.Time + }{ + index: i, + messageID: dbMsgs[i].ID, + createdAt: wantCreatedAt, + }) + } + + if len(updates) == 0 { + return false, nil + } + + for _, update := range updates { + if err := e.store.UpdateMessageCreatedAt(ctx, update.messageID, update.createdAt); err != nil { + return false, err + } + dbMsgs[update.index].CreatedAt = update.createdAt + } + + logger.InfoCF("seahorse", "bootstrap: repaired message created_at", map[string]any{ + "messages": len(updates), + }) + return true, nil +} + // truncate shortens a string for logging. func truncate(s string, maxLen int) string { if len(s) <= maxLen { @@ -674,29 +747,28 @@ func truncate(s string, maxLen int) string { return s[:maxLen] + "..." } -// messageMatches compares two messages using role + reasoning_content and then -// either content or parts. TokenCount is NOT compared because it may be -// re-estimated differently during bootstrap (e.g., via tokenizer.EstimateMessageTokens). -// For messages with Parts (tool_use, tool_result), compare Parts instead of Content -// because structured messages are matched by their parts payload. -func messageMatches(a, b Message) bool { - if a.Role != b.Role || a.ReasoningContent != b.ReasoningContent || a.ModelName != b.ModelName { - return false - } - return messageMatchesIgnoringReasoning(a, b) +type messageMatchOptions struct { + IgnoreReasoningContent bool + IgnoreModelName bool + IgnoreCreatedAt bool } -func messageMatchesIgnoringReasoning(a, b Message) bool { - if a.ModelName != b.ModelName { - return false - } - return messageMatchesIgnoringReasoningAndModelName(a, b) -} - -func messageMatchesIgnoringReasoningAndModelName(a, b Message) bool { +// messagesMatch compares two messages by role and payload, plus the optional +// metadata fields used by bootstrap repair. TokenCount is intentionally ignored +// because bootstrap may re-estimate it differently. +func messagesMatch(a, b Message, opts messageMatchOptions) bool { if a.Role != b.Role { return false } + if !opts.IgnoreReasoningContent && a.ReasoningContent != b.ReasoningContent { + return false + } + if !opts.IgnoreModelName && a.ModelName != b.ModelName { + return false + } + if !opts.IgnoreCreatedAt && !messageCreatedAtMatches(a.CreatedAt, b.CreatedAt) { + return false + } // If either message has Parts, compare Parts if len(a.Parts) > 0 || len(b.Parts) > 0 { return partsMatch(a.Parts, b.Parts) @@ -705,6 +777,18 @@ func messageMatchesIgnoringReasoningAndModelName(a, b Message) bool { return a.Content == b.Content } +// messageCreatedAtMatches treats missing timestamps as compatible so bootstrap +// can preserve legacy histories while still enforcing exact equality once both +// sides carry canonical created_at values. +func messageCreatedAtMatches(a, b time.Time) bool { + na := normalizeMessageCreatedAt(a) + nb := normalizeMessageCreatedAt(b) + if na.IsZero() || nb.IsZero() { + return true + } + return na.Equal(nb) +} + // partsMatch compares two slices of MessagePart for equality. func partsMatch(a, b []MessagePart) bool { if len(a) != len(b) { diff --git a/pkg/seahorse/short_engine_test.go b/pkg/seahorse/short_engine_test.go index 337416f6f..2e198673d 100644 --- a/pkg/seahorse/short_engine_test.go +++ b/pkg/seahorse/short_engine_test.go @@ -57,8 +57,8 @@ func prepareBootstrapRepairConversation( } return conv, []Message{ - {Role: "user", Content: "hello", TokenCount: 3}, - {Role: "assistant", Content: "world", TokenCount: 3}, + {Role: "user", Content: "hello", TokenCount: 3, CreatedAt: userMsg.CreatedAt}, + {Role: "assistant", Content: "world", TokenCount: 3, CreatedAt: assistantMsg.CreatedAt}, } } @@ -464,13 +464,19 @@ func TestBootstrapRepairsReasoningContentAndModelNameTogether(t *testing.T) { } err = eng.Bootstrap(ctx, sessionKey, []Message{ - {Role: "user", Content: "hello", TokenCount: 3}, + { + Role: "user", + Content: "hello", + TokenCount: 3, + CreatedAt: time.Date(2026, 3, 4, 5, 6, 7, 0, time.UTC), + }, { Role: "assistant", Content: "world", ModelName: "gpt-5.4", ReasoningContent: "let me think this through", TokenCount: 3, + CreatedAt: time.Date(2026, 3, 4, 5, 6, 8, 0, time.UTC), }, }) if err != nil { @@ -515,6 +521,7 @@ func TestBootstrapRepairsIncorrectNonEmptyModelName(t *testing.T) { "wrong-model", "", 3, + time.Time{}, ) if err != nil { t.Fatalf("AddMessageWithReasoning assistant: %v", err) @@ -545,6 +552,64 @@ func TestBootstrapRepairsIncorrectNonEmptyModelName(t *testing.T) { } } +func TestBootstrapRepairsCreatedAt(t *testing.T) { + eng := newTestEngine(t) + ctx := context.Background() + sessionKey := "agent:repair-created-at" + conv, msgs := prepareBootstrapRepairConversation(t, eng, ctx, sessionKey) + + wantCreatedAt := time.Date(2026, 3, 4, 5, 6, 7, 0, time.UTC) + msgs[1].CreatedAt = wantCreatedAt + + err := eng.Bootstrap(ctx, sessionKey, msgs) + if err != nil { + t.Fatalf("Bootstrap: %v", err) + } + + stored, err := eng.store.GetMessages(ctx, conv.ConversationID, 10, 0) + if err != nil { + t.Fatalf("GetMessages: %v", err) + } + if len(stored) != 2 { + t.Fatalf("stored messages = %d, want 2", len(stored)) + } + if !stored[1].CreatedAt.Equal(wantCreatedAt) { + t.Fatalf("stored[1].CreatedAt = %v, want %v", stored[1].CreatedAt, wantCreatedAt) + } +} + +func TestEngineIngestPreservesCreatedAt(t *testing.T) { + eng := newTestEngine(t) + ctx := context.Background() + wantCreatedAt := time.Date(2026, 4, 5, 6, 7, 8, 0, time.UTC) + + msgs := []Message{ + { + Role: "assistant", + Content: "world", + TokenCount: 4, + CreatedAt: wantCreatedAt, + }, + } + + _, err := eng.Ingest(ctx, "agent:created-at", msgs) + if err != nil { + t.Fatalf("Ingest: %v", err) + } + + conv, _ := eng.store.GetOrCreateConversation(ctx, "agent:created-at") + stored, err := eng.store.GetMessages(ctx, conv.ConversationID, 10, 0) + if err != nil { + t.Fatalf("GetMessages: %v", err) + } + if len(stored) != 1 { + t.Fatalf("stored messages = %d, want 1", len(stored)) + } + if !stored[0].CreatedAt.Equal(wantCreatedAt) { + t.Fatalf("stored[0].CreatedAt = %v, want %v", stored[0].CreatedAt, wantCreatedAt) + } +} + func TestEngineIngestWithPartsPreservesReasoningContent(t *testing.T) { eng := newTestEngine(t) ctx := context.Background() @@ -864,8 +929,19 @@ func TestBootstrapRepairsMissingReasoningContentWithoutDroppingSummaries(t *test } err = eng.Bootstrap(ctx, sessionKey, []Message{ - {Role: "user", Content: "hello", TokenCount: 3}, - {Role: "assistant", Content: "world", ReasoningContent: "let me think this through", TokenCount: 3}, + { + Role: "user", + Content: "hello", + TokenCount: 3, + CreatedAt: time.Date(2026, 3, 4, 5, 6, 7, 0, time.UTC), + }, + { + Role: "assistant", + Content: "world", + ReasoningContent: "let me think this through", + TokenCount: 3, + CreatedAt: time.Date(2026, 3, 4, 5, 6, 8, 0, time.UTC), + }, }) if err != nil { t.Fatalf("Bootstrap: %v", err) diff --git a/pkg/seahorse/store.go b/pkg/seahorse/store.go index b5e32e89d..0a0d07044 100644 --- a/pkg/seahorse/store.go +++ b/pkg/seahorse/store.go @@ -8,6 +8,8 @@ import ( "time" ) +const sqliteTimeLayout = "2006-01-02 15:04:05" + // Store provides SQLite storage for seahorse. type Store struct { db *sql.DB @@ -75,8 +77,8 @@ func (s *Store) GetConversationBySessionKey(ctx context.Context, sessionKey stri if err != nil { return nil, fmt.Errorf("get conversation by session key: %w", err) } - conv.CreatedAt, _ = time.Parse("2006-01-02 15:04:05", createdAt) - conv.UpdatedAt, _ = time.Parse("2006-01-02 15:04:05", updatedAt) + conv.CreatedAt = parseSQLiteTime(createdAt) + conv.UpdatedAt = parseSQLiteTime(updatedAt) return &conv, nil } @@ -153,8 +155,8 @@ func (s *Store) getMessageTimeRange(ctx context.Context, convID int64) (time.Tim if err != nil || minTime == "" { return time.Time{}, time.Time{}, err } - oldest, _ := time.Parse("2006-01-02 15:04:05", minTime) - newest, _ := time.Parse("2006-01-02 15:04:05", maxTime) + oldest := parseSQLiteTime(minTime) + newest := parseSQLiteTime(maxTime) return oldest, newest, nil } @@ -162,7 +164,7 @@ func (s *Store) getMessageTimeRange(ctx context.Context, convID int64) (time.Tim // AddMessage appends a message to a conversation. func (s *Store) AddMessage(ctx context.Context, convID int64, role, content string, tokenCount int) (*Message, error) { - return s.AddMessageWithReasoning(ctx, convID, role, content, "", "", tokenCount) + return s.AddMessageWithReasoning(ctx, convID, role, content, "", "", tokenCount, time.Time{}) } // AddMessageWithReasoning appends a message with reasoning content to a conversation. @@ -171,16 +173,22 @@ func (s *Store) AddMessageWithReasoning( convID int64, role, content, modelName, reasoningContent string, tokenCount int, + createdAt time.Time, ) (*Message, error) { + storedCreatedAt := normalizeMessageCreatedAt(createdAt) + if storedCreatedAt.IsZero() { + storedCreatedAt = normalizeMessageCreatedAt(time.Now()) + } result, err := s.db.ExecContext( ctx, - "INSERT INTO messages (conversation_id, role, content, model_name, reasoning_content, token_count) VALUES (?, ?, ?, ?, ?, ?)", + "INSERT INTO messages (conversation_id, role, content, model_name, reasoning_content, token_count, created_at) VALUES (?, ?, ?, ?, ?, ?, ?)", convID, role, content, modelName, reasoningContent, tokenCount, + formatSQLiteTime(storedCreatedAt), ) if err != nil { return nil, fmt.Errorf("add message: %w", err) @@ -194,6 +202,7 @@ func (s *Store) AddMessageWithReasoning( ModelName: modelName, ReasoningContent: reasoningContent, TokenCount: tokenCount, + CreatedAt: storedCreatedAt, }, nil } @@ -231,7 +240,7 @@ func (s *Store) AddMessageWithParts( parts []MessagePart, tokenCount int, ) (*Message, error) { - return s.AddMessageWithPartsAndReasoning(ctx, convID, role, parts, "", "", tokenCount) + return s.AddMessageWithPartsAndReasoning(ctx, convID, role, parts, "", "", tokenCount, time.Time{}) } // AddMessageWithPartsAndReasoning adds a message with structured parts and reasoning content. @@ -243,6 +252,7 @@ func (s *Store) AddMessageWithPartsAndReasoning( modelName string, reasoningContent string, tokenCount int, + createdAt time.Time, ) (*Message, error) { tx, err := s.db.BeginTx(ctx, nil) if err != nil { @@ -250,18 +260,24 @@ func (s *Store) AddMessageWithPartsAndReasoning( } defer tx.Rollback() + storedCreatedAt := normalizeMessageCreatedAt(createdAt) + if storedCreatedAt.IsZero() { + storedCreatedAt = normalizeMessageCreatedAt(time.Now()) + } + // Derive readable content from Parts for FTS5 indexing and summary formatting readableContent := partsToReadableContent(parts) result, err := tx.ExecContext( ctx, - "INSERT INTO messages (conversation_id, role, content, model_name, reasoning_content, token_count) VALUES (?, ?, ?, ?, ?, ?)", + "INSERT INTO messages (conversation_id, role, content, model_name, reasoning_content, token_count, created_at) VALUES (?, ?, ?, ?, ?, ?, ?)", convID, role, readableContent, modelName, reasoningContent, tokenCount, + formatSQLiteTime(storedCreatedAt), ) if err != nil { return nil, fmt.Errorf("add message: %w", err) @@ -299,6 +315,7 @@ func (s *Store) AddMessageWithPartsAndReasoning( ModelName: modelName, ReasoningContent: reasoningContent, TokenCount: tokenCount, + CreatedAt: storedCreatedAt, Parts: make([]MessagePart, len(parts)), } for i, p := range parts { @@ -344,7 +361,7 @@ func (s *Store) GetMessages(ctx context.Context, convID int64, limit int, before ); err != nil { return nil, err } - msg.CreatedAt, _ = time.Parse("2006-01-02 15:04:05", createdAt) + msg.CreatedAt = parseSQLiteTime(createdAt) msgs = append(msgs, msg) } if err := rows.Err(); err != nil { @@ -387,7 +404,7 @@ func (s *Store) GetMessageByID(ctx context.Context, messageID int64) (*Message, if err != nil { return nil, err } - msg.CreatedAt, _ = time.Parse("2006-01-02 15:04:05", createdAt) + msg.CreatedAt = parseSQLiteTime(createdAt) msg.Parts, _ = s.loadMessageParts(ctx, msg.ID) return &msg, nil } @@ -435,6 +452,32 @@ func (s *Store) UpdateMessageModelName(ctx context.Context, messageID int64, mod return nil } +func (s *Store) UpdateMessageCreatedAt(ctx context.Context, messageID int64, createdAt time.Time) error { + storedCreatedAt := normalizeMessageCreatedAt(createdAt) + if storedCreatedAt.IsZero() { + return fmt.Errorf("message %d created_at cannot be zero", messageID) + } + + result, err := s.db.ExecContext( + ctx, + "UPDATE messages SET created_at = ? WHERE message_id = ?", + formatSQLiteTime(storedCreatedAt), + messageID, + ) + if err != nil { + return fmt.Errorf("update message created_at: %w", err) + } + + rowsAffected, err := result.RowsAffected() + if err != nil { + return fmt.Errorf("update message created_at rows affected: %w", err) + } + if rowsAffected == 0 { + return fmt.Errorf("message %d not found", messageID) + } + return nil +} + func (s *Store) loadMessageParts(ctx context.Context, msgID int64) ([]MessagePart, error) { rows, err := s.db.QueryContext(ctx, `SELECT part_id, message_id, type, text, name, arguments, tool_call_id, media_uri, mime_type @@ -648,7 +691,7 @@ func (s *Store) GetSummarySourceMessages(ctx context.Context, summaryID string) ); err != nil { return nil, err } - msg.CreatedAt, _ = time.Parse("2006-01-02 15:04:05", createdAt) + msg.CreatedAt = parseSQLiteTime(createdAt) msgs = append(msgs, msg) } if err := rows.Err(); err != nil { @@ -714,8 +757,7 @@ func (s *Store) GetContextItems(ctx context.Context, convID int64) ([]ContextIte item.MessageID = messageID.Int64 } if createdAt.Valid { - t, _ := time.Parse("2006-01-02 15:04:05", createdAt.String) - item.CreatedAt = t + item.CreatedAt = parseSQLiteTime(createdAt.String) } items = append(items, item) } @@ -1449,7 +1491,7 @@ func (s *Store) scanSearchResults(rows *sql.Rows, withRank bool) ([]SearchResult } } r.Kind = SummaryKind(kind) - r.CreatedAt, _ = time.Parse("2006-01-02 15:04:05", createdAt) + r.CreatedAt = parseSQLiteTime(createdAt) results = append(results, r) } return results, nil @@ -1573,7 +1615,7 @@ func (s *Store) scanMessageSearchResults(rows *sql.Rows, withRank bool) ([]Searc } } r.Snippet = content - r.CreatedAt, _ = time.Parse("2006-01-02 15:04:05", createdAt) + r.CreatedAt = parseSQLiteTime(createdAt) results = append(results, r) } if err := rows.Err(); err != nil { @@ -1606,7 +1648,7 @@ func (s *Store) scanSummary(ctx context.Context, where string, args ...any) (*Su return nil, err } sum.Kind = SummaryKind(kind) - sum.CreatedAt, _ = time.Parse("2006-01-02 15:04:05", createdAt) + sum.CreatedAt = parseSQLiteTime(createdAt) if earliestAt.Valid { t, _ := time.Parse(time.RFC3339, earliestAt.String) sum.EarliestAt = &t @@ -1633,7 +1675,7 @@ func (s *Store) scanSummaries(rows *sql.Rows) ([]Summary, error) { return nil, err } sum.Kind = SummaryKind(kind) - sum.CreatedAt, _ = time.Parse("2006-01-02 15:04:05", createdAt) + sum.CreatedAt = parseSQLiteTime(createdAt) if earliestAt.Valid { t, _ := time.Parse(time.RFC3339, earliestAt.String) sum.EarliestAt = &t @@ -1659,6 +1701,22 @@ func isUniqueViolation(err error) bool { contains(err.Error(), "constraint failed")) } +func normalizeMessageCreatedAt(createdAt time.Time) time.Time { + if createdAt.IsZero() { + return time.Time{} + } + return createdAt.UTC().Truncate(time.Second) +} + +func formatSQLiteTime(t time.Time) string { + return normalizeMessageCreatedAt(t).Format(sqliteTimeLayout) +} + +func parseSQLiteTime(raw string) time.Time { + parsed, _ := time.Parse(sqliteTimeLayout, raw) + return parsed +} + func contains(s, sub string) bool { return len(s) >= len(sub) && searchSubstring(s, sub) } diff --git a/pkg/seahorse/store_test.go b/pkg/seahorse/store_test.go index 4ed2bb3bb..785873150 100644 --- a/pkg/seahorse/store_test.go +++ b/pkg/seahorse/store_test.go @@ -213,6 +213,7 @@ func TestStoreAddAndGetMessagesWithReasoningContent(t *testing.T) { "gpt-5.4-mini", "let me think", 5, + time.Date(2026, 1, 2, 3, 4, 5, 0, time.UTC), ) if err != nil { t.Fatalf("AddMessageWithReasoning: %v", err) @@ -223,6 +224,9 @@ func TestStoreAddAndGetMessagesWithReasoningContent(t *testing.T) { if msg.ModelName != "gpt-5.4-mini" { t.Fatalf("ModelName = %q, want %q", msg.ModelName, "gpt-5.4-mini") } + if !msg.CreatedAt.Equal(time.Date(2026, 1, 2, 3, 4, 5, 0, time.UTC)) { + t.Fatalf("CreatedAt = %v, want 2026-01-02 03:04:05 UTC", msg.CreatedAt) + } msgs, err := s.GetMessages(ctx, conv.ConversationID, 10, 0) if err != nil { @@ -237,6 +241,9 @@ func TestStoreAddAndGetMessagesWithReasoningContent(t *testing.T) { if msgs[0].ModelName != "gpt-5.4-mini" { t.Errorf("ModelName = %q, want %q", msgs[0].ModelName, "gpt-5.4-mini") } + if !msgs[0].CreatedAt.Equal(time.Date(2026, 1, 2, 3, 4, 5, 0, time.UTC)) { + t.Errorf("CreatedAt = %v, want 2026-01-02 03:04:05 UTC", msgs[0].CreatedAt) + } found, err := s.GetMessageByID(ctx, msg.ID) if err != nil { @@ -248,6 +255,9 @@ func TestStoreAddAndGetMessagesWithReasoningContent(t *testing.T) { if found.ModelName != "gpt-5.4-mini" { t.Errorf("GetMessageByID ModelName = %q, want %q", found.ModelName, "gpt-5.4-mini") } + if !found.CreatedAt.Equal(time.Date(2026, 1, 2, 3, 4, 5, 0, time.UTC)) { + t.Errorf("GetMessageByID CreatedAt = %v, want 2026-01-02 03:04:05 UTC", found.CreatedAt) + } } func TestStoreAddMessageWithParts(t *testing.T) { @@ -301,6 +311,7 @@ func TestStoreAddMessageWithPartsAndReasoningContent(t *testing.T) { "gpt-5.4", "need to inspect the file first", 10, + time.Date(2026, 2, 3, 4, 5, 6, 0, time.UTC), ) if err != nil { t.Fatalf("AddMessageWithPartsAndReasoning: %v", err) @@ -323,6 +334,9 @@ func TestStoreAddMessageWithPartsAndReasoningContent(t *testing.T) { if msgs[0].ModelName != "gpt-5.4" { t.Errorf("ModelName = %q, want %q", msgs[0].ModelName, "gpt-5.4") } + if !msgs[0].CreatedAt.Equal(time.Date(2026, 2, 3, 4, 5, 6, 0, time.UTC)) { + t.Errorf("CreatedAt = %v, want 2026-02-03 04:05:06 UTC", msgs[0].CreatedAt) + } } func TestStoreGetMessageCount(t *testing.T) { diff --git a/pkg/session/manager.go b/pkg/session/manager.go index 7ca03744d..f75e3e883 100644 --- a/pkg/session/manager.go +++ b/pkg/session/manager.go @@ -60,6 +60,21 @@ func (sm *SessionManager) GetOrCreate(key string) *Session { return session } +func ensureMessageCreatedAt(msg *providers.Message, fallback time.Time) { + if msg.CreatedAt != nil && !msg.CreatedAt.IsZero() { + return + } + ts := fallback + msg.CreatedAt = &ts +} + +func normalizeHistoryCreatedAt(history []providers.Message) { + now := time.Now() + for i := range history { + ensureMessageCreatedAt(&history[i], now) + } +} + func (sm *SessionManager) AddMessage(sessionKey, role, content string) { sm.AddFullMessage(sessionKey, providers.Message{ Role: role, @@ -88,9 +103,7 @@ func (sm *SessionManager) AddFullMessage(sessionKey string, msg providers.Messag } now := time.Now() - if msg.CreatedAt == nil { - msg.CreatedAt = &now - } + ensureMessageCreatedAt(&msg, now) session.Messages = append(session.Messages, msg) session.Updated = now @@ -280,6 +293,7 @@ func (sm *SessionManager) loadSessions() error { continue } session.Messages = messageutil.FilterInvalidHistoryMessages(session.Messages) + normalizeHistoryCreatedAt(session.Messages) sm.sessions[session.Key] = &session } @@ -305,13 +319,8 @@ func (sm *SessionManager) SetHistory(key string, history []providers.Message) { // from the caller's slice. msgs := make([]providers.Message, len(history)) copy(msgs, history) - now := time.Now() - for i := range msgs { - if msgs[i].CreatedAt == nil { - msgs[i].CreatedAt = &now - } - } + normalizeHistoryCreatedAt(msgs) session.Messages = msgs - session.Updated = now + session.Updated = time.Now() } } diff --git a/pkg/session/manager_test.go b/pkg/session/manager_test.go index bc5615966..e167941e7 100644 --- a/pkg/session/manager_test.go +++ b/pkg/session/manager_test.go @@ -83,3 +83,32 @@ func TestSave_RejectsPathTraversal(t *testing.T) { t.Errorf("expected foo_bar.json in storage (sanitized from foo/bar)") } } + +func TestLoadSessions_NormalizesMissingCreatedAt(t *testing.T) { + tmpDir := t.TempDir() + sessionPath := filepath.Join(tmpDir, "telegram_legacy.json") + legacy := `{ + "key": "telegram:legacy", + "messages": [ + { + "role": "user", + "content": "hello" + } + ], + "created": "2026-01-01T00:00:00Z", + "updated": "2026-01-01T00:00:00Z" +}` + + if err := os.WriteFile(sessionPath, []byte(legacy), 0o644); err != nil { + t.Fatalf("WriteFile: %v", err) + } + + sm := NewSessionManager(tmpDir) + history := sm.GetHistory("telegram:legacy") + if len(history) != 1 { + t.Fatalf("history = %d, want 1", len(history)) + } + if history[0].CreatedAt == nil || history[0].CreatedAt.IsZero() { + t.Fatalf("history[0].CreatedAt = %v, want non-zero timestamp", history[0].CreatedAt) + } +} From 28ec5793a8cd0826e9a91e62e7b2f636a9eb1258 Mon Sep 17 00:00:00 2001 From: LC Date: Tue, 26 May 2026 14:57:52 +0800 Subject: [PATCH 10/21] feat(web): add line numbers and wrap toggle for code blocks (#2933) * feat(web): add line numbers and wrap toggle for code blocks * fix(web): preserve markdown code block copy semantics --- .../components/agent/skills/detail-sheet.tsx | 18 +- .../channels/channel-forms/mqtt-form.tsx | 19 +- .../src/components/chat/assistant-message.tsx | 1 - .../components/chat/message-code-block.tsx | 122 +++++++-- .../chat/message-code-block.utils.ts | 257 +++++++++++++++++- web/frontend/src/i18n/locales/en.json | 2 + web/frontend/src/i18n/locales/pt-br.json | 2 + web/frontend/src/i18n/locales/zh.json | 2 + web/frontend/src/store/code-block.ts | 11 + web/frontend/src/store/index.ts | 1 + 10 files changed, 402 insertions(+), 33 deletions(-) create mode 100644 web/frontend/src/store/code-block.ts diff --git a/web/frontend/src/components/agent/skills/detail-sheet.tsx b/web/frontend/src/components/agent/skills/detail-sheet.tsx index 4579926d8..9ec0c5a0c 100644 --- a/web/frontend/src/components/agent/skills/detail-sheet.tsx +++ b/web/frontend/src/components/agent/skills/detail-sheet.tsx @@ -13,6 +13,10 @@ import rehypeSanitize from "rehype-sanitize" import remarkGfm from "remark-gfm" import type { SkillDetailResponse, SkillSupportItem } from "@/api/skills" +import { + MarkdownCodeBlock, + MessageCodeBlock, +} from "@/components/chat/message-code-block" import { Sheet, SheetContent, @@ -176,6 +180,9 @@ export function DetailSheet({ {selectedSkillDetail.content} @@ -183,11 +190,12 @@ export function DetailSheet({ ) : null} {detailView === "raw" ? ( -
-
-                    {selectedSkillDetail.content}
-                  
-
+ ) : null} {detailView === "meta" ? ( diff --git a/web/frontend/src/components/channels/channel-forms/mqtt-form.tsx b/web/frontend/src/components/channels/channel-forms/mqtt-form.tsx index c52ad601c..0be02649f 100644 --- a/web/frontend/src/components/channels/channel-forms/mqtt-form.tsx +++ b/web/frontend/src/components/channels/channel-forms/mqtt-form.tsx @@ -1,4 +1,5 @@ import type { ChannelConfig } from "@/api/channels" +import { MessageCodeBlock } from "@/components/chat/message-code-block" import { getSecretInputPlaceholder } from "@/components/channels/channel-config-fields" import { Field, KeyInput } from "@/components/shared-form" import { @@ -180,9 +181,12 @@ export function MqttForm({ {t("channels.mqtt.uplink")}

{`${topicBase}/request`} -
-              {`{\n  "text": "your message"\n}`}
-            
+

@@ -199,9 +203,12 @@ export function MqttForm({ {t("channels.mqtt.downlink")}

{`${topicBase}/response`} -
-              {`{\n  "text": "agent response"\n}`}
-            
+

diff --git a/web/frontend/src/components/chat/assistant-message.tsx b/web/frontend/src/components/chat/assistant-message.tsx index 6527562fe..0a197b25e 100644 --- a/web/frontend/src/components/chat/assistant-message.tsx +++ b/web/frontend/src/components/chat/assistant-message.tsx @@ -197,7 +197,6 @@ export function AssistantMessage({ label={toolName || t("chat.toolCallArgumentsLabel")} className="my-0 shadow-none" bodyClassName="px-3 py-2 text-[12px] leading-relaxed" - wrapLongLines /> )}

diff --git a/web/frontend/src/components/chat/message-code-block.tsx b/web/frontend/src/components/chat/message-code-block.tsx index 0da081194..79a3706a2 100644 --- a/web/frontend/src/components/chat/message-code-block.tsx +++ b/web/frontend/src/components/chat/message-code-block.tsx @@ -3,17 +3,30 @@ import { IconChevronDown, IconCopy, } from "@tabler/icons-react" +import { useAtom } from "jotai" import hljs from "highlight.js/lib/core" import json from "highlight.js/lib/languages/json" -import { type ComponentProps, type ReactNode, useState } from "react" +import { + type ComponentProps, + type CSSProperties, + type ReactNode, + useState, +} from "react" import { useTranslation } from "react-i18next" import { useCopyToClipboard } from "@/hooks/use-copy-to-clipboard" import { cn } from "@/lib/utils" +import { codeBlockWrapAtom } from "@/store/code-block" import { extractCodeBlockFromPreNode, + extractCodeBlockRenderState, type MarkdownNode, + splitCodeIntoLines, + splitHighlightedHtmlIntoLines, + splitRenderedCodeContentIntoLines, + trimTrailingEmptyRenderedCodeLine, + trimTrailingEmptyStringLine, } from "./message-code-block.utils" import { Button } from "@/components/ui/button" @@ -27,10 +40,10 @@ interface MessageCodeBlockProps { code: string language?: string | null label?: string - children?: ReactNode className?: string bodyClassName?: string - wrapLongLines?: boolean + children?: ReactNode + trimTrailingEmptyLine?: boolean } interface MarkdownCodeBlockProps extends ComponentProps<"pre"> { @@ -53,13 +66,14 @@ export function MessageCodeBlock({ code, language = null, label, - children, className, bodyClassName, - wrapLongLines = false, + children, + trimTrailingEmptyLine = false, }: MessageCodeBlockProps) { const { t } = useTranslation() const { copy, isCopied } = useCopyToClipboard() + const [wrapLongLines, setWrapLongLines] = useAtom(codeBlockWrapAtom) const [isExpanded, setIsExpanded] = useState(true) const blockLabel = label ?? @@ -68,7 +82,31 @@ export function MessageCodeBlock({ : t("chat.codeLabel").toLocaleLowerCase()) const copyLabel = isCopied ? t("chat.copiedLabel") : t("chat.copyCode") const expandLabel = isExpanded ? t("chat.collapseCode") : t("chat.expandCode") + const wrapLabel = wrapLongLines + ? t("chat.disableCodeWrap") + : t("chat.enableCodeWrap") + const renderedCodeState = children + ? extractCodeBlockRenderState(children) + : { + renderedContent: null, + className: undefined, + } const highlightedHtml = !children ? getHighlightedHtml(code, language) : null + const highlightedLines = highlightedHtml + ? splitHighlightedHtmlIntoLines(highlightedHtml) + : null + const codeLines = children + ? (trimTrailingEmptyLine + ? trimTrailingEmptyRenderedCodeLine( + splitRenderedCodeContentIntoLines(renderedCodeState.renderedContent), + ) + : splitRenderedCodeContentIntoLines(renderedCodeState.renderedContent)) + : (trimTrailingEmptyLine + ? trimTrailingEmptyStringLine( + highlightedLines ?? splitCodeIntoLines(code), + ) + : (highlightedLines ?? splitCodeIntoLines(code))) + const lineNumberWidth = `${String(codeLines.length).length + 1}ch` return (
{copyLabel} +
@@ -158,6 +241,7 @@ export function MarkdownCodeBlock({ code={code} language={language} bodyClassName={className} + trimTrailingEmptyLine > {children}
diff --git a/web/frontend/src/components/chat/message-code-block.utils.ts b/web/frontend/src/components/chat/message-code-block.utils.ts index 2133ec638..40e76a2a8 100644 --- a/web/frontend/src/components/chat/message-code-block.utils.ts +++ b/web/frontend/src/components/chat/message-code-block.utils.ts @@ -1,3 +1,11 @@ +import { + Children, + cloneElement, + Fragment, + isValidElement, + type ReactNode, +} from "react" + export interface MarkdownNode { type?: string value?: string @@ -6,7 +14,7 @@ export interface MarkdownNode { children?: MarkdownNode[] } -function toClassNameTokens(className: unknown): string[] { +export function toClassNameTokens(className: unknown): string[] { if (typeof className === "string") { return className.split(/\s+/).filter(Boolean) } @@ -72,6 +80,10 @@ export function extractCodeBlockLanguage(className: unknown): string | null { return languageToken ? languageToken.slice("language-".length) : null } +export function stripSingleTrailingLineBreak(value: string): string { + return value.replace(/\r?\n$/, "") +} + export function extractCodeBlockFromPreNode(node: MarkdownNode | undefined): { code: string language: string | null @@ -79,7 +91,248 @@ export function extractCodeBlockFromPreNode(node: MarkdownNode | undefined): { const codeNode = findFirstDescendantByTagName(node, "code") return { - code: extractTextFromMarkdownNode(codeNode ?? node), + code: stripSingleTrailingLineBreak(extractTextFromMarkdownNode(codeNode ?? node)), language: extractCodeBlockLanguage(codeNode?.properties?.className), } } + +export function extractCodeBlockRenderState(children: ReactNode): { + renderedContent: ReactNode + className: string | undefined +} { + const childNodes = Children.toArray(children) + const codeChild = childNodes.find( + (child) => + isValidElement<{ children?: ReactNode; className?: unknown }>(child) && + typeof child.type === "string" && + child.type === "code", + ) + + if ( + isValidElement<{ children?: ReactNode; className?: unknown }>(codeChild) + ) { + const classNameTokens = toClassNameTokens(codeChild.props.className) + return { + renderedContent: codeChild.props.children, + className: + classNameTokens.length > 0 ? classNameTokens.join(" ") : undefined, + } + } + + return { + renderedContent: children, + className: undefined, + } +} + +function mergeNodeLineGroups( + currentLines: Node[][], + nextLines: Node[][], +): Node[][] { + if (nextLines.length === 0) { + return currentLines + } + + const mergedLines = currentLines.map((line) => [...line]) + mergedLines[mergedLines.length - 1].push(...nextLines[0]) + + for (const line of nextLines.slice(1)) { + mergedLines.push([...line]) + } + + return mergedLines +} + +function splitDomNodeIntoLines(node: Node, ownerDocument: Document): Node[][] { + if (node.nodeType === Node.TEXT_NODE) { + return (node.textContent ?? "").split("\n").map((line) => + line.length > 0 ? [ownerDocument.createTextNode(line)] : [], + ) + } + + if (node.nodeType !== Node.ELEMENT_NODE) { + return [[]] + } + + const element = node as Element + if (element.tagName.toLowerCase() === "br") { + return [ + [], + [], + ] + } + + const childLines = splitHighlightedHtmlIntoNodeLines( + Array.from(element.childNodes), + ownerDocument, + ) + + return childLines.map((lineChildren) => { + const clonedElement = element.cloneNode(false) + for (const child of lineChildren) { + clonedElement.appendChild(child) + } + + return [clonedElement] + }) +} + +function splitHighlightedHtmlIntoNodeLines( + nodes: Node[], + ownerDocument: Document, +): Node[][] { + let lines: Node[][] = [[]] + + for (const node of nodes) { + lines = mergeNodeLineGroups( + lines, + splitDomNodeIntoLines(node, ownerDocument), + ) + } + + return lines +} + +export function splitCodeIntoLines(code: string): string[] { + return code.split("\n") +} + +export function splitHighlightedHtmlIntoLines(highlightedHtml: string): string[] { + if (typeof document === "undefined") { + return splitCodeIntoLines(highlightedHtml) + } + + const container = document.createElement("div") + container.innerHTML = highlightedHtml + + return splitHighlightedHtmlIntoNodeLines( + Array.from(container.childNodes), + document, + ).map((lineNodes) => { + const lineContainer = document.createElement("div") + for (const node of lineNodes) { + lineContainer.appendChild(node) + } + + return lineContainer.innerHTML + }) +} + +export function trimTrailingEmptyStringLine(lines: string[]): string[] { + if (lines.length > 1 && lines[lines.length - 1] === "") { + return lines.slice(0, -1) + } + + return lines +} + +function isEmptyRenderedCodeNode(node: ReactNode): boolean { + if (node === null || node === undefined || typeof node === "boolean") { + return true + } + + if (typeof node === "string" || typeof node === "number") { + return String(node).length === 0 + } + + if (Array.isArray(node)) { + return node.every(isEmptyRenderedCodeNode) + } + + if (!isValidElement<{ children?: ReactNode }>(node)) { + return false + } + + return Children.toArray(node.props.children).every(isEmptyRenderedCodeNode) +} + +export function trimTrailingEmptyRenderedCodeLine( + lines: ReactNode[][], +): ReactNode[][] { + if ( + lines.length > 1 && + lines[lines.length - 1].every(isEmptyRenderedCodeNode) + ) { + return lines.slice(0, -1) + } + + return lines +} + +function mergeReactLineGroups( + currentLines: ReactNode[][], + nextLines: ReactNode[][], +): ReactNode[][] { + if (nextLines.length === 0) { + return currentLines + } + + const mergedLines = currentLines.map((line) => [...line]) + mergedLines[mergedLines.length - 1].push(...nextLines[0]) + + for (const line of nextLines.slice(1)) { + mergedLines.push([...line]) + } + + return mergedLines +} + +function splitTextNodeIntoLines(value: string | number): ReactNode[][] { + return String(value).split("\n").map((line) => (line.length > 0 ? [line] : [])) +} + +function splitReactNodeIntoLines(node: ReactNode): ReactNode[][] { + if (node === null || node === undefined || typeof node === "boolean") { + return [[]] + } + + if (typeof node === "string" || typeof node === "number") { + return splitTextNodeIntoLines(node) + } + + if (Array.isArray(node)) { + return splitRenderedCodeContentIntoLines(node) + } + + if (!isValidElement<{ children?: ReactNode }>(node)) { + return [[node]] + } + + if (node.type === Fragment) { + return splitRenderedCodeContentIntoLines(Children.toArray(node.props.children)) + } + + if (typeof node.type === "string" && node.type === "br") { + return [ + [], + [], + ] + } + + const childLines = splitRenderedCodeContentIntoLines( + Children.toArray(node.props.children), + ) + + return childLines.map((lineChildren, lineIndex) => [ + cloneElement( + node, + { + key: `${node.key ?? "code-line"}-${lineIndex}`, + }, + ...lineChildren, + ), + ]) +} + +export function splitRenderedCodeContentIntoLines( + content: ReactNode, +): ReactNode[][] { + const contentNodes = Array.isArray(content) ? content : [content] + let lines: ReactNode[][] = [[]] + + for (const node of contentNodes) { + lines = mergeReactLineGroups(lines, splitReactNodeIntoLines(node)) + } + + return lines +} diff --git a/web/frontend/src/i18n/locales/en.json b/web/frontend/src/i18n/locales/en.json index 1f15cee11..cb97f0a5e 100644 --- a/web/frontend/src/i18n/locales/en.json +++ b/web/frontend/src/i18n/locales/en.json @@ -76,6 +76,8 @@ "copyMessage": "Copy message", "copyCode": "Copy code", "copiedLabel": "Copied", + "enableCodeWrap": "Wrap lines", + "disableCodeWrap": "Disable wrap", "expandCode": "Expand code", "collapseCode": "Collapse code", "history": "History", diff --git a/web/frontend/src/i18n/locales/pt-br.json b/web/frontend/src/i18n/locales/pt-br.json index 8e27078fc..ca1f9ed32 100644 --- a/web/frontend/src/i18n/locales/pt-br.json +++ b/web/frontend/src/i18n/locales/pt-br.json @@ -76,6 +76,8 @@ "copyMessage": "Copiar mensagem", "copyCode": "Copiar cÃŗdigo", "copiedLabel": "Copiado", + "enableCodeWrap": "Quebrar linhas", + "disableCodeWrap": "Desativar quebra", "expandCode": "Expandir cÃŗdigo", "collapseCode": "Recolher cÃŗdigo", "history": "HistÃŗrico", diff --git a/web/frontend/src/i18n/locales/zh.json b/web/frontend/src/i18n/locales/zh.json index bd027fee4..5590adab2 100644 --- a/web/frontend/src/i18n/locales/zh.json +++ b/web/frontend/src/i18n/locales/zh.json @@ -76,6 +76,8 @@ "copyMessage": "复åˆļæļˆæ¯", "copyCode": "复åˆļäģŖį ", "copiedLabel": "åˇ˛å¤åˆļ", + "enableCodeWrap": "åŧ€å¯æĸ行", + "disableCodeWrap": "å…ŗé—­æĸ行", "expandCode": "åą•åŧ€äģŖį ", "collapseCode": "折叠äģŖį ", "history": "åŽ†å˛čŽ°åŊ•", diff --git a/web/frontend/src/store/code-block.ts b/web/frontend/src/store/code-block.ts new file mode 100644 index 000000000..612e45fca --- /dev/null +++ b/web/frontend/src/store/code-block.ts @@ -0,0 +1,11 @@ +import { atomWithStorage } from "jotai/utils" + +export const CODE_BLOCK_WRAP_STORAGE_KEY = "picoclaw:code-block-wrap" +export const DEFAULT_CODE_BLOCK_WRAP = false + +export const codeBlockWrapAtom = atomWithStorage( + CODE_BLOCK_WRAP_STORAGE_KEY, + DEFAULT_CODE_BLOCK_WRAP, + undefined, + { getOnInit: true }, +) diff --git a/web/frontend/src/store/index.ts b/web/frontend/src/store/index.ts index a13b7b161..2ef7631fe 100644 --- a/web/frontend/src/store/index.ts +++ b/web/frontend/src/store/index.ts @@ -1,3 +1,4 @@ export * from "./gateway" export * from "./chat" +export * from "./code-block" export * from "./tour" From 5755b5b323b8dcd261a8e0ff6860a5cd5c1806b5 Mon Sep 17 00:00:00 2001 From: yuxuan-7814 Date: Tue, 26 May 2026 16:49:42 +0800 Subject: [PATCH 11/21] fix: auto-detect Termux SSL certificate path When running PicoClaw inside Termux or termux-chroot, HTTPS requests fail with X509 certificate errors because the Go TLS stack does not automatically detect the Termux CA bundle path. This change adds automatic detection of Termux environments and sets SSL_CERT_FILE to the correct CA bundle path before any network operations. The detection checks: - HOME or PATH contains 'com.termux' - Common CA bundle locations in Termux prefix Fixes #2944 --- cmd/picoclaw/main.go | 52 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/cmd/picoclaw/main.go b/cmd/picoclaw/main.go index 0867203a6..3f94f8188 100644 --- a/cmd/picoclaw/main.go +++ b/cmd/picoclaw/main.go @@ -9,6 +9,8 @@ package main import ( "fmt" "os" + "runtime" + "strings" "time" "github.com/spf13/cobra" @@ -17,8 +19,10 @@ import ( "github.com/sipeed/picoclaw/cmd/picoclaw/internal/agent" "github.com/sipeed/picoclaw/cmd/picoclaw/internal/auth" "github.com/sipeed/picoclaw/cmd/picoclaw/internal/cliui" + configcmd "github.com/sipeed/picoclaw/cmd/picoclaw/internal/config" "github.com/sipeed/picoclaw/cmd/picoclaw/internal/cron" "github.com/sipeed/picoclaw/cmd/picoclaw/internal/gateway" + "github.com/sipeed/picoclaw/cmd/picoclaw/internal/mcp" "github.com/sipeed/picoclaw/cmd/picoclaw/internal/migrate" "github.com/sipeed/picoclaw/cmd/picoclaw/internal/model" "github.com/sipeed/picoclaw/cmd/picoclaw/internal/onboard" @@ -31,6 +35,49 @@ import ( var rootNoColor bool +// initTermuxSSL detects Termux environment and sets SSL_CERT_FILE if not already set. +// This fixes X509 certificate errors when running PicoClaw inside Termux or termux-chroot. +// See: https://github.com/sipeed/picoclaw/issues/2944 +func initTermuxSSL() { + // Only applicable on Linux/Android + if runtime.GOOS != "linux" && runtime.GOOS != "android" { + return + } + + // Skip if already set + if os.Getenv("SSL_CERT_FILE") != "" { + return + } + + // Check for Termux prefix in PATH or HOME + home := os.Getenv("HOME") + path := os.Getenv("PATH") + + isTermux := strings.Contains(home, "com.termux") || + strings.Contains(path, "com.termux") || + strings.Contains(home, "/data/data/com.termux") + + if !isTermux { + return + } + + // Check common CA bundle locations in Termux + caPaths := []string{ + "$PREFIX/etc/tls/cert.pem", + os.Getenv("PREFIX") + "/etc/tls/cert.pem", + "/data/data/com.termux/files/usr/etc/tls/cert.pem", + "/usr/etc/tls/cert.pem", + } + + for _, caPath := range caPaths { + expanded := os.ExpandEnv(caPath) + if _, err := os.Stat(expanded); err == nil { + os.Setenv("SSL_CERT_FILE", expanded) + return + } + } +} + func syncCliUIColor(root *cobra.Command) { no, _ := root.PersistentFlags().GetBool("no-color") cliui.Init(no || os.Getenv("NO_COLOR") != "" || os.Getenv("TERM") == "dumb") @@ -81,12 +128,14 @@ picoclaw --no-color status`, }) cmd.AddCommand( + configcmd.NewConfigCommand(), onboard.NewOnboardCommand(), agent.NewAgentCommand(), auth.NewAuthCommand(), gateway.NewGatewayCommand(), status.NewStatusCommand(), cron.NewCronCommand(), + mcp.NewMCPCommand(), migrate.NewMigrateCommand(), skills.NewSkillsCommand(), model.NewModelCommand(), @@ -119,6 +168,9 @@ const ( ) func main() { + // Initialize Termux SSL certificate detection before anything else + initTermuxSSL() + cliui.Init(earlyColorDisabled()) if earlyColorDisabled() { From e9e653fb13a66a545173db996b68ef1442db2bc0 Mon Sep 17 00:00:00 2001 From: yuxuan-7814 Date: Tue, 26 May 2026 16:53:33 +0800 Subject: [PATCH 12/21] docs: add FUNDING.yml for GitHub Sponsors Add FUNDING.yml file to enable GitHub Sponsors button on the repo. This makes it easy for users who benefit from PicoClaw to support the project financially. Closes #2912 --- .github/FUNDING.yml | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .github/FUNDING.yml diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 000000000..c81be06b3 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,3 @@ +# These are supported funding model platforms + +github: [sipeed] From f797172a86c96f1879b02d5921a7d33705904d4e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 May 2026 19:27:05 +0000 Subject: [PATCH 13/21] build(deps): bump github.com/caarlos0/env/v11 from 11.4.0 to 11.4.1 Bumps [github.com/caarlos0/env/v11](https://github.com/caarlos0/env) from 11.4.0 to 11.4.1. - [Release notes](https://github.com/caarlos0/env/releases) - [Commits](https://github.com/caarlos0/env/compare/v11.4.0...v11.4.1) --- updated-dependencies: - dependency-name: github.com/caarlos0/env/v11 dependency-version: 11.4.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 8 ++------ 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/go.mod b/go.mod index c3c05f96d..656d44150 100644 --- a/go.mod +++ b/go.mod @@ -12,7 +12,7 @@ require ( github.com/aws/aws-sdk-go-v2/config v1.32.17 github.com/aws/aws-sdk-go-v2/service/bedrockruntime v1.50.6 github.com/bwmarrin/discordgo v0.29.0 - github.com/caarlos0/env/v11 v11.4.0 + github.com/caarlos0/env/v11 v11.4.1 github.com/charmbracelet/lipgloss v1.1.0 github.com/creack/pty v1.1.24 github.com/eclipse/paho.mqtt.golang v1.5.1 diff --git a/go.sum b/go.sum index 27fbdab1d..347ec884d 100644 --- a/go.sum +++ b/go.sum @@ -63,8 +63,8 @@ github.com/bytedance/sonic v1.15.1 h1:nJD5PmM0vY7J8CT6MxoqbVAAMhkSmV2HgRAUrrpLoO github.com/bytedance/sonic v1.15.1/go.mod h1:mT2NbXunuaEbnZ+mRIX/vYqKISmgEuHFDI4UzmKx2SA= github.com/bytedance/sonic/loader v0.5.1 h1:Ygpfa9zwRCCKSlrp5bBP/b/Xzc3VxsAW+5NIYXrOOpI= github.com/bytedance/sonic/loader v0.5.1/go.mod h1:AR4NYCk5DdzZizZ5djGqQ92eEhCCcdf5x77udYiSJRo= -github.com/caarlos0/env/v11 v11.4.0 h1:Kcb6t5kIIr4XkoQC9AF2j+8E1Jsrl3Wz/hhm1LtoGAc= -github.com/caarlos0/env/v11 v11.4.0/go.mod h1:qupehSf/Y0TUTsxKywqRt/vJjN5nz6vauiYEUUr8P4U= +github.com/caarlos0/env/v11 v11.4.1 h1:fYwH0sWEsBSMPG7t4e/PEfTFzrWrpjyygXyUnWiSwEw= +github.com/caarlos0/env/v11 v11.4.1/go.mod h1:qupehSf/Y0TUTsxKywqRt/vJjN5nz6vauiYEUUr8P4U= github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/cespare/xxhash/v2 v2.2.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc h1:4pZI35227imm7yK2bGPcfpFEmuY1gc2YSTShr4iJBfs= @@ -354,8 +354,6 @@ golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U= -golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w= -golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ= golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8= golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww= golang.org/x/oauth2 v0.23.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= @@ -390,8 +388,6 @@ golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ= -golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= From a34669a2d8ef9d38f2dd6b2ce72bb100180d65c6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 May 2026 19:27:12 +0000 Subject: [PATCH 14/21] build(deps): bump github.com/pion/rtp from 1.10.1 to 1.10.2 Bumps [github.com/pion/rtp](https://github.com/pion/rtp) from 1.10.1 to 1.10.2. - [Release notes](https://github.com/pion/rtp/releases) - [Commits](https://github.com/pion/rtp/compare/v1.10.1...v1.10.2) --- updated-dependencies: - dependency-name: github.com/pion/rtp dependency-version: 1.10.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] --- go.mod | 2 +- go.sum | 8 ++------ 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/go.mod b/go.mod index c3c05f96d..2c165793f 100644 --- a/go.mod +++ b/go.mod @@ -31,7 +31,7 @@ require ( github.com/mymmrac/telego v1.9.0 github.com/open-dingtalk/dingtalk-stream-sdk-go v0.9.1 github.com/openai/openai-go/v3 v3.22.0 - github.com/pion/rtp v1.10.1 + github.com/pion/rtp v1.10.2 github.com/pion/webrtc/v3 v3.3.6 github.com/pmezard/go-difflib v1.0.0 github.com/rs/zerolog v1.35.1 diff --git a/go.sum b/go.sum index 27fbdab1d..e814aebca 100644 --- a/go.sum +++ b/go.sum @@ -221,8 +221,8 @@ github.com/petermattis/goid v0.0.0-20260330135022-df67b199bc81 h1:WDsQxOJDy0N1VR github.com/petermattis/goid v0.0.0-20260330135022-df67b199bc81/go.mod h1:pxMtw7cyUw6B2bRH0ZBANSPg+AoSud1I1iyJHI69jH4= github.com/pion/randutil v0.1.0 h1:CFG1UdESneORglEsnimhUjf33Rwjubwj6xfiOXBa3mA= github.com/pion/randutil v0.1.0/go.mod h1:XcJrSMMbbMRhASFVOlj/5hQial/Y8oH/HVo7TBZq+j8= -github.com/pion/rtp v1.10.1 h1:xP1prZcCTUuhO2c83XtxyOHJteISg6o8iPsE2acaMtA= -github.com/pion/rtp v1.10.1/go.mod h1:rF5nS1GqbR7H/TCpKwylzeq6yDM+MM6k+On5EgeThEM= +github.com/pion/rtp v1.10.2 h1:l+f6tTDcAH6xwepaAoW791ddhuYsJlqRATOzirO04Mo= +github.com/pion/rtp v1.10.2/go.mod h1:Au8fc6cEByy8RLTwKTQTEeQqDB/SJDxwL4mZuxYA5Pk= github.com/pion/webrtc/v3 v3.3.6 h1:7XAh4RPtlY1Vul6/GmZrv7z+NnxKA6If0KStXBI2ZLE= github.com/pion/webrtc/v3 v3.3.6/go.mod h1:zyN7th4mZpV27eXybfR/cnUf3J2DRy8zw/mdjD9JTNM= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= @@ -354,8 +354,6 @@ golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.19.0/go.mod h1:CfAk/cbD4CthTvqiEl8NpboMuiuOYsAr/7NOjZJtv1U= -golang.org/x/net v0.54.0 h1:2zJIZAxAHV/OHCDTCOHAYehQzLfSXuf/5SoL/Dv6w/w= -golang.org/x/net v0.54.0/go.mod h1:Sj4oj8jK6XmHpBZU/zWHw3BV3abl4Kvi+Ut7cQcY+cQ= golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8= golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww= golang.org/x/oauth2 v0.23.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= @@ -390,8 +388,6 @@ golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.15.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.44.0 h1:ildZl3J4uzeKP07r2F++Op7E9B29JRUy+a27EibtBTQ= -golang.org/x/sys v0.44.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= From f9f53e30ee7a7a4c7379afdb0b4bb8fa1171ea35 Mon Sep 17 00:00:00 2001 From: Guoguo Date: Fri, 29 May 2026 10:33:02 +0800 Subject: [PATCH 15/21] docs: update wechat qrcode (#2966) --- assets/wechat.png | Bin 334917 -> 438116 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/assets/wechat.png b/assets/wechat.png index 0cdafb22cd18388c238778e7b8d23d0b9415cfe2..8c3c4642905ac19ee3bda9f4c47444f927fe509f 100644 GIT binary patch literal 438116 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

SOw=RqhA%C8QR{rvy~mAk(_aQ*G?Y8`3ByL< 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 z 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

dSMTCRl}; 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 z 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

gP7?W_^M#3*w3IH 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 Date: Sat, 30 May 2026 10:12:29 +0700 Subject: [PATCH 16/21] fix(codex): preserve streamed output text deltas OpenAI/Codex OAuth streams can return text through response.output_text.delta while the final response.completed payload has response.output set to null. That made PicoClaw report an empty model response even though the backend returned valid content. Accumulate streamed output_text delta events during the Codex response stream and use them as a fallback when the parsed final response has no content. Add a regression test covering the null final output case from issue #2953. --- pkg/providers/oauth/codex_provider.go | 10 +++- pkg/providers/oauth/codex_provider_test.go | 60 ++++++++++++++++++++++ 2 files changed, 69 insertions(+), 1 deletion(-) diff --git a/pkg/providers/oauth/codex_provider.go b/pkg/providers/oauth/codex_provider.go index 0b125997b..b0d7bd758 100644 --- a/pkg/providers/oauth/codex_provider.go +++ b/pkg/providers/oauth/codex_provider.go @@ -104,8 +104,12 @@ func (p *CodexProvider) Chat( defer stream.Close() var resp *responses.Response + var streamedText strings.Builder for stream.Next() { evt := stream.Current() + if evt.Type == "response.output_text.delta" { + streamedText.WriteString(evt.Delta) + } if evt.Type == "response.completed" || evt.Type == "response.failed" || evt.Type == "response.incomplete" { evtResp := evt.Response if evtResp.ID != "" { @@ -153,7 +157,11 @@ func (p *CodexProvider) Chat( return nil, fmt.Errorf("codex API call: stream ended without completed response") } - return orc.ParseResponseFromStruct(resp), nil + parsed := orc.ParseResponseFromStruct(resp) + if parsed.Content == "" && streamedText.Len() > 0 { + parsed.Content = streamedText.String() + } + return parsed, nil } func (p *CodexProvider) GetDefaultModel() string { diff --git a/pkg/providers/oauth/codex_provider_test.go b/pkg/providers/oauth/codex_provider_test.go index aeeb18360..7ff2999ce 100644 --- a/pkg/providers/oauth/codex_provider_test.go +++ b/pkg/providers/oauth/codex_provider_test.go @@ -374,6 +374,45 @@ func TestCodexProvider_ChatRoundTrip(t *testing.T) { } } +func TestCodexProvider_ChatRoundTrip_OutputTextDeltaFallback(t *testing.T) { + server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + if r.URL.Path != "/responses" { + http.Error(w, "not found: "+r.URL.Path, http.StatusNotFound) + return + } + + var reqBody map[string]any + if err := json.NewDecoder(r.Body).Decode(&reqBody); err != nil { + http.Error(w, "invalid json", http.StatusBadRequest) + return + } + if reqBody["stream"] != true { + http.Error(w, "stream must be true", http.StatusBadRequest) + return + } + + resp := map[string]any{ + "id": "resp_test", + "object": "response", + "status": "completed", + "output": nil, + } + writeOutputTextDeltaSSE(w, "OK", resp) + })) + defer server.Close() + + provider := NewCodexProvider("test-token", "acc-123") + provider.client = createOpenAITestClient(server.URL, "test-token", "acc-123") + + resp, err := provider.Chat(t.Context(), []Message{{Role: "user", Content: "Hello"}}, nil, "gpt-4o", map[string]any{}) + if err != nil { + t.Fatalf("Chat() error: %v", err) + } + if resp.Content != "OK" { + t.Errorf("Content = %q, want %q", resp.Content, "OK") + } +} + func TestCodexProvider_ChatRoundTrip_WebSearchDisabled(t *testing.T) { server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { if r.URL.Path != "/responses" { @@ -647,3 +686,24 @@ func writeCompletedSSE(w http.ResponseWriter, response map[string]any) { fmt.Fprintf(w, "data: %s\n\n", string(b)) fmt.Fprintf(w, "data: [DONE]\n\n") } + +func writeOutputTextDeltaSSE(w http.ResponseWriter, delta string, response map[string]any) { + deltaEvent := map[string]any{ + "type": "response.output_text.delta", + "sequence_number": 1, + "delta": delta, + } + completedEvent := map[string]any{ + "type": "response.completed", + "sequence_number": 2, + "response": response, + } + deltaBytes, _ := json.Marshal(deltaEvent) + completedBytes, _ := json.Marshal(completedEvent) + w.Header().Set("Content-Type", "text/event-stream") + fmt.Fprintf(w, "event: response.output_text.delta\n") + fmt.Fprintf(w, "data: %s\n\n", string(deltaBytes)) + fmt.Fprintf(w, "event: response.completed\n") + fmt.Fprintf(w, "data: %s\n\n", string(completedBytes)) + fmt.Fprintf(w, "data: [DONE]\n\n") +} From 1edb873acebb8c361412f4bb5e0d6a6f7d5e2586 Mon Sep 17 00:00:00 2001 From: lc6464 Date: Sat, 30 May 2026 18:21:40 +0800 Subject: [PATCH 17/21] feat(web): add chat image paste and drag-and-drop upload --- .../src/components/chat/chat-composer.tsx | 41 ++++- .../src/components/chat/chat-page.tsx | 166 ++++++++++------- .../src/components/chat/user-message.tsx | 2 +- web/frontend/src/features/chat/image-input.ts | 170 ++++++++++++++++++ web/frontend/src/i18n/locales/cs.json | 3 +- web/frontend/src/i18n/locales/en.json | 3 +- web/frontend/src/i18n/locales/pt-br.json | 3 +- web/frontend/src/i18n/locales/zh.json | 3 +- 8 files changed, 320 insertions(+), 71 deletions(-) create mode 100644 web/frontend/src/features/chat/image-input.ts diff --git a/web/frontend/src/components/chat/chat-composer.tsx b/web/frontend/src/components/chat/chat-composer.tsx index 43bc8a463..cae4d2f6d 100644 --- a/web/frontend/src/components/chat/chat-composer.tsx +++ b/web/frontend/src/components/chat/chat-composer.tsx @@ -1,5 +1,10 @@ import { IconArrowUp, IconPhotoPlus, IconX } from "@tabler/icons-react" -import { useRef, type KeyboardEvent as ReactKeyboardEvent } from "react" +import { + type ClipboardEvent as ReactClipboardEvent, + type DragEvent as ReactDragEvent, + type KeyboardEvent as ReactKeyboardEvent, + useRef, +} from "react" import { useTranslation } from "react-i18next" import TextareaAutosize from "react-textarea-autosize" @@ -30,11 +35,17 @@ interface ChatComposerProps { attachments: ChatAttachment[] onInputChange: (value: string) => void onAddImages: () => void + onPaste: (event: ReactClipboardEvent) => void + onDragEnter: (event: ReactDragEvent) => void + onDragLeave: (event: ReactDragEvent) => void + onDragOver: (event: ReactDragEvent) => void + onDrop: (event: ReactDragEvent) => void onRemoveAttachment: (index: number) => void onSend: () => void onContextDetail?: () => void inputDisabledReason: ChatInputDisabledReason | null canSend: boolean + isDragActive: boolean contextUsage?: ContextUsage } @@ -43,11 +54,17 @@ export function ChatComposer({ attachments, onInputChange, onAddImages, + onPaste, + onDragEnter, + onDragLeave, + onDragOver, + onDrop, onRemoveAttachment, onSend, onContextDetail, inputDisabledReason, canSend, + isDragActive, contextUsage, }: ChatComposerProps) { const { t } = useTranslation() @@ -78,8 +95,25 @@ export function ChatComposer({ } return ( -

-
+
+
+ {isDragActive && ( +
+
+ {t("chat.dropImagesActive")} +
+
+ )} + {attachments.length > 0 && (
{attachments.map((attachment, index) => ( @@ -115,6 +149,7 @@ export function ChatComposer({ onCompositionEnd={() => { composingRef.current = false }} + onPaste={onPaste} onKeyDown={handleKeyDown} placeholder={placeholder} disabled={!canInput} diff --git a/web/frontend/src/components/chat/chat-page.tsx b/web/frontend/src/components/chat/chat-page.tsx index 3b158843c..98766bfd5 100644 --- a/web/frontend/src/components/chat/chat-page.tsx +++ b/web/frontend/src/components/chat/chat-page.tsx @@ -1,8 +1,14 @@ import { IconPlus } from "@tabler/icons-react" import { useAtom } from "jotai" -import { type ChangeEvent, useEffect, useRef, useState } from "react" +import { + type ChangeEvent, + type ClipboardEvent, + type DragEvent, + useEffect, + useRef, + useState, +} from "react" import { useTranslation } from "react-i18next" -import { toast } from "sonner" import { AssistantMessage } from "@/components/chat/assistant-message" import { @@ -23,6 +29,12 @@ import { SelectTrigger, SelectValue, } from "@/components/ui/select" +import { + CHAT_IMAGE_ACCEPT, + buildChatImageAttachments, + getTransferredFiles, + hasFileTransfer, +} from "@/features/chat/image-input" import { useChatModels } from "@/hooks/use-chat-models" import { useGateway } from "@/hooks/use-gateway" import { usePicoChat } from "@/hooks/use-pico-chat" @@ -36,32 +48,6 @@ import { } from "@/store/chat" import type { GatewayState } from "@/store/gateway" -const MAX_IMAGE_SIZE_BYTES = 7 * 1024 * 1024 -const MAX_IMAGE_SIZE_LABEL = "7 MB" -const ALLOWED_IMAGE_TYPES = new Set([ - "image/jpeg", - "image/png", - "image/gif", - "image/webp", - "image/bmp", -]) - -function readFileAsDataUrl(file: File): Promise { - return new Promise((resolve, reject) => { - const reader = new FileReader() - reader.onload = () => { - if (typeof reader.result === "string") { - resolve(reader.result) - return - } - reject(new Error("Failed to read file")) - } - reader.onerror = () => - reject(reader.error || new Error("Failed to read file")) - reader.readAsDataURL(file) - }) -} - function resolveChatInputDisabledReason({ hasDefaultModel, connectionState, @@ -118,10 +104,12 @@ export function ChatPage() { const { t } = useTranslation() const scrollRef = useRef(null) const fileInputRef = useRef(null) + const dragDepthRef = useRef(0) const [isAtBottom, setIsAtBottom] = useState(true) const [hasScrolled, setHasScrolled] = useState(false) const [input, setInput] = useState("") const [attachments, setAttachments] = useState([]) + const [isDragActive, setIsDragActive] = useState(false) const [assistantDetailVisibility, setAssistantDetailVisibility] = useAtom( assistantDetailVisibilityAtom, ) @@ -223,6 +211,19 @@ export function ChatPage() { setAttachments((prev) => prev.filter((_, itemIndex) => itemIndex !== index)) } + const appendImageFiles = async (files: readonly File[]) => { + if (!canInput || files.length === 0) { + return + } + + const nextAttachments = await buildChatImageAttachments(files, t) + if (nextAttachments.length === 0) { + return + } + + setAttachments((prev) => [...prev, ...nextAttachments]) + } + const handleImageSelection = async (event: ChangeEvent) => { const files = Array.from(event.target.files ?? []) event.target.value = "" @@ -231,45 +232,77 @@ export function ChatPage() { return } - const nextAttachments: ChatAttachment[] = [] - for (const file of files) { - if (!ALLOWED_IMAGE_TYPES.has(file.type)) { - toast.error( - t("chat.invalidImage", { - name: file.name, - }), - ) - continue - } + await appendImageFiles(files) + } - if (file.size > MAX_IMAGE_SIZE_BYTES) { - toast.error( - t("chat.imageTooLarge", { - name: file.name, - size: MAX_IMAGE_SIZE_LABEL, - }), - ) - continue - } + const resetDragState = () => { + dragDepthRef.current = 0 + setIsDragActive(false) + } - try { - nextAttachments.push({ - type: "image", - filename: file.name, - url: await readFileAsDataUrl(file), - }) - } catch { - toast.error( - t("chat.imageReadFailed", { - name: file.name, - }), - ) - } + const handleComposerPaste = async ( + event: ClipboardEvent, + ) => { + const files = getTransferredFiles(event.clipboardData) + if (files.length === 0) { + return } - if (nextAttachments.length > 0) { - setAttachments(nextAttachments.slice(0, 1)) + await appendImageFiles(files) + } + + const handleComposerDragEnter = (event: DragEvent) => { + if (!hasFileTransfer(event.dataTransfer)) { + return } + + event.preventDefault() + if (!canInput) { + return + } + dragDepthRef.current += 1 + setIsDragActive(true) + } + + const handleComposerDragLeave = (event: DragEvent) => { + if (!hasFileTransfer(event.dataTransfer)) { + return + } + + event.preventDefault() + if (!canInput) { + resetDragState() + return + } + dragDepthRef.current = Math.max(0, dragDepthRef.current - 1) + if (dragDepthRef.current === 0) { + setIsDragActive(false) + } + } + + const handleComposerDragOver = (event: DragEvent) => { + if (!hasFileTransfer(event.dataTransfer)) { + return + } + + event.preventDefault() + event.dataTransfer.dropEffect = canInput ? "copy" : "none" + } + + const handleComposerDrop = async (event: DragEvent) => { + if (!hasFileTransfer(event.dataTransfer)) { + return + } + + event.preventDefault() + const files = getTransferredFiles(event.dataTransfer) + resetDragState() + + if (!canInput || files.length === 0) { + return + } + + await appendImageFiles(files) } const canSubmit = @@ -398,7 +431,8 @@ export function ChatPage() { @@ -408,6 +442,11 @@ export function ChatPage() { attachments={attachments} onInputChange={setInput} onAddImages={handleAddImages} + onPaste={handleComposerPaste} + onDragEnter={handleComposerDragEnter} + onDragLeave={handleComposerDragLeave} + onDragOver={handleComposerDragOver} + onDrop={handleComposerDrop} onRemoveAttachment={handleRemoveAttachment} onSend={handleSend} onContextDetail={() => { @@ -417,6 +456,7 @@ export function ChatPage() { }} inputDisabledReason={inputDisabledReason} canSend={canSubmit} + isDragActive={isDragActive} contextUsage={contextUsage} />
diff --git a/web/frontend/src/components/chat/user-message.tsx b/web/frontend/src/components/chat/user-message.tsx index 80ebc7ca0..9a05c961d 100644 --- a/web/frontend/src/components/chat/user-message.tsx +++ b/web/frontend/src/components/chat/user-message.tsx @@ -39,7 +39,7 @@ export function UserMessage({ {attachment.filename ))} diff --git a/web/frontend/src/features/chat/image-input.ts b/web/frontend/src/features/chat/image-input.ts new file mode 100644 index 000000000..ed424f084 --- /dev/null +++ b/web/frontend/src/features/chat/image-input.ts @@ -0,0 +1,170 @@ +import type { TFunction } from "i18next" +import { toast } from "sonner" + +import type { ChatAttachment } from "@/store/chat" + +const CHAT_IMAGE_MIME_TYPES = [ + "image/jpeg", + "image/png", + "image/gif", + "image/webp", + "image/bmp", +] as const + +const CHAT_IMAGE_MIME_TYPE_SET = new Set(CHAT_IMAGE_MIME_TYPES) +const CHAT_IMAGE_EXTENSION_BY_MIME: Record = { + "image/jpeg": ".jpg", + "image/png": ".png", + "image/gif": ".gif", + "image/webp": ".webp", + "image/bmp": ".bmp", +} +const CHAT_IMAGE_MIME_BY_EXTENSION: Record = { + ".jpg": "image/jpeg", + ".jpeg": "image/jpeg", + ".png": "image/png", + ".gif": "image/gif", + ".webp": "image/webp", + ".bmp": "image/bmp", +} + +export const CHAT_IMAGE_ACCEPT = CHAT_IMAGE_MIME_TYPES.join(",") + +const MAX_CHAT_IMAGE_SIZE_BYTES = 7 * 1024 * 1024 +const MAX_CHAT_IMAGE_SIZE_LABEL = "7 MB" + +function readFileAsDataUrl(file: File): Promise { + return new Promise((resolve, reject) => { + const reader = new FileReader() + reader.onload = () => { + if (typeof reader.result === "string") { + resolve(reader.result) + return + } + reject(new Error("Failed to read file")) + } + reader.onerror = () => + reject(reader.error || new Error("Failed to read file")) + reader.readAsDataURL(file) + }) +} + +function getFileExtension(fileName: string): string { + const lastDotIndex = fileName.lastIndexOf(".") + if (lastDotIndex === -1) { + return "" + } + return fileName.slice(lastDotIndex).toLowerCase() +} + +function getSupportedImageMimeType(file: File): string | null { + const normalizedType = file.type.trim().toLowerCase() + if (normalizedType && CHAT_IMAGE_MIME_TYPE_SET.has(normalizedType)) { + return normalizedType + } + + const extension = getFileExtension(file.name) + return CHAT_IMAGE_MIME_BY_EXTENSION[extension] ?? null +} + +function normalizeImageFileForDataUrl(file: File, filename: string): File { + const mimeType = getSupportedImageMimeType(file) + if (!mimeType || file.type.trim().toLowerCase() === mimeType) { + return file + } + + const normalizedName = file.name.trim() || filename + return new File([file], normalizedName, { type: mimeType }) +} + +function getAttachmentFilename(file: File, index: number): string { + const trimmedName = file.name.trim() + if (trimmedName) { + return trimmedName + } + + const mimeType = getSupportedImageMimeType(file) + const extension = mimeType ? CHAT_IMAGE_EXTENSION_BY_MIME[mimeType] : ".png" + return `image-${index + 1}${extension}` +} + +function getTransferItemFiles(dataTransfer: DataTransfer | null): File[] { + if (!dataTransfer) { + return [] + } + + const files = Array.from(dataTransfer.files) + if (files.length > 0) { + return files + } + + return Array.from(dataTransfer.items) + .filter((item) => item.kind === "file") + .map((item) => item.getAsFile()) + .filter((file): file is File => file !== null) +} + +export function hasFileTransfer(dataTransfer: DataTransfer | null): boolean { + if (!dataTransfer) { + return false + } + + if (dataTransfer.files.length > 0) { + return true + } + + return Array.from(dataTransfer.items).some((item) => item.kind === "file") +} + +export function getTransferredFiles(dataTransfer: DataTransfer | null) { + return getTransferItemFiles(dataTransfer) +} + +export async function buildChatImageAttachments( + files: readonly File[], + t: TFunction, +): Promise { + const nextAttachments: ChatAttachment[] = [] + + for (const [index, file] of files.entries()) { + const filename = getAttachmentFilename(file, index) + + const mimeType = getSupportedImageMimeType(file) + if (!mimeType) { + toast.error( + t("chat.invalidImage", { + name: filename, + }), + ) + continue + } + + if (file.size > MAX_CHAT_IMAGE_SIZE_BYTES) { + toast.error( + t("chat.imageTooLarge", { + name: filename, + size: MAX_CHAT_IMAGE_SIZE_LABEL, + }), + ) + continue + } + + try { + const normalizedFile = normalizeImageFileForDataUrl(file, filename) + nextAttachments.push({ + type: "image", + filename, + url: await readFileAsDataUrl(normalizedFile), + contentType: mimeType, + }) + } catch { + toast.error( + t("chat.imageReadFailed", { + name: filename, + }), + ) + } + } + + return nextAttachments +} diff --git a/web/frontend/src/i18n/locales/cs.json b/web/frontend/src/i18n/locales/cs.json index 8f3fa9a25..30139c0b9 100644 --- a/web/frontend/src/i18n/locales/cs.json +++ b/web/frontend/src/i18n/locales/cs.json @@ -95,8 +95,9 @@ "contextTitle": "Kontext", "contextDetail": "Zobrazit detail", "attachImage": "Přidat obrÃĄzky", + "dropImagesActive": "Uvolněním přidÃĄte obrÃĄzky", "removeImage": "Odebrat obrÃĄzek", - "uploadedImage": "NahranÃŊ obrÃĄzek", + "uploadedImage": "PřiloÅženÃŊ obrÃĄzek", "invalidImage": "\"{{name}}\" není podporovanÃŊ formÃĄt obrÃĄzku.", "imageTooLarge": "\"{{name}}\" překračuje limit {{size}}.", "imageReadFailed": "Čtení souboru \"{{name}}\" selhalo.", diff --git a/web/frontend/src/i18n/locales/en.json b/web/frontend/src/i18n/locales/en.json index cb97f0a5e..11ea2cabf 100644 --- a/web/frontend/src/i18n/locales/en.json +++ b/web/frontend/src/i18n/locales/en.json @@ -97,8 +97,9 @@ "contextTitle": "Context", "contextDetail": "View Details", "attachImage": "Add images", + "dropImagesActive": "Release to add images", "removeImage": "Remove image", - "uploadedImage": "Uploaded image", + "uploadedImage": "Attached image", "invalidImage": "\"{{name}}\" is not a supported image file.", "imageTooLarge": "\"{{name}}\" exceeds the {{size}} limit.", "imageReadFailed": "Failed to read \"{{name}}\".", diff --git a/web/frontend/src/i18n/locales/pt-br.json b/web/frontend/src/i18n/locales/pt-br.json index ca1f9ed32..28df583ba 100644 --- a/web/frontend/src/i18n/locales/pt-br.json +++ b/web/frontend/src/i18n/locales/pt-br.json @@ -97,8 +97,9 @@ "contextTitle": "Contexto", "contextDetail": "Ver Detalhes", "attachImage": "Adicionar imagens", + "dropImagesActive": "Solte para adicionar imagens", "removeImage": "Remover imagem", - "uploadedImage": "Imagem enviada", + "uploadedImage": "Imagem anexada", "invalidImage": "\"{{name}}\" nÃŖo Ê um arquivo de imagem suportado.", "imageTooLarge": "\"{{name}}\" excede o limite de {{size}}.", "imageReadFailed": "Falha ao ler \"{{name}}\".", diff --git a/web/frontend/src/i18n/locales/zh.json b/web/frontend/src/i18n/locales/zh.json index 5590adab2..d5491e8f0 100644 --- a/web/frontend/src/i18n/locales/zh.json +++ b/web/frontend/src/i18n/locales/zh.json @@ -97,8 +97,9 @@ "contextTitle": "上下文", "contextDetail": "æŸĨįœ‹č¯Ļ情", "attachImage": "æˇģåŠ å›žį‰‡", + "dropImagesActive": "杞åŧ€äģĨæˇģåŠ å›žį‰‡", "removeImage": "į§ģé™¤å›žį‰‡", - "uploadedImage": "厞䏊äŧ å›žį‰‡", + "uploadedImage": "厞æˇģåŠ å›žį‰‡", "invalidImage": "“{{name}}â€ä¸æ˜¯æ”¯æŒįš„å›žį‰‡æ–‡äģļ。", "imageTooLarge": "“{{name}}”čļ…čŋ‡äē† {{size}} 限åˆļ。", "imageReadFailed": "č¯ģ取“{{name}}â€å¤ąč´Ĩ。", From 995005a0bad9be18a133e7cf93fc6cced7f3ac51 Mon Sep 17 00:00:00 2001 From: Kunal Karmakar Date: Sat, 30 May 2026 13:40:29 +0000 Subject: [PATCH 18/21] Add azure entra id support for azure openai provider --- README.md | 4 +- go.mod | 7 ++ go.sum | 19 ++++++ pkg/providers/azure/identity.go | 55 +++++++++++++++ pkg/providers/azure/identity_stub.go | 23 +++++++ pkg/providers/azure/identity_test.go | 39 +++++++++++ pkg/providers/azure/provider.go | 50 ++++++++++++-- pkg/providers/azure/provider_test.go | 67 +++++++++++++++++++ pkg/providers/factory_provider.go | 25 ++++--- .../factory_provider_azidentity_test.go | 36 ++++++++++ pkg/providers/factory_provider_test.go | 7 +- 11 files changed, 316 insertions(+), 16 deletions(-) create mode 100644 pkg/providers/azure/identity.go create mode 100644 pkg/providers/azure/identity_stub.go create mode 100644 pkg/providers/azure/identity_test.go create mode 100644 pkg/providers/factory_provider_azidentity_test.go diff --git a/README.md b/README.md index 2fa71230d..47191ec06 100644 --- a/README.md +++ b/README.md @@ -413,12 +413,14 @@ PicoClaw supports 30+ LLM providers through the `model_list` configuration. Use | [Ollama](https://ollama.com/) | `ollama/` | Not needed | Local models, self-hosted | | [vLLM](https://docs.vllm.ai/) | `vllm/` | Not needed | Local deployment, OpenAI-compatible | | [LiteLLM](https://docs.litellm.ai/) | `litellm/` | Varies | Proxy for 100+ providers | -| [Azure OpenAI](https://portal.azure.com/) | `azure/` | Required | Enterprise Azure deployment | +| [Azure OpenAI](https://portal.azure.com/) | `azure/` | API key or Entra ID** | Enterprise Azure deployment | | [GitHub Copilot](https://github.com/features/copilot) | `github-copilot/` | OAuth | Device code login | | [Antigravity](https://console.cloud.google.com/) | `antigravity/` | OAuth | Google Cloud AI | | [AWS Bedrock](https://console.aws.amazon.com/bedrock)* | `bedrock/` | AWS credentials | Claude, Llama, Mistral on AWS | > \* AWS Bedrock requires build tag: `go build -tags bedrock`. Set `api_base` to a region name (e.g., `us-east-1`) for automatic endpoint resolution across all AWS partitions (aws, aws-cn, aws-us-gov). When using a full endpoint URL instead, you must also configure `AWS_REGION` via environment variable or AWS config/profile. +> +> \*\* Azure OpenAI uses `api_key` when set. If `api_key` is omitted, the provider falls back to Microsoft Entra ID via `DefaultAzureCredential` (env vars, workload identity, managed identity, Azure CLI, etc.). The Entra ID path requires build tag: `go build -tags azidentity`.
Local deployment (Ollama, vLLM, etc.) diff --git a/go.mod b/go.mod index 89e25c598..a02252114 100644 --- a/go.mod +++ b/go.mod @@ -4,6 +4,8 @@ go 1.25.10 require ( fyne.io/systray v1.12.1 + github.com/Azure/azure-sdk-for-go/sdk/azcore v1.21.1 + github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.13.1 github.com/SevereCloud/vksdk/v3 v3.3.1 github.com/adhocore/gronx v1.20.0 github.com/anthropics/anthropic-sdk-go v1.26.0 @@ -55,6 +57,8 @@ require ( require ( aead.dev/minisign v0.2.0 // indirect filippo.io/edwards25519 v1.2.0 // indirect + github.com/Azure/azure-sdk-for-go/sdk/internal v1.12.0 // indirect + github.com/AzureAD/microsoft-authentication-library-for-go v1.6.0 // indirect github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.7.10 // indirect github.com/aws/aws-sdk-go-v2/credentials v1.19.16 // indirect github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.23 // indirect @@ -82,7 +86,9 @@ require ( github.com/go-logr/logr v1.4.3 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/godbus/dbus/v5 v5.1.0 // indirect + github.com/golang-jwt/jwt/v5 v5.3.1 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/kylelemons/godebug v1.1.0 // indirect github.com/lucasb-eyer/go-colorful v1.3.0 // indirect github.com/mattn/go-colorable v0.1.14 // indirect github.com/mattn/go-isatty v0.0.20 // indirect @@ -91,6 +97,7 @@ require ( github.com/ncruces/go-strftime v1.0.0 // indirect github.com/petermattis/goid v0.0.0-20260330135022-df67b199bc81 // indirect github.com/pion/randutil v0.1.0 // indirect + github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect github.com/rivo/uniseg v0.4.7 // indirect github.com/segmentio/asm v1.1.3 // indirect diff --git a/go.sum b/go.sum index d680a6f08..167daac83 100644 --- a/go.sum +++ b/go.sum @@ -5,6 +5,18 @@ filippo.io/edwards25519 v1.2.0 h1:crnVqOiS4jqYleHd9vaKZ+HKtHfllngJIiOpNpoJsjo= filippo.io/edwards25519 v1.2.0/go.mod h1:xzAOLCNug/yB62zG1bQ8uziwrIqIuxhctzJT18Q77mc= fyne.io/systray v1.12.1 h1:ygBD6aZXwiOmZoY5N+ukbH9pih0Kq6fYgVeMYbr5skQ= fyne.io/systray v1.12.1/go.mod h1:RVwqP9nYMo7h5zViCBHri2FgjXF7H2cub7MAq4NSoLs= +github.com/Azure/azure-sdk-for-go/sdk/azcore v1.21.1 h1:jHb/wfvRikGdxMXYV3QG/SzUOPYN9KEUUuC0Yd0/vC0= +github.com/Azure/azure-sdk-for-go/sdk/azcore v1.21.1/go.mod h1:pzBXCYn05zvYIrwLgtK8Ap8QcjRg+0i76tMQdWN6wOk= +github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.13.1 h1:Hk5QBxZQC1jb2Fwj6mpzme37xbCDdNTxU7O9eb5+LB4= +github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.13.1/go.mod h1:IYus9qsFobWIc2YVwe/WPjcnyCkPKtnHAqUYeebc8z0= +github.com/Azure/azure-sdk-for-go/sdk/azidentity/cache v0.3.2 h1:yz1bePFlP5Vws5+8ez6T3HWXPmwOK7Yvq8QxDBD3SKY= +github.com/Azure/azure-sdk-for-go/sdk/azidentity/cache v0.3.2/go.mod h1:Pa9ZNPuoNu/GztvBSKk9J1cDJW6vk/n0zLtV4mgd8N8= +github.com/Azure/azure-sdk-for-go/sdk/internal v1.12.0 h1:fhqpLE3UEXi9lPaBRpQ6XuRW0nU7hgg4zlmZZa+a9q4= +github.com/Azure/azure-sdk-for-go/sdk/internal v1.12.0/go.mod h1:7dCRMLwisfRH3dBupKeNCioWYUZ4SS09Z14H+7i8ZoY= +github.com/AzureAD/microsoft-authentication-extensions-for-go/cache v0.1.1 h1:WJTmL004Abzc5wDB5VtZG2PJk5ndYDgVacGqfirKxjM= +github.com/AzureAD/microsoft-authentication-extensions-for-go/cache v0.1.1/go.mod h1:tCcJZ0uHAmvjsVYzEFivsRTN00oz5BEsRgQHu5JZ9WE= +github.com/AzureAD/microsoft-authentication-library-for-go v1.6.0 h1:XRzhVemXdgvJqCH0sFfrBUTnUJSBrBf7++ypk+twtRs= +github.com/AzureAD/microsoft-authentication-library-for-go v1.6.0/go.mod h1:HKpQxkWaGLJ+D/5H8QRpyQXA1eKjxkFlOMwck5+33Jk= github.com/DATA-DOG/go-sqlmock v1.5.2 h1:OcvFkGmslmlZibjAjaHm3L//6LiuBgolP7OputlJIzU= github.com/DATA-DOG/go-sqlmock v1.5.2/go.mod h1:88MAG/4G7SMwSE3CeA0ZKzrT5CiOU3OJ+JlNzwDqpNU= github.com/SevereCloud/vksdk/v3 v3.3.1 h1:O86zsp5LQnHE+O5acvuXM/s6S1LyxzVTkF6+Lup0Jyg= @@ -164,6 +176,8 @@ github.com/hashicorp/golang-lru/v2 v2.0.7/go.mod h1:QeFd9opnmA6QUJc5vARoKUSoFhyf github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= +github.com/keybase/go-keychain v0.0.1 h1:way+bWYa6lDppZoZcgMbYsvC7GxljxrskdNInRtuthU= +github.com/keybase/go-keychain v0.0.1/go.mod h1:PdEILRW3i9D8JcdM+FmY6RwkHGnhHxXwkPPMeUgOK1k= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= github.com/klauspost/compress v1.18.6 h1:2jupLlAwFm95+YDR+NwD2MEfFO9d4z4Prjl1XXDjuao= @@ -179,6 +193,8 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= +github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= +github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= github.com/larksuite/oapi-sdk-go/v3 v3.7.5 h1:dimv+ZAGia01f4xCDGvCiBHKWMf4K1AB7fGsM+lv5Jw= github.com/larksuite/oapi-sdk-go/v3 v3.7.5/go.mod h1:ZEplY+kwuIrj/nqw5uSCINNATcH3KdxSN7y+UxYY5fI= github.com/line/line-bot-sdk-go/v8 v8.20.0 h1:Jv22DV3JuQ5qZvniqUbg504bJrVzffXs2CMpyoiuIZU= @@ -225,6 +241,8 @@ github.com/pion/rtp v1.10.2 h1:l+f6tTDcAH6xwepaAoW791ddhuYsJlqRATOzirO04Mo= github.com/pion/rtp v1.10.2/go.mod h1:Au8fc6cEByy8RLTwKTQTEeQqDB/SJDxwL4mZuxYA5Pk= github.com/pion/webrtc/v3 v3.3.6 h1:7XAh4RPtlY1Vul6/GmZrv7z+NnxKA6If0KStXBI2ZLE= github.com/pion/webrtc/v3 v3.3.6/go.mod h1:zyN7th4mZpV27eXybfR/cnUf3J2DRy8zw/mdjD9JTNM= +github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c h1:+mdjkGKdHQG3305AYmdv1U2eRNDiU2ErMBj1gwrq8eQ= +github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c/go.mod h1:7rwL4CYBLnjLxUqIJNnCWiEdr3bn6IUYi15bNlnbCCU= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= @@ -384,6 +402,7 @@ golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= diff --git a/pkg/providers/azure/identity.go b/pkg/providers/azure/identity.go new file mode 100644 index 000000000..067573a54 --- /dev/null +++ b/pkg/providers/azure/identity.go @@ -0,0 +1,55 @@ +//go:build azidentity + +// Package azure: Entra ID (DefaultAzureCredential) auth adapter. +// Built only when -tags azidentity is supplied; otherwise identity_stub.go +// satisfies the same exported API with a friendly error. +package azure + +import ( + "context" + "fmt" + "time" + + "github.com/Azure/azure-sdk-for-go/sdk/azcore/policy" + "github.com/Azure/azure-sdk-for-go/sdk/azidentity" +) + +// azureOpenAIScope is the OAuth scope for Azure OpenAI (Cognitive Services). +// Service-wide scope, so it covers all regions including sovereign clouds. +const azureOpenAIScope = "https://cognitiveservices.azure.com/.default" + +// NewProviderWithIdentity creates an Azure OpenAI provider authenticated via +// the DefaultAzureCredential chain (env vars, workload identity, managed +// identity, Azure CLI, ...). Construction itself only fails if the credential +// chain cannot be built; misconfigured environments surface their error on +// the first Chat call when GetToken is invoked. +func NewProviderWithIdentity(apiBase, proxy, userAgent string, opts ...Option) (*Provider, error) { + cred, err := azidentity.NewDefaultAzureCredential(nil) + if err != nil { + return nil, fmt.Errorf("creating azure default credential: %w", err) + } + + ts := func(ctx context.Context) (string, error) { + tok, err := cred.GetToken(ctx, policy.TokenRequestOptions{ + Scopes: []string{azureOpenAIScope}, + }) + if err != nil { + return "", fmt.Errorf("acquiring azure access token: %w", err) + } + return tok.Token, nil + } + + return NewProviderWithTokenSource(apiBase, proxy, userAgent, ts, opts...), nil +} + +// NewProviderWithIdentityAndTimeout mirrors NewProviderWithTimeout for the +// identity auth path. +func NewProviderWithIdentityAndTimeout( + apiBase, proxy, userAgent string, + requestTimeoutSeconds int, +) (*Provider, error) { + return NewProviderWithIdentity( + apiBase, proxy, userAgent, + WithRequestTimeout(time.Duration(requestTimeoutSeconds)*time.Second), + ) +} diff --git a/pkg/providers/azure/identity_stub.go b/pkg/providers/azure/identity_stub.go new file mode 100644 index 000000000..3fec89e26 --- /dev/null +++ b/pkg/providers/azure/identity_stub.go @@ -0,0 +1,23 @@ +//go:build !azidentity + +// Package azure: stub for the Entra ID auth path when built without +// the azidentity tag. Mirrors the exported surface of identity.go so +// callers compile cleanly in the default build. +package azure + +import "fmt" + +const azidentityBuildHint = "azure identity auth not available: build with -tags azidentity to enable Entra ID auth, or set api_key" + +// NewProviderWithIdentity returns an error in the default build. +func NewProviderWithIdentity(apiBase, proxy, userAgent string, opts ...Option) (*Provider, error) { + return nil, fmt.Errorf("%s", azidentityBuildHint) +} + +// NewProviderWithIdentityAndTimeout returns an error in the default build. +func NewProviderWithIdentityAndTimeout( + apiBase, proxy, userAgent string, + requestTimeoutSeconds int, +) (*Provider, error) { + return nil, fmt.Errorf("%s", azidentityBuildHint) +} diff --git a/pkg/providers/azure/identity_test.go b/pkg/providers/azure/identity_test.go new file mode 100644 index 000000000..e40fd1ce1 --- /dev/null +++ b/pkg/providers/azure/identity_test.go @@ -0,0 +1,39 @@ +//go:build azidentity + +package azure + +import ( + "testing" +) + +func TestNewProviderWithIdentity_Construction(t *testing.T) { + // DefaultAzureCredential construction itself does not require any env vars; + // failures surface only on the first GetToken call. Verify we get a + // non-nil provider back with a token source wired in. + p, err := NewProviderWithIdentity("https://example.openai.azure.com", "", "ua-test") + if err != nil { + t.Fatalf("NewProviderWithIdentity() error = %v", err) + } + if p == nil { + t.Fatal("NewProviderWithIdentity() returned nil provider") + } + if p.tokenSource == nil { + t.Fatal("provider.tokenSource should be set") + } + if p.apiKey != "" { + t.Errorf("provider.apiKey = %q, want empty", p.apiKey) + } +} + +func TestNewProviderWithIdentityAndTimeout_Construction(t *testing.T) { + p, err := NewProviderWithIdentityAndTimeout("https://example.openai.azure.com", "", "ua-test", 30) + if err != nil { + t.Fatalf("NewProviderWithIdentityAndTimeout() error = %v", err) + } + if p == nil { + t.Fatal("returned nil provider") + } + if p.httpClient.Timeout.Seconds() != 30 { + t.Errorf("timeout = %v, want 30s", p.httpClient.Timeout) + } +} diff --git a/pkg/providers/azure/provider.go b/pkg/providers/azure/provider.go index 7de703248..fdbbf4a30 100644 --- a/pkg/providers/azure/provider.go +++ b/pkg/providers/azure/provider.go @@ -33,10 +33,11 @@ const ( // It handles Azure-specific authentication (Bearer token), URL construction // (Responses API), and request/response formatting. type Provider struct { - apiKey string - apiBase string - httpClient *http.Client - userAgent string + apiKey string + apiBase string + httpClient *http.Client + userAgent string + tokenSource func(ctx context.Context) (string, error) } // Option configures the Azure Provider. @@ -58,6 +59,14 @@ func WithUserAgent(userAgent string) Option { } } +// WithTokenSource sets a callback that returns a bearer token per request. +// When set, it takes precedence over the static api key. +func WithTokenSource(ts func(ctx context.Context) (string, error)) Option { + return func(p *Provider) { + p.tokenSource = ts + } +} + // NewProvider creates a new Azure OpenAI provider. func NewProvider(apiKey, apiBase, proxy, userAgent string, opts ...Option) *Provider { p := &Provider{ @@ -84,6 +93,30 @@ func NewProviderWithTimeout(apiKey, apiBase, proxy, userAgent string, requestTim ) } +// NewProviderWithTokenSource creates a new Azure OpenAI provider that obtains its +// bearer token from the supplied callback on every request. Used for Entra ID auth +// where tokens are short-lived and refreshed by the underlying credential. +func NewProviderWithTokenSource( + apiBase, proxy, userAgent string, + tokenSource func(ctx context.Context) (string, error), + opts ...Option, +) *Provider { + p := &Provider{ + apiBase: strings.TrimRight(apiBase, "/"), + userAgent: userAgent, + httpClient: common.NewHTTPClient(proxy), + tokenSource: tokenSource, + } + + for _, opt := range opts { + if opt != nil { + opt(p) + } + } + + return p +} + // Chat sends a request to the Azure OpenAI Responses API endpoint. // The model parameter is passed in the request body. func (p *Provider) Chat( @@ -147,7 +180,14 @@ func (p *Provider) Chat( } req.Header.Set("Content-Type", "application/json") - if p.apiKey != "" { + switch { + case p.tokenSource != nil: + tok, tokErr := p.tokenSource(ctx) + if tokErr != nil { + return nil, fmt.Errorf("acquiring azure identity token: %w", tokErr) + } + req.Header.Set("Authorization", "Bearer "+tok) + case p.apiKey != "": req.Header.Set("Authorization", "Bearer "+p.apiKey) } if p.userAgent != "" { diff --git a/pkg/providers/azure/provider_test.go b/pkg/providers/azure/provider_test.go index 816ae97dc..b39c956fc 100644 --- a/pkg/providers/azure/provider_test.go +++ b/pkg/providers/azure/provider_test.go @@ -1,7 +1,9 @@ package azure import ( + "context" "encoding/json" + "errors" "net/http" "net/http/httptest" "strings" @@ -415,3 +417,68 @@ func TestProviderChat_AzureNoNativeWebSearch(t *testing.T) { t.Errorf("tool type = %v, want %q", tool["type"], "function") } } + +func TestProviderChat_AzureTokenSourceHeader(t *testing.T) { + var capturedAuth string + + server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + capturedAuth = r.Header.Get("Authorization") + writeValidResponse(w) + })) + defer server.Close() + + ts := func(ctx context.Context) (string, error) { + return "fake-entra-token", nil + } + p := NewProviderWithTokenSource(server.URL, "", "", ts) + _, err := p.Chat(t.Context(), []Message{{Role: "user", Content: "hi"}}, nil, "deployment", nil) + if err != nil { + t.Fatalf("Chat() error = %v", err) + } + if capturedAuth != "Bearer fake-entra-token" { + t.Errorf("Authorization header = %q, want %q", capturedAuth, "Bearer fake-entra-token") + } +} + +func TestProviderChat_AzureTokenSourceError(t *testing.T) { + server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + writeValidResponse(w) + })) + defer server.Close() + + wantErr := errors.New("creds gone") + ts := func(ctx context.Context) (string, error) { + return "", wantErr + } + p := NewProviderWithTokenSource(server.URL, "", "", ts) + _, err := p.Chat(t.Context(), []Message{{Role: "user", Content: "hi"}}, nil, "deployment", nil) + if err == nil { + t.Fatal("expected error from token source") + } + if !strings.Contains(err.Error(), "creds gone") { + t.Errorf("error %q should wrap original token source error", err.Error()) + } +} + +func TestProviderChat_AzureTokenSourcePrecedence(t *testing.T) { + var capturedAuth string + + server := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + capturedAuth = r.Header.Get("Authorization") + writeValidResponse(w) + })) + defer server.Close() + + ts := func(ctx context.Context) (string, error) { + return "from-token-source", nil + } + // Provider with both an api_key AND a token source: token source must win. + p := NewProvider("static-api-key", server.URL, "", "", WithTokenSource(ts)) + _, err := p.Chat(t.Context(), []Message{{Role: "user", Content: "hi"}}, nil, "deployment", nil) + if err != nil { + t.Fatalf("Chat() error = %v", err) + } + if capturedAuth != "Bearer from-token-source" { + t.Errorf("Authorization header = %q, want token-source value", capturedAuth) + } +} diff --git a/pkg/providers/factory_provider.go b/pkg/providers/factory_provider.go index 7c03daaba..5f0bfe88d 100644 --- a/pkg/providers/factory_provider.go +++ b/pkg/providers/factory_provider.go @@ -137,23 +137,32 @@ func CreateProviderFromConfig(cfg *config.ModelConfig) (LLMProvider, string, err return finalizeProviderFromConfig(provider, modelID, cfg) case "azure": - // Azure OpenAI uses deployment-based URLs, api-key header auth, - // and always sends max_completion_tokens. - if cfg.APIKey() == "" { - return nil, "", fmt.Errorf("api_key is required for azure protocol") - } + // Azure OpenAI uses deployment-based URLs. Auth is Bearer token via api_key + // when set; otherwise falls back to Entra ID (DefaultAzureCredential). if cfg.APIBase == "" { return nil, "", fmt.Errorf( "api_base is required for azure protocol (e.g., https://your-resource.openai.azure.com)", ) } - return finalizeProviderFromConfig(azure.NewProviderWithTimeout( - cfg.APIKey(), + if cfg.APIKey() != "" { + return finalizeProviderFromConfig(azure.NewProviderWithTimeout( + cfg.APIKey(), + cfg.APIBase, + cfg.Proxy, + userAgent, + cfg.RequestTimeout, + ), modelID, cfg) + } + provider, err := azure.NewProviderWithIdentityAndTimeout( cfg.APIBase, cfg.Proxy, userAgent, cfg.RequestTimeout, - ), modelID, cfg) + ) + if err != nil { + return nil, "", err + } + return finalizeProviderFromConfig(provider, modelID, cfg) case "bedrock": // AWS Bedrock uses AWS SDK credentials (env vars, profiles, IAM roles, etc.) diff --git a/pkg/providers/factory_provider_azidentity_test.go b/pkg/providers/factory_provider_azidentity_test.go new file mode 100644 index 000000000..98dfc211e --- /dev/null +++ b/pkg/providers/factory_provider_azidentity_test.go @@ -0,0 +1,36 @@ +//go:build azidentity + +// PicoClaw - Ultra-lightweight personal AI agent +// License: MIT +// +// Copyright (c) 2026 PicoClaw contributors + +package providers + +import ( + "testing" + + "github.com/sipeed/picoclaw/pkg/config" +) + +// With the azidentity build tag, an azure config with no api_key must succeed +// (falls back to DefaultAzureCredential). Construction does not require any +// real Azure environment — token acquisition happens on first Chat. +func TestCreateProviderFromConfig_AzureIdentityFallback(t *testing.T) { + cfg := &config.ModelConfig{ + ModelName: "azure-gpt5", + Model: "azure/my-gpt5-deployment", + APIBase: "https://my-resource.openai.azure.com", + } + + provider, modelID, err := CreateProviderFromConfig(cfg) + if err != nil { + t.Fatalf("CreateProviderFromConfig() error = %v", err) + } + if provider == nil { + t.Fatal("CreateProviderFromConfig() returned nil provider") + } + if modelID != "my-gpt5-deployment" { + t.Errorf("modelID = %q, want %q", modelID, "my-gpt5-deployment") + } +} diff --git a/pkg/providers/factory_provider_test.go b/pkg/providers/factory_provider_test.go index 0b3dd791b..c4ef8a4aa 100644 --- a/pkg/providers/factory_provider_test.go +++ b/pkg/providers/factory_provider_test.go @@ -870,8 +870,11 @@ func TestCreateProviderFromConfig_AzureMissingAPIKey(t *testing.T) { } _, _, err := CreateProviderFromConfig(cfg) - if err == nil { - t.Fatal("CreateProviderFromConfig() expected error for missing API key") + // Without api_key the factory falls back to identity auth, which in the + // default build is stubbed out and surfaces a build-tag error. With the + // azidentity tag, the call succeeds and is covered by a separate test. + if err != nil && !strings.Contains(err.Error(), "azidentity") { + t.Fatalf("CreateProviderFromConfig() unexpected error = %v", err) } } From 46e5b59d5fdaec35dfae472b75218263671a2b4b Mon Sep 17 00:00:00 2001 From: Kunal Karmakar Date: Sat, 30 May 2026 14:11:39 +0000 Subject: [PATCH 19/21] Fix linting --- pkg/providers/azure/identity.go | 3 ++- pkg/providers/azure/identity_stub.go | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/pkg/providers/azure/identity.go b/pkg/providers/azure/identity.go index 067573a54..1283cb070 100644 --- a/pkg/providers/azure/identity.go +++ b/pkg/providers/azure/identity.go @@ -1,8 +1,9 @@ //go:build azidentity -// Package azure: Entra ID (DefaultAzureCredential) auth adapter. +// Entra ID (DefaultAzureCredential) auth adapter. // Built only when -tags azidentity is supplied; otherwise identity_stub.go // satisfies the same exported API with a friendly error. + package azure import ( diff --git a/pkg/providers/azure/identity_stub.go b/pkg/providers/azure/identity_stub.go index 3fec89e26..c6d5a60d0 100644 --- a/pkg/providers/azure/identity_stub.go +++ b/pkg/providers/azure/identity_stub.go @@ -1,8 +1,9 @@ //go:build !azidentity -// Package azure: stub for the Entra ID auth path when built without -// the azidentity tag. Mirrors the exported surface of identity.go so -// callers compile cleanly in the default build. +// Stub for the Entra ID auth path when built without the azidentity tag. +// Mirrors the exported surface of identity.go so callers compile cleanly +// in the default build. + package azure import "fmt" From 2391f32fc182a29d80c9e21d58b6c5fb42737c8e Mon Sep 17 00:00:00 2001 From: Kunal Karmakar Date: Sat, 30 May 2026 14:52:54 +0000 Subject: [PATCH 20/21] Add Bangla support bn-in --- web/frontend/src/components/app-header.tsx | 3 + web/frontend/src/i18n/index.ts | 7 + web/frontend/src/i18n/locales/bn-in.json | 960 +++++++++++++++++++++ 3 files changed, 970 insertions(+) create mode 100644 web/frontend/src/i18n/locales/bn-in.json diff --git a/web/frontend/src/components/app-header.tsx b/web/frontend/src/components/app-header.tsx index 30c05ee45..eb90881fb 100644 --- a/web/frontend/src/components/app-header.tsx +++ b/web/frontend/src/components/app-header.tsx @@ -291,6 +291,9 @@ export function AppHeader() { i18n.changeLanguage("pt-BR")}> PortuguÃĒs (Brasil) + i18n.changeLanguage("bn-IN")}> + āĻŦāĻžāĻ‚āϞāĻž + i18n.changeLanguage("zh")}> įŽ€äŊ“中文 diff --git a/web/frontend/src/i18n/index.ts b/web/frontend/src/i18n/index.ts index 8c0248915..7eefd943f 100644 --- a/web/frontend/src/i18n/index.ts +++ b/web/frontend/src/i18n/index.ts @@ -1,4 +1,5 @@ import dayjs from "dayjs" +import "dayjs/locale/bn" import "dayjs/locale/cs" import "dayjs/locale/en" import "dayjs/locale/pt-br" @@ -11,6 +12,7 @@ import { initReactI18next } from "react-i18next" import en from "./locales/en.json" import ptBr from "./locales/pt-br.json" +import bnIn from "./locales/bn-in.json" import zh from "./locales/zh.json" import cs from "./locales/cs.json" @@ -33,6 +35,9 @@ i18n "pt-BR": { translation: ptBr, }, + "bn-IN": { + translation: bnIn, + }, zh: { translation: zh, }, @@ -53,6 +58,8 @@ i18n.on("languageChanged", (lng) => { dayjs.locale("zh-cn") } else if (lng.startsWith("pt")) { dayjs.locale("pt-br") + } else if (lng.startsWith("bn")) { + dayjs.locale("bn") } else if (lng.startsWith("cs")) { dayjs.locale("cs") } else { diff --git a/web/frontend/src/i18n/locales/bn-in.json b/web/frontend/src/i18n/locales/bn-in.json new file mode 100644 index 000000000..c9a7249bf --- /dev/null +++ b/web/frontend/src/i18n/locales/bn-in.json @@ -0,0 +1,960 @@ +{ + "navigation": { + "chat": "āĻšā§āϝāĻžāϟ", + "model_group": "āĻŽāĻĄā§‡āϞ", + "models": "āĻŽāĻĄā§‡āϞ", + "credentials": "āĻ•ā§āϰ⧇āĻĄā§‡āύāĻļāĻŋāϝāĻŧāĻžāϞ", + "agent_group": "āĻāĻœā§‡āĻ¨ā§āϟ", + "hub": "Hub", + "skills": "āĻĻāĻ•ā§āώāϤāĻž", + "tools": "āϏāϰāĻžā§āϜāĻžāĻŽ", + "services": "āϏāĻžāĻ°ā§āĻ­āĻŋāϏ", + "channels_group": "āĻšā§āϝāĻžāύ⧇āϞ", + "show_more_channels": "āφāϰāĻ“", + "show_less_channels": "āĻ•āĻŽ", + "config": "āĻ•āύāĻĢāĻŋāĻ—", + "logs": "āϞāĻ—" + }, + "launcherLogin": { + "title": "āϏāĻžāχāύ āχāύ", + "description": "āϚāĻžāϞāĻŋāϝāĻŧ⧇ āϝ⧇āϤ⧇ āĻĄā§āϝāĻžāĻļāĻŦā§‹āĻ°ā§āĻĄ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āĻĻāĻŋāύāĨ¤", + "passwordLabel": "āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ", + "passwordPlaceholder": "āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āϞāĻŋāϖ⧁āύ", + "submit": "āϏāĻžāχāύ āχāύ", + "errorInvalid": "āϭ⧁āϞ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄāĨ¤ āφāĻŦāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύāĨ¤", + "errorNetwork": "āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āĻ¤ā§āϰ⧁āϟāĻŋāĨ¤ āφāĻŦāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύāĨ¤" + }, + "launcherSetup": { + "title": "āĻĄā§āϝāĻžāĻļāĻŦā§‹āĻ°ā§āĻĄ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āϏ⧇āϟ āĻ•āϰ⧁āύ", + "description": "āĻāχ āĻĄā§āϝāĻžāĻļāĻŦā§‹āĻ°ā§āĻĄā§‡ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ āϏ⧁āϰāĻ•ā§āώāĻŋāϤ āϰāĻžāĻ–āϤ⧇ āĻāĻ•āϟāĻŋ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āĻŦ⧇āϛ⧇ āύāĻŋāύāĨ¤ āĻĒā§āϰāϤāĻŋāĻŦāĻžāϰ āϏāĻžāχāύ āχāύ⧇āϰ āϏāĻŽāϝāĻŧ āĻāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤", + "passwordLabel": "āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ", + "passwordPlaceholder": "āĻ•āĻŽāĻĒāĻ•ā§āώ⧇ ā§Ž āĻ…āĻ•ā§āώāϰ", + "confirmLabel": "āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧁āύ", + "confirmPlaceholder": "āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āφāĻŦāĻžāϰ āϞāĻŋāϖ⧁āύ", + "submit": "āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āϏ⧇āϟ āĻ•āϰ⧁āύ", + "errorMismatch": "āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āĻŽāĻŋāϞāϛ⧇ āύāĻžāĨ¤", + "errorNetwork": "āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āĻ¤ā§āϰ⧁āϟāĻŋāĨ¤ āφāĻŦāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύāĨ¤" + }, + "chat": { + "welcome": "āφāϜ āφāĻŽāĻŋ āφāĻĒāύāĻžāϕ⧇ āϕ⧀āĻ­āĻžāĻŦ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰāϤ⧇ āĻĒāĻžāϰāĻŋ?", + "welcomeDesc": "āφāĻŦāĻšāĻžāĻ“āϝāĻŧāĻž, āϏ⧇āϟāĻŋāĻ‚āϏ āĻŦāĻž āĻ…āĻ¨ā§āϝ āϝ⧇āϕ⧋āύ⧋ āĻ•āĻžāϜ āϏāĻŽā§āĻĒāĻ°ā§āϕ⧇ āφāĻŽāĻžāϕ⧇ āϜāĻŋāĻœā§āĻžāĻžāϏāĻž āĻ•āϰ⧁āύāĨ¤ āφāĻŽāĻŋ āϏāĻžāĻšāĻžāĻ¯ā§āϝ⧇āϰ āϜāĻ¨ā§āϝ āĻāĻ–āĻžāύ⧇ āφāĻ›āĻŋāĨ¤", + "placeholder": "āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻŦāĻžāĻ°ā§āϤāĻž āĻļ⧁āϰ⧁ āĻ•āϰ⧁āύ...", + "disabledPlaceholder": { + "gatewayUnknown": "āĻšā§āϝāĻžāϟ āĻ•āϰāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž: āϗ⧇āϟāĻ“āϝāĻŧ⧇āϰ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻžāϏ āĻāĻ–āύāĻ“ āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰāĻž āĻšāĻšā§āϛ⧇āĨ¤ āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰ⧁āύ, āϤāĻžāϰāĻĒāϰ āĻĒ⧃āĻˇā§āĻ āĻžāϟāĻŋ āϰāĻŋāĻĢā§āϰ⧇āĻļ āĻ•āϰ⧁āύ āĻ…āĻĨāĻŦāĻž āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧇ āϞāĻžā§āϚāĻžāϰ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤", + "gatewayStarting": "āĻšā§āϝāĻžāϟ āĻ•āϰāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž: āϗ⧇āϟāĻ“āϝāĻŧ⧇ āϚāĻžāϞ⧁ āĻšāĻšā§āϛ⧇āĨ¤ āϚāĻžāϞ⧁ āĻšāĻ“āϝāĻŧāĻž āĻļ⧇āώ āĻšāĻ“āϝāĻŧāĻž āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰ⧁āύ, āϤāĻžāϰāĻĒāϰ āφāĻŦāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύāĨ¤", + "gatewayRestarting": "āĻšā§āϝāĻžāϟ āĻ•āϰāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž: āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻšāĻšā§āϛ⧇āĨ¤ āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻšāĻ“āϝāĻŧāĻž āĻļ⧇āώ āĻšāĻ“āϝāĻŧāĻž āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰ⧁āύāĨ¤", + "gatewayStopping": "āĻšā§āϝāĻžāϟ āĻ•āϰāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž: āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻŦāĻ¨ā§āϧ āĻšāĻšā§āϛ⧇āĨ¤ āĻŦāĻ¨ā§āϧ āĻšāĻ“āϝāĻŧāĻž āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰ⧁āύ, āϤāĻžāϰāĻĒāϰ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āφāĻŦāĻžāϰ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤", + "gatewayStopped": "āĻšā§āϝāĻžāϟ āĻ•āϰāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž: āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻļ⧁āϰ⧁ āĻ•āϰāĻž āĻšāϝāĻŧāύāĻŋāĨ¤ āωāĻĒāϰ⧇āϰ āĻŦāĻžāϰ⧇ āĻ¸ā§āϟāĻžāĻ°ā§āϟ āϗ⧇āϟāĻ“āϝāĻŧ⧇āϤ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧁āύ, āϤāĻžāϰāĻĒāϰ āĻĒ⧁āύāϰāĻžāϝāĻŧ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύāĨ¤", + "gatewayError": "āĻšā§āϝāĻžāϟ āĻ•āϰāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž: āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻ¤ā§āϰ⧁āϟāĻŋ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāϝāĻŧ āϰāϝāĻŧ⧇āϛ⧇āĨ¤ āϞāĻ— āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰ⧁āύ, āϤāĻžāϰāĻĒāϰ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻŦāĻž āϞāĻžā§āϚāĻžāϰ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤", + "websocketConnecting": "āĻšā§āϝāĻžāϟ āϏāĻžāĻ°ā§āĻ­āĻŋāϏ⧇āϰ āϏāĻžāĻĨ⧇ āϏāĻ‚āϝ⧋āĻ— āĻ¸ā§āĻĨāĻžāĻĒāύ āĻšāĻšā§āϛ⧇... āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰ⧁āύāĨ¤", + "websocketDisconnected": "āĻšā§āϝāĻžāϟ āĻ•āϰāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž: WebSocket āϏāĻ‚āϝ⧋āĻ— āĻŦāĻŋāĻšā§āĻ›āĻŋāĻ¨ā§āύāĨ¤ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āĻāĻŦāĻ‚ āϗ⧇āϟāĻ“āϝāĻŧ⧇āϰ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰ⧁āύ, āϤāĻžāϰāĻĒāϰ āĻĒ⧃āĻˇā§āĻ āĻžāϟāĻŋ āϰāĻŋāĻĢā§āϰ⧇āĻļ āĻ•āϰ⧁āύ āĻŦāĻž āϞāĻžā§āϚāĻžāϰ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤", + "websocketError": "āĻšā§āϝāĻžāϟ āĻ•āϰāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž: WebSocket āϏāĻ‚āϝ⧋āĻ— āĻŦā§āϝāĻ°ā§āĻĨ āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āĻāĻŦāĻ‚ āϗ⧇āϟāĻ“āϝāĻŧ⧇āϰ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰ⧁āύ, āϤāĻžāϰāĻĒāϰ āĻĒ⧁āύāϰāĻžāϝāĻŧ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύāĨ¤", + "noDefaultModel": "āĻšā§āϝāĻžāϟ āĻ•āϰāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻž: āϕ⧋āύ⧋ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻĄā§‡āϞ āύāĻŋāĻ°ā§āĻŦāĻžāϚāĻŋāϤ āύ⧇āχāĨ¤ āĻŽāĻĄā§‡āϞ āĻĒ⧃āĻˇā§āĻ āĻžāϝāĻŧ āĻāĻ•āϟāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻĄā§‡āϞ āϏ⧇āϟ āĻ•āϰ⧁āύāĨ¤" + }, + "newChat": "āύāϤ⧁āύ āĻšā§āϝāĻžāϟ", + "notConnected": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āϚāϞāϛ⧇ āύāĻžāĨ¤ āĻšā§āϝāĻžāϟ āĻ•āϰāϤ⧇ āĻāϟāĻŋ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤", + "thinking": { + "step1": "āϚāĻŋāĻ¨ā§āϤāĻž āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "step2": "āφāĻĒāύāĻžāϰ āĻ…āύ⧁āϰ⧋āϧ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "step3": "āωāĻ¤ā§āϤāϰ āĻĒā§āϰāĻ¸ā§āϤ⧁āϤ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "step4": "āĻĒā§āϰāĻžāϝāĻŧ āĻļ⧇āώ..." + }, + "reasoningLabel": "āϝ⧁āĻ•ā§āϤāĻŋ", + "toolCallsLabel": "āϟ⧁āϞ āĻ•āϞ", + "toolCallExplanationLabel": "āĻ•āϞ āύ⧋āϟ", + "toolCallFunctionLabel": "āĻ•āϞ āϏāĻžāϰāĻžāĻ‚āĻļ", + "toolCallArgumentsLabel": "āφāĻ°ā§āϗ⧁āĻŽā§‡āĻ¨ā§āϟ", + "showAssistantDetails": "āϝ⧁āĻ•ā§āϤāĻŋ āĻāĻŦāĻ‚ āϟ⧁āϞ āĻ•āϞ", + "assistantDetailVisibility": { + "none": "āϕ⧋āύ⧋āϟāĻŋāχ āĻĻ⧇āĻ–āĻžāĻŦ⧇āύ āύāĻž", + "thought": "āĻļ⧁āϧ⧁ āϝ⧁āĻ•ā§āϤāĻŋ āĻĻ⧇āĻ–āĻžāύ", + "toolCalls": "āĻļ⧁āϧ⧁ āϟ⧁āϞ āĻ•āϞ āĻĻ⧇āĻ–āĻžāύ", + "all": "āωāĻ­āϝāĻŧāχ āĻĻ⧇āĻ–āĻžāύ" + }, + "toolLabel": "āϟ⧁āϞ", + "codeLabel": "āϕ⧋āĻĄ", + "copyMessage": "āĻŦāĻžāĻ°ā§āϤāĻž āĻ•āĻĒāĻŋ āĻ•āϰ⧁āύ", + "copyCode": "āϕ⧋āĻĄ āĻ•āĻĒāĻŋ āĻ•āϰ⧁āύ", + "copiedLabel": "āĻ•āĻĒāĻŋ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇", + "enableCodeWrap": "āϞāĻžāχāύ āĻ°â€ā§āϝāĻžāĻĒ āĻ•āϰ⧁āύ", + "disableCodeWrap": "āĻ°â€ā§āϝāĻžāĻĒ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻ•āϰ⧁āύ", + "expandCode": "āϕ⧋āĻĄ āĻĒā§āϰāϏāĻžāϰāĻŋāϤ āĻ•āϰ⧁āύ", + "collapseCode": "āϕ⧋āĻĄ āϏāĻ‚āϕ⧁āϚāĻŋāϤ āĻ•āϰ⧁āύ", + "history": "āχāϤāĻŋāĻšāĻžāϏ", + "noHistory": "āĻāĻ–āύāĻ“ āϕ⧋āύ⧋ āĻšā§āϝāĻžāϟ āχāϤāĻŋāĻšāĻžāϏ āύ⧇āχ", + "historyLoadFailed": "āĻšā§āϝāĻžāϟ āχāϤāĻŋāĻšāĻžāϏ āϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ", + "historyOpenFailed": "āĻāχ āĻšā§āϝāĻžāϟ āχāϤāĻŋāĻšāĻžāϏ āϖ⧁āϞāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ", + "loadingMore": "āφāϰāĻ“ āϞ⧋āĻĄ āĻšāĻšā§āϛ⧇...", + "deleteSession": "āϏ⧇āĻļāύ āĻŽā§āϛ⧁āύ", + "messagesCount": "{{count}}āϟāĻŋ āĻŦāĻžāĻ°ā§āϤāĻž", + "noModel": "āĻŽāĻĄā§‡āϞ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύ", + "inputDisabled": { + "notConnected": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āϚāϞāϛ⧇ āύāĻžāĨ¤ āĻšā§āϝāĻžāϟ āĻ•āϰāϤ⧇ āĻāϟāĻŋ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤", + "noModel": "āϕ⧋āύ⧋ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻĄā§‡āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āύ⧇āχāĨ¤ āĻāĻ•āϟāĻŋ āϏ⧇āϟ āĻ•āϰāϤ⧇ āĻŽāĻĄā§‡āϞ āĻĒ⧃āĻˇā§āĻ āĻžāϝāĻŧ āϝāĻžāύāĨ¤" + }, + "sendMessage": "āĻŦāĻžāĻ°ā§āϤāĻž āĻĒāĻžāĻ āĻžāύ", + "sendHint": "āĻĒāĻžāĻ āĻžāϤ⧇ Enter āϚāĻžāĻĒ⧁āύ\nāύāϤ⧁āύ āϞāĻžāχāύ⧇āϰ āϜāĻ¨ā§āϝ Shift + Enter", + "contextTitle": "āĻĒā§āϰāϏāĻ™ā§āĻ—", + "contextDetail": "āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āĻĻ⧇āϖ⧁āύ", + "attachImage": "āĻ›āĻŦāĻŋ āϝ⧋āĻ— āĻ•āϰ⧁āύ", + "removeImage": "āĻ›āĻŦāĻŋ āϏāϰāĻžāύ", + "uploadedImage": "āφāĻĒāϞ⧋āĻĄ āĻ•āϰāĻž āĻ›āĻŦāĻŋ", + "invalidImage": "\"{{name}}\" āĻāĻ•āϟāĻŋ āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ āĻ›āĻŦāĻŋ āĻĢāĻžāχāϞ āύāϝāĻŧāĨ¤", + "imageTooLarge": "\"{{name}}\" {{size}} āϏ⧀āĻŽāĻž āĻ…āϤāĻŋāĻ•ā§āϰāĻŽ āĻ•āϰ⧇āϛ⧇āĨ¤", + "imageReadFailed": "\"{{name}}\" āĻĒāĻĄāĻŧāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "empty": { + "noConfiguredModel": "āϕ⧋āύ⧋ āĻŽāĻĄā§‡āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āύ⧇āχ", + "noConfiguredModelDescription": "āĻšā§āϝāĻžāϟ āĻļ⧁āϰ⧁ āĻ•āϰāĻžāϰ āφāϗ⧇ āφāĻĒāύāĻžāϕ⧇ āĻ•āĻŽāĻĒāĻ•ā§āώ⧇ āĻāĻ•āϟāĻŋ AI āĻŽāĻĄā§‡āϞ API āϕ⧀ āĻĻāĻŋāϝāĻŧ⧇ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤", + "goToModels": "āĻŽāĻĄā§‡āϞ⧇ āϝāĻžāύ", + "noSelectedModel": "āϕ⧋āύ⧋ āĻŽāĻĄā§‡āϞ āύāĻŋāĻ°ā§āĻŦāĻžāϚāĻŋāϤ āύ⧇āχ", + "noSelectedModelDescription": "āφāĻĒāύāĻŋ āĻŽāĻĄā§‡āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰ⧇āϛ⧇āύ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϕ⧋āύ⧋āϟāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻšāĻŋāϏ⧇āĻŦ⧇ āϏ⧇āϟ āĻ•āϰāĻž āύ⧇āχāĨ¤ āĻšā§āϝāĻžāϟ āĻļ⧁āϰ⧁ āĻ•āϰāĻžāϰ āφāϗ⧇ āĻāĻ•āϟāĻŋ āĻŽāĻĄā§‡āϞ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύāĨ¤", + "notRunning": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āϚāϞāϛ⧇ āύāĻž", + "notRunningDescription": "āĻšā§āϝāĻžāϟ āĻļ⧁āϰ⧁ āĻ•āϰāϤ⧇ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āϏāĻžāĻ°ā§āĻ­āĻŋāϏ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤ āωāĻĒāϰ⧇āϰ āĻŦāĻžāϰ⧇ āĻ¸ā§āϟāĻžāĻ°ā§āϟ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻŦā§‹āϤāĻžāĻŽ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤" + }, + "modelGroup": { + "apikey": "API Key", + "oauth": "OAuth", + "local": "āϞ⧋āĻ•āĻžāϞ" + } + }, + "header": { + "logout": { + "tooltip": "āϏāĻžāχāύ āφāωāϟ", + "confirm": "āϏāĻžāχāύ āφāωāϟ", + "description": "āφāĻĒāύāĻŋ āĻ•āĻŋ āĻĄā§āϝāĻžāĻļāĻŦā§‹āĻ°ā§āĻĄ āĻĨ⧇āϕ⧇ āϏāĻžāχāύ āφāωāϟ āĻ•āϰāϤ⧇ āϚāĻžāύ?" + }, + "gateway": { + "stopDialog": { + "title": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āϏāĻžāĻ°ā§āĻ­āĻŋāϏ āĻŦāĻ¨ā§āϧ āĻ•āϰāĻŦ⧇āύ?", + "description": "āφāĻĒāύāĻŋ āĻ•āĻŋ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻŦāĻ¨ā§āϧ āĻ•āϰāϤ⧇ āϚāĻžāύ? āĻāϟāĻŋ āφāĻĒāύāĻžāϰ āϏāĻ•ā§āϰāĻŋāϝāĻŧ āĻšā§āϝāĻžāϟ āϏ⧇āĻļāύ āĻŦāĻŋāĻšā§āĻ›āĻŋāĻ¨ā§āύ āĻ•āϰāĻŦ⧇ āĻāĻŦāĻ‚ āχāύāĻĢāĻžāϰ⧇āĻ¨ā§āϏ āĻĨāĻžāĻŽāĻžāĻŦ⧇āĨ¤", + "confirm": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻŦāĻ¨ā§āϧ āĻ•āϰ⧁āύ" + }, + "action": { + "start": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύ", + "stop": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻŦāĻ¨ā§āϧ āĻ•āϰ⧁āύ", + "restart": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύ" + }, + "status": { + "starting": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āϚāĻžāϞ⧁ āĻšāĻšā§āϛ⧇...", + "restarting": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻšāĻšā§āϛ⧇...", + "stopping": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻŦāĻ¨ā§āϧ āĻšāĻšā§āϛ⧇..." + }, + "restartRequired": "āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ⧇āϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āĻšāϤ⧇ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻ•āϰāĻž āĻĒā§āϰāϝāĻŧā§‹āϜāύāĨ¤" + } + }, + "common": { + "cancel": "āĻŦāĻžāϤāĻŋāϞ", + "close": "āĻŦāĻ¨ā§āϧ āĻ•āϰ⧁āύ", + "save": "āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰ⧁āύ", + "saving": "āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "reset": "āϰāĻŋāϏ⧇āϟ", + "confirm": "āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧁āύ", + "fix": "āĻ āĻŋāĻ• āĻ•āϰ⧁āύ", + "saveChangesTitle": "āφāĻĒāύāĻžāϰ āĻ…āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āϰāϝāĻŧ⧇āϛ⧇", + "restartRequiredTitle": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻ•āϰāĻž āĻĒā§āϰāϝāĻŧā§‹āϜāύ", + "restartRequiredDesc": "āϏāĻ°ā§āĻŦāĻļ⧇āώ {{name}} āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āĻšāϤ⧇ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤" + }, + "labels": { + "loading": "āϞ⧋āĻĄ āĻšāĻšā§āϛ⧇..." + }, + "footer": { + "version": "āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖ", + "commit": "āĻ•āĻŽāĻŋāϟ", + "build": "āĻŦāĻŋāĻ˛ā§āĻĄ", + "version_unknown": "āĻ…āϜāĻžāύāĻž" + }, + "credentials": { + "description": "āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰāĻĻ⧇āϰ āϜāĻ¨ā§āϝ OAuth āĻāĻŦāĻ‚ āĻŸā§‹āϕ⧇āύ-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻ•ā§āϰ⧇āĻĄā§‡āύāĻļāĻŋāϝāĻŧāĻžāϞ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰ⧁āύāĨ¤", + "loading": "āĻ•ā§āϰ⧇āĻĄā§‡āύāĻļāĻŋāϝāĻŧāĻžāϞ āϞ⧋āĻĄ āĻšāĻšā§āϛ⧇...", + "providers": { + "openai": { + "description": "āĻŦā§āϰāĻžāωāϜāĻžāϰ OAuth, āĻĄāĻŋāĻ­āĻžāχāϏ āϕ⧋āĻĄ āĻāĻŦāĻ‚ āĻŸā§‹āϕ⧇āύ āϞāĻ—āχāύ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤" + }, + "anthropic": { + "description": "Claude āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ⧇āϰ āϜāĻ¨ā§āϝ āĻŸā§‹āϕ⧇āύ āϞāĻ—āχāύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇āĨ¤" + }, + "antigravity": { + "description": "Google Cloud Code Assist-āĻāϰ āϜāĻ¨ā§āϝ āĻŦā§āϰāĻžāωāϜāĻžāϰ OAuth āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇āĨ¤" + } + }, + "status": { + "connected": "āϏāĻ‚āϝ⧁āĻ•ā§āϤ", + "needsRefresh": "āϰāĻŋāĻĢā§āϰ⧇āĻļ āĻĒā§āϰāϝāĻŧā§‹āϜāύ", + "expired": "āĻŽā§‡āϝāĻŧāĻžāĻĻ āĻļ⧇āώ", + "notLoggedIn": "āϞāĻ— āχāύ āĻ•āϰāĻž āύ⧇āχ" + }, + "actions": { + "browser": "āĻŦā§āϰāĻžāωāϜāĻžāϰ OAuth", + "deviceCode": "āĻĄāĻŋāĻ­āĻžāχāϏ āϕ⧋āĻĄ", + "stopLoading": "āϞ⧋āĻĄāĻŋāĻ‚ āĻŦāĻ¨ā§āϧ āĻ•āϰ⧁āύ", + "saveToken": "āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰ⧁āύ", + "logout": "āϞāĻ—āφāωāϟ" + }, + "logoutDialog": { + "title": "āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻĨ⧇āϕ⧇ āϞāĻ—āφāωāϟ āĻ•āϰāĻŦ⧇āύ?", + "description": "āĻāϟāĻŋ {{provider}}-āĻāϰ āϜāĻ¨ā§āϝ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āφāĻĒāύāĻžāϰ āĻ•ā§āϰ⧇āĻĄā§‡āύāĻļāĻŋāϝāĻŧāĻžāϞ āĻŽā§āϛ⧇ āĻĢ⧇āϞāĻŦ⧇āĨ¤" + }, + "fields": { + "openaiToken": "OpenAI āĻŸā§‹āϕ⧇āύ", + "anthropicToken": "Anthropic āĻŸā§‹āϕ⧇āύ" + }, + "labels": { + "account": "āĻ…ā§āϝāĻžāĻ•āĻžāωāĻ¨ā§āϟ", + "email": "āχāĻŽā§‡āϞ", + "project": "āĻĒā§āϰāĻ•āĻ˛ā§āĻĒ" + }, + "errors": { + "loadFailed": "āĻ•ā§āϰ⧇āĻĄā§‡āύāĻļāĻŋāϝāĻŧāĻžāϞ āϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ", + "flowFailed": "āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāĻŖ āĻĒā§āϰāĻŦāĻžāĻš āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ", + "loginFailed": "āϞāĻ—āχāύ āĻŦā§āϝāĻ°ā§āĻĨ", + "logoutFailed": "āϞāĻ—āφāωāϟ āĻŦā§āϝāĻ°ā§āĻĨ", + "invalidBrowserResponse": "āĻŦā§āϰāĻžāωāϜāĻžāϰ āϞāĻ—āχāύ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āĻ…āĻŦ⧈āϧ", + "invalidDeviceResponse": "āĻĄāĻŋāĻ­āĻžāχāϏ āϕ⧋āĻĄ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āĻ…āĻŦ⧈āϧ", + "popupBlocked": "āύāϤ⧁āύ āĻŸā§āϝāĻžāĻŦ āĻ–ā§‹āϞāĻž āϝāĻžāĻšā§āϛ⧇ āύāĻžāĨ¤ āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ āĻĒāĻĒāφāĻĒ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύ āĻāĻŦāĻ‚ āφāĻŦāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύāĨ¤" + }, + "flow": { + "current": "āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāĻŖ āĻ…āĻŦāĻ¸ā§āĻĨāĻž", + "pending": "āĻ…āύ⧁āĻŽā§‹āĻĻāύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "success": "āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāĻŖ āϏāĻĢāϞ", + "error": "āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāĻŖ āĻŦā§āϝāĻ°ā§āĻĨ", + "expired": "āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāĻŖ āϏ⧇āĻļāύ⧇āϰ āĻŽā§‡āϝāĻŧāĻžāĻĻ āĻļ⧇āώ" + }, + "device": { + "title": "OpenAI āĻĄāĻŋāĻ­āĻžāχāϏ āϞāĻ—āχāύ", + "description": "āϝāĻžāϚāĻžāχāĻ•āϰāĻŖ āĻĒ⧃āĻˇā§āĻ āĻž āϖ⧁āϞ⧁āύ āĻāĻŦāĻ‚ āύāĻŋāĻšā§‡āϰ āϕ⧋āĻĄāϟāĻŋ āϞāĻŋāϖ⧁āύāĨ¤ āĻāχ āĻĒ⧃āĻˇā§āĻ āĻžāϟāĻŋ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āϰāĻŋāĻĢā§āϰ⧇āĻļ āĻšāĻŦ⧇āĨ¤", + "code": "āχāωāϜāĻžāϰ āϕ⧋āĻĄ", + "url": "āϝāĻžāϚāĻžāχāĻ•āϰāĻŖ URL", + "polling": "āϞāĻ—āχāύ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻĒā§‹āϞāĻŋāĻ‚ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "open": "āϝāĻžāϚāĻžāχāĻ•āϰāĻŖ āĻĒ⧃āĻˇā§āĻ āĻž āϖ⧁āϞ⧁āύ" + } + }, + "models": { + "description": "AI āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰāĻĻ⧇āϰ āϜāĻ¨ā§āϝ API āϕ⧀ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰ⧁āύāĨ¤ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āĻŽāĻĄā§‡āϞāϗ⧁āϞāĻŋ āĻšā§āϝāĻžāĻŸā§‡āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧāĨ¤", + "defaultChangeSuccess": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻĄā§‡āϞ āφāĻĒāĻĄā§‡āϟ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "unsavedPrompt": "āĻāχ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻāĻ–āύāĻ“ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻšāϝāĻŧāύāĻŋāĨ¤ āĻŽāĻĄā§‡āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ⧇ āϞāĻŋāĻ–āϤ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰ⧁āύāĨ¤", + "restartHint": "āĻŽāĻĄā§‡āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ⧇āϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻšāĻ“āϝāĻŧāĻžāϰ āĻĒāϰ⧇ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āĻšāϝāĻŧāĨ¤", + "loadError": "āĻŽāĻĄā§‡āϞ āϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ", + "retry": "āĻĒ⧁āύāϰāĻžāϝāĻŧ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύ", + "providerCatalogUnavailable": "āĻŦā§āϝāĻžāĻ•āĻāĻ¨ā§āĻĄ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻ•ā§āϝāĻžāϟāĻžāϞāĻ— āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤ āĻŽāĻĄā§‡āϞ API āϏāĻĢāϞāĻ­āĻžāĻŦ⧇ āϞ⧋āĻĄ āύāĻž āĻšāĻ“āϝāĻŧāĻž āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āύāϤ⧁āύ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧāĨ¤", + "noDefaultHintPrefix": "āĻāĻ–āύāĻ“ āϕ⧋āύ⧋ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻĄā§‡āϞ āϏ⧇āϟ āĻ•āϰāĻž āύ⧇āχāĨ¤ āϏ⧇āϟ āĻ•āϰāϤ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧁āύ", + "noDefaultHintSuffix": "āĻāϟāĻŋ āϏ⧇āϟ āĻ•āϰāϤ⧇āĨ¤", + "status": { + "available": "āωāĻĒāϞāĻŦā§āϧ", + "unconfigured": "āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āύ⧇āχ", + "unreachable": "āϏāĻžāĻ°ā§āĻ­āĻŋāϏ āĻ…āĻĒā§āϰāĻžāĻĒā§āϝ" + }, + "badge": { + "default": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ", + "virtual": "āĻ­āĻžāĻ°ā§āϚ⧁āϝāĻŧāĻžāϞ" + }, + "action": { + "edit": "API āϕ⧀ āϏāĻŽā§āĻĒāĻžāĻĻāύāĻž āĻ•āϰ⧁āύ", + "setDefault": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻšāĻŋāϏ⧇āĻŦ⧇ āϏ⧇āϟ āĻ•āϰ⧁āύ", + "delete": "āĻŽāĻĄā§‡āϞ āĻŽā§āϛ⧁āύ", + "setDefaultDisabled": { + "setting": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻšāĻŋāϏ⧇āĻŦ⧇ āϏ⧇āϟ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "unavailable": "āĻ…āύ⧁āĻĒāϞāĻŦā§āϧ āĻŽāĻĄā§‡āϞāϕ⧇ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻšāĻŋāϏ⧇āĻŦ⧇ āϏ⧇āϟ āĻ•āϰāĻž āϝāĻžāĻŦ⧇ āύāĻž", + "isDefault": "āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻĄā§‡āϞ", + "isVirtual": "āĻ­āĻžāĻ°ā§āϚ⧁āϝāĻŧāĻžāϞ āĻŽāĻĄā§‡āϞāϕ⧇ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻšāĻŋāϏ⧇āĻŦ⧇ āϏ⧇āϟ āĻ•āϰāĻž āϝāĻžāĻŦ⧇ āύāĻž", + "unsupportedProvider": "āĻāχ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰāϕ⧇ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻšā§āϝāĻžāϟ āĻŽāĻĄā§‡āϞ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āϝāĻžāĻŦ⧇ āύāĻžāĨ¤" + }, + "deleteDisabled": { + "isDefault": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻĄā§‡āϞ āĻŽā§āϛ⧇ āĻĢ⧇āϞāĻž āϝāĻžāĻŦ⧇ āύāĻž" + } + }, + "defaultOnSave": { + "label": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŽāĻĄā§‡āϞ", + "description": "āϏāĻ‚āϰāĻ•ā§āώāϪ⧇āϰ āĻĒāϰ⧇ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āĻāχ āĻŽāĻĄā§‡āϞāϟāĻŋāϕ⧇ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻšāĻŋāϏ⧇āĻŦ⧇ āϏ⧇āϟ āĻ•āϰ⧁āύāĨ¤", + "unsupportedProvider": "āĻāχ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰāϕ⧇ āĻŽāĻĄā§‡āϞ āϤāĻžāϞāĻŋāĻ•āĻžāϝāĻŧ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāĻž āϝāĻžāĻŦ⧇ āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻšā§āϝāĻžāϟ āĻŽāĻĄā§‡āϞ āĻšāĻŋāϏ⧇āĻŦ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āϝāĻžāĻŦ⧇ āύāĻžāĨ¤" + }, + "add": { + "button": "āĻŽāĻĄā§‡āϞ āϝ⧋āĻ— āĻ•āϰ⧁āύ", + "title": "āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻŽāĻĄā§‡āϞ āϝ⧋āĻ— āĻ•āϰ⧁āύ", + "description": "āĻāĻ•āϟāĻŋ OpenAI-āϏāĻžāĻŽāĻžā§āϜāĻ¸ā§āϝāĻĒā§‚āĻ°ā§āĻŖ āĻŦāĻž āύ⧇āϟāĻŋāĻ­ āĻŽāĻĄā§‡āϞ āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟ āϝ⧋āĻ— āĻ•āϰ⧁āύāĨ¤", + "modelName": "āĻŽāĻĄā§‡āϞ āĻāϞāĻŋāϝāĻŧāĻžāϏ", + "modelNamePlaceholder": "āϝ⧇āĻŽāύ my-gpt4", + "modelNameHint": "āĻ•āĻĨā§‹āĻĒāĻ•āĻĨāύ⧇ āĻāχ āĻŽāĻĄā§‡āϞāϟāĻŋ āϚāĻŋāĻšā§āύāĻŋāϤ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻāĻ•āϟāĻŋ āϛ⧋āϟ āύāĻžāĻŽāĨ¤", + "modelId": "āĻŽāĻĄā§‡āϞ āĻļāύāĻžāĻ•ā§āϤāĻ•āĻžāϰ⧀", + "modelIdPlaceholder": "āϝ⧇āĻŽāύ gpt-4o āĻŦāĻž openai/gpt-4o", + "modelIdHint": "āĻāχ āĻ•ā§āώ⧇āĻ¤ā§āϰāϟāĻŋ āύāĻŋāĻ°ā§āĻŦāĻžāϚāĻŋāϤ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ⧇āϰ āϜāĻ¨ā§āϝ canonical āĻŽāĻĄā§‡āϞ ID āĻšāĻŋāϏ⧇āĻŦ⧇ āĻŦāĻŋāĻŦ⧇āϚāĻŋāϤ āĻšāϝāĻŧāĨ¤ āϝāĻĻāĻŋ āĻļāύāĻžāĻ•ā§āϤāĻ•āĻžāϰ⧀āϤ⧇ āύāĻŋāĻœā§‡āχ āĻāĻ•āϟāĻŋ āĻ¸ā§āĻ˛ā§āϝāĻžāĻļ āĻĨāĻžāϕ⧇ (āωāĻĻāĻžāĻšāϰāĻŖāĻ¸ā§āĻŦāϰ⧂āĻĒ openai/gpt-5.4), āϤāĻŦ⧇ āĻāϟāĻŋ āĻ…āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāĻŋāϤ āϰāĻžāĻ–āĻž āĻšāϝāĻŧ āĻāĻŦāĻ‚ āφāĻŦāĻžāϰ āĻŦāĻŋāĻ­āĻ•ā§āϤ āĻ•āϰāĻž āĻšāϝāĻŧ āύāĻžāĨ¤", + "errorRequired": "āĻāχ āĻ•ā§āώ⧇āĻ¤ā§āϰāϟāĻŋ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧāĨ¤", + "errorDuplicateModelName": "āĻŽāĻĄā§‡āϞ āĻāϞāĻŋāϝāĻŧāĻžāϏ āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇ āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύāĨ¤ āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ āĻāĻ•āϟāĻŋ āĻ­āĻŋāĻ¨ā§āύ āύāĻžāĻŽ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤", + "saveError": "āĻŽāĻĄā§‡āϞ āϝ⧋āĻ— āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ", + "saveSuccess": "āĻŽāĻĄā§‡āϞ āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "confirm": "āĻŽāĻĄā§‡āϞ āϝ⧋āĻ— āĻ•āϰ⧁āύ" + }, + "delete": { + "title": "āĻŽāĻĄā§‡āϞ āĻŽā§āĻ›āĻŦ⧇āύ?", + "description": "\"{{name}}\" āφāĻĒāύāĻžāϰ āĻŽāĻĄā§‡āϞ āϤāĻžāϞāĻŋāĻ•āĻž āĻĨ⧇āϕ⧇ āĻ¸ā§āĻĨāĻžāϝāĻŧā§€āĻ­āĻžāĻŦ⧇ āϏāϰāĻžāύ⧋ āĻšāĻŦ⧇āĨ¤ āĻāϟāĻŋ āĻĒā§‚āĻ°ā§āĻŦāĻžāĻŦāĻ¸ā§āĻĨāĻžāϝāĻŧ āĻĢ⧇āϰāĻžāύ⧋ āϝāĻžāĻŦ⧇ āύāĻžāĨ¤", + "confirm": "āĻŽā§āϛ⧁āύ" + }, + "advanced": { + "toggle": "āωāĻ¨ā§āύāϤ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ" + }, + "field": { + "provider": "Provider", + "providerPlaceholder": "āĻāĻ•āϟāĻŋ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύ", + "providerHint": "āĻŦā§āϝāĻžāĻ•āĻāĻ¨ā§āĻĄ āĻ•ā§āϝāĻžāϟāĻžāϞāĻ— āĻĨ⧇āϕ⧇ āĻāĻ•āϟāĻŋ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύ; āĻŽāĻĄā§‡āϞ āĻļāύāĻžāĻ•ā§āϤāĻ•āĻžāϰ⧀āϕ⧇ āϏ⧇āχ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ⧇āϰ canonical āĻŽāĻĄā§‡āϞ ID āĻšāĻŋāϏ⧇āĻŦ⧇ āĻŦā§āϝāĻžāĻ–ā§āϝāĻž āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤", + "providerInvalid": "āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻ…āĻŦ⧈āϧāĨ¤ āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ āĻāĻ•āϟāĻŋ āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύāĨ¤", + "selectProviderFirst": "āĻĒā§āϰāĻĨāĻŽā§‡ āĻāĻ•āϟāĻŋ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύ", + "apiBase": "API Base URL", + "apiKey": "API Key", + "apiKeyPlaceholder": "āφāĻĒāύāĻžāϰ API āϕ⧀ āϞāĻŋāϖ⧁āύ", + "apiKeyPlaceholderSet": "āĻŦāĻŋāĻĻā§āϝāĻŽāĻžāύ āϕ⧀ āϰāĻžāĻ–āϤ⧇ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύ", + "proxy": "HTTP āĻĒā§āϰāĻ•ā§āϏāĻŋ", + "proxyHint": "āϐāĻšā§āĻ›āĻŋāĻ•āĨ¤ āϝ⧇āĻŽāύ http://127.0.0.1:7890", + "authMethod": "āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāĻŖ āĻĒāĻĻā§āϧāϤāĻŋ", + "authMethodHint": "āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāĻŖ āĻĒāĻĻā§āϧāϤāĻŋ: oauth, tokenāĨ¤ API āϕ⧀ āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāϪ⧇āϰ āϜāĻ¨ā§āϝ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύāĨ¤", + "authMethodManagedHint": "āĻāχ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ⧇āϰ āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāĻŖ āĻĒāĻĻā§āϧāϤāĻŋ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĻā§āĻŦāĻžāϰāĻž āĻĒāϰāĻŋāϚāĻžāϞāĻŋāϤāĨ¤", + "connectMode": "āϏāĻ‚āϝ⧋āĻ— āĻŽā§‹āĻĄ", + "connectModeHint": "CLI-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰāĻĻ⧇āϰ āϜāĻ¨ā§āϝ āϏāĻ‚āϝ⧋āĻ— āĻŽā§‹āĻĄ: stdio āĻŦāĻž grpcāĨ¤", + "workspace": "āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻĒāĻžāĻĨ", + "workspaceHint": "CLI-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰāĻĻ⧇āϰ āϜāĻ¨ā§āϝ āĻ•āĻžāĻœā§‡āϰ āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋ (āϝ⧇āĻŽāύ GitHub Copilot)āĨ¤", + "requestTimeout": "āĻ…āύ⧁āϰ⧋āϧ āϟāĻžāχāĻŽāφāωāϟ (āϏ⧇āϕ⧇āĻ¨ā§āĻĄ)", + "requestTimeoutHint": "āωāĻ¤ā§āϤāϰ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰāĻžāϰ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āϏ⧇āϕ⧇āĻ¨ā§āĻĄāĨ¤ 0 = āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤", + "rpm": "āϰ⧇āϟ āϏ⧀āĻŽāĻž (RPM)", + "rpmHint": "āĻĒā§āϰāϤāĻŋ āĻŽāĻŋāύāĻŋāĻŸā§‡ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āĻ…āύ⧁āϰ⧋āϧāĨ¤ 0 = āϕ⧋āύ⧋ āϏ⧀āĻŽāĻž āύ⧇āχāĨ¤", + "thinkingLevel": "āϚāĻŋāĻ¨ā§āϤāĻžāϰ āĻ¸ā§āϤāϰ", + "thinkingLevelHint": "thinking_level āĻŦāĻžāĻĻ āĻĻāĻŋāϤ⧇ āĻāĻŦāĻ‚ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύāĨ¤ āĻŽāĻžāύ: off, low, medium, high, xhigh, adaptiveāĨ¤", + "providerDefault": "āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻĄāĻŋāĻĢāĻ˛ā§āϟ", + "maxTokensField": "āĻŽā§āϝāĻžāĻ•ā§āϏ āĻŸā§‹āϕ⧇āύ āĻĢāĻŋāĻ˛ā§āĻĄ", + "maxTokensFieldHint": "āĻŽā§āϝāĻžāĻ•ā§āϏ āĻŸā§‹āϕ⧇āύ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āϰ⧋āϧ āĻ•ā§āώ⧇āĻ¤ā§āϰ⧇āϰ āύāĻžāĻŽ āĻ“āĻ­āĻžāϰāϰāĻžāχāĻĄ āĻ•āϰ⧁āύ, āϝ⧇āĻŽāύ max_completion_tokensāĨ¤", + "toolSchemaTransform": "āϟ⧁āϞ āĻ¸ā§āĻ•āĻŋāĻŽāĻž āĻŸā§āϰāĻžāĻ¨ā§āϏāĻĢāĻ°ā§āĻŽ", + "toolSchemaTransformHint": "āϟ⧁āϞ JSON āĻ¸ā§āĻ•āĻŋāĻŽāĻžāϰ āϜāĻ¨ā§āϝ āϐāĻšā§āĻ›āĻŋāĻ• āϏāĻžāĻŽāĻžā§āϜāĻ¸ā§āϝāϤāĻž āĻŸā§āϰāĻžāĻ¨ā§āϏāĻĢāĻ°ā§āĻŽāĨ¤ āύ⧇āϟāĻŋāĻ­ āφāϚāϰāϪ⧇āϰ āϜāĻ¨ā§āϝ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύāĨ¤ āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ āĻŽāĻžāύ: simpleāĨ¤", + "streamingEnabled": "āĻ¸ā§āĻŸā§āϰāĻŋāĻŽāĻŋāĻ‚ āφāωāϟāĻĒ⧁āϟ", + "streamingEnabledHint": "āĻāχ āĻŽāĻĄā§‡āϞ āĻāĻ¨ā§āĻŸā§āϰāĻŋāϕ⧇ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻ¸ā§āĻŸā§āϰāĻŋāĻŽāĻŋāĻ‚ āĻ…āύ⧁āϰ⧋āϧ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰāĻžāϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύāĨ¤ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻšā§āϝāĻžāύ⧇āϞ āĻ¸ā§āĻŸā§āϰāĻŋāĻŽāĻŋāĻ‚ āϏ⧁āχāϚāĻ“ āϏāĻ•ā§āώāĻŽ āĻĨāĻžāĻ•āϤ⧇ āĻšāĻŦ⧇āĨ¤", + "extraBody": "Extra Body", + "extraBodyHint": "āĻ…āύ⧁āϰ⧋āϧ āĻŦāĻĄāĻŋāϤ⧇ āχāύāĻœā§‡āĻ•ā§āϟ āĻ•āϰāĻžāϰ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ JSON āĻ•ā§āώ⧇āĻ¤ā§āϰ, āϝ⧇āĻŽāύ {\"reasoning_split\": true}āĨ¤", + "customHeaders": "Custom Headers", + "customHeadersHint": "āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻ…āύ⧁āϰ⧋āϧ⧇ āχāύāĻœā§‡āĻ•ā§āϟ āĻ•āϰāĻžāϰ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ HTTP āĻšā§‡āĻĄāĻžāϰ, āϝ⧇āĻŽāύ {\"X-Source\": \"coding-plan\"}āĨ¤", + "invalidJson": "āĻ…āĻŦ⧈āϧ JSON āĻĢāĻ°ā§āĻŽā§āϝāĻžāϟ" + }, + "edit": { + "title": "{{name}} āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰ⧁āύ", + "apiKeyHint": "āĻāĻ•āϟāĻŋ āϕ⧀ āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇ āϏ⧇āϟ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻ…āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāĻŋāϤ āϰāĻžāĻ–āϤ⧇ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύāĨ¤", + "oauthNote": "āĻāχ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ OAuth āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ — āϕ⧋āύ⧋ API āϕ⧀ āĻĒā§āϰāϝāĻŧā§‹āϜāύ āύ⧇āχāĨ¤", + "saveError": "āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ", + "saveSuccess": "āĻŽāĻĄā§‡āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻšāϝāĻŧ⧇āϛ⧇āĨ¤" + }, + "fetch": { + "title": "āωāĻĒāϞāĻŦā§āϧ āĻŽāĻĄā§‡āϞ āφāύ⧁āύ", + "description": "āφāĻĒāĻ¸ā§āĻŸā§āϰāĻŋāĻŽ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻĨ⧇āϕ⧇ āĻŽāĻĄā§‡āϞ āϤāĻžāϞāĻŋāĻ•āĻž āφāύ⧁āύāĨ¤", + "providerLabel": "āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ:", + "needApiKey": "āĻŽāĻĄā§‡āϞ āφāύāϤ⧇ āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ āĻĒā§āϰāĻĨāĻŽā§‡ āĻāĻ•āϟāĻŋ API āϕ⧀ āϞāĻŋāϖ⧁āύāĨ¤", + "fetching": "āĻŽāĻĄā§‡āϞ āφāύāĻž āĻšāĻšā§āϛ⧇...", + "retry": "āĻĒ⧁āύāϰāĻžāϝāĻŧ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύ", + "filterPlaceholder": "āĻŽāĻĄā§‡āϞ āĻĢāĻŋāĻ˛ā§āϟāĻžāϰ āĻ•āϰ⧁āύ...", + "found": "{{count}}āϟāĻŋ āĻŽāĻĄā§‡āϞ āĻĒāĻžāĻ“āϝāĻŧāĻž āϗ⧇āϛ⧇", + "found_plural": "{{count}}āϟāĻŋ āĻŽāĻĄā§‡āϞ āĻĒāĻžāĻ“āϝāĻŧāĻž āϗ⧇āϛ⧇", + "shown": "({{count}}āϟāĻŋ āĻĻ⧇āĻ–āĻžāύ⧋ āĻšāϝāĻŧ⧇āϛ⧇)", + "selectAll": "āϏāĻŦ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύ", + "deselectAll": "āϏāĻŦ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻŦāĻžāϤāĻŋāϞ āĻ•āϰ⧁āύ", + "fill": "{{count}}āϟāĻŋ āύāĻŋāĻ°ā§āĻŦāĻžāϚāĻŋāϤ āĻŽāĻĄā§‡āϞ āĻĒā§‚āϰāĻŖ āĻ•āϰ⧁āύ", + "fill_plural": "{{count}}āϟāĻŋ āύāĻŋāĻ°ā§āĻŦāĻžāϚāĻŋāϤ āĻŽāĻĄā§‡āϞ āĻĒā§‚āϰāĻŖ āĻ•āϰ⧁āύ", + "failed": "āĻŽāĻĄā§‡āϞ āφāύāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ" + }, + "catalog": { + "button": "āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻ•ā§āϝāĻžāϟāĻžāϞāĻ—", + "title": "āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻŽāĻĄā§‡āϞ āĻ•ā§āϝāĻžāϟāĻžāϞāĻ—", + "description": "āĻĒā§‚āĻ°ā§āĻŦ⧇ āφāύāĻž āĻŽāĻĄā§‡āϞ āϤāĻžāϞāĻŋāĻ•āĻž, āĻĒā§āϰāϤāĻŋ API āϕ⧀ āĻ…āύ⧁āϝāĻžāϝāĻŧā§€ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤāĨ¤ āφāĻĒāύāĻžāϰ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ⧇ āϝ⧋āĻ— āĻ•āϰāϤ⧇ āĻŽāĻĄā§‡āϞ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύāĨ¤", + "loading": "āĻ•ā§āϝāĻžāϟāĻžāϞāĻ— āϞ⧋āĻĄ āĻšāĻšā§āϛ⧇...", + "empty": "āĻāĻ–āύāĻ“ āϕ⧋āύ⧋ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻ•ā§āϝāĻžāϟāĻžāϞāĻ— āύ⧇āχāĨ¤ āĻāĻ•āϟāĻŋ āĻ•ā§āϝāĻžāϟāĻžāϞāĻ— āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāϤ⧇ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻĨ⧇āϕ⧇ āĻŽāĻĄā§‡āϞ āφāύ⧁āύāĨ¤", + "filterPlaceholder": "āĻŽāĻĄā§‡āϞ āĻĢāĻŋāĻ˛ā§āϟāĻžāϰ āĻ•āϰ⧁āύ...", + "models": "āĻŽāĻĄā§‡āϞ", + "fetchedAt": "āφāύāĻž āĻšāϝāĻŧ⧇āϛ⧇", + "delete": "āĻ•ā§āϝāĻžāϟāĻžāϞāĻ— āĻŽā§āϛ⧁āύ", + "refresh": "āφāĻĒāĻ¸ā§āĻŸā§āϰāĻŋāĻŽ āĻĨ⧇āϕ⧇ āϰāĻŋāĻĢā§āϰ⧇āĻļ āĻ•āϰ⧁āύ", + "found": "{{count}}āϟāĻŋ āĻŽāĻĄā§‡āϞ āĻĒāĻžāĻ“āϝāĻŧāĻž āϗ⧇āϛ⧇", + "found_plural": "{{count}}āϟāĻŋ āĻŽāĻĄā§‡āϞ āĻĒāĻžāĻ“āϝāĻŧāĻž āϗ⧇āϛ⧇", + "selectAll": "āϏāĻŦ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύ", + "deselectAll": "āϏāĻŦ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻŦāĻžāϤāĻŋāϞ āĻ•āϰ⧁āύ", + "addSelected": "{{count}}āϟāĻŋ āύāĻŋāĻ°ā§āĻŦāĻžāϚāĻŋāϤ āϝ⧋āĻ— āĻ•āϰ⧁āύ", + "addSuccess": "āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ⧇ {{count}}āϟāĻŋ āĻŽāĻĄā§‡āϞ āϝ⧋āĻ— āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "needApiKey": "āĻāχ āĻŽāĻĄā§‡āϞāϗ⧁āϞāĻŋāϰ āĻāĻ•āϟāĻŋ API āϕ⧀ āĻĒā§āϰāϝāĻŧā§‹āϜāύāĨ¤ āφāĻŽāĻĻāĻžāύāĻŋāϰ āĻĒāϰ⧇ āφāĻĒāύāĻžāϕ⧇ āĻ•ā§āϰ⧇āĻĄā§‡āύāĻļāĻŋāϝāĻŧāĻžāϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤" + }, + "test": { + "title": "āĻŽāĻĄā§‡āϞ āϏāĻ‚āϝ⧋āĻ— āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰ⧁āύ", + "description": "āϝāĻžāϚāĻžāχ āĻ•āϰ⧁āύ āϝ⧇ āĻŽāĻĄā§‡āϞ āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟāϟāĻŋ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏāϝ⧋āĻ—ā§āϝ āĻāĻŦāĻ‚ āϏāĻ āĻŋāĻ•āĻ­āĻžāĻŦ⧇ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "modelLabel": "āĻŽāĻĄā§‡āϞ:", + "identifierLabel": "āĻļāύāĻžāĻ•ā§āϤāĻ•āĻžāϰ⧀:", + "endpointLabel": "āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟ:", + "testConnection": "āϏāĻ‚āϝ⧋āĻ— āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰ⧁āύ", + "testing": "āϏāĻ‚āϝ⧋āĻ— āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "success": "āϏāĻ‚āϝ⧋āĻ— āϏāĻĢāϞ", + "responseTime": "āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āϏāĻŽāϝāĻŧ: {{ms}}ms", + "failed": "āϏāĻ‚āϝ⧋āĻ— āĻŦā§āϝāĻ°ā§āĻĨ", + "status": "āĻ¸ā§āĻŸā§āϝāĻžāϟāĻžāϏ: {{status}}", + "testFailed": "āĻĒāϰ⧀āĻ•ā§āώāĻž āĻŦā§āϝāĻ°ā§āĻĨ", + "testAgain": "āφāĻŦāĻžāϰ āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰ⧁āύ" + }, + "validation": { + "whitespace": "āĻŽāĻĄā§‡āϞ āĻļāύāĻžāĻ•ā§āϤāĻ•āĻžāϰ⧀āϤ⧇ āĻ¸ā§āĻĒ⧇āϏ āĻĨāĻžāĻ•āϤ⧇ āĻĒāĻžāϰāĻŦ⧇ āύāĻž", + "leadingSlash": "/ āĻĻāĻŋāϝāĻŧ⧇ āĻļ⧁āϰ⧁ āĻšāĻ“āϝāĻŧāĻž āωāϚāĻŋāϤ āύāϝāĻŧ", + "consecutiveSlash": "āĻĒāϰāĻĒāϰ / āĻĨāĻžāĻ•āĻž āωāϚāĻŋāϤ āύāϝāĻŧ", + "useProvider": "āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻšāĻŋāϏ⧇āĻŦ⧇ \"{{provider}}\" āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšāĻŦ⧇", + "defaultToOpenAI": "āϕ⧋āύ⧋ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āύāĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āϟ āĻ•āϰāĻž āύ⧇āχ, āĻĄāĻŋāĻĢāĻ˛ā§āϟ OpenAI", + "emptyModel": "āĻŽāĻĄā§‡āϞ⧇āϰ āύāĻžāĻŽ āĻ–āĻžāϞāĻŋ āĻšāϤ⧇ āĻĒāĻžāϰāĻŦ⧇ āύāĻž", + "shouldUse": "\"{{provider}}\" āĻāϰ \"{{alias}}\" āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āωāϚāĻŋāϤ", + "didYouMean": "āφāĻĒāύāĻŋ āĻ•āĻŋ \"{{closest}}\" āĻŦā§‹āĻāĻžāϤ⧇ āĻšā§‡āϝāĻŧ⧇āϛ⧇āύ?", + "unknownProvider": "āĻ…āϜāĻžāύāĻž āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ \"{{provider}}\"", + "parsed": "āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ={{provider}}, āĻŽāĻĄā§‡āϞ={{model}}" + }, + "combobox": { + "selectProvider": "āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύ...", + "searchProvider": "āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰ⧁āύ...", + "noProvider": "āϕ⧋āύ⧋ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻĒāĻžāĻ“āϝāĻŧāĻž āϝāĻžāϝāĻŧāύāĻŋāĨ¤", + "noCatalog": "āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻ•ā§āϝāĻžāϟāĻžāϞāĻ— āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤", + "local": "āϞ⧋āĻ•āĻžāϞ" + } + }, + "channels": { + "loadError": "āĻšā§āϝāĻžāύ⧇āϞ āϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ", + "name": { + "telegram": "Telegram", + "discord": "Discord", + "slack": "Slack", + "feishu": "āĻĢ⧇āχāĻļ⧁", + "dingtalk": "āĻĄāĻŋāĻ‚āϟāĻ•", + "line": "LINE", + "qq": "QQ", + "onebot": "OneBot", + "wecom": "āωāχāĻ•āĻŽ", + "whatsapp": "WhatsApp", + "whatsapp_native": "WhatsApp Native", + "pico": "Web", + "maixcam": "MaixCam", + "matrix": "Matrix", + "irc": "IRC", + "weixin": "āωāχāĻšā§āϝāĻžāϟ", + "mqtt": "MQTT" + }, + "weixin": { + "bindTitle": "WeChat āĻ…ā§āϝāĻžāĻ•āĻžāωāĻ¨ā§āϟ āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚", + "bindDesc": "āφāĻĒāύāĻžāϰ āĻŦā§āϝāĻ•ā§āϤāĻŋāĻ—āϤ āĻ…ā§āϝāĻžāĻ•āĻžāωāĻ¨ā§āϟ āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰāϤ⧇ WeChat āĻĻāĻŋāϝāĻŧ⧇ QR āϕ⧋āĻĄ āĻ¸ā§āĻ•ā§āϝāĻžāύ āĻ•āϰ⧁āύāĨ¤", + "bind": "WeChat āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰ⧁āύ", + "rebind": "āĻĒ⧁āύāϰāĻžāϝāĻŧ āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰ⧁āύ", + "bound": "WeChat āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇", + "notBound": "WeChat āĻ…ā§āϝāĻžāĻ•āĻžāωāĻ¨ā§āϟ āĻāĻ–āύāĻ“ āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰāĻž āĻšāϝāĻŧāύāĻŋāĨ¤", + "generating": "QR āϕ⧋āĻĄ āϤ⧈āϰāĻŋ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "scanHint": "WeChat āϖ⧁āϞ⧁āύ āĻāĻŦāĻ‚ QR āϕ⧋āĻĄ āĻ¸ā§āĻ•ā§āϝāĻžāύ āĻ•āϰ⧁āύ", + "scanned": "āĻ¸ā§āĻ•ā§āϝāĻžāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇ — āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ WeChat-āĻ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧁āύ", + "expired": "QR āϕ⧋āĻĄā§‡āϰ āĻŽā§‡āϝāĻŧāĻžāĻĻ āĻļ⧇āώ", + "retry": "āφāĻŦāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύ", + "refresh": "QR āϰāĻŋāĻĢā§āϰ⧇āĻļ āĻ•āϰ⧁āύ", + "errorGeneric": "āĻāĻ•āϟāĻŋ āĻ¤ā§āϰ⧁āϟāĻŋ āϘāĻŸā§‡āϛ⧇āĨ¤ āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ āφāĻŦāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύāĨ¤" + }, + "wecom": { + "bindTitle": "WeCom āĻŦāĻžāχāĻ¨ā§āĻĄāĻŋāĻ‚", + "bindDesc": "āφāĻĒāύāĻžāϰ AI āĻŦāϟ āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰāϤ⧇ WeCom āĻĻāĻŋāϝāĻŧ⧇ QR āϕ⧋āĻĄ āĻ¸ā§āĻ•ā§āϝāĻžāύ āĻ•āϰ⧁āύāĨ¤", + "bind": "WeCom āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰ⧁āύ", + "rebind": "āĻĒ⧁āύāϰāĻžāϝāĻŧ āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰ⧁āύ", + "bound": "WeCom āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇", + "notBound": "WeCom AI āĻŦāϟ āĻāĻ–āύāĻ“ āĻŦāĻžāχāĻ¨ā§āĻĄ āĻ•āϰāĻž āĻšāϝāĻŧāύāĻŋāĨ¤", + "generating": "QR āϕ⧋āĻĄ āϤ⧈āϰāĻŋ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "scanHint": "WeCom āϖ⧁āϞ⧁āύ āĻāĻŦāĻ‚ QR āϕ⧋āĻĄ āĻ¸ā§āĻ•ā§āϝāĻžāύ āĻ•āϰ⧁āύ", + "scanned": "āĻ¸ā§āĻ•ā§āϝāĻžāύ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇, āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ WeCom-āĻ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧁āύ", + "expired": "QR āϕ⧋āĻĄā§‡āϰ āĻŽā§‡āϝāĻŧāĻžāĻĻ āĻļ⧇āώ", + "retry": "āφāĻŦāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύ", + "refresh": "QR āϰāĻŋāĻĢā§āϰ⧇āĻļ āĻ•āϰ⧁āύ", + "errorGeneric": "āĻāĻ•āϟāĻŋ āĻ¤ā§āϰ⧁āϟāĻŋ āϘāĻŸā§‡āϛ⧇āĨ¤ āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ āφāĻŦāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύāĨ¤" + }, + "field": { + "token": "Bot Token", + "tokenPlaceholder": "āĻŦāϟ āĻŸā§‹āϕ⧇āύ āϞāĻŋāϖ⧁āύ", + "botToken": "Bot Token", + "appToken": "App Token", + "appId": "App ID", + "appSecret": "App Secret", + "verificationToken": "Verification Token", + "encryptKey": "Encrypt Key", + "baseUrl": "API Base URL", + "proxy": "HTTP āĻĒā§āϰāĻ•ā§āϏāĻŋ", + "mentionOnly": "āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰāϞ⧇", + "typingEnabled": "āϟāĻžāχāĻĒāĻŋāĻ‚ āϏ⧂āϚāĻ•", + "placeholderEnabled": "āĻĒā§āϞ⧇āϏāĻšā§‹āĻ˛ā§āĻĄāĻžāϰ āĻŦāĻžāĻ°ā§āϤāĻž", + "placeholderText": "āĻĒā§āϞ⧇āϏāĻšā§‹āĻ˛ā§āĻĄāĻžāϰ āĻŸā§‡āĻ•ā§āϏāϟ", + "streamingEnabled": "āĻ¸ā§āĻŸā§āϰāĻŋāĻŽāĻŋāĻ‚ āφāωāϟāĻĒ⧁āϟ", + "streamingThrottleSeconds": "āφāĻĒāĻĄā§‡āϟ āĻŦā§āϝāĻŦāϧāĻžāύ (āϏ⧇āϕ⧇āĻ¨ā§āĻĄ)", + "streamingMinGrowthChars": "āĻ¨ā§āϝ⧂āύāϤāĻŽ āĻŦ⧃āĻĻā§āϧāĻŋāϰ āĻ…āĻ•ā§āώāϰ", + "groupTriggerMentionOnly": "āĻ—ā§āϰ⧁āĻĒ⧇ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āωāĻ˛ā§āϞ⧇āĻ–", + "groupTriggerPrefixes": "āĻ—ā§āϰ⧁āĻĒ āĻŸā§āϰāĻŋāĻ—āĻžāϰ āĻĒā§āϰāĻŋāĻĢāĻŋāĻ•ā§āϏ", + "groupTriggerPrefixesPlaceholder": "āϝ⧇āĻŽāύ /, !, ?", + "randomReactionEmoji": "āĻ°â€ā§āϝāĻžāĻ¨ā§āĻĄāĻŽ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āχāĻŽā§‹āϜāĻŋ", + "randomReactionEmojiPlaceholder": "āϝ⧇āĻŽāύ THUMBSUP, HEART, SMILE", + "isLark": "Lark (āφāĻ¨ā§āϤāĻ°ā§āϜāĻžāϤāĻŋāĻ•)", + "allowFrom": "āϝāĻžāĻĻ⧇āϰ āĻĨ⧇āϕ⧇ āĻ…āύ⧁āĻŽāϤāĻŋ", + "allowFromPlaceholder": "āϝ⧇āĻŽāύ 123456, 789012", + "allowOrigins": "āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āĻ…āϰāĻŋāϜāĻŋāύ", + "allowOriginsPlaceholder": "āϝ⧇āĻŽāύ https://example.com, http://localhost:5173", + "removeListItem": "{{value}} āϏāϰāĻžāύ", + "secretPlaceholder": "āϏāĻŋāĻ•ā§āϰ⧇āϟ āϞāĻŋāϖ⧁āύ", + "secretHintSet": "āĻāĻ•āϟāĻŋ āĻŽāĻžāύ āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇ āϏ⧇āϟ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻ…āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāĻŋāϤ āϰāĻžāĻ–āϤ⧇ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύāĨ¤" + }, + "page": { + "notFound": "āĻšā§āϝāĻžāύ⧇āϞ \"{{name}}\" āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ āύāϝāĻŧāĨ¤", + "saveSuccess": "āĻšā§āϝāĻžāύ⧇āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "saveError": "āĻšā§āϝāĻžāύ⧇āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨ", + "savePrompt": "āĻāχ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻāĻ–āύāĻ“ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻšāϝāĻŧāύāĻŋāĨ¤ āĻšā§āϝāĻžāύ⧇āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ⧇ āϞāĻŋāĻ–āϤ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰ⧁āύāĨ¤", + "docLink": "āĻĄāϕ⧁āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāύ", + "enableLabel": "āĻšā§āϝāĻžāύ⧇āϞ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ", + "restartRequiredTitle": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻ•āϰāĻž āĻĒā§āϰāϝāĻŧā§‹āϜāύ", + "restartRequiredDesc": "āϏāĻ°ā§āĻŦāĻļ⧇āώ {{name}} āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āĻšāϤ⧇ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤" + }, + "form": { + "desc": { + "token": "āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ API-āĻāϰ āϏāĻžāĻĨ⧇ āϏāĻ‚āϝ⧋āϗ⧇āϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻŦāϟ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ āĻŸā§‹āϕ⧇āύāĨ¤", + "botToken": "āĻŦāĻžāĻ°ā§āϤāĻž āĻĒāĻžāĻ āĻžāϤ⧇ āĻāĻŦāĻ‚ āĻ—ā§āϰāĻšāĻŖ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻŦāϟ āĻŸā§‹āϕ⧇āύāĨ¤", + "appToken": "Socket Mode āϏāĻ‚āϝ⧋āϗ⧇āϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻ…ā§āϝāĻžāĻĒ āĻŸā§‹āϕ⧇āύāĨ¤", + "appId": "āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāϪ⧇āϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻ…āύāĻ¨ā§āϝ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ IDāĨ¤", + "appSecret": "āĻ¸ā§āĻŦāĻžāĻ•ā§āώāϰ āĻāĻŦāĻ‚ āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāϪ⧇āϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āϏāĻŋāĻ•ā§āϰ⧇āϟāĨ¤", + "verificationToken": "āχāϭ⧇āĻ¨ā§āϟ āĻ•āϞāĻŦā§āϝāĻžāϕ⧇āϰ āϜāĻ¨ā§āϝ āϝāĻžāϚāĻžāχāĻ•āϰāĻŖ āĻŸā§‹āϕ⧇āύāĨ¤", + "encryptKey": "āĻ•āϞāĻŦā§āϝāĻžāĻ• āĻĒ⧇āϞ⧋āĻĄ āĻĄāĻŋāĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻāύāĻ•ā§āϰāĻŋāĻĒāĻļāύ āϕ⧀āĨ¤", + "baseUrl": "āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ API āĻŦ⧇āϏ URLāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āϟāϰ⧂āĻĒ⧇ āĻ…āĻĢāĻŋāϏāĻŋāϝāĻŧāĻžāϞ āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧāĨ¤", + "proxy": "āĻŦāĻšāĻŋāĻ°ā§āĻ—āĻžāĻŽā§€ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ⧇āϰ āϜāĻ¨ā§āϝ HTTP āĻĒā§āϰāĻ•ā§āϏāĻŋ āĻ āĻŋāĻ•āĻžāύāĻžāĨ¤", + "mentionOnly": "āĻ—ā§āϰ⧁āĻĒ āĻšā§āϝāĻžāĻŸā§‡ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻŦāϟāϕ⧇ āĻ¸ā§āĻĒāĻˇā§āϟāĻ­āĻžāĻŦ⧇ āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰāϞ⧇ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āϜāĻžāύāĻžāύāĨ¤", + "typingEnabled": "āϏāĻšāĻ•āĻžāϰ⧀ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āϟāĻžāχāĻĒāĻŋāĻ‚ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻžāϏ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ āĻ•āϰ⧁āύāĨ¤", + "placeholderEnabled": "āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āϤ āωāĻ¤ā§āϤāϰ āĻĒāĻžāĻ āĻžāύ⧋āϰ āφāϗ⧇ āĻ…āĻ¸ā§āĻĨāĻžāϝāĻŧā§€ āĻĒā§āϞ⧇āϏāĻšā§‹āĻ˛ā§āĻĄāĻžāϰ āĻŦāĻžāĻ°ā§āϤāĻž āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύāĨ¤", + "streamingEnabled": "āĻāχ āĻšā§āϝāĻžāύ⧇āϞāϕ⧇ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻ¸ā§āĻŸā§āϰāĻŋāĻŽāĻŋāĻ‚ āφāωāϟāĻĒ⧁āϟ āĻĒā§āϰāĻĻāĻ°ā§āĻļāύ⧇āϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύāĨ¤ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻŽāĻĄā§‡āϞ āĻāĻ¨ā§āĻŸā§āϰāĻŋ āĻ¸ā§āĻŸā§āϰāĻŋāĻŽāĻŋāĻ‚ āϏ⧁āχāϚāĻ“ āϏāĻ•ā§āώāĻŽ āĻĨāĻžāĻ•āϤ⧇ āĻšāĻŦ⧇āĨ¤", + "streamingThrottleSeconds": "āĻŽāĻ§ā§āϝāĻŦāĻ°ā§āϤ⧀ āĻ¸ā§āĻŸā§āϰāĻŋāĻŽāĻŋāĻ‚ āφāĻĒāĻĄā§‡āϟāϗ⧁āϞāĻŋāϰ āĻŽāĻ§ā§āϝ⧇ āĻ¨ā§āϝ⧂āύāϤāĻŽ āĻŦā§āϝāĻŦāϧāĻžāύāĨ¤ 0 āĻŽāĻžāύ⧇ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤ āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āϤ āωāĻ¤ā§āϤāϰ⧇ āĻĨā§āϰāϟāϞ āĻ•āϰāĻž āĻšāϝāĻŧ āύāĻžāĨ¤", + "streamingMinGrowthChars": "āĻ…āĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻŽāĻ§ā§āϝāĻŦāĻ°ā§āϤ⧀ āĻ¸ā§āĻŸā§āϰāĻŋāĻŽāĻŋāĻ‚ āφāĻĒāĻĄā§‡āϟ āĻĒāĻžāĻ āĻžāύ⧋āϰ āφāϗ⧇ āĻ¨ā§āϝ⧂āύāϤāĻŽ āĻŸā§‡āĻ•ā§āϏāϟ āĻŦ⧃āĻĻā§āϧāĻŋāĨ¤ 0 āĻŽāĻžāύ⧇ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤ āĻšā§‚āĻĄāĻŧāĻžāĻ¨ā§āϤ āωāĻ¤ā§āϤāϰ⧇ āĻĨā§āϰāϟāϞ āĻ•āϰāĻž āĻšāϝāĻŧ āύāĻžāĨ¤", + "groupTriggerMentionOnly": "āĻ—ā§āϰ⧁āĻĒ āĻšā§āϝāĻžāĻŸā§‡, āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻŦāϟāϕ⧇ āωāĻ˛ā§āϞ⧇āĻ– āĻ•āϰāϞ⧇āχ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āϜāĻžāύāĻžāύāĨ¤", + "groupTriggerPrefixes": "āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻ—ā§āϰ⧁āĻĒ-āĻšā§āϝāĻžāϟ āĻŸā§āϰāĻŋāĻ—āĻžāϰ āĻĒā§āϰāĻŋāĻĢāĻŋāĻ•ā§āϏāĨ¤ āĻāϕ⧇ āĻāϕ⧇ āφāχāĻŸā§‡āĻŽ āϝ⧋āĻ— āĻ•āϰ⧁āύ, āĻ…āĻĨāĻŦāĻž āĻāĻ•āĻžāϧāĻŋāĻ• āĻŽāĻžāύ āĻāĻ•āĻŦāĻžāϰ⧇ āĻĒ⧇āĻ¸ā§āϟ āĻ•āϰ⧁āύāĨ¤", + "randomReactionEmoji": "PicoClaw āĻĒā§āϰāĻžāĻĒā§āϤāĻŋ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āĻŦāĻžāĻ°ā§āϤāĻžāϝāĻŧ āχāĻŽā§‹āϜāĻŋ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āϝ⧋āĻ— āĻ•āϰ⧇āĨ¤ āωāĻĻāĻžāĻšāϰāĻŖ: \"THUMBSUP\", \"HEART\", \"SMILE\"āĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āϟ \"Pin\" āχāĻŽā§‹āϜāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύāĨ¤", + "isLark": "Feishu āĻĄā§‹āĻŽā§‡āχāύ (open.feishu.cn) āĻāϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤ⧇ Lark āφāĻ¨ā§āϤāĻ°ā§āϜāĻžāϤāĻŋāĻ• āĻĄā§‹āĻŽā§‡āχāύ (open.larksuite.com) āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤", + "allowFrom": "āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀ āĻŦāĻž āĻ—ā§āϰ⧁āĻĒ IDāĨ¤ āĻāϕ⧇ āĻāϕ⧇ āφāχāĻŸā§‡āĻŽ āϝ⧋āĻ— āĻ•āϰ⧁āύ, āĻ…āĻĨāĻŦāĻž āĻāĻ•āĻžāϧāĻŋāĻ• āĻŽāĻžāύ āĻāĻ•āĻŦāĻžāϰ⧇ āĻĒ⧇āĻ¸ā§āϟ āĻ•āϰ⧁āύāĨ¤", + "allowOrigins": "āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āĻ…āϰāĻŋāϜāĻŋāύ āĻĄā§‹āĻŽā§‡āχāύāĨ¤ āĻāϕ⧇ āĻāϕ⧇ āφāχāĻŸā§‡āĻŽ āϝ⧋āĻ— āĻ•āϰ⧁āύ, āĻ…āĻĨāĻŦāĻž āĻāĻ•āĻžāϧāĻŋāĻ• āĻŽāĻžāύ āĻāĻ•āĻŦāĻžāϰ⧇ āĻĒ⧇āĻ¸ā§āϟ āĻ•āϰ⧁āύāĨ¤", + "wsUrl": "WebSocket āϏāĻžāĻ°ā§āĻ­āĻŋāϏ URLāĨ¤", + "reconnectInterval": "āĻŦāĻŋāĻšā§āĻ›āĻŋāĻ¨ā§āύ āĻšāĻ“āϝāĻŧāĻžāϰ āĻĒāϰ⧇ āĻĒ⧁āύāσāϏāĻ‚āϝ⧋āϗ⧇āϰ āĻŦā§āϝāĻŦāϧāĻžāύ (āϏ⧇āϕ⧇āĻ¨ā§āĻĄ)āĨ¤", + "bridgeUrl": "āĻŦā§āϰāĻŋāϜ āϏāĻžāĻ°ā§āĻ­āĻŋāϏ URLāĨ¤", + "sessionStorePath": "āϏ⧇āĻļāύ āĻ¸ā§āĻŸā§‹āϰ⧇āĻœā§‡āϰ āϜāĻ¨ā§āϝ āϞ⧋āĻ•āĻžāϞ āĻĒāĻžāĻĨāĨ¤", + "useNative": "āύ⧇āϟāĻŋāĻ­ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ āĻŽā§‹āĻĄ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ⧇āύ āĻ•āĻŋāύāĻžāĨ¤", + "host": "āϏāĻžāĻ°ā§āĻ­āĻŋāϏ āĻšā§‹āĻ¸ā§āϟ āĻ āĻŋāĻ•āĻžāύāĻžāĨ¤", + "port": "āϏāĻžāĻ°ā§āĻ­āĻŋāϏ āĻĒā§‹āĻ°ā§āϟāĨ¤", + "homeserver": "Matrix āĻšā§‹āĻŽāϏāĻžāĻ°ā§āĻ­āĻžāϰ URLāĨ¤", + "userId": "āĻ…ā§āϝāĻžāĻ•āĻžāωāĻ¨ā§āϟ āχāωāϜāĻžāϰ IDāĨ¤", + "deviceId": "āĻĄāĻŋāĻ­āĻžāχāϏ IDāĨ¤", + "joinOnInvite": "āφāĻŽāĻ¨ā§āĻ¤ā§āϰāĻŋāϤ āĻšāϞ⧇ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āϰ⧁āĻŽā§‡ āϝ⧋āĻ— āĻĻāĻŋāύāĨ¤", + "clientId": "āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽ āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāϪ⧇āϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ IDāĨ¤", + "corpId": "āĻāĻ¨ā§āϟāĻžāϰāĻĒā§āϰāĻžāχāϜ Corp IDāĨ¤", + "agentId": "āĻāĻ¨ā§āϟāĻžāϰāĻĒā§āϰāĻžāχāϜ āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āĻāĻœā§‡āĻ¨ā§āϟ IDāĨ¤", + "webhookUrl": "āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ webhook URLāĨ¤", + "webhookHost": "Webhook āĻļā§‹āύāĻžāϰ āĻšā§‹āĻ¸ā§āϟāĨ¤", + "webhookPort": "Webhook āĻļā§‹āύāĻžāϰ āĻĒā§‹āĻ°ā§āϟāĨ¤", + "webhookPath": "Webhook āϰ⧁āϟ āĻĒāĻžāĻĨāĨ¤", + "replyTimeout": "āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ āωāĻ¤ā§āϤāϰ⧇āϰ āϟāĻžāχāĻŽāφāωāϟāĨ¤", + "maxSteps": "āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻ•āϰāĻŖ āϧāĻžāĻĒ⧇āϰ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āϏāĻ‚āĻ–ā§āϝāĻžāĨ¤", + "welcomeMessage": "āύāϤ⧁āύ āϏ⧇āĻļāύ⧇āϰ āϜāĻ¨ā§āϝ āĻ¸ā§āĻŦāĻžāĻ—āϤ āĻŦāĻžāĻ°ā§āϤāĻžāϰ āĻŦāĻŋāώāϝāĻŧāĻŦāĻ¸ā§āϤ⧁āĨ¤", + "allowTokenQuery": "URL āϕ⧋āϝāĻŧ⧇āϰāĻŋ āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ⧇ āĻŸā§‹āϕ⧇āύ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύāĨ¤", + "pingInterval": "āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ āϏāĻ‚āϝ⧋āĻ— āĻšāĻžāĻ°ā§āϟāĻŦāĻŋāϟ āĻŦā§āϝāĻŦāϧāĻžāύāĨ¤", + "readTimeout": "āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ āϰāĻŋāĻĄ āϟāĻžāχāĻŽāφāωāϟāĨ¤", + "writeTimeout": "āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ āϰāĻžāχāϟ āϟāĻžāχāĻŽāφāωāϟāĨ¤", + "maxConnections": "āĻāĻ•āϝ⧋āϗ⧇ āϏāĻ‚āϝ⧋āϗ⧇āϰ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āϏāĻ‚āĻ–ā§āϝāĻžāĨ¤", + "server": "IRC āϏāĻžāĻ°ā§āĻ­āĻžāϰ āĻ āĻŋāĻ•āĻžāύāĻžāĨ¤", + "tls": "TLS āϏāĻ•ā§āώāĻŽ āĻ•āϰāĻŦ⧇āύ āĻ•āĻŋāύāĻžāĨ¤", + "nick": "āĻŦāϟ āĻĄāĻžāĻ•āύāĻžāĻŽāĨ¤", + "user": "IRC āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āύāĻžāĻŽāĨ¤", + "realName": "āĻĒā§āϰāĻĻāĻ°ā§āĻļāĻŋāϤ āφāϏāϞ āύāĻžāĻŽāĨ¤", + "channels": "āϝ⧋āĻ— āĻĻāĻŋāϤ⧇ IRC āĻšā§āϝāĻžāύ⧇āϞāĨ¤", + "requestCaps": "āϏāĻ‚āϝ⧋āϗ⧇ āĻ…āύ⧁āϰ⧋āϧ āĻ•āϰāĻž IRC āĻ•ā§āώāĻŽāϤāĻžāϰ āϤāĻžāϞāĻŋāĻ•āĻžāĨ¤", + "maxBase64FileSizeMiB": "āφāĻĒāϞ⧋āĻĄā§‡āϰ āφāϗ⧇ āϞ⧋āĻ•āĻžāϞ āĻĢāĻžāχāϞ base64-āĻ āϰ⧂āĻĒāĻžāĻ¨ā§āϤāϰ⧇āϰ āϜāĻ¨ā§āϝ MiB-āĻ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āφāĻ•āĻžāϰāĨ¤ 0 āĻŽāĻžāύ⧇ āϏ⧀āĻŽāĻžāĻšā§€āύāĨ¤ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āϞ⧋āĻ•āĻžāϞ āĻĢāĻžāχāϞ⧇āϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāϝ⧋āĻœā§āϝ, URL āφāĻĒāϞ⧋āĻĄā§‡āϰ āϜāĻ¨ā§āϝ āύāϝāĻŧāĨ¤", + "genericField": "{{field}} āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤāĨ¤", + "broker": "MQTT āĻŦā§āϰ⧋āĻ•āĻžāϰ āĻ āĻŋāĻ•āĻžāύāĻžāĨ¤", + "mqttAgentId": "āĻāχ āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϏ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āύāĻ¨ā§āϝ āĻļāύāĻžāĻ•ā§āϤāĻ•āĻžāϰ⧀, āϟāĻĒāĻŋāĻ• āĻĒāĻžāĻĨ āϤ⧈āϰāĻŋāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤāĨ¤", + "topicPrefix": "āϟāĻĒāĻŋāĻ• āĻĒā§āϰāĻŋāĻĢāĻŋāĻ•ā§āϏāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āϟ /picoclawāĨ¤", + "mqttUsername": "āĻŦā§āϰ⧋āĻ•āĻžāϰ āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāĻŖ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āύāĻžāĻŽ (āϐāĻšā§āĻ›āĻŋāĻ•)āĨ¤", + "mqttPassword": "āĻŦā§āϰ⧋āĻ•āĻžāϰ āĻĒā§āϰāĻŽāĻžāĻŖā§€āĻ•āϰāĻŖ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ (āϐāĻšā§āĻ›āĻŋāĻ•)āĨ¤", + "mqttClientId": "MQTT āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ IDāĨ¤ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύāĨ¤", + "keepAlive": "āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ Keepalive āĻŦā§āϝāĻŦāϧāĻžāύāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āϟ 60āĨ¤", + "qos": "āĻŦāĻžāĻ°ā§āϤāĻžāϰ āϏ⧇āĻŦāĻžāϰ āϗ⧁āĻŖāĻŽāĻžāύ āĻ¸ā§āϤāϰ: 0 = āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āĻāĻ•āĻŦāĻžāϰ, 1 = āĻ•āĻŽāĻĒāĻ•ā§āώ⧇ āĻāĻ•āĻŦāĻžāϰ, 2 = āĻ āĻŋāĻ• āĻāĻ•āĻŦāĻžāϰāĨ¤" + } + }, + "validation": { + "requiredField": "āĻāχ āĻ•ā§āώ⧇āĻ¤ā§āϰāϟāĻŋ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧāĨ¤" + }, + "mqtt": { + "protocolTitle": "āĻĒā§āϰ⧋āĻŸā§‹āĻ•āϞ āϰ⧇āĻĢāĻžāϰ⧇āĻ¨ā§āϏ", + "protocolDesc": "āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟāϰāĻž āύāĻŋāĻŽā§āύāϞāĻŋāĻ–āĻŋāϤ āϟāĻĒāĻŋāĻ• āĻāĻŦāĻ‚ āĻĒ⧇āϞ⧋āĻĄ āĻĢāĻ°ā§āĻŽā§āϝāĻžāϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻŦāĻžāĻ°ā§āϤāĻž āĻĒāĻžāĻ āĻžāϝāĻŧ āĻāĻŦāĻ‚ āĻ—ā§āϰāĻšāĻŖ āĻ•āϰ⧇āĨ¤", + "uplink": "āφāĻĒāϞāĻŋāĻ™ā§āĻ• (āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ → āĻāĻœā§‡āĻ¨ā§āϟ)", + "downlink": "āĻĄāĻžāωāύāϞāĻŋāĻ™ā§āĻ• (āĻāĻœā§‡āĻ¨ā§āϟ → āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ)", + "topicParams": "āϟāĻĒāĻŋāĻ• āĻĒā§āϝāĻžāϰāĻžāĻŽāĻŋāϟāĻžāϰ", + "fieldText": "text", + "uplinkTextDesc": "āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āĻ•āĻžāĻ› āĻĨ⧇āϕ⧇ āĻĒā§āϰāĻžāĻ•ā§ƒāϤāĻŋāĻ• āĻ­āĻžāώāĻžāϰ āύāĻŋāĻ°ā§āĻĻ⧇āĻļāύāĻž (āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ)āĨ¤", + "downlinkTextDesc": "āĻāĻœā§‡āĻ¨ā§āĻŸā§‡āϰ āωāĻ¤ā§āϤāϰ āĻŸā§‡āĻ•ā§āϏāϟāĨ¤ āĻ¸ā§āĻŸā§āϰāĻŋāĻŽāĻŋāĻ‚ āĻŽā§‹āĻĄā§‡, āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āĻžāϧāĻŋāĻ• āĻŦāĻžāĻ°ā§āϤāĻž āĻ•ā§āϰāĻŽāĻžāύ⧁āϏāĻžāϰ⧇ āϝ⧁āĻ•ā§āϤ āĻ•āϰ⧁āύāĨ¤", + "topicPrefixDesc": "āϟāĻĒāĻŋāĻ• āĻĒā§āϰāĻŋāĻĢāĻŋāĻ•ā§āϏ, āωāĻĒāϰ⧇āϰ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ⧇āϰ āϏāĻžāĻĨ⧇ āĻŽā§‡āϞ⧇āĨ¤", + "agentIdDesc": "āĻāĻœā§‡āĻ¨ā§āϟ ID, āωāĻĒāϰ⧇āϰ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ⧇āϰ āϏāĻžāĻĨ⧇ āĻŽā§‡āϞ⧇āĨ¤", + "clientIdDesc": "āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟ-āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāĻŋāϤ āĻļāύāĻžāĻ•ā§āϤāĻ•āĻžāϰ⧀āĨ¤ āϏ⧁āĻĒāĻžāϰāĻŋāĻļ: āĻĒā§āϰāĻĨāĻŽ āϚāĻžāϞ⧁ āĻšāĻ“āϝāĻŧāĻžāϰ āϏāĻŽāϝāĻŧ āĻāĻ•āϟāĻŋ UUID āϤ⧈āϰāĻŋ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āĻāϟāĻŋ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰ⧁āύ āϝāĻžāϤ⧇ āĻāĻ•āχ āĻĄāĻŋāĻ­āĻžāχāϏ āϏāĻŦāϏāĻŽāϝāĻŧ āĻāĻ•āχ ID āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇āĨ¤", + "clientIdPlaceholder": "āĻ–āĻžāϞāĻŋ āĻĨāĻžāĻ•āϞ⧇ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āϤ⧈āϰāĻŋ", + "secretSet": "āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻ…āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāĻŋāϤ āϰāĻžāĻ–āϤ⧇ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύāĨ¤", + "secretEmpty": "āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āύ⧇āχ" + } + }, + "pages": { + "agent": { + "load_error": "āĻāĻœā§‡āĻ¨ā§āϟ āϏāĻŽāĻ°ā§āĻĨāύ āϤāĻĨā§āϝ āϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "skills": { + "empty": "āĻŦāĻ°ā§āϤāĻŽāĻžāύ⧇ āϕ⧋āύ⧋ āĻĻāĻ•ā§āώāϤāĻž āωāĻĒāϞāĻŦā§āϧ āύ⧇āχāĨ¤", + "install_success": "{{name}} āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "install_error": "āĻĻāĻ•ā§āώāϤāĻž āχāύāĻ¸ā§āϟāϞ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "search_placeholder": "āύāĻžāĻŽ, āĻŦāĻŋāĻŦāϰāĻŖ āĻŦāĻž āϰ⧇āϜāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ āĻĻā§āĻŦāĻžāϰāĻž āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰ⧁āύ", + "source_label": "āĻĒā§āϰāĻ•āĻžāϰ", + "sort_label": "āϏāĻžāϜāĻžāύ", + "import": "āĻĻāĻ•ā§āώāϤāĻž āφāĻŽāĻĻāĻžāύāĻŋ āĻ•āϰ⧁āύ", + "import_success": "āĻĻāĻ•ā§āώāϤāĻž āφāĻŽāĻĻāĻžāύāĻŋ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "import_error": "āĻĻāĻ•ā§āώāϤāĻž āφāĻŽāĻĻāĻžāύāĻŋ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "import_invalid_type": "āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ Markdown āĻŦāĻž ZIP āĻĻāĻ•ā§āώāϤāĻž āĻĢāĻžāχāϞ āϏāĻŽāĻ°ā§āĻĨāĻŋāϤāĨ¤", + "import_invalid_size": "āĻĻāĻ•ā§āώāϤāĻž āĻĢāĻžāχāϞ 1 MB āĻŦāĻž āϛ⧋āϟ āĻšāϤ⧇ āĻšāĻŦ⧇āĨ¤", + "import_constraints": "1 MB āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āĻāĻ•āϟāĻŋ Markdown āĻŦāĻž ZIP āĻĻāĻ•ā§āώāϤāĻž āĻĢāĻžāχāϞ āφāĻŽāĻĻāĻžāύāĻŋ āĻ•āϰ⧁āύ", + "view": "āĻĻ⧇āϖ⧁āύ", + "delete": "āĻŽā§āϛ⧁āύ", + "delete_title": "āĻĻāĻ•ā§āώāϤāĻž āĻŽā§āĻ›āĻŦ⧇āύ?", + "delete_description": "\"{{name}}\" āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻĻāĻ•ā§āώāϤāĻž āĻĨ⧇āϕ⧇ āϏāϰāĻžāύ⧋ āĻšāĻŦ⧇āĨ¤", + "delete_confirm": "āĻŽā§āϛ⧁āύ", + "delete_success": "āĻĻāĻ•ā§āώāϤāĻž āĻŽā§āϛ⧇ āĻĢ⧇āϞāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "delete_error": "āĻĻāĻ•ā§āώāϤāĻž āĻŽā§āĻ›āϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "viewer_title": "āĻĻāĻ•ā§āώāϤāĻžāϰ āĻŦāĻŋāώāϝāĻŧāĻŦāĻ¸ā§āϤ⧁", + "viewer_description": "āĻāĻ–āĻžāύ⧇ āĻŦāĻ°ā§āϤāĻŽāĻžāύ⧇ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ SKILL.md āĻŦāĻŋāώāϝāĻŧāĻŦāĻ¸ā§āϤ⧁ āĻĒāĻĄāĻŧ⧁āύāĨ¤", + "load_detail_error": "āĻĻāĻ•ā§āώāϤāĻžāϰ āĻŦāĻŋāώāϝāĻŧāĻŦāĻ¸ā§āϤ⧁ āϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "no_description": "āϕ⧋āύ⧋ āĻŦāĻŋāĻŦāϰāĻŖ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰāĻž āĻšāϝāĻŧāύāĻŋāĨ¤", + "no_results": "āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻĢāĻŋāĻ˛ā§āϟāĻžāϰ⧇āϰ āϏāĻžāĻĨ⧇ āϕ⧋āύ⧋ āĻĻāĻ•ā§āώāϤāĻž āĻŽā§‡āϞ⧇āύāĻŋāĨ¤", + "dropzone_title": "āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ⧇ āφāĻŽāĻĻāĻžāύāĻŋ āĻ•āϰ⧁āύ", + "dropzone_description": "āĻāĻ–āĻžāύ⧇ āĻāĻ•āϟāĻŋ āĻĻāĻ•ā§āώāϤāĻž āĻĢāĻžāχāϞ āĻŸā§‡āύ⧇ āφāύ⧁āύ āĻŦāĻž āĻĄāĻŋāĻ¸ā§āĻ• āĻĨ⧇āϕ⧇ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύāĨ¤", + "dropzone_label": "āĻāĻ–āĻžāύ⧇ āĻāĻ•āϟāĻŋ āĻĻāĻ•ā§āώāϤāĻž āĻĢāĻžāχāϞ āĻĢ⧇āϞ⧁āύ", + "dropzone_active": "āĻāχ āĻĻāĻ•ā§āώāϤāĻžāϟāĻŋ āφāĻŽāĻĻāĻžāύāĻŋ āĻ•āϰāϤ⧇ āĻ›āĻžāĻĄāĻŧ⧁āύ", + "dropzone_release": "āĻĻāĻ•ā§āώāϤāĻžāϟāĻŋ āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāϕ⧀āĻ•āϰāĻŖ āĻ•āϰāĻž āĻšāĻŦ⧇ āĻāĻŦāĻ‚ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻĻāĻ•ā§āώāϤāĻž āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋāϤ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤", + "marketplace_title": "āĻĻāĻ•ā§āώāϤāĻž āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ āĻ•āϰ⧁āύ", + "marketplace_description": "āĻĻāĻ•ā§āώāϤāĻž āϰ⧇āϜāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āĻāχ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ⧇ āĻĻāϰāĻ•āĻžāϰ⧀ āĻĻāĻ•ā§āώāϤāĻž āχāύāĻ¸ā§āϟāϞ āĻ•āϰ⧁āύ", + "marketplace_search_placeholder": "github, docker, database āĻāϰ āĻŽāϤ⧋ āĻ•ā§āώāĻŽāϤāĻžāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰ⧁āύ...", + "marketplace_search_action": "āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ", + "marketplace_search_status": "āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻžāϏ", + "marketplace_install_status": "āχāύāĻ¸ā§āϟāϞ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻžāϏ", + "marketplace_notice_title": "āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āĻŦāĻŋāĻœā§āĻžāĻĒā§āϤāĻŋ", + "marketplace_notice_body": "āϰ⧇āϜāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ āĻĻāĻ•ā§āώāϤāĻž āϤ⧃āϤ⧀āϝāĻŧ āĻĒāĻ•ā§āώ⧇āϰ āĻŦāĻŋāώāϝāĻŧāĻŦāĻ¸ā§āϤ⧁āĨ¤ āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻžāϰ āφāϗ⧇ āϞ⧇āĻ–āĻ•, āĻĒ⧃āĻˇā§āĻ āĻžāϰ URL, āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻžāĻŦāϞ⧀ āĻāĻŦāĻ‚ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āϕ⧋āĻĄ āĻŦāĻž āĻ•ā§āϰ⧇āĻĄā§‡āύāĻļāĻŋāϝāĻŧāĻžāϞ āĻĒāĻ°ā§āϝāĻžāϞ⧋āϚāύāĻž āĻ•āϰ⧁āύāĨ¤", + "marketplace_status_disabled": "āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧāĨ¤ āĻĒā§āϰāĻĨāĻŽā§‡ āϟ⧁āϞ āĻĒ⧃āĻˇā§āĻ āĻžāϝāĻŧ āϏāĻ‚āĻļā§āϞāĻŋāĻˇā§āϟ āϟ⧁āϞ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύāĨ¤", + "marketplace_status_enable_hint": "āĻĒā§āϰāĻĨāĻŽā§‡ āϟ⧁āϞ āĻĒ⧃āĻˇā§āĻ āĻžāϝāĻŧ āϏāĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāϤ āϟ⧁āϞ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύāĨ¤", + "marketplace_search_error": "āϰ⧇āϜāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "marketplace_loading_results": "āĻĻāĻ•ā§āώāϤāĻž āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "marketplace_loading_more": "āφāϰāĻ“ āĻĻāĻ•ā§āώāϤāĻž āϞ⧋āĻĄ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "marketplace_results_title": "“{{query}}”-āĻāϰ āϜāĻ¨ā§āϝ {{count}}āϟāĻŋ āĻĢāϞāĻžāĻĢāϞ", + "marketplace_results_hint": "āϰ⧇āϜāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ āĻĢāϞāĻžāĻĢāϞ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ⧇ āχāύāĻ¸ā§āϟāϞ āĻšāϝāĻŧāĨ¤", + "marketplace_install_action": "āχāύāĻ¸ā§āϟāϞ", + "marketplace_installed": "āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇", + "marketplace_view_installed": "āϞ⧋āĻ•āĻžāϞ āĻĻ⧇āϖ⧁āύ", + "marketplace_installed_hint": "“{{name}}” āĻšāĻŋāϏ⧇āĻŦ⧇ āĻāχ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ⧇ āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇ āωāĻĒāϞāĻŦā§āϧāĨ¤", + "marketplace_empty_results": "“{{query}}”-āĻāϰ āϏāĻžāĻĨ⧇ āϕ⧋āύ⧋ āχāύāĻ¸ā§āϟāϞāϝ⧋āĻ—ā§āϝ āĻĻāĻ•ā§āώāϤāĻž āĻŽā§‡āϞ⧇āύāĻŋāĨ¤", + "marketplace_idle": "āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āϰ⧇āϜāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ āĻĨ⧇āϕ⧇ āχāύāĻ¸ā§āϟāϞāϝ⧋āĻ—ā§āϝ āĻĻāĻ•ā§āώāϤāĻž āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ āĻ•āϰāϤ⧇ āĻāĻ•āϟāĻŋ āĻ•ā§āώāĻŽāϤāĻžāϰ āϜāĻ¨ā§āϝ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰ⧁āύāĨ¤", + "marketplace_unavailable": "āϰ⧇āϜāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻŦāĻ°ā§āϤāĻŽāĻžāύ⧇ āĻ…āύ⧁āĻĒāϞāĻŦā§āϧāĨ¤ āĻĻāĻ•ā§āώāϤāĻž āϟ⧁āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰ⧁āύāĨ¤", + "sort": { + "name_asc": "āύāĻžāĻŽ (A-Z)", + "name_desc": "āύāĻžāĻŽ (Z-A)", + "source": "āĻĒā§āϰāĻ•āĻžāϰ" + }, + "origin": { + "all": "āϏāĻŦ āĻĒā§āϰāĻ•āĻžāϰ", + "builtin": "āĻŦāĻŋāĻ˛ā§āϟāχāύ", + "third_party": "āϤ⧃āϤ⧀āϝāĻŧ āĻĒāĻ•ā§āώ", + "manual": "āĻŽā§āϝāĻžāύ⧁āϝāĻŧāĻžāϞ" + }, + "summary": { + "total": "āĻŽā§‹āϟ āĻĻāĻ•ā§āώāϤāĻž" + }, + "detail_tabs": { + "preview": "āĻĒā§āϰāĻŋāĻ­āĻŋāω", + "raw": "āϰ", + "meta": "āĻŽā§‡āϟāĻžāĻĄā§‡āϟāĻž" + }, + "metadata": { + "name": "āύāĻžāĻŽ", + "description": "āĻŦāĻŋāĻŦāϰāĻŖ", + "registry": "āϰ⧇āϜāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ", + "url": "āϞāĻŋāĻ™ā§āĻ• āĻ āĻŋāĻ•āĻžāύāĻž", + "version": "āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻž āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖ", + "lines": "āϞāĻžāχāύ āϏāĻ‚āĻ–ā§āϝāĻž", + "characters": "āĻ…āĻ•ā§āώāϰ āϏāĻ‚āĻ–ā§āϝāĻž" + }, + "marketplace_installDisabled": { + "installing": "āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻž āĻšāĻšā§āϛ⧇...", + "installed": "āχāϤāĻŋāĻŽāĻ§ā§āϝ⧇ āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇", + "cannotInstall": "āχāύāĻ¸ā§āϟāϞ āĻ•āϰāĻž āϝāĻžāĻŦ⧇ āύāĻž: āϏāĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāϤ āϟ⧁āϞ āϏāĻ•ā§āώāĻŽ āύāϝāĻŧ" + } + }, + "tools": { + "search_placeholder": "āϟ⧁āϞ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰ⧁āύ...", + "no_results": "āφāĻĒāύāĻžāϰ āĻŽāĻžāύāĻĻāĻŖā§āĻĄā§‡āϰ āϏāĻžāĻĨ⧇ āϕ⧋āύ⧋ āϟ⧁āϞ āĻŽā§‡āϞ⧇āύāĻŋāĨ¤", + "filter": { + "all": "āϏāĻŦ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻžāϏ", + "enabled": "āϏāĻ•ā§āώāĻŽ", + "disabled": "āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ", + "blocked": "āĻŦā§āϞāĻ• āĻ•āϰāĻž" + }, + "empty": "āϕ⧋āύ⧋ āϟ⧁āϞ āωāĻĒāϞāĻŦā§āϧ āύ⧇āχāĨ¤", + "enable_success": "āϟ⧁āϞ āϏāĻ•ā§āώāĻŽ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "disable_success": "āϟ⧁āϞ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "toggle_error": "āϟ⧁āϞ⧇āϰ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āφāĻĒāĻĄā§‡āϟ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "library_title": "āϟ⧁āϞ āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ", + "library_description": "āφāĻĒāύāĻžāϰ AI āĻāĻœā§‡āĻ¨ā§āϟāĻĻ⧇āϰ āϜāĻ¨ā§āϝ āωāĻĒāϞāĻŦā§āϧ āϟ⧁āϞāϏ⧇āϟ āĻŦā§āϰāĻžāωāϜ āĻāĻŦāĻ‚ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰ⧁āύāĨ¤", + "web_search": { + "title": "āĻ“āϝāĻŧ⧇āĻŦ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ", + "description": "āĻāĻœā§‡āĻ¨ā§āϟāĻĻ⧇āϰ āϏāĻ°ā§āĻŦāĻļ⧇āώ āĻŦāĻžāĻ¸ā§āϤāĻŦ-āĻŦāĻŋāĻļā§āĻŦ⧇āϰ āϤāĻĨā§āϝ āϖ⧁āρāĻœā§‡ āĻĒ⧇āϤ⧇ āĻ“āϝāĻŧ⧇āĻŦ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•ā§āώāĻŽāϤāĻž āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧁āύāĨ¤ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āϏāĻ°ā§āĻŦā§‹āĻ¤ā§āϤāĻŽ āϏāĻ•ā§āϰāĻŋāϝāĻŧ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ⧇ āϰ⧁āϟ āĻ•āϰ⧇āĨ¤", + "unsaved_prompt": "āĻāχ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āĻāĻ–āύāĻ“ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻšāϝāĻŧāύāĻŋāĨ¤ āĻ“āϝāĻŧ⧇āĻŦ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ⧇ āϞāĻŋāĻ–āϤ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰ⧁āύāĨ¤", + "global_settings": "āϏāĻžāϧāĻžāϰāĻŖ", + "providers_config": "āχāĻ¨ā§āϟāĻŋāĻ—ā§āϰ⧇āĻļāύ", + "load_error": "āĻ“āϝāĻŧ⧇āĻŦ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "save": "āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰ⧁āύ", + "open_settings": "āϏ⧇āϟāĻŋāĻ‚āϏ āϖ⧁āϞ⧁āύ", + "save_success": "āϏ⧇āϟāĻŋāĻ‚āϏ āϏāĻĢāϞāĻ­āĻžāĻŦ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "save_error": "āϏ⧇āϟāĻŋāĻ‚āϏ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "provider": "āĻĒā§āϰāĻžāĻĨāĻŽāĻŋāĻ• āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ", + "provider_description": "āĻ“āϝāĻŧ⧇āĻŦ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āϟ⧁āϞ āĻāĻ•āϟāĻŋ āĻ…āύ⧁āϰ⧋āϧ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āύāĻŋāĻ°ā§āĻŦāĻžāϚāύ āĻ•āϰ⧁āύāĨ¤", + "proxy": "HTTPS āĻĒā§āϰāĻ•ā§āϏāĻŋ", + "proxy_description": "āĻ…āĻ¨ā§āϤāĻ°ā§āύāĻŋāĻšāĻŋāϤ āĻ“āϝāĻŧ⧇āĻŦ āĻ…āύ⧁āϰ⧋āϧ⧇āϰ āϜāĻ¨ā§āϝ āϐāĻšā§āĻ›āĻŋāĻ• āĻŦ⧈āĻļā§āĻŦāĻŋāĻ• HTTP/S āĻĒā§āϰāĻ•ā§āϏāĻŋāĨ¤", + "prefer_native": "āύ⧇āϟāĻŋāĻ­ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻĒāĻ›āĻ¨ā§āĻĻ āĻ•āϰ⧁āύ", + "prefer_native_hint": "āϏāĻ•ā§āώāĻŽ āĻĨāĻžāĻ•āϞ⧇, āĻŽāĻĄā§‡āϞāϟāĻŋ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āϤāĻžāϞāĻŋāĻ•āĻžāϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤ⧇ āϤāĻžāϰ āĻŦāĻŋāĻ˛ā§āϟ-āχāύ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•ā§āώāĻŽāϤāĻž āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤", + "provider_hint": "āĻāχ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰāϕ⧇ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āϕ⧋āύ⧋ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āϏāĻ‚āϝ⧋āĻ— āϏ⧇āϟāĻŋāĻ‚āϏ āĻĒā§‚āϰāĻŖ āĻ•āϰ⧁āύāĨ¤", + "max_results": "āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āĻĢāϞāĻžāĻĢāϞ", + "base_url": "āĻŦ⧇āϏ URL", + "base_url_placeholder": "āϐāĻšā§āĻ›āĻŋāĻ• āĻāĻ¨ā§āĻĄāĻĒāϝāĻŧ⧇āĻ¨ā§āϟ āĻ“āĻ­āĻžāϰāϰāĻžāχāĻĄ", + "api_key": "API āϕ⧀ / āĻŸā§‹āϕ⧇āύ", + "api_key_placeholder": "API āϕ⧀ āϞāĻŋāϖ⧁āύ, āφāϏāϞ āϕ⧀ āϰāĻžāĻ–āϤ⧇ āĻāϟāĻŋ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύ", + "none": "āĻ…āύ⧁āĻĒāϞāĻŦā§āϧ" + }, + "status": { + "enabled": "āϏāĻ•ā§āώāĻŽ", + "disabled": "āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ", + "blocked": "āĻŦā§āϞāĻ• āĻ•āϰāĻž" + }, + "categories": { + "automation": "āĻ…āĻŸā§‹āĻŽā§‡āĻļāύ", + "filesystem": "āĻĢāĻžāχāϞāϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ", + "web": "āĻ“āϝāĻŧ⧇āĻŦ", + "communication": "āϝ⧋āĻ—āĻžāϝ⧋āĻ—", + "skills": "āĻĻāĻ•ā§āώāϤāĻž", + "agents": "āĻāĻœā§‡āĻ¨ā§āϟ", + "hardware": "āĻšāĻžāĻ°ā§āĻĄāĻ“āϝāĻŧā§āϝāĻžāϰ", + "discovery": "āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ" + }, + "reasons": { + "requires_linux": "āĻāχ āϟ⧁āϞ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ Linux āĻšā§‹āĻ¸ā§āĻŸā§‡ āĻ•āĻžāϜ āĻ•āϰ⧇ āϝ⧇āĻ–āĻžāύ⧇ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āĻĄāĻŋāĻ­āĻžāχāϏ āĻĢāĻžāχāϞ āωāĻ¨ā§āĻŽā§āĻ•ā§āϤ āφāϛ⧇āĨ¤", + "requires_serial_platform": "āĻāχ āϟ⧁āϞ āĻŦāĻ°ā§āϤāĻŽāĻžāύ⧇ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏāϝ⧋āĻ—ā§āϝ āϏāĻŋāϰāĻŋāϝāĻŧāĻžāϞ āĻĒā§‹āĻ°ā§āϟ āϏāĻš Linux, macOS āĻāĻŦāĻ‚ Windows āĻšā§‹āĻ¸ā§āϟ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰ⧇āĨ¤", + "requires_skills": "āĻāχ āĻĻāĻ•ā§āώāϤāĻž-āϰ⧇āϜāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ āϟ⧁āϞ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āφāϗ⧇ `tools.skills` āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύāĨ¤", + "requires_subagent": "āĻ¸ā§āĻĒā§āϝāĻžāύ āϟ⧁āϞ āĻ•āĻžāϜ āĻ…āĻ°ā§āĻĒāĻŖ āĻ•āϰāĻžāϰ āφāϗ⧇ `tools.subagent` āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύāĨ¤", + "requires_mcp_discovery": "MCP āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ āϟ⧁āϞ āωāĻĒāϞāĻŦā§āϧ āĻšāĻ“āϝāĻŧāĻžāϰ āφāϗ⧇ `tools.mcp.discovery` āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύāĨ¤", + "requires_web_search_provider": "āĻ•āĻŽāĻĒāĻ•ā§āώ⧇ āĻāĻ•āϟāĻŋ āĻĒā§āϰāĻ¸ā§āϤ⧁āϤ āĻŦāĻžāĻšā§āϝāĻŋāĻ• āĻ“āϝāĻŧ⧇āĻŦ-āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰ⧁āύāĨ¤" + } + } + }, + "config": { + "load_error": "āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤ āĻ…āύ⧁āĻ—ā§āϰāĻš āĻ•āϰ⧇ āϰāĻŋāĻĢā§āϰ⧇āĻļ āĻ•āϰ⧁āύ āĻāĻŦāĻ‚ āφāĻŦāĻžāϰ āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧁āύāĨ¤", + "workspace": "āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋ", + "workspace_hint": "āĻāĻœā§‡āĻ¨ā§āϟ āĻĢāĻžāχāϞ āĻ…āĻĒāĻžāϰ⧇āĻļāύ⧇āϰ āϜāĻ¨ā§āϝ āĻŦ⧇āϏ āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋāĨ¤", + "restrict_workspace": "āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ⧇ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧ āĻ•āϰ⧁āύ", + "restrict_workspace_hint": "āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ⧇āϰ āĻ­āĻŋāϤāϰ⧇ āĻĢāĻžāχāϞ āĻ…āĻĒāĻžāϰ⧇āĻļāύ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύāĨ¤", + "split_on_marker": "āĻšā§āϝāĻžāϟāĻŋ āĻŽā§‹āĻĄ", + "split_on_marker_hint": "āĻŦāĻžāĻ¸ā§āϤāĻŦ āĻŽāĻžāύ⧁āώ⧇āϰ āĻšā§āϝāĻžāϟāĻŋāĻ‚āϝāĻŧ⧇āϰ āĻŽāϤ⧋ āĻĻā§€āĻ°ā§āϘ āĻŦāĻžāĻ°ā§āϤāĻžāϗ⧁āϞāĻŋāϕ⧇ āϛ⧋āϟ āĻŦāĻžāĻ°ā§āϤāĻžāϝāĻŧ āĻŦāĻŋāĻ­āĻ•ā§āϤ āĻ•āϰ⧁āύāĨ¤", + "tool_feedback_enabled": "āϟ⧁āϞ āĻĢāĻŋāĻĄāĻŦā§āϝāĻžāĻ•", + "tool_feedback_enabled_hint": "āĻĒā§āϰāϤāĻŋāϟāĻŋ āϟ⧁āϞ āϚāĻžāϞāĻžāύ⧋āϰ āφāϗ⧇ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻšā§āϝāĻžāĻŸā§‡ āĻāĻ•āϟāĻŋ āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤ āύāĻŋāĻ°ā§āĻŦāĻžāĻš āύ⧋āϟ āĻĒāĻžāĻ āĻžāύāĨ¤", + "tool_feedback_separate_messages": "āĻĒ⧃āĻĨāĻ• āĻĢāĻŋāĻĄāĻŦā§āϝāĻžāĻ• āĻŦāĻžāĻ°ā§āϤāĻž", + "tool_feedback_separate_messages_hint": "āĻāĻ•āϟāĻŋ āĻāĻ•āĻ• āĻĒā§āϞ⧇āϏāĻšā§‹āĻ˛ā§āĻĄāĻžāϰ/āĻĒā§āϰāĻ—ā§āϰ⧇āϏ āĻŦāĻžāĻ°ā§āϤāĻž āĻĒ⧁āύāϰāĻžāϝāĻŧ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤ⧇ āĻĒā§āϰāϤāĻŋāϟāĻŋ āϟ⧁āϞ āĻĢāĻŋāĻĄāĻŦā§āϝāĻžāĻ• āφāĻĒāĻĄā§‡āϟāϕ⧇ āϤāĻžāϰ āύāĻŋāϜāĻ¸ā§āĻŦ āĻšā§āϝāĻžāϟ āĻŦāĻžāĻ°ā§āϤāĻž āĻšāĻŋāϏ⧇āĻŦ⧇ āϰāĻžāϖ⧁āύāĨ¤", + "tool_feedback_max_args_length": "āϟ⧁āϞ āφāĻ°ā§āĻ—āϏ āĻĒā§āϰāĻŋāĻ­āĻŋāω āĻĻ⧈āĻ°ā§āĻ˜ā§āϝ", + "tool_feedback_max_args_length_hint": "āĻĒā§āϰāϤāĻŋāϟāĻŋ āϟ⧁āϞ āφāĻ°ā§āϗ⧁āĻŽā§‡āĻ¨ā§āϟ āĻĒā§āϰāĻŋāĻ­āĻŋāωāϤ⧇ āĻĻ⧇āĻ–āĻžāύ⧋ āĻ…āĻ•ā§āώāϰ⧇āϰ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āϏāĻ‚āĻ–ā§āϝāĻžāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ 0 āϏ⧇āϟ āĻ•āϰ⧁āύāĨ¤", + "exec_enabled": "āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύ", + "exec_enabled_hint": "āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϜāĻ¨ā§āϝ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āύāĻŋāĻ°ā§āĻŦāĻžāĻš āϏāĻ•ā§āώāĻŽ āĻŦāĻž āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻ•āϰ⧁āύāĨ¤ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻĨāĻžāĻ•āϞ⧇, āϕ⧋āύ⧋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻ…āύ⧁āϰ⧋āϧ āϚāϞāĻŦ⧇ āύāĻžāĨ¤", + "allow_remote": "āϰāĻŋāĻŽā§‹āϟ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύ", + "allow_remote_hint": "āϏāĻ•ā§āώāĻŽ āĻĨāĻžāĻ•āϞ⧇, āϰāĻŋāĻŽā§‹āϟ āϏ⧇āĻļāύ āĻŦāĻž āύāύ-āϞ⧋āĻ•āĻžāϞ āĻĒā§āϰāϏāĻ™ā§āĻ—āĻ“ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϚāĻžāϞāĻžāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻĨāĻžāĻ•āϞ⧇, āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āύāĻŋāĻ°ā§āĻŦāĻžāĻš āĻ¸ā§āĻĨāĻžāύ⧀āϝāĻŧ āύāĻŋāϰāĻžāĻĒāĻĻ āĻĒā§āϰāϏāĻ™ā§āϗ⧇ āϏ⧀āĻŽāĻžāĻŦāĻĻā§āϧ āĻĨāĻžāϕ⧇āĨ¤", + "enable_deny_patterns": "āĻŦā§āĻ˛ā§āϝāĻžāĻ•āϞāĻŋāĻ¸ā§āϟ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ", + "enable_deny_patterns_hint": "āϏāĻ•ā§āώāĻŽ āĻĨāĻžāĻ•āϞ⧇, āĻ…ā§āϝāĻžāĻĒā§āϞāĻŋāϕ⧇āĻļāύ āϤāĻžāϰ āĻŦāĻŋāĻ˛ā§āϟ-āχāύ āĻŦāĻŋāĻĒāĻœā§āϜāύāĻ• āĻĒā§āϝāĻžāϟāĻžāĻ°ā§āύ āĻāĻŦāĻ‚ āύāĻŋāĻšā§‡āϰ āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ˛ā§āϝāĻžāĻ•āϞāĻŋāĻ¸ā§āĻŸā§‡āϰ āϏāĻžāĻĨ⧇ āĻŽāĻŋāϞ⧇ āϝāĻžāĻ“āϝāĻŧāĻž āĻ•āĻŽāĻžāĻ¨ā§āĻĄāϗ⧁āϞāĻŋ āĻŦā§āϞāĻ• āĻ•āϰ⧇āĨ¤", + "exec_timeout_seconds": "āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϟāĻžāχāĻŽāφāωāϟ (āϏ⧇āϕ⧇āĻ¨ā§āĻĄ)", + "exec_timeout_seconds_hint": "āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻ…āύ⧁āϰ⧋āϧ⧇āϰ āϜāĻ¨ā§āϝ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āϰāĻžāύāϟāĻžāχāĻŽāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āϟāĻžāχāĻŽāφāωāϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ 0 āϏ⧇āϟ āĻ•āϰ⧁āύāĨ¤", + "custom_deny_patterns": "āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ˛ā§āϝāĻžāĻ•āϞāĻŋāĻ¸ā§āϟ", + "custom_deny_patterns_hint": "āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ-āĻŦā§āϞāĻ•āĻŋāĻ‚ āύāĻŋāϝāĻŧāĻŽ āϝ⧋āĻ— āĻ•āϰ⧁āύ, āĻĒā§āϰāϤāĻŋ āϞāĻžāχāύ⧇ āĻāĻ•āϟāĻŋ āϰ⧇āϗ⧁āϞāĻžāϰ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāύāĨ¤ āĻāĻ–āĻžāύ⧇āϰ āϕ⧋āύ⧋ āύāĻŋāϝāĻŧāĻŽā§‡āϰ āϏāĻžāĻĨ⧇ āĻŽā§‡āϞ⧇ āĻāĻŽāύ āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āϞāĻ• āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤", + "custom_allow_patterns": "āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻšā§‹āϝāĻŧāĻžāχāϟāϞāĻŋāĻ¸ā§āϟ", + "custom_allow_patterns_hint": "āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ-āĻ…āύ⧁āĻŽāϤāĻŋ āύāĻŋāϝāĻŧāĻŽ āϝ⧋āĻ— āĻ•āϰ⧁āύ, āĻĒā§āϰāϤāĻŋ āϞāĻžāχāύ⧇ āĻāĻ•āϟāĻŋ āϰ⧇āϗ⧁āϞāĻžāϰ āĻāĻ•ā§āϏāĻĒā§āϰ⧇āĻļāύāĨ¤ āĻāĻ–āĻžāύ⧇āϰ āϕ⧋āύ⧋ āύāĻŋāϝāĻŧāĻŽā§‡āϰ āϏāĻžāĻĨ⧇ āĻŽā§‡āϞ⧇ āĻāĻŽāύ āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ˛ā§āϝāĻžāĻ•āϞāĻŋāĻ¸ā§āϟ āĻŽāĻŋāϞ āĻāĻĄāĻŧāĻŋāϝāĻŧ⧇ āϝāĻžāϝāĻŧ, āϤāĻŦ⧇ āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āϏ⧀āĻŽāĻž āĻāĻ–āύāĻ“ āĻĒā§āϰāϝ⧋āĻœā§āϝāĨ¤", + "custom_patterns_placeholder": "^rm\\s+-rf\\b\n^git\\s+push\\b", + "pattern_detector_title": "āĻĒā§āϝāĻžāϟāĻžāĻ°ā§āύ āϏāύāĻžāĻ•ā§āϤāĻ•āϰāĻŖ āϟ⧁āϞ", + "pattern_detector_hint": "āϝ⧇āϕ⧋āύ⧋ āĻŦā§āĻ˛ā§āϝāĻžāĻ•āϞāĻŋāĻ¸ā§āϟ āĻŦāĻž āĻšā§‹āϝāĻŧāĻžāχāϟāϞāĻŋāĻ¸ā§āϟ āĻĒā§āϝāĻžāϟāĻžāĻ°ā§āύ⧇āϰ āϏāĻžāĻĨ⧇ āĻŽā§‡āϞ⧇ āĻ•āĻŋāύāĻž āϤāĻž āĻĒāϰ⧀āĻ•ā§āώāĻž āĻ•āϰāϤ⧇ āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϞāĻŋāϖ⧁āύāĨ¤", + "pattern_detector_input_placeholder": "āĻĒāϰ⧀āĻ•ā§āώāĻžāϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϞāĻŋāϖ⧁āύ, āϝ⧇āĻŽāύ rm -rf /tmp", + "pattern_detector_test_button": "āĻĒāϰ⧀āĻ•ā§āώāĻž", + "pattern_detector_result_allowed": "āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ (āĻšā§‹āϝāĻŧāĻžāχāϟāϞāĻŋāĻ¸ā§āĻŸā§‡āϰ āϏāĻžāĻĨ⧇ āĻŽā§‡āϞ⧇)", + "pattern_detector_result_blocked": "āĻŦā§āϞāĻ• āĻ•āϰāĻž (āĻŦā§āĻ˛ā§āϝāĻžāĻ•āϞāĻŋāĻ¸ā§āĻŸā§‡āϰ āϏāĻžāĻĨ⧇ āĻŽā§‡āϞ⧇)", + "pattern_detector_result_no_match": "āϕ⧋āύ⧋ āĻŽāĻŋāϞ āύ⧇āχ (āĻĄāĻŋāĻĢāĻ˛ā§āϟ āύāĻŋāϝāĻŧāĻŽ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻŦ⧇)", + "allow_shell_execution": "āϏāĻŽāϝāĻŧāϏ⧂āĻšā§€ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύ", + "allow_shell_execution_hint": "āĻĄāĻŋāĻĢāĻ˛ā§āϟāϰ⧂āĻĒ⧇ āϏāĻŽāϝāĻŧāϏ⧂āĻšā§€ āĻ•āĻžāϜāϗ⧁āϞāĻŋāϕ⧇ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϚāĻžāϞāĻžāύ⧋āϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύāĨ¤ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻĨāĻžāĻ•āϞ⧇, āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āĻĻ⧇āϰ āĻāĻ•āϟāĻŋ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻ•āĻžāĻœā§‡āϰ āϏāĻŽāϝāĻŧāϏ⧂āĻšā§€ āĻ•āϰāϤ⧇ command_confirm=true āĻĒāĻžāϏ āĻ•āϰāϤ⧇ āĻšāĻŦ⧇āĨ¤", + "cron_exec_timeout": "āϏāĻŽāϝāĻŧāϏ⧂āĻšā§€ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϟāĻžāχāĻŽāφāωāϟ (āĻŽāĻŋāύāĻŋāϟ)", + "cron_exec_timeout_hint": "āϏāĻŽāϝāĻŧāϏ⧂āĻšā§€ āĻ•āĻŽāĻžāĻ¨ā§āĻĄā§‡āϰ āϜāĻ¨ā§āϝ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āϰāĻžāύāϟāĻžāχāĻŽāĨ¤ āϟāĻžāχāĻŽāφāωāϟ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻ•āϰāϤ⧇ 0 āϏ⧇āϟ āĻ•āϰ⧁āύāĨ¤", + "max_tokens": "āĻŽā§āϝāĻžāĻ•ā§āϏ āĻŸā§‹āϕ⧇āύ", + "max_tokens_hint": "āĻĒā§āϰāϤāĻŋ āĻŽāĻĄā§‡āϞ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻžāϰ āϜāĻ¨ā§āϝ āωāĻĒāϰ⧇āϰ āĻŸā§‹āϕ⧇āύ āϏ⧀āĻŽāĻžāĨ¤", + "context_window": "āĻĒā§āϰāϏāĻ™ā§āĻ— āωāχāĻ¨ā§āĻĄā§‹", + "context_window_hint": "āĻŸā§‹āϕ⧇āύ⧇ āĻŽāĻĄā§‡āϞ āχāύāĻĒ⧁āϟ āĻĒā§āϰāϏāĻ™ā§āĻ— āϧāĻžāϰāĻŖāĻ•ā§āώāĻŽāϤāĻžāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύ (4x āĻŽā§āϝāĻžāĻ•ā§āϏ āĻŸā§‹āϕ⧇āύ)āĨ¤", + "max_tool_iterations": "āĻŽā§āϝāĻžāĻ•ā§āϏ āϟ⧁āϞ āχāϟāĻžāϰ⧇āĻļāύ", + "max_tool_iterations_hint": "āĻāĻ•āϟāĻŋ āĻāĻ•āĻ• āĻ•āĻžāĻœā§‡āϰ āĻŽāĻ§ā§āϝ⧇ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āϟ⧁āϞ-āĻ•āϞ āϞ⧁āĻĒāĨ¤", + "summarize_threshold": "āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤāϏāĻžāϰ⧇āϰ āĻŦāĻžāĻ°ā§āϤāĻž āĻĨā§āϰ⧇āĻļāĻšā§‹āĻ˛ā§āĻĄ", + "summarize_threshold_hint": "āĻāχ āϏāĻ‚āĻ–ā§āϝāĻ• āĻŦāĻžāĻ°ā§āϤāĻžāϰ āĻĒāϰ⧇ āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤāϏāĻžāϰ āĻļ⧁āϰ⧁ āĻ•āϰ⧁āύāĨ¤", + "summarize_token_percent": "āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤāϏāĻžāϰ⧇āϰ āĻŸā§‹āϕ⧇āύ āĻļāϤāĻžāĻ‚āĻļ", + "summarize_token_percent_hint": "āĻ•āĻĨā§‹āĻĒāĻ•āĻĨāύ āϏāĻ‚āĻ•ā§āώāĻŋāĻĒā§āϤāϏāĻžāϰ āĻŸā§āϰāĻŋāĻ—āĻžāϰ āĻšāϞ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤāĨ¤", + "turn_profile": "āĻ…āύ⧁āϰ⧋āϧ āĻĒā§āϰāϏāĻ™ā§āĻ— āύ⧀āϤāĻŋ", + "turn_profile_hint": "āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻ…āύ⧁āϰ⧋āϧ⧇ āϕ⧀ āĻĒā§āϰāϏāĻ™ā§āĻ— āĻŦāĻšāύ āĻ•āϰ⧇ āϤāĻž āύāĻŋāϝāĻŧāĻ¨ā§āĻ¤ā§āϰāĻŖ āĻ•āϰ⧇āĨ¤ āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ• āĻšā§āϝāĻžāϟ āφāϚāϰāĻŖ āϰāĻžāĻ–āϤ⧇ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āϰāĻžāϖ⧁āύāĨ¤", + "turn_profile_enabled": "āύ⧀āϤāĻŋ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ", + "turn_profile_enabled_hint": "āϏāĻ•ā§āώāĻŽ āĻĨāĻžāĻ•āϞ⧇, āĻāχ āύ⧀āϤāĻŋ āĻĒā§āϰāϤāĻŋāϟāĻŋ āύāϤ⧁āύ āϟāĻžāĻ°ā§āύ⧇ āĻĒā§āϰāϝ⧋āĻœā§āϝāĨ¤ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻĨāĻžāĻ•āϞ⧇, PicoClaw āĻŽā§‚āϞ āĻĒā§āϰāϏāĻ™ā§āĻ— āφāϚāϰāĻŖ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇āĨ¤", + "turn_profile_mode_default": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ", + "turn_profile_mode_off": "āĻŦāĻ¨ā§āϧ", + "turn_profile_mode_custom": "āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āϤāĻžāϞāĻŋāĻ•āĻž", + "turn_profile_history": "āχāϤāĻŋāĻšāĻžāϏ āĻĒā§āϰāϏāĻ™ā§āĻ—", + "turn_profile_history_hint": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻāχ āϏ⧇āĻļāύ⧇āϰ āĻĒā§‚āĻ°ā§āĻŦāĻŦāĻ°ā§āϤ⧀ āĻŦāĻžāĻ°ā§āϤāĻž āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤ āĻ•āϰ⧇āĨ¤ āĻŦāĻ¨ā§āϧ āĻ•āϰāϞ⧇ āϟāĻžāĻ°ā§āύāϟāĻŋ āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āĻšā§āϝāĻžāĻŸā§‡āϰ āĻŽāϤ⧋ āφāϚāϰāĻŖ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āϤāĻžāϰ āĻĢāϞāĻžāĻĢāϞ āχāϤāĻŋāĻšāĻžāϏ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāĻž āĻāĻĄāĻŧāĻŋāϝāĻŧ⧇ āϝāĻžāϝāĻŧāĨ¤", + "turn_profile_system_prompt": "āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĒā§āϰāϏāĻ™ā§āĻ—", + "turn_profile_system_prompt_hint": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ PicoClaw āĻĒāϰāĻŋāϚāϝāĻŧ, āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ, āĻŽā§‡āĻŽāϰāĻŋ āĻāĻŦāĻ‚ āϰāĻžāύāϟāĻžāχāĻŽ āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻžāĻŦāϞ⧀ āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤ āĻ•āϰ⧇āĨ¤ āĻŦāĻ¨ā§āϧ āĻ•āϰāϞ⧇ āĻ…āύ⧁āϰ⧋āϧ āĻĻā§āĻŦāĻžāϰāĻž āĻ¸ā§āĻĒāĻˇā§āϟāĻ­āĻžāĻŦ⧇ āϏāϰāĻŦāϰāĻžāĻšāĻŋāϤ āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻĒā§āϰāĻŽā§āĻĒāϟāϗ⧁āϞāĻŋāχ āϰāĻžāĻ–āĻž āĻšāϝāĻŧāĨ¤", + "turn_profile_skills": "āĻĻāĻ•ā§āώāϤāĻž āĻĒā§āϰāĻŽā§āĻĒāϟ", + "turn_profile_skills_hint": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ āωāĻĒāϞāĻŦā§āϧ āĻĻāĻ•ā§āώāϤāĻž āĻāĻŦāĻ‚ āϏāĻ•ā§āϰāĻŋāϝāĻŧ āĻĻāĻ•ā§āώāϤāĻž āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻžāĻŦāϞ⧀ āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤ āĻ•āϰ⧇āĨ¤ āĻŦāĻ¨ā§āϧ āĻ•āϰāϞ⧇ āϏ⧇āϗ⧁āϞāĻŋ āϞ⧁āĻ•āĻžāϝāĻŧāĨ¤ āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āϤāĻžāϞāĻŋāĻ•āĻž āĻĒā§āϰāϤāĻŋ āϞāĻžāχāύ⧇ āĻāĻ• āĻ•āϰ⧇ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāĻžāύ⧋ āĻĻāĻ•ā§āώāϤāĻžāϰ āύāĻžāĻŽāϗ⧁āϞāĻŋāχ āϰāĻžāϖ⧇āĨ¤", + "turn_profile_skills_allow_placeholder": "skill-name\nanother-skill", + "turn_profile_tools": "āĻ•āϞāϝ⧋āĻ—ā§āϝ āϟ⧁āϞ", + "turn_profile_tools_hint": "āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ• āϟ⧁āϞ āωāĻ¨ā§āĻŽā§āĻ•ā§āϤ āĻ•āϰ⧇āĨ¤ āĻŦāĻ¨ā§āϧ āϟ⧁āϞ āĻ•āϞāϗ⧁āϞāĻŋ āĻĒā§āϰāϤāĻŋāϰ⧋āϧ āĻ•āϰ⧇āĨ¤ āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āϤāĻžāϞāĻŋāĻ•āĻž āĻĒā§āϰāϤāĻŋ āϞāĻžāχāύ⧇ āĻāĻ• āĻ•āϰ⧇ āĻĒā§āϰāĻŦ⧇āĻļ āĻ•āϰāĻžāύ⧋ āϟ⧁āϞ⧇āϰ āύāĻžāĻŽāϗ⧁āϞāĻŋāχ āϰāĻžāϖ⧇, āϝ⧇āĻŽāύ web_searchāĨ¤", + "turn_profile_tools_allow_placeholder": "web_search\nweb_fetch", + "session_scope": "āϏ⧇āĻļāύ āĻ¸ā§āϕ⧋āĻĒ", + "session_scope_hint": "āĻĒāĻŋāϝāĻŧāĻžāϰ/āĻšā§āϝāĻžāύ⧇āϞ āϜ⧁āĻĄāĻŧ⧇ āĻšā§āϝāĻžāϟ āĻĒā§āϰāϏāĻ™ā§āĻ— āϕ⧀āĻ­āĻžāĻŦ⧇ āĻŦāĻŋāĻšā§āĻ›āĻŋāĻ¨ā§āύ āĻ•āϰāĻž āĻšāϝāĻŧāĨ¤", + "session_scope_per_channel_peer": "āĻĒā§āϰāϤāĻŋ āĻšā§āϝāĻžāύ⧇āϞ + āĻĒāĻŋāϝāĻŧāĻžāϰ", + "session_scope_per_channel_peer_desc": "āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻšā§āϝāĻžāύ⧇āϞ⧇ āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āϜāĻ¨ā§āϝ āφāϞāĻžāĻĻāĻž āĻĒā§āϰāϏāĻ™ā§āĻ—āĨ¤", + "session_scope_per_channel": "āĻĒā§āϰāϤāĻŋ āĻšā§āϝāĻžāύ⧇āϞ", + "session_scope_per_channel_desc": "āĻĒā§āϰāϤāĻŋ āĻšā§āϝāĻžāύ⧇āϞ⧇ āĻāĻ•āϟāĻŋ āĻļ⧇āϝāĻŧāĻžāϰ āĻ•āϰāĻž āĻĒā§āϰāϏāĻ™ā§āĻ—āĨ¤", + "session_scope_per_peer": "āĻĒā§āϰāϤāĻŋ āĻĒāĻŋāϝāĻŧāĻžāϰ", + "session_scope_per_peer_desc": "āĻšā§āϝāĻžāύ⧇āϞ āϜ⧁āĻĄāĻŧ⧇ āĻĒā§āϰāϤāĻŋ āĻŦā§āϝāĻŦāĻšāĻžāϰāĻ•āĻžāϰ⧀āϰ āϜāĻ¨ā§āϝ āĻāĻ•āϟāĻŋ āĻĒā§āϰāϏāĻ™ā§āĻ—āĨ¤", + "session_scope_global": "āĻ—ā§āϞ⧋āĻŦāĻžāϞ", + "session_scope_global_desc": "āϏāĻŦ āĻŦāĻžāĻ°ā§āϤāĻž āĻāĻ•āϟāĻŋ āĻ—ā§āϞ⧋āĻŦāĻžāϞ āĻĒā§āϰāϏāĻ™ā§āĻ— āĻļ⧇āϝāĻŧāĻžāϰ āĻ•āϰ⧇āĨ¤", + "heartbeat_enabled": "āĻšāĻžāĻ°ā§āϟāĻŦāĻŋāϟ", + "heartbeat_enabled_hint": "āĻĒāĻ°ā§āϝāĻžāϝāĻŧāĻ•ā§āϰāĻŽāĻŋāĻ• āĻšāĻžāĻ°ā§āϟāĻŦāĻŋāϟ āĻŦāĻžāĻ°ā§āϤāĻž āĻĒāĻžāĻ āĻžāύāĨ¤", + "heartbeat_interval": "āĻšāĻžāĻ°ā§āϟāĻŦāĻŋāϟ āĻŦā§āϝāĻŦāϧāĻžāύ (āĻŽāĻŋāύāĻŋāϟ)", + "heartbeat_interval_hint": "āĻšāĻžāĻ°ā§āϟāĻŦāĻŋāϟ āϏāĻ‚āϕ⧇āϤ⧇āϰ āĻŽāĻ§ā§āϝ⧇ āĻŽāĻŋāύāĻŋāĻŸā§‡ āĻŦā§āϝāĻŦāϧāĻžāύāĨ¤", + "devices_enabled": "āĻĄāĻŋāĻ­āĻžāχāϏ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ", + "devices_enabled_hint": "āĻšāĻžāĻ°ā§āĻĄāĻ“āϝāĻŧā§āϝāĻžāϰ-āĻĄāĻŋāĻ­āĻžāχāϏ āχāĻ¨ā§āϟāĻŋāĻ—ā§āϰ⧇āĻļāύ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύāĨ¤", + "monitor_usb": "USB āĻŽāύāĻŋāϟāϰ āĻ•āϰ⧁āύ", + "monitor_usb_hint": "āĻĄāĻŋāĻ­āĻžāχāϏ āϏāĻ•ā§āώāĻŽ āĻĨāĻžāĻ•āϞ⧇ USB āĻĒā§āϞāĻžāĻ—/āφāύāĻĒā§āϞāĻžāĻ— āχāϭ⧇āĻ¨ā§āϟ āĻĻ⧇āϖ⧁āύāĨ¤", + "autostart_label": "āϞāĻ—āχāύ⧇ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύ", + "autostart_hint": "āϞāĻ— āχāύ āĻ•āϰāĻžāϰ āϏāĻŽāϝāĻŧ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ PicoClaw Web āϚāĻžāϞ⧁ āĻ•āϰ⧁āύāĨ¤", + "autostart_unsupported": "āĻāχ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽā§‡ āϞāĻ—āχāύ⧇ āϚāĻžāϞ⧁ āĻ•āϰāĻž āϏāĻŽāĻ°ā§āĻĨāĻŋāϤ āύāϝāĻŧāĨ¤", + "autostart_load_error": "āϞāĻ—āχāύ⧇ āϚāĻžāϞ⧁ āĻ•āϰāĻžāϰ āĻ¸ā§āĻŸā§āϝāĻžāϟāĻžāϏ āϞ⧋āĻĄ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "server_port": "āϏāĻžāĻ°ā§āĻ­āĻŋāϏ āĻĒā§‹āĻ°ā§āϟ", + "server_port_hint": "PicoClaw Web āĻĻā§āĻŦāĻžāϰāĻž āĻŦā§āϝāĻŦāĻšā§ƒāϤ HTTP āĻĒā§‹āĻ°ā§āϟāĨ¤", + "launcher_section_hint": "āĻāχ āĻŦāĻŋāĻ­āĻžāϗ⧇āϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āϞāĻžā§āϚāĻžāϰ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻšāĻ“āϝāĻŧāĻžāϰ āĻĒāϰ⧇ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āĻšāϝāĻŧāĨ¤", + "gateway_restart_hint": "āĻāχ āĻŦāĻŋāĻ­āĻžāϗ⧇āϰ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āϗ⧇āϟāĻ“āϝāĻŧ⧇ āĻĒ⧁āύāϰāĻžāϝāĻŧ āϚāĻžāϞ⧁ āĻšāĻ“āϝāĻŧāĻžāϰ āĻĒāϰ⧇ āĻ•āĻžāĻ°ā§āϝāĻ•āϰ āĻšāϝāĻŧāĨ¤", + "dashboard_password": "āϞāĻ—āχāύ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ", + "dashboard_password_hint": "āĻāĻ•āϟāĻŋ āύāϤ⧁āύ āϞāĻ—āχāύ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āϏ⧇āϟ āĻ•āϰ⧁āύāĨ¤", + "dashboard_password_placeholder": "āĻ•āĻŽāĻĒāĻ•ā§āώ⧇ ā§Ž āĻ…āĻ•ā§āώāϰ", + "dashboard_password_confirm": "āύāϤ⧁āύ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧁āύ", + "dashboard_password_confirm_hint": "āύāϤ⧁āύ āϞāĻ—āχāύ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āφāĻŦāĻžāϰ āϞāĻŋāϖ⧁āύāĨ¤", + "dashboard_password_confirm_placeholder": "āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āφāĻŦāĻžāϰ āϞāĻŋāϖ⧁āύ", + "dashboard_password_required": "āύāϤ⧁āύ āϞāĻ—āχāύ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āϞāĻŋāϖ⧁āύ āĻāĻŦāĻ‚ āύāĻŋāĻļā§āϚāĻŋāϤ āĻ•āϰ⧁āύāĨ¤", + "dashboard_password_mismatch": "āϞāĻ—āχāύ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āĻŽāĻŋāϞāϛ⧇ āύāĻžāĨ¤", + "dashboard_password_min_length": "āϞāĻ—āχāύ āĻĒāĻžāϏāĻ“āϝāĻŧāĻžāĻ°ā§āĻĄ āĻ•āĻŽāĻĒāĻ•ā§āώ⧇ ā§Ž āĻ…āĻ•ā§āώāϰ⧇āϰ āĻšāϤ⧇ āĻšāĻŦ⧇āĨ¤", + "lan_access": "LAN āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ", + "lan_access_hint": "āφāĻĒāύāĻžāϰ āĻ¸ā§āĻĨāĻžāύ⧀āϝāĻŧ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āϕ⧇āϰ āĻ…āĻ¨ā§āϝāĻžāĻ¨ā§āϝ āĻĄāĻŋāĻ­āĻžāχāϏ āĻĨ⧇āϕ⧇ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ⧇āϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύāĨ¤", + "allowed_cidrs": "āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āύ⧇āϟāĻ“āϝāĻŧāĻžāĻ°ā§āĻ• CIDR", + "allowed_cidrs_hint": "āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻāχ CIDR āĻĒāϰāĻŋāϏāϰ⧇āϰ āĻ•ā§āϞāĻžāϝāĻŧ⧇āĻ¨ā§āϟāϰāĻž āϏāĻžāĻ°ā§āĻ­āĻŋāϏ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤ āĻĒā§āϰāϤāĻŋ āϞāĻžāχāύ⧇ āĻāĻ•āϟāĻŋ āĻŦāĻž āĻ•āĻŽāĻž āĻĻāĻŋāϝāĻŧ⧇ āφāϞāĻžāĻĻāĻžāĨ¤ āϏāĻŦāĻžāχāϕ⧇ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāϤ⧇ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύāĨ¤", + "allowed_cidrs_placeholder": "192.168.1.0/24\n10.0.0.0/8", + "evolution_section_hint": "āĻāĻœā§‡āĻ¨ā§āϟāϕ⧇ āϏāĻŽā§āĻĒāĻ¨ā§āύ āϟāĻžāĻ°ā§āύ āĻĨ⧇āϕ⧇ āĻļāĻŋāĻ–āϤ⧇ āĻĻāĻŋāύ āĻāĻŦāĻ‚ āĻĻāĻ•ā§āώāϤāĻžāϰ āωāĻ¨ā§āύāϤāĻŋ āĻĒā§āϰāĻ¸ā§āϤ⧁āϤ āĻ•āϰ⧁āύāĨ¤", + "evolution_enabled": "āχāĻ­ā§‹āϞāĻŋāωāĻļāύ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ", + "evolution_enabled_hint": "āϏāĻŽā§āĻĒāĻ¨ā§āύ āϟāĻžāĻ°ā§āύ⧇āϰ āϜāĻ¨ā§āϝ āĻļ⧇āĻ–āĻžāϰ āĻĄā§‡āϟāĻž āϰ⧇āĻ•āĻ°ā§āĻĄ āĻ•āϰ⧁āύāĨ¤ āĻĄā§āϰāĻžāĻĢā§āϟ āĻāĻŦāĻ‚ āĻ…ā§āϝāĻžāĻĒā§āϞāĻžāχ āĻŽā§‹āĻĄ āĻĻāĻ•ā§āώāϤāĻž āφāĻĒāĻĄā§‡āϟāĻ“ āϤ⧈āϰāĻŋ āĻ•āϰāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤", + "evolution_mode": "āχāĻ­ā§‹āϞāĻŋāωāĻļāύ āĻŽā§‹āĻĄ", + "evolution_mode_hint": "Observe āĻļ⧁āϧ⧁ āĻĄā§‡āϟāĻž āϰ⧇āĻ•āĻ°ā§āĻĄ āĻ•āϰ⧇, Draft āĻĒā§āϰāĻžāĻ°ā§āĻĨā§€ āĻĻāĻ•ā§āώāϤāĻž āĻĒā§āϰāĻ¸ā§āϤ⧁āϤ āĻ•āϰ⧇, Apply āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻĻāĻ•ā§āώāϤāĻžāϝāĻŧ āĻ—ā§ƒāĻšā§€āϤ āĻĄā§āϰāĻžāĻĢā§āϟ āϞāĻŋāĻ–āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤", + "evolution_mode_observe": "āĻĒāĻ°ā§āϝāĻŦ⧇āĻ•ā§āώāĻŖ", + "evolution_mode_draft": "āĻĄā§āϰāĻžāĻĢā§āϟ", + "evolution_mode_apply": "āĻĒā§āϰāϝāĻŧā§‹āĻ—", + "evolution_state_dir": "āĻ¸ā§āĻŸā§‡āϟ āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋ", + "evolution_state_dir_hint": "āχāĻ­ā§‹āϞāĻŋāωāĻļāύ āĻ¸ā§āĻŸā§‡āĻŸā§‡āϰ āϜāĻ¨ā§āϝ āϐāĻšā§āĻ›āĻŋāĻ• āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋāĨ¤ āĻ“āϝāĻŧāĻžāĻ°ā§āĻ•āĻ¸ā§āĻĒ⧇āϏ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāϤ⧇ āĻ–āĻžāϞāĻŋ āϰāĻžāϖ⧁āύāĨ¤", + "evolution_min_task_count": "āĻ¨ā§āϝ⧂āύāϤāĻŽ āĻ•āĻžāϜ āĻ—āĻŖāύāĻž", + "evolution_min_task_count_hint": "āĻāĻ•āϟāĻŋ āĻĒā§āϝāĻžāϟāĻžāĻ°ā§āύ āĻāĻ•āϟāĻŋ āĻĄā§āϰāĻžāĻĢā§āϟ āϤ⧈āϰāĻŋ āĻ•āϰāĻžāϰ āφāϗ⧇ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āĻ¨ā§āϝ⧂āύāϤāĻŽ āϏāĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāϤ āĻ•āĻžāϜāĨ¤", + "evolution_min_success_ratio": "āĻ¨ā§āϝ⧂āύāϤāĻŽ āϏāĻžāĻĢāĻ˛ā§āϝ⧇āϰ āĻ…āύ⧁āĻĒāĻžāϤ", + "evolution_min_success_ratio_hint": "āĻ•ā§āϞāĻžāĻ¸ā§āϟāĻžāĻ°ā§āĻĄ āĻ•āĻžāĻœā§‡āϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāϝāĻŧā§‹āϜāύ⧀āϝāĻŧ āϏāĻžāĻĢāĻ˛ā§āϝ⧇āϰ āĻ…āύ⧁āĻĒāĻžāϤāĨ¤ 0 āĻāϰ āĻšā§‡āϝāĻŧ⧇ āĻŦāĻĄāĻŧ āĻāĻŦāĻ‚ 1 āĻĒāĻ°ā§āϝāĻ¨ā§āϤ āĻāĻ•āϟāĻŋ āĻŽāĻžāύ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤", + "evolution_cold_path_trigger": "āϕ⧋āĻ˛ā§āĻĄ āĻĒāĻžāĻĨ āĻŸā§āϰāĻŋāĻ—āĻžāϰ", + "evolution_cold_path_trigger_hint": "āϝ⧋āĻ—ā§āϝ āĻļ⧇āĻ–āĻžāϰ āϰ⧇āĻ•āĻ°ā§āĻĄā§‡āϰ āϜāĻ¨ā§āϝ āĻĄā§āϰāĻžāĻĢā§āϟ āĻœā§‡āύāĻžāϰ⧇āĻļāύ āĻ•āĻ–āύ āϚāϞāĻŦ⧇ āϤāĻž āϚāϝāĻŧāύ āĻ•āϰ⧁āύāĨ¤", + "evolution_cold_path_after_turn": "āĻĒā§āϰāϤāĻŋāϟāĻŋ āϟāĻžāĻ°ā§āύ⧇āϰ āĻĒāϰ⧇", + "evolution_cold_path_scheduled": "āϏāĻŽāϝāĻŧāϏ⧂āĻšā§€", + "evolution_cold_path_manual": "āĻŦāĻ¨ā§āϧ", + "evolution_cold_path_times": "āϏāĻŽāϝāĻŧāϏ⧂āĻšā§€ āϏāĻŽāϝāĻŧ", + "evolution_cold_path_times_hint": "āϏāĻŽāϝāĻŧāϏ⧂āĻšā§€ āϕ⧋āĻ˛ā§āĻĄ-āĻĒāĻžāĻĨ āĻĒā§āϰāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻ•āϰāϪ⧇āϰ āϜāĻ¨ā§āϝ āϚāĻžāϞāĻžāύ⧋āϰ āϏāĻŽāϝāĻŧāĨ¤ āĻĒā§āϰāϤāĻŋ āϞāĻžāχāύ⧇ āĻāĻ•āϟāĻŋ HH:MM āĻŽāĻžāύ āϞāĻŋāϖ⧁āύāĨ¤", + "mcp_section_hint": "āĻŽā§āϝāĻžāύ⧁āϝāĻŧāĻžāϞāĻŋ config.json āϏāĻŽā§āĻĒāĻžāĻĻāύāĻž āύāĻž āĻ•āϰ⧇ MCP āϏāĻžāĻ°ā§āĻ­āĻžāϰ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰ⧁āύāĨ¤", + "mcp_enabled": "MCP āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ", + "mcp_enabled_hint": "MCP āϏāĻžāĻ°ā§āĻ­āĻžāϰ āχāĻ¨ā§āϟāĻŋāĻ—ā§āϰ⧇āĻļāύ āϚāĻžāϞ⧁ āĻŦāĻž āĻŦāĻ¨ā§āϧ āĻ•āϰ⧁āύāĨ¤", + "mcp_discovery_enabled": "MCP āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ", + "mcp_discovery_enabled_hint": "MCP āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ āϟ⧁āϞāϕ⧇ āύāĻŋāĻŦāĻ¨ā§āϧāĻŋāϤ MCP āϏāĻžāĻ°ā§āĻ­āĻžāϰ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āĻ•āϰāĻžāϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύāĨ¤", + "mcp_discovery_ttl": "āφāĻŦāĻŋāĻˇā§āĻ•ā§ƒāϤ āϟ⧁āϞ āφāύāϞāĻ• TTL", + "mcp_discovery_ttl_hint": "āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ⧇āϰ āĻĒāϰ⧇ āφāĻŦāĻŋāĻˇā§āĻ•ā§ƒāϤ āϟ⧁āϞāϗ⧁āϞāĻŋ āĻ•āϤ āϟ⧁āϞ-āύāĻŋāĻ°ā§āĻŦāĻžāĻš TTL āϟāĻŋāĻ• āωāĻĒāϞāĻŦā§āϧ āĻĨāĻžāĻ•āĻŦ⧇āĨ¤", + "mcp_discovery_max_results": "āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• āĻĢāϞāĻžāĻĢāϞ", + "mcp_discovery_max_results_hint": "āĻĒā§āϰāϤāĻŋ āϕ⧋āϝāĻŧ⧇āϰāĻŋāϤ⧇ āĻĢāĻŋāϰāĻŋāϝāĻŧ⧇ āĻĻ⧇āĻ“āϝāĻŧāĻž āϏāĻ°ā§āĻŦāĻžāϧāĻŋāĻ• MCP āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ āĻŽāĻŋāϞāĨ¤", + "mcp_discovery_use_bm25": "BM25 āĻ°â€ā§āϝāĻžāĻ™ā§āĻ•āĻŋāĻ‚ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύ", + "mcp_discovery_use_bm25_hint": "MCP āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ āĻĢāϞāĻžāĻĢāϞ⧇āϰ āϜāĻ¨ā§āϝ BM25 āϞ⧇āĻ•ā§āϏāĻŋāĻ•āĻžāϞ āĻ¸ā§āϕ⧋āϰāĻŋāĻ‚ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧁āύāĨ¤", + "mcp_discovery_use_regex": "āϰ⧇āϗ⧇āĻ•ā§āϏ āĻ…āύ⧁āϏāĻ¨ā§āϧāĻžāύ āϏāĻ•ā§āώāĻŽ āĻ•āϰ⧁āύ", + "mcp_discovery_use_regex_hint": "MCP āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ⧇ āϰ⧇āϗ⧇āĻ•ā§āϏ-āĻ­āĻŋāĻ¤ā§āϤāĻŋāĻ• āĻŽāĻŋāϞ⧇āϰ āĻ…āύ⧁āĻŽāϤāĻŋ āĻĻāĻŋāύāĨ¤", + "mcp_servers": "MCP āϏāĻžāĻ°ā§āĻ­āĻžāϰ", + "mcp_servers_hint": "MCP āϏāĻžāĻ°ā§āĻ­āĻžāϰ āϝ⧋āĻ—, āϏāĻŽā§āĻĒāĻžāĻĻāύāĻž āĻŦāĻž āϏāϰāĻžāύāĨ¤", + "mcp_server_new": "āύāϤ⧁āύ MCP āϏāĻžāĻ°ā§āĻ­āĻžāϰ", + "mcp_server_add": "āϏāĻžāĻ°ā§āĻ­āĻžāϰ āϝ⧋āĻ— āĻ•āϰ⧁āύ", + "mcp_server_remove": "āϏāϰāĻžāύ", + "mcp_server_enabled": "āϏāĻ•ā§āώāĻŽ", + "mcp_server_discovery_mode": "āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ āĻŽā§‹āĻĄ", + "mcp_server_discovery_mode_inherit": "āĻ—ā§āϞ⧋āĻŦāĻžāϞ āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ āĻŽā§‹āĻĄ āĻ…āύ⧁āϏāϰāĻŖ āĻ•āϰ⧁āύ", + "mcp_server_discovery_mode_deferred": "āĻŦāĻŋāϞāĻŽā§āĻŦāĻŋāϤ āφāĻŦāĻŋāĻˇā§āĻ•āĻžāϰ", + "mcp_server_discovery_mode_eager": "āχāĻ—āĻžāϰ āύāĻŋāĻŦāĻ¨ā§āϧāύ", + "mcp_server_name_placeholder": "āϏāĻžāĻ°ā§āĻ­āĻžāϰ⧇āϰ āύāĻžāĻŽ (āϝ⧇āĻŽāύ github)", + "mcp_server_url_placeholder": "āϏāĻžāĻ°ā§āĻ­āĻžāϰ URL (āϝ⧇āĻŽāύ https://example.com/mcp)", + "mcp_server_command_placeholder": "āĻ•āĻŽāĻžāĻ¨ā§āĻĄ (āϝ⧇āĻŽāύ npx)", + "mcp_server_env_file_placeholder": "āĻĒāϰāĻŋāĻŦ⧇āĻļ āĻĢāĻžāχāϞ āĻĒāĻžāĻĨ (āϐāĻšā§āĻ›āĻŋāĻ•)", + "mcp_server_args_placeholder": "āφāĻ°ā§āĻ—āϏ, āĻĒā§āϰāϤāĻŋ āϞāĻžāχāύ⧇ āĻāĻ•āϟāĻŋ", + "mcp_server_env_placeholder": "āĻĒāϰāĻŋāĻŦ⧇āĻļ JSON āĻ…āĻŦāĻœā§‡āĻ•ā§āϟ", + "mcp_server_headers_placeholder": "āĻšā§‡āĻĄāĻžāϰ JSON āĻ…āĻŦāĻœā§‡āĻ•ā§āϟ", + "sections": { + "agent": "āĻāĻœā§‡āĻ¨ā§āϟ", + "runtime": "āϰāĻžāύāϟāĻžāχāĻŽ", + "evolution": "āχāĻ­ā§‹āϞāĻŋāωāĻļāύ", + "mcp": "MCP", + "exec": "āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āϚāĻžāϞāĻžāύ", + "cron": "āĻ•ā§āϰāύ āĻ•āĻžāϜ", + "launcher": "āϞāĻžā§āϚāĻžāϰ", + "devices": "āĻĄāĻŋāĻ­āĻžāχāϏ" + }, + "open_raw": "āϰ āĻ•āύāĻĢāĻŋāĻ—", + "back_to_visual": "āĻ­āĻŋāĻœā§āϝ⧁āϝāĻŧāĻžāϞ āĻ•āύāĻĢāĻŋāĻ—", + "raw_json_title": "āϰ JSON āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ", + "json_placeholder": "āĻŦ⧈āϧ JSON āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϞāĻŋāϖ⧁āύ...", + "save_success": "āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϏāĻĢāϞāĻ­āĻžāĻŦ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "save_error": "āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϏāĻ‚āϰāĻ•ā§āώāĻŖ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "reset_confirm_title": "āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āϰāĻŋāϏ⧇āϟ āĻ•āϰ⧁āύ", + "reset_confirm_desc": "āφāĻĒāύāĻŋ āĻ•āĻŋ āφāĻĒāύāĻžāϰ āĻ…āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύāϗ⧁āϞāĻŋ āϏāĻ°ā§āĻŦāĻļ⧇āώ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāϝāĻŧ āϰāĻŋāϏ⧇āϟ āĻ•āϰāϤ⧇ āϚāĻžāύ?", + "reset_success": "āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύāϗ⧁āϞāĻŋ āϏāĻ°ā§āĻŦāĻļ⧇āώ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāϝāĻŧ āϰāĻŋāϏ⧇āϟ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "invalid_json": "āĻ…āĻŦ⧈āϧ JSON āĻĢāĻ°ā§āĻŽā§āϝāĻžāϟāĨ¤", + "format_success": "JSON āϏāĻĢāϞāĻ­āĻžāĻŦ⧇ āĻĢāĻ°ā§āĻŽā§āϝāĻžāϟ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "format_error": "āĻ…āĻŦ⧈āϧ JSON āĻĢāĻ°ā§āĻŽā§āϝāĻžāϟāĨ¤", + "format": "āĻĢāĻ°ā§āĻŽā§āϝāĻžāϟ", + "unsaved_changes": "āφāĻĒāύāĻžāϰ āĻ…āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻĒāϰāĻŋāĻŦāĻ°ā§āϤāύ āϰāϝāĻŧ⧇āϛ⧇āĨ¤", + "factory_reset": "āĻĢā§āϝāĻžāĻ•ā§āϟāϰāĻŋ āϰāĻŋāϏ⧇āϟ", + "factory_reset_confirm_title": "āĻĢā§āϝāĻžāĻ•ā§āϟāϰāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸā§‡ āϰāĻŋāϏ⧇āϟ āĻ•āϰ⧁āύ", + "factory_reset_confirm_desc": "āĻāϟāĻŋ āϏāĻŽāĻ¸ā§āϤ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āĻĢā§āϝāĻžāĻ•ā§āϟāϰāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸā§‡ āϰāĻŋāϏ⧇āϟ āĻ•āϰāĻŦ⧇āĨ¤ API āϕ⧀ āĻāĻŦāĻ‚ āύāĻŋāϰāĻžāĻĒāĻ¤ā§āϤāĻž āĻ•ā§āϰ⧇āĻĄā§‡āύāĻļāĻŋāϝāĻŧāĻžāϞ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻĨāĻžāĻ•āĻŦ⧇āĨ¤ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ⧇āϰ āĻāĻ•āϟāĻŋ āĻŦā§āϝāĻžāĻ•āφāĻĒ āϤ⧈āϰāĻŋ āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤", + "factory_reset_confirm": "āĻĄāĻŋāĻĢāĻ˛ā§āĻŸā§‡ āϰāĻŋāϏ⧇āϟ āĻ•āϰ⧁āύ", + "factory_reset_success": "āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āĻĢā§āϝāĻžāĻ•ā§āϟāϰāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸā§‡ āϰāĻŋāϏ⧇āϟ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤", + "factory_reset_error": "āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āϰāĻŋāϏ⧇āϟ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤" + }, + "logs": { + "log_level_error": "āϞāĻ— āϞ⧇āϭ⧇āϞ āφāĻĒāĻĄā§‡āϟ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻ°ā§āĻĨāĨ¤", + "clear": "āϞāĻ— āĻĒāϰāĻŋāĻˇā§āĻ•āĻžāϰ āĻ•āϰ⧁āύ", + "empty": "āϞāϗ⧇āϰ āϜāĻ¨ā§āϝ āĻ…āĻĒ⧇āĻ•ā§āώāĻž āĻ•āϰāĻž āĻšāĻšā§āϛ⧇..." + } + }, + "tour": { + "skip": "āĻŸā§āϝ⧁āϰ āĻāĻĄāĻŧāĻŋāϝāĻŧ⧇ āϝāĻžāύ", + "prev": "āĻĒā§‚āĻ°ā§āĻŦāĻŦāĻ°ā§āϤ⧀", + "next": "āĻĒāϰāĻŦāĻ°ā§āϤ⧀", + "finish": "āĻļ⧇āώ āĻ•āϰ⧁āύ", + "welcome": { + "title": "PicoClaw-āĻ āĻ¸ā§āĻŦāĻžāĻ—āϤāĻŽ", + "description": "PicoClaw āĻāĻ•āϟāĻŋ āĻļāĻ•ā§āϤāĻŋāĻļāĻžāϞ⧀ AI āϏāĻšāĻ•āĻžāϰ⧀ āĻĒā§āĻ˛ā§āϝāĻžāϟāĻĢāĻ°ā§āĻŽāĨ¤ āĻŽā§ŒāϞāĻŋāĻ• āϏ⧇āϟāφāĻĒ āϏāĻŽā§āĻĒāĻ¨ā§āύ āĻ•āϰāϤ⧇ āφāĻĒāύāĻžāϕ⧇ āϏāĻžāĻšāĻžāĻ¯ā§āϝ āĻ•āϰāϤ⧇ āĻ•āϝāĻŧ⧇āĻ• āϏ⧇āϕ⧇āĻ¨ā§āĻĄ āϏāĻŽāϝāĻŧ āύāĻŋāχāĨ¤" + }, + "models": { + "title": "āĻŽāĻĄā§‡āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰ⧁āύ", + "description": "AI āĻĒā§āϰ⧋āĻ­āĻžāχāĻĄāĻžāϰāĻĻ⧇āϰ āϜāĻ¨ā§āϝ API āϕ⧀ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāϤ⧇ āĻŦāĻžāρ āĻĻāĻŋāϕ⧇āϰ \"āĻŽāĻĄā§‡āϞ\" āĻŽā§‡āύ⧁āϤ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧁āύāĨ¤ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻž āĻŽāĻĄā§‡āϞāϗ⧁āϞāĻŋ āĻšā§āϝāĻžāĻŸā§‡āϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤" + }, + "gateway": { + "title": "āϗ⧇āϟāĻ“āϝāĻŧ⧇ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύ", + "description": "āĻŽāĻĄā§‡āϞ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ āĻ•āϰāĻžāϰ āĻĒāϰ⧇, AI-āĻāϰ āϏāĻžāĻĨ⧇ āĻšā§āϝāĻžāϟ āĻļ⧁āϰ⧁ āĻ•āϰāϤ⧇ āωāĻĒāϰ⧇āϰ \"āϗ⧇āϟāĻ“āϝāĻŧ⧇ āϚāĻžāϞ⧁ āĻ•āϰ⧁āύ\" āĻŦā§‹āϤāĻžāĻŽā§‡ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧁āύāĨ¤" + }, + "docs": { + "title": "āĻĄāϕ⧁āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāύ āĻĻ⧇āϖ⧁āύ", + "description": "āφāϰāĻ“ āϏāĻžāĻšāĻžāĻ¯ā§āϝ⧇āϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύ? āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ āĻ—āĻžāχāĻĄ āĻāĻŦāĻ‚ āĻ•āύāĻĢāĻŋāĻ—āĻžāϰ⧇āĻļāύ āĻĄāϕ⧁āĻŽā§‡āĻ¨ā§āϟ āĻĻ⧇āĻ–āϤ⧇ āωāĻĒāϰ⧇āϰ āĻĄāĻžāύ āϕ⧋āϪ⧇ āĻĄāϕ⧁āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāύ āĻŦā§‹āϤāĻžāĻŽā§‡ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧁āύāĨ¤" + } + } +} From 93391223eaf84c982791684b4eb774edc2eba86c Mon Sep 17 00:00:00 2001 From: miruchigawa <99255321+miruchigawa@users.noreply.github.com> Date: Sun, 31 May 2026 05:00:22 +0700 Subject: [PATCH 21/21] fix: format long line in codex_provider_test.go to satisfy golines --- pkg/providers/oauth/codex_provider_test.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkg/providers/oauth/codex_provider_test.go b/pkg/providers/oauth/codex_provider_test.go index 7ff2999ce..8deeb8d2a 100644 --- a/pkg/providers/oauth/codex_provider_test.go +++ b/pkg/providers/oauth/codex_provider_test.go @@ -404,7 +404,13 @@ func TestCodexProvider_ChatRoundTrip_OutputTextDeltaFallback(t *testing.T) { provider := NewCodexProvider("test-token", "acc-123") provider.client = createOpenAITestClient(server.URL, "test-token", "acc-123") - resp, err := provider.Chat(t.Context(), []Message{{Role: "user", Content: "Hello"}}, nil, "gpt-4o", map[string]any{}) + resp, err := provider.Chat( + t.Context(), + []Message{{Role: "user", Content: "Hello"}}, + nil, + "gpt-4o", + map[string]any{}, + ) if err != nil { t.Fatalf("Chat() error: %v", err) }