@link-assistant/hive-mind 1.69.4 → 1.69.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/package.json +3 -2
- package/src/auto-language.lib.mjs +94 -0
- package/src/limits-i18n.lib.mjs +71 -0
- package/src/limits.lib.mjs +78 -80
- package/src/locales/en.lino +124 -0
- package/src/locales/hi.lino +124 -0
- package/src/locales/ru.lino +124 -0
- package/src/locales/zh.lino +124 -0
- package/src/session-monitor.lib.mjs +4 -2
- package/src/solve.config.lib.mjs +21 -0
- package/src/solve.mjs +12 -10
- package/src/telegram-bot.mjs +69 -135
- package/src/telegram-command-execution.lib.mjs +5 -4
- package/src/telegram-show-limits.lib.mjs +39 -32
- package/src/telegram-solve-queue.lib.mjs +7 -3
- package/src/telegram-ui-messages.lib.mjs +112 -0
- package/src/work-session-formatting.lib.mjs +33 -14
package/src/locales/en.lino
CHANGED
|
@@ -66,6 +66,44 @@ en
|
|
|
66
66
|
process.command "Command: {{command}}"
|
|
67
67
|
check.number "Check #{{iteration}}:"
|
|
68
68
|
time.current "Current time: {{time}}"
|
|
69
|
+
limits.additional_codex_limits "Additional Codex limits"
|
|
70
|
+
limits.balance "balance"
|
|
71
|
+
limits.claude_5_hour_session "Claude 5 hour session"
|
|
72
|
+
limits.claude_limits "Claude limits"
|
|
73
|
+
limits.codex_5_hour_session "Codex 5 hour session"
|
|
74
|
+
limits.codex_credits "Codex credits"
|
|
75
|
+
limits.codex_limits "Codex limits"
|
|
76
|
+
limits.cpu "CPU"
|
|
77
|
+
limits.cpu_cores_used "CPU cores used"
|
|
78
|
+
limits.current_time "Current time"
|
|
79
|
+
limits.current_week_all_models "Current week (all models)"
|
|
80
|
+
limits.current_week_sonnet_only "Current week (Sonnet only)"
|
|
81
|
+
limits.disabled_by_admin "`--show-limits` is disabled by the bot administrator."
|
|
82
|
+
limits.disk_space "Disk space"
|
|
83
|
+
limits.end "End"
|
|
84
|
+
limits.five_hour_session "5h session"
|
|
85
|
+
limits.five_min_load_avg "5m load avg"
|
|
86
|
+
limits.github_api "GitHub API"
|
|
87
|
+
limits.limits_at_end "Limits at end"
|
|
88
|
+
limits.limits_at_start "Limits at start"
|
|
89
|
+
limits.limits_change "Limits change"
|
|
90
|
+
limits.na "N/A"
|
|
91
|
+
limits.note_delta_approx "Note: delta is approximate (parallel sessions share the same budget)."
|
|
92
|
+
limits.passed "passed"
|
|
93
|
+
limits.plan "Plan"
|
|
94
|
+
limits.ram "RAM"
|
|
95
|
+
limits.requests "requests"
|
|
96
|
+
limits.resets_at "Resets {{time}}"
|
|
97
|
+
limits.resets_in "Resets in {{duration}}"
|
|
98
|
+
limits.seven_day_all_models "7d all models"
|
|
99
|
+
limits.seven_day_sonnet_only "7d Sonnet only"
|
|
100
|
+
limits.session "session"
|
|
101
|
+
limits.start "Start"
|
|
102
|
+
limits.unavailable "unavailable"
|
|
103
|
+
limits.unlimited "unlimited"
|
|
104
|
+
limits.used "used"
|
|
105
|
+
limits.week "week"
|
|
106
|
+
limits.weekly "Weekly"
|
|
69
107
|
telegram.fetching_limits "🔄 Fetching usage limits..."
|
|
70
108
|
telegram.gathering_version "🔄 Gathering version information..."
|
|
71
109
|
telegram.usage_limits_title "📊 *Usage Limits*"
|
|
@@ -87,6 +125,92 @@ en
|
|
|
87
125
|
telegram.language_invalid "❌ Invalid language. Supported: {{supported}}.\nUsage: /language <code>"
|
|
88
126
|
telegram.language_set "✅ Language set to *{{language}}*."
|
|
89
127
|
telegram.language_current "🌐 Current language: *{{language}}*.\nSupported: {{supported}}.\nUsage: /language <code>"
|
|
128
|
+
telegram.yes "✅ Yes"
|
|
129
|
+
telegram.no "❌ No"
|
|
130
|
+
telegram.info_requested_by_label "Requested by"
|
|
131
|
+
telegram.info_issue_label "Issue"
|
|
132
|
+
telegram.info_pull_request_label "Pull request"
|
|
133
|
+
telegram.info_url_label "URL"
|
|
134
|
+
telegram.info_options_label "🛠 Options"
|
|
135
|
+
telegram.info_locked_options_label "🔒 Locked options"
|
|
136
|
+
telegram.help_title "🤖 *SwarmMindBot Help*"
|
|
137
|
+
telegram.help_status_stopped "🛑 *Bot Status: STOPPED*"
|
|
138
|
+
telegram.help_reason "Reason: {{reason}}"
|
|
139
|
+
telegram.help_stopped "Stopped: {{stoppedAt}}"
|
|
140
|
+
telegram.help_resume "Use /start (chat owner only) to resume."
|
|
141
|
+
telegram.help_diagnostic_information "📋 *Diagnostic Information:*"
|
|
142
|
+
telegram.help_chat_id "• Chat ID: `{{chatId}}`"
|
|
143
|
+
telegram.help_topic_id "• Topic ID: `{{topicId}}`"
|
|
144
|
+
telegram.help_chat_type "• Chat Type: {{chatType}}"
|
|
145
|
+
telegram.help_chat_title "• Chat Title: {{chatTitle}}"
|
|
146
|
+
telegram.help_available_commands "📝 *Available Commands:*"
|
|
147
|
+
telegram.help_solve_enabled "*/solve* (aliases: */do*, */continue*, */claude*, */codex*, */opencode*, */agent*, */gemini*, */qwen*) - Solve a GitHub issue"
|
|
148
|
+
telegram.help_solve_usage "Usage: `/solve <github-url> [options]`"
|
|
149
|
+
telegram.help_solve_example "Example: `/solve https://github.com/owner/repo/issues/123 --model sonnet`"
|
|
150
|
+
telegram.help_solve_alias_detail "Tool aliases imply `--tool <tool>`: `/codex <github-url>` equals `/solve <github-url> --tool codex`"
|
|
151
|
+
telegram.help_solve_reply "Or reply to a message with a GitHub link: `/solve`"
|
|
152
|
+
telegram.help_solve_disabled "*/solve* (aliases: */do*, */continue*, */claude*, */codex*, */opencode*, */agent*, */gemini*, */qwen*) - ❌ Disabled"
|
|
153
|
+
telegram.help_locked_options "🔒 Locked options: `{{options}}`"
|
|
154
|
+
telegram.help_task_enabled "*/task* - Create a GitHub issue from a repository link and issue text"
|
|
155
|
+
telegram.help_task_usage "Usage: `/task <github-repository-url>` followed by issue text, or reply with `/task`"
|
|
156
|
+
telegram.help_task_example "Example: `/task https://github.com/owner/repo` then the issue text on following lines"
|
|
157
|
+
telegram.help_split_enabled "*/split* - Split a GitHub issue into smaller issues"
|
|
158
|
+
telegram.help_split_usage "Usage: `/split <github-issue-url> [options]` or `/task --split <github-issue-url>`"
|
|
159
|
+
telegram.help_split_example "Example: `/split https://github.com/owner/repo/issues/123 --split-count 2`"
|
|
160
|
+
telegram.help_task_disabled "*/task* / */split* - ❌ Disabled"
|
|
161
|
+
telegram.help_hive_enabled "*/hive* - Run hive command"
|
|
162
|
+
telegram.help_hive_usage "Usage: `/hive <github-url> [options]`"
|
|
163
|
+
telegram.help_hive_example "Example: `/hive https://github.com/owner/repo`"
|
|
164
|
+
telegram.help_hive_disabled "*/hive* - ❌ Disabled"
|
|
165
|
+
telegram.help_solve_queue "`/solve_queue` - Show solve queue status"
|
|
166
|
+
telegram.help_limits "*/limits* - Show usage limits"
|
|
167
|
+
telegram.help_version "*/version* - Show bot and runtime versions"
|
|
168
|
+
telegram.help_language "*/language* `[en|ru|zh|hi]` - Set or show your preferred reply language (in-memory only, per-user)"
|
|
169
|
+
telegram.help_accept_invites "`/accept_invites` - Accept all pending GitHub invitations"
|
|
170
|
+
telegram.help_merge "*/merge* - Merge queue (experimental)"
|
|
171
|
+
telegram.help_merge_usage "Usage: `/merge <github-repo-url>`"
|
|
172
|
+
telegram.help_merge_description "Merges all PRs with 'ready' label sequentially."
|
|
173
|
+
telegram.help_subscribe "*/subscribe* / */unsubscribe* - 🔔 Get private DM forward of /solve completion (experimental, #1688)"
|
|
174
|
+
telegram.help_help "*/help* - Show this help message"
|
|
175
|
+
telegram.help_stop_start "*/stop* / */start* - Stop or resume accepting new tasks (owner only)"
|
|
176
|
+
telegram.help_stop_uuid "*/stop* `<uuid>` - Send CTRL+C to an isolated solve/hive session (owner only). Also works as a reply to a message containing the UUID."
|
|
177
|
+
telegram.help_log "*/log* - Fetch isolation session log (owner only). Usage: `/log <uuid>` or reply with `/log`"
|
|
178
|
+
telegram.help_terminal_watch "*/terminal\\_watch* - Live-update an isolation session log (owner only). Usage: `/terminal_watch <uuid>` or reply with `/terminal_watch`"
|
|
179
|
+
telegram.help_notifications "🔔 *Session Notifications:* Completion notifications are automatic; use /subscribe for private DM forwards."
|
|
180
|
+
telegram.help_isolation_mode "🔒 *Isolation Mode:* `{{isolationBackend}}` (experimental)"
|
|
181
|
+
telegram.help_group_note "⚠️ *Note:* /solve, /do, /continue, /claude, /codex, /opencode, /agent, /gemini, /qwen, /task, /split, /hive, /solve\\_queue, /limits, /version, /accept\\_invites, /merge, /stop and /start commands only work in group chats. /terminal\\_watch, /subscribe and /unsubscribe work in private and group chats."
|
|
182
|
+
telegram.help_common_options "🔧 *Common Options:*"
|
|
183
|
+
telegram.help_model_option "• `--model <model>` or `-m` - {{modelDescription}}"
|
|
184
|
+
telegram.help_base_branch_option "• `--base-branch <branch>` or `-b` - Target branch for PR (default: repo default branch)"
|
|
185
|
+
telegram.help_think_option "• `--think <level>` - Thinking level (off/low/medium/high/xhigh/max) | `--thinking-budget <num>` - Token budget (0-63999)"
|
|
186
|
+
telegram.help_verbose_option "• `--verbose` or `-v` - Verbose output | `--attach-logs` - Attach logs to PR"
|
|
187
|
+
telegram.help_show_limits_option "• `--show-limits` - Experimental: embed Claude/Codex usage at start, end and delta (#594)"
|
|
188
|
+
telegram.help_tip "💡 *Tip:* Many more options available. See full documentation for complete list."
|
|
189
|
+
telegram.help_restricted_mode "🔒 *Restricted Mode:* Authorized: {{authorized}}"
|
|
190
|
+
telegram.help_allow_topic_hint "💡 To allow this topic: `{{allowTopicHint}}`"
|
|
191
|
+
telegram.help_troubleshooting_header "🔧 *Troubleshooting:*"
|
|
192
|
+
telegram.help_troubleshooting_body "If bot is not receiving messages:\n1. Check privacy mode in @BotFather\n • Send `/setprivacy` to @BotFather\n • Choose 'Disable' for your bot\n • Remove bot from group and re-add\n2. Or make bot an admin in the group\n3. Restart bot with `--verbose` flag for diagnostics"
|
|
193
|
+
telegram.solve_queued "📋 Solve command queued ({{tool}} queue position #{{position}})"
|
|
194
|
+
telegram.solve_waiting "⏳ Waiting ({{tool}} queue #{{position}})"
|
|
195
|
+
telegram.waiting_label "⏳ Waiting"
|
|
196
|
+
telegram.reason_label "Reason"
|
|
197
|
+
telegram.did_you_mean "💡 Did you mean: `{{suggestion}}`"
|
|
198
|
+
telegram.solve_invalid_url_help "Example: `/solve https://github.com/owner/repo/issues/123`\n\nOr reply to a message containing a GitHub link with `/solve`"
|
|
199
|
+
telegram.hive_invalid_url_help "Example: `/hive https://github.com/owner/repo`"
|
|
200
|
+
telegram.missing_github_url "Missing GitHub URL. Usage: /{{commandName}} <github-url> [options]"
|
|
201
|
+
telegram.first_arg_must_be_github_url "First argument must be a GitHub URL"
|
|
202
|
+
telegram.url_issues_list_error "URL points to the issues list page, but you need a specific issue\n\n💡 How to fix:\n1. Open the repository: {{url}}\n2. Click on a specific issue\n3. Copy the URL (it should end with /issues/NUMBER)\n\nExample: `{{example}}`"
|
|
203
|
+
telegram.url_pulls_list_error "URL points to the pull requests list page, but you need a specific pull request\n\n💡 How to fix:\n1. Open the repository: {{url}}\n2. Click on a specific pull request\n3. Copy the URL (it should end with /pull/NUMBER)\n\nExample: `{{example}}`"
|
|
204
|
+
telegram.url_repo_error "URL points to a repository, but you need a specific {{allowedTypes}}\n\n💡 How to fix:\n1. Go to: {{url}}/issues\n2. Click on an issue to solve\n3. Use the full URL with the issue number\n\nExample: `{{example}}`"
|
|
205
|
+
telegram.url_must_be_type "URL must be a GitHub {{allowedTypes}} (not {{type}})"
|
|
206
|
+
telegram.work_session_starting "🔄 Starting..."
|
|
207
|
+
telegram.work_session_executing "⏳ Executing..."
|
|
208
|
+
telegram.work_session_finished "Work session finished successfully"
|
|
209
|
+
telegram.work_session_failed "Work session failed (exit code: {{exitCode}})"
|
|
210
|
+
telegram.duration_label "Duration"
|
|
211
|
+
telegram.session_label "Session"
|
|
212
|
+
telegram.isolation_label "Isolation"
|
|
213
|
+
telegram.error_executing_command "❌ Error executing {{commandName}} command"
|
|
90
214
|
language.en "English"
|
|
91
215
|
language.ru "Russian"
|
|
92
216
|
language.zh "Chinese"
|
package/src/locales/hi.lino
CHANGED
|
@@ -66,6 +66,44 @@ hi
|
|
|
66
66
|
process.command "कमांड: {{command}}"
|
|
67
67
|
check.number "जाँच #{{iteration}}:"
|
|
68
68
|
time.current "वर्तमान समय: {{time}}"
|
|
69
|
+
limits.additional_codex_limits "अतिरिक्त Codex सीमाएँ"
|
|
70
|
+
limits.balance "बैलेंस"
|
|
71
|
+
limits.claude_5_hour_session "Claude 5 घंटे का सत्र"
|
|
72
|
+
limits.claude_limits "Claude सीमाएँ"
|
|
73
|
+
limits.codex_5_hour_session "Codex 5 घंटे का सत्र"
|
|
74
|
+
limits.codex_credits "Codex क्रेडिट"
|
|
75
|
+
limits.codex_limits "Codex सीमाएँ"
|
|
76
|
+
limits.cpu "CPU"
|
|
77
|
+
limits.cpu_cores_used "उपयोग किए गए CPU कोर"
|
|
78
|
+
limits.current_time "वर्तमान समय"
|
|
79
|
+
limits.current_week_all_models "वर्तमान सप्ताह (सभी मॉडल)"
|
|
80
|
+
limits.current_week_sonnet_only "वर्तमान सप्ताह (केवल Sonnet)"
|
|
81
|
+
limits.disabled_by_admin "`--show-limits` बॉट व्यवस्थापक द्वारा अक्षम है।"
|
|
82
|
+
limits.disk_space "डिस्क स्थान"
|
|
83
|
+
limits.end "समाप्ति"
|
|
84
|
+
limits.five_hour_session "5 घंटे का सत्र"
|
|
85
|
+
limits.five_min_load_avg "5 मिनट औसत लोड"
|
|
86
|
+
limits.github_api "GitHub API"
|
|
87
|
+
limits.limits_at_end "अंत में सीमाएँ"
|
|
88
|
+
limits.limits_at_start "शुरुआत में सीमाएँ"
|
|
89
|
+
limits.limits_change "सीमाओं में बदलाव"
|
|
90
|
+
limits.na "लागू नहीं"
|
|
91
|
+
limits.note_delta_approx "नोट: डेल्टा अनुमानित है (समान बजट को समानांतर सत्र साझा करते हैं)।"
|
|
92
|
+
limits.passed "बीता"
|
|
93
|
+
limits.plan "प्लान"
|
|
94
|
+
limits.ram "RAM"
|
|
95
|
+
limits.requests "अनुरोध"
|
|
96
|
+
limits.resets_at "{{time}} रीसेट"
|
|
97
|
+
limits.resets_in "{{duration}} में रीसेट"
|
|
98
|
+
limits.seven_day_all_models "7 दिन सभी मॉडल"
|
|
99
|
+
limits.seven_day_sonnet_only "7 दिन केवल Sonnet"
|
|
100
|
+
limits.session "सत्र"
|
|
101
|
+
limits.start "शुरुआत"
|
|
102
|
+
limits.unavailable "अनुपलब्ध"
|
|
103
|
+
limits.unlimited "असीमित"
|
|
104
|
+
limits.used "उपयोग"
|
|
105
|
+
limits.week "सप्ताह"
|
|
106
|
+
limits.weekly "साप्ताहिक"
|
|
69
107
|
telegram.fetching_limits "🔄 उपयोग सीमाएँ प्राप्त की जा रही हैं..."
|
|
70
108
|
telegram.gathering_version "🔄 संस्करण जानकारी एकत्र की जा रही है..."
|
|
71
109
|
telegram.usage_limits_title "📊 *उपयोग सीमाएँ*"
|
|
@@ -87,6 +125,92 @@ hi
|
|
|
87
125
|
telegram.language_invalid "❌ अमान्य भाषा। समर्थित: {{supported}}।\nउपयोग: /language <कोड>"
|
|
88
126
|
telegram.language_set "✅ भाषा सेट: *{{language}}*।"
|
|
89
127
|
telegram.language_current "🌐 वर्तमान भाषा: *{{language}}*।\nसमर्थित: {{supported}}।\nउपयोग: /language <कोड>"
|
|
128
|
+
telegram.yes "✅ हाँ"
|
|
129
|
+
telegram.no "❌ नहीं"
|
|
130
|
+
telegram.info_requested_by_label "अनुरोधकर्ता"
|
|
131
|
+
telegram.info_issue_label "Issue"
|
|
132
|
+
telegram.info_pull_request_label "Pull request"
|
|
133
|
+
telegram.info_url_label "URL"
|
|
134
|
+
telegram.info_options_label "🛠 विकल्प"
|
|
135
|
+
telegram.info_locked_options_label "🔒 लॉक किए गए विकल्प"
|
|
136
|
+
telegram.help_title "🤖 *SwarmMindBot मदद*"
|
|
137
|
+
telegram.help_status_stopped "🛑 *बॉट स्थिति: बंद*"
|
|
138
|
+
telegram.help_reason "कारण: {{reason}}"
|
|
139
|
+
telegram.help_stopped "बंद किया गया: {{stoppedAt}}"
|
|
140
|
+
telegram.help_resume "फिर से शुरू करने के लिए /start उपयोग करें (केवल chat owner)।"
|
|
141
|
+
telegram.help_diagnostic_information "📋 *डायग्नोस्टिक जानकारी:*"
|
|
142
|
+
telegram.help_chat_id "• Chat ID: `{{chatId}}`"
|
|
143
|
+
telegram.help_topic_id "• Topic ID: `{{topicId}}`"
|
|
144
|
+
telegram.help_chat_type "• Chat type: {{chatType}}"
|
|
145
|
+
telegram.help_chat_title "• Chat title: {{chatTitle}}"
|
|
146
|
+
telegram.help_available_commands "📝 *उपलब्ध कमांड:*"
|
|
147
|
+
telegram.help_solve_enabled "*/solve* (aliases: */do*, */continue*, */claude*, */codex*, */opencode*, */agent*, */gemini*, */qwen*) - GitHub issue हल करें"
|
|
148
|
+
telegram.help_solve_usage "उपयोग: `/solve <github-url> [options]`"
|
|
149
|
+
telegram.help_solve_example "उदाहरण: `/solve https://github.com/owner/repo/issues/123 --model sonnet`"
|
|
150
|
+
telegram.help_solve_alias_detail "Tool aliases `--tool <tool>` लगाते हैं: `/codex <github-url>` का अर्थ `/solve <github-url> --tool codex` है"
|
|
151
|
+
telegram.help_solve_reply "या GitHub लिंक वाले संदेश का उत्तर दें: `/solve`"
|
|
152
|
+
telegram.help_solve_disabled "*/solve* (aliases: */do*, */continue*, */claude*, */codex*, */opencode*, */agent*, */gemini*, */qwen*) - ❌ अक्षम"
|
|
153
|
+
telegram.help_locked_options "🔒 लॉक किए गए विकल्प: `{{options}}`"
|
|
154
|
+
telegram.help_task_enabled "*/task* - repository लिंक और issue text से GitHub issue बनाएँ"
|
|
155
|
+
telegram.help_task_usage "उपयोग: `/task <github-repository-url>` के बाद issue text, या `/task` से reply करें"
|
|
156
|
+
telegram.help_task_example "उदाहरण: `/task https://github.com/owner/repo`, फिर अगली पंक्तियों में issue text"
|
|
157
|
+
telegram.help_split_enabled "*/split* - GitHub issue को छोटे issues में बाँटें"
|
|
158
|
+
telegram.help_split_usage "उपयोग: `/split <github-issue-url> [options]` या `/task --split <github-issue-url>`"
|
|
159
|
+
telegram.help_split_example "उदाहरण: `/split https://github.com/owner/repo/issues/123 --split-count 2`"
|
|
160
|
+
telegram.help_task_disabled "*/task* / */split* - ❌ अक्षम"
|
|
161
|
+
telegram.help_hive_enabled "*/hive* - hive command चलाएँ"
|
|
162
|
+
telegram.help_hive_usage "उपयोग: `/hive <github-url> [options]`"
|
|
163
|
+
telegram.help_hive_example "उदाहरण: `/hive https://github.com/owner/repo`"
|
|
164
|
+
telegram.help_hive_disabled "*/hive* - ❌ अक्षम"
|
|
165
|
+
telegram.help_solve_queue "`/solve_queue` - solve queue status दिखाएँ"
|
|
166
|
+
telegram.help_limits "*/limits* - उपयोग सीमाएँ दिखाएँ"
|
|
167
|
+
telegram.help_version "*/version* - bot और runtime versions दिखाएँ"
|
|
168
|
+
telegram.help_language "*/language* `[en|ru|zh|hi]` - अपनी पसंदीदा reply language सेट या दिखाएँ (in-memory, per-user)"
|
|
169
|
+
telegram.help_accept_invites "`/accept_invites` - सभी pending GitHub invitations स्वीकार करें"
|
|
170
|
+
telegram.help_merge "*/merge* - Merge queue (experimental)"
|
|
171
|
+
telegram.help_merge_usage "उपयोग: `/merge <github-repo-url>`"
|
|
172
|
+
telegram.help_merge_description "'ready' label वाले सभी PRs को क्रम से merge करता है।"
|
|
173
|
+
telegram.help_subscribe "*/subscribe* / */unsubscribe* - 🔔 /solve completion की private DM forwarding पाएँ (experimental, #1688)"
|
|
174
|
+
telegram.help_help "*/help* - यह help message दिखाएँ"
|
|
175
|
+
telegram.help_stop_start "*/stop* / */start* - नए tasks स्वीकार करना रोकें या फिर शुरू करें (केवल owner)"
|
|
176
|
+
telegram.help_stop_uuid "*/stop* `<uuid>` - isolated solve/hive session को CTRL+C भेजें (केवल owner)। UUID वाले message पर reply के रूप में भी काम करता है।"
|
|
177
|
+
telegram.help_log "*/log* - isolated session log लाएँ (केवल owner)। उपयोग: `/log <uuid>` या `/log` से reply करें"
|
|
178
|
+
telegram.help_terminal_watch "*/terminal\\_watch* - isolated session log को live-update करें (केवल owner)। उपयोग: `/terminal_watch <uuid>` या `/terminal_watch` से reply करें"
|
|
179
|
+
telegram.help_notifications "🔔 *Session Notifications:* completion notifications automatic हैं; private DM forwards के लिए /subscribe उपयोग करें।"
|
|
180
|
+
telegram.help_isolation_mode "🔒 *Isolation Mode:* `{{isolationBackend}}` (experimental)"
|
|
181
|
+
telegram.help_group_note "⚠️ *नोट:* /solve, /do, /continue, /claude, /codex, /opencode, /agent, /gemini, /qwen, /task, /split, /hive, /solve\\_queue, /limits, /version, /accept\\_invites, /merge, /stop और /start commands केवल group chats में काम करती हैं। /terminal\\_watch, /subscribe और /unsubscribe private और group chats में काम करती हैं।"
|
|
182
|
+
telegram.help_common_options "🔧 *Common Options:*"
|
|
183
|
+
telegram.help_model_option "• `--model <model>` या `-m` - {{modelDescription}}"
|
|
184
|
+
telegram.help_base_branch_option "• `--base-branch <branch>` या `-b` - PR के लिए target branch (default: repo default branch)"
|
|
185
|
+
telegram.help_think_option "• `--think <level>` - thinking level (off/low/medium/high/xhigh/max) | `--thinking-budget <num>` - token budget (0-63999)"
|
|
186
|
+
telegram.help_verbose_option "• `--verbose` या `-v` - verbose output | `--attach-logs` - logs को PR से attach करें"
|
|
187
|
+
telegram.help_show_limits_option "• `--show-limits` - Experimental: start, end और delta पर Claude/Codex usage जोड़ें (#594)"
|
|
188
|
+
telegram.help_tip "💡 *Tip:* और भी options उपलब्ध हैं। पूरी सूची documentation में देखें।"
|
|
189
|
+
telegram.help_restricted_mode "🔒 *Restricted Mode:* Authorized: {{authorized}}"
|
|
190
|
+
telegram.help_allow_topic_hint "💡 इस topic को allow करने के लिए: `{{allowTopicHint}}`"
|
|
191
|
+
telegram.help_troubleshooting_header "🔧 *Troubleshooting:*"
|
|
192
|
+
telegram.help_troubleshooting_body "अगर bot messages नहीं पा रहा है:\n1. @BotFather में privacy mode जाँचें\n • @BotFather को `/setprivacy` भेजें\n • अपने bot के लिए 'Disable' चुनें\n • bot को group से हटाकर फिर जोड़ें\n2. या bot को group admin बनाएँ\n3. diagnostics के लिए `--verbose` flag से bot restart करें"
|
|
193
|
+
telegram.solve_queued "📋 solve command queue में जोड़ी गई ({{tool}} queue position #{{position}})"
|
|
194
|
+
telegram.solve_waiting "⏳ प्रतीक्षा में ({{tool}} queue #{{position}})"
|
|
195
|
+
telegram.waiting_label "⏳ प्रतीक्षा"
|
|
196
|
+
telegram.reason_label "कारण"
|
|
197
|
+
telegram.did_you_mean "💡 क्या आपका मतलब था: `{{suggestion}}`"
|
|
198
|
+
telegram.solve_invalid_url_help "उदाहरण: `/solve https://github.com/owner/repo/issues/123`\n\nया GitHub link वाले message का `/solve` से reply करें"
|
|
199
|
+
telegram.hive_invalid_url_help "उदाहरण: `/hive https://github.com/owner/repo`"
|
|
200
|
+
telegram.missing_github_url "GitHub URL नहीं मिला। उपयोग: /{{commandName}} <github-url> [options]"
|
|
201
|
+
telegram.first_arg_must_be_github_url "पहला argument GitHub URL होना चाहिए"
|
|
202
|
+
telegram.url_issues_list_error "URL issues list page पर जाता है, लेकिन एक specific issue चाहिए\n\n💡 कैसे ठीक करें:\n1. repository खोलें: {{url}}\n2. किसी specific issue पर click करें\n3. URL copy करें (यह /issues/NUMBER पर समाप्त होना चाहिए)\n\nउदाहरण: `{{example}}`"
|
|
203
|
+
telegram.url_pulls_list_error "URL pull requests list page पर जाता है, लेकिन एक specific pull request चाहिए\n\n💡 कैसे ठीक करें:\n1. repository खोलें: {{url}}\n2. किसी specific pull request पर click करें\n3. URL copy करें (यह /pull/NUMBER पर समाप्त होना चाहिए)\n\nउदाहरण: `{{example}}`"
|
|
204
|
+
telegram.url_repo_error "URL repository पर जाता है, लेकिन specific {{allowedTypes}} चाहिए\n\n💡 कैसे ठीक करें:\n1. यहाँ जाएँ: {{url}}/issues\n2. हल करने के लिए issue पर click करें\n3. issue number वाला पूरा URL उपयोग करें\n\nउदाहरण: `{{example}}`"
|
|
205
|
+
telegram.url_must_be_type "URL GitHub {{allowedTypes}} होना चाहिए ({{type}} नहीं)"
|
|
206
|
+
telegram.work_session_starting "🔄 शुरू हो रहा है..."
|
|
207
|
+
telegram.work_session_executing "⏳ चल रहा है..."
|
|
208
|
+
telegram.work_session_finished "कार्य सत्र सफलतापूर्वक पूरा हुआ"
|
|
209
|
+
telegram.work_session_failed "कार्य सत्र विफल हुआ (exit code: {{exitCode}})"
|
|
210
|
+
telegram.duration_label "अवधि"
|
|
211
|
+
telegram.session_label "सत्र"
|
|
212
|
+
telegram.isolation_label "Isolation"
|
|
213
|
+
telegram.error_executing_command "❌ {{commandName}} command चलाने में त्रुटि"
|
|
90
214
|
language.en "अंग्रेज़ी"
|
|
91
215
|
language.ru "रूसी"
|
|
92
216
|
language.zh "चीनी"
|
package/src/locales/ru.lino
CHANGED
|
@@ -66,6 +66,44 @@ ru
|
|
|
66
66
|
process.command "Команда: {{command}}"
|
|
67
67
|
check.number "Проверка #{{iteration}}:"
|
|
68
68
|
time.current "Текущее время: {{time}}"
|
|
69
|
+
limits.additional_codex_limits "Дополнительные лимиты Codex"
|
|
70
|
+
limits.balance "баланс"
|
|
71
|
+
limits.claude_5_hour_session "5-часовой сеанс Claude"
|
|
72
|
+
limits.claude_limits "Лимиты Claude"
|
|
73
|
+
limits.codex_5_hour_session "5-часовой сеанс Codex"
|
|
74
|
+
limits.codex_credits "Кредиты Codex"
|
|
75
|
+
limits.codex_limits "Лимиты Codex"
|
|
76
|
+
limits.cpu "CPU"
|
|
77
|
+
limits.cpu_cores_used "используемых ядер CPU"
|
|
78
|
+
limits.current_time "Текущее время"
|
|
79
|
+
limits.current_week_all_models "Текущая неделя (все модели)"
|
|
80
|
+
limits.current_week_sonnet_only "Текущая неделя (только Sonnet)"
|
|
81
|
+
limits.disabled_by_admin "`--show-limits` отключён администратором бота."
|
|
82
|
+
limits.disk_space "Дисковое пространство"
|
|
83
|
+
limits.end "Конец"
|
|
84
|
+
limits.five_hour_session "5-часовой сеанс"
|
|
85
|
+
limits.five_min_load_avg "средняя нагрузка за 5 мин"
|
|
86
|
+
limits.github_api "GitHub API"
|
|
87
|
+
limits.limits_at_end "Лимиты в конце"
|
|
88
|
+
limits.limits_at_start "Лимиты в начале"
|
|
89
|
+
limits.limits_change "Изменение лимитов"
|
|
90
|
+
limits.na "Н/Д"
|
|
91
|
+
limits.note_delta_approx "Примечание: дельта приблизительная (параллельные сеансы используют общий бюджет)."
|
|
92
|
+
limits.passed "прошло"
|
|
93
|
+
limits.plan "План"
|
|
94
|
+
limits.ram "RAM"
|
|
95
|
+
limits.requests "запросов"
|
|
96
|
+
limits.resets_at "Сброс {{time}}"
|
|
97
|
+
limits.resets_in "Сброс через {{duration}}"
|
|
98
|
+
limits.seven_day_all_models "7 дней, все модели"
|
|
99
|
+
limits.seven_day_sonnet_only "7 дней, только Sonnet"
|
|
100
|
+
limits.session "сеанс"
|
|
101
|
+
limits.start "Начало"
|
|
102
|
+
limits.unavailable "недоступно"
|
|
103
|
+
limits.unlimited "без ограничений"
|
|
104
|
+
limits.used "использовано"
|
|
105
|
+
limits.week "неделя"
|
|
106
|
+
limits.weekly "Неделя"
|
|
69
107
|
telegram.fetching_limits "🔄 Получение лимитов использования..."
|
|
70
108
|
telegram.gathering_version "🔄 Сбор информации о версии..."
|
|
71
109
|
telegram.usage_limits_title "📊 *Лимиты использования*"
|
|
@@ -87,6 +125,92 @@ ru
|
|
|
87
125
|
telegram.language_invalid "❌ Неверный язык. Поддерживаются: {{supported}}.\nИспользование: /language <код>"
|
|
88
126
|
telegram.language_set "✅ Язык установлен: *{{language}}*."
|
|
89
127
|
telegram.language_current "🌐 Текущий язык: *{{language}}*.\nПоддерживаются: {{supported}}.\nИспользование: /language <код>"
|
|
128
|
+
telegram.yes "✅ Да"
|
|
129
|
+
telegram.no "❌ Нет"
|
|
130
|
+
telegram.info_requested_by_label "Запросил"
|
|
131
|
+
telegram.info_issue_label "Задача"
|
|
132
|
+
telegram.info_pull_request_label "Pull request"
|
|
133
|
+
telegram.info_url_label "URL"
|
|
134
|
+
telegram.info_options_label "🛠 Опции"
|
|
135
|
+
telegram.info_locked_options_label "🔒 Заблокированные опции"
|
|
136
|
+
telegram.help_title "🤖 *Справка SwarmMindBot*"
|
|
137
|
+
telegram.help_status_stopped "🛑 *Статус бота: ОСТАНОВЛЕН*"
|
|
138
|
+
telegram.help_reason "Причина: {{reason}}"
|
|
139
|
+
telegram.help_stopped "Остановлен: {{stoppedAt}}"
|
|
140
|
+
telegram.help_resume "Используйте /start (только владелец чата), чтобы возобновить работу."
|
|
141
|
+
telegram.help_diagnostic_information "📋 *Диагностическая информация:*"
|
|
142
|
+
telegram.help_chat_id "• ID чата: `{{chatId}}`"
|
|
143
|
+
telegram.help_topic_id "• ID темы: `{{topicId}}`"
|
|
144
|
+
telegram.help_chat_type "• Тип чата: {{chatType}}"
|
|
145
|
+
telegram.help_chat_title "• Название чата: {{chatTitle}}"
|
|
146
|
+
telegram.help_available_commands "📝 *Доступные команды:*"
|
|
147
|
+
telegram.help_solve_enabled "*/solve* (алиасы: */do*, */continue*, */claude*, */codex*, */opencode*, */agent*, */gemini*, */qwen*) - Решить задачу GitHub"
|
|
148
|
+
telegram.help_solve_usage "Использование: `/solve <github-url> [options]`"
|
|
149
|
+
telegram.help_solve_example "Пример: `/solve https://github.com/owner/repo/issues/123 --model sonnet`"
|
|
150
|
+
telegram.help_solve_alias_detail "Алиасы инструментов добавляют `--tool <tool>`: `/codex <github-url>` равно `/solve <github-url> --tool codex`"
|
|
151
|
+
telegram.help_solve_reply "Или ответьте на сообщение со ссылкой GitHub: `/solve`"
|
|
152
|
+
telegram.help_solve_disabled "*/solve* (алиасы: */do*, */continue*, */claude*, */codex*, */opencode*, */agent*, */gemini*, */qwen*) - ❌ Отключено"
|
|
153
|
+
telegram.help_locked_options "🔒 Заблокированные опции: `{{options}}`"
|
|
154
|
+
telegram.help_task_enabled "*/task* - Создать задачу GitHub из ссылки на репозиторий и текста задачи"
|
|
155
|
+
telegram.help_task_usage "Использование: `/task <github-repository-url>` с текстом задачи после команды или ответом `/task`"
|
|
156
|
+
telegram.help_task_example "Пример: `/task https://github.com/owner/repo`, затем текст задачи на следующих строках"
|
|
157
|
+
telegram.help_split_enabled "*/split* - Разделить задачу GitHub на меньшие задачи"
|
|
158
|
+
telegram.help_split_usage "Использование: `/split <github-issue-url> [options]` или `/task --split <github-issue-url>`"
|
|
159
|
+
telegram.help_split_example "Пример: `/split https://github.com/owner/repo/issues/123 --split-count 2`"
|
|
160
|
+
telegram.help_task_disabled "*/task* / */split* - ❌ Отключено"
|
|
161
|
+
telegram.help_hive_enabled "*/hive* - Выполнить команду hive"
|
|
162
|
+
telegram.help_hive_usage "Использование: `/hive <github-url> [options]`"
|
|
163
|
+
telegram.help_hive_example "Пример: `/hive https://github.com/owner/repo`"
|
|
164
|
+
telegram.help_hive_disabled "*/hive* - ❌ Отключено"
|
|
165
|
+
telegram.help_solve_queue "`/solve_queue` - Показать состояние очереди solve"
|
|
166
|
+
telegram.help_limits "*/limits* - Показать лимиты использования"
|
|
167
|
+
telegram.help_version "*/version* - Показать версии бота и среды выполнения"
|
|
168
|
+
telegram.help_language "*/language* `[en|ru|zh|hi]` - Установить или показать предпочитаемый язык ответов (в памяти, для пользователя)"
|
|
169
|
+
telegram.help_accept_invites "`/accept_invites` - Принять все ожидающие приглашения GitHub"
|
|
170
|
+
telegram.help_merge "*/merge* - Очередь слияния (экспериментально)"
|
|
171
|
+
telegram.help_merge_usage "Использование: `/merge <github-repo-url>`"
|
|
172
|
+
telegram.help_merge_description "Последовательно сливает все PR с меткой 'ready'."
|
|
173
|
+
telegram.help_subscribe "*/subscribe* / */unsubscribe* - 🔔 Получать личную пересылку завершения /solve (экспериментально, #1688)"
|
|
174
|
+
telegram.help_help "*/help* - Показать это справочное сообщение"
|
|
175
|
+
telegram.help_stop_start "*/stop* / */start* - Остановить или возобновить прием новых задач (только владелец)"
|
|
176
|
+
telegram.help_stop_uuid "*/stop* `<uuid>` - Отправить CTRL+C в изолированный сеанс solve/hive (только владелец). Также работает ответом на сообщение с UUID."
|
|
177
|
+
telegram.help_log "*/log* - Получить лог изолированного сеанса (только владелец). Использование: `/log <uuid>` или ответ `/log`"
|
|
178
|
+
telegram.help_terminal_watch "*/terminal\\_watch* - Обновлять лог изолированного сеанса вживую (только владелец). Использование: `/terminal_watch <uuid>` или ответ `/terminal_watch`"
|
|
179
|
+
telegram.help_notifications "🔔 *Уведомления о сеансах:* Уведомления о завершении автоматические; используйте /subscribe для личных пересылок."
|
|
180
|
+
telegram.help_isolation_mode "🔒 *Режим изоляции:* `{{isolationBackend}}` (экспериментально)"
|
|
181
|
+
telegram.help_group_note "⚠️ *Замечание:* команды /solve, /do, /continue, /claude, /codex, /opencode, /agent, /gemini, /qwen, /task, /split, /hive, /solve\\_queue, /limits, /version, /accept\\_invites, /merge, /stop и /start работают только в групповых чатах. /terminal\\_watch, /subscribe и /unsubscribe работают в личных и групповых чатах."
|
|
182
|
+
telegram.help_common_options "🔧 *Общие опции:*"
|
|
183
|
+
telegram.help_model_option "• `--model <model>` или `-m` - {{modelDescription}}"
|
|
184
|
+
telegram.help_base_branch_option "• `--base-branch <branch>` или `-b` - Целевая ветка для PR (по умолчанию ветка репозитория)"
|
|
185
|
+
telegram.help_think_option "• `--think <level>` - уровень размышления (off/low/medium/high/xhigh/max) | `--thinking-budget <num>` - бюджет токенов (0-63999)"
|
|
186
|
+
telegram.help_verbose_option "• `--verbose` или `-v` - подробный вывод | `--attach-logs` - прикрепить логи к PR"
|
|
187
|
+
telegram.help_show_limits_option "• `--show-limits` - Экспериментально: добавить использование Claude/Codex в начале, в конце и дельту (#594)"
|
|
188
|
+
telegram.help_tip "💡 *Подсказка:* Доступно больше опций. Полный список смотрите в документации."
|
|
189
|
+
telegram.help_restricted_mode "🔒 *Ограниченный режим:* Авторизован: {{authorized}}"
|
|
190
|
+
telegram.help_allow_topic_hint "💡 Чтобы разрешить эту тему: `{{allowTopicHint}}`"
|
|
191
|
+
telegram.help_troubleshooting_header "🔧 *Диагностика:*"
|
|
192
|
+
telegram.help_troubleshooting_body "Если бот не получает сообщения:\n1. Проверьте privacy mode в @BotFather\n • Отправьте `/setprivacy` в @BotFather\n • Выберите 'Disable' для вашего бота\n • Удалите бота из группы и добавьте снова\n2. Или сделайте бота администратором группы\n3. Перезапустите бота с флагом `--verbose` для диагностики"
|
|
193
|
+
telegram.solve_queued "📋 Команда solve поставлена в очередь (позиция #{{position}} в очереди {{tool}})"
|
|
194
|
+
telegram.solve_waiting "⏳ Ожидание (очередь {{tool}} #{{position}})"
|
|
195
|
+
telegram.waiting_label "⏳ Ожидание"
|
|
196
|
+
telegram.reason_label "Причина"
|
|
197
|
+
telegram.did_you_mean "💡 Вы имели в виду: `{{suggestion}}`"
|
|
198
|
+
telegram.solve_invalid_url_help "Пример: `/solve https://github.com/owner/repo/issues/123`\n\nИли ответьте `/solve` на сообщение со ссылкой GitHub"
|
|
199
|
+
telegram.hive_invalid_url_help "Пример: `/hive https://github.com/owner/repo`"
|
|
200
|
+
telegram.missing_github_url "Не указан GitHub URL. Использование: /{{commandName}} <github-url> [options]"
|
|
201
|
+
telegram.first_arg_must_be_github_url "Первый аргумент должен быть GitHub URL"
|
|
202
|
+
telegram.url_issues_list_error "URL ведет на список задач, но нужна конкретная задача\n\n💡 Как исправить:\n1. Откройте репозиторий: {{url}}\n2. Нажмите на конкретную задачу\n3. Скопируйте URL (он должен заканчиваться на /issues/NUMBER)\n\nПример: `{{example}}`"
|
|
203
|
+
telegram.url_pulls_list_error "URL ведет на список pull request'ов, но нужен конкретный pull request\n\n💡 Как исправить:\n1. Откройте репозиторий: {{url}}\n2. Нажмите на конкретный pull request\n3. Скопируйте URL (он должен заканчиваться на /pull/NUMBER)\n\nПример: `{{example}}`"
|
|
204
|
+
telegram.url_repo_error "URL ведет на репозиторий, но нужен конкретный {{allowedTypes}}\n\n💡 Как исправить:\n1. Перейдите: {{url}}/issues\n2. Нажмите на задачу для решения\n3. Используйте полный URL с номером задачи\n\nПример: `{{example}}`"
|
|
205
|
+
telegram.url_must_be_type "URL должен быть GitHub {{allowedTypes}} (не {{type}})"
|
|
206
|
+
telegram.work_session_starting "🔄 Запуск..."
|
|
207
|
+
telegram.work_session_executing "⏳ Выполняется..."
|
|
208
|
+
telegram.work_session_finished "Рабочий сеанс успешно завершен"
|
|
209
|
+
telegram.work_session_failed "Рабочий сеанс завершился с ошибкой (код выхода: {{exitCode}})"
|
|
210
|
+
telegram.duration_label "Длительность"
|
|
211
|
+
telegram.session_label "Сеанс"
|
|
212
|
+
telegram.isolation_label "Изоляция"
|
|
213
|
+
telegram.error_executing_command "❌ Ошибка выполнения команды {{commandName}}"
|
|
90
214
|
language.en "Английский"
|
|
91
215
|
language.ru "Русский"
|
|
92
216
|
language.zh "Китайский"
|
package/src/locales/zh.lino
CHANGED
|
@@ -66,6 +66,44 @@ zh
|
|
|
66
66
|
process.command "命令:{{command}}"
|
|
67
67
|
check.number "检查 #{{iteration}}:"
|
|
68
68
|
time.current "当前时间:{{time}}"
|
|
69
|
+
limits.additional_codex_limits "其他 Codex 限额"
|
|
70
|
+
limits.balance "余额"
|
|
71
|
+
limits.claude_5_hour_session "Claude 5 小时会话"
|
|
72
|
+
limits.claude_limits "Claude 限额"
|
|
73
|
+
limits.codex_5_hour_session "Codex 5 小时会话"
|
|
74
|
+
limits.codex_credits "Codex 点数"
|
|
75
|
+
limits.codex_limits "Codex 限额"
|
|
76
|
+
limits.cpu "CPU"
|
|
77
|
+
limits.cpu_cores_used "已用 CPU 核心"
|
|
78
|
+
limits.current_time "当前时间"
|
|
79
|
+
limits.current_week_all_models "本周(所有模型)"
|
|
80
|
+
limits.current_week_sonnet_only "本周(仅 Sonnet)"
|
|
81
|
+
limits.disabled_by_admin "`--show-limits` 已被机器人管理员禁用。"
|
|
82
|
+
limits.disk_space "磁盘空间"
|
|
83
|
+
limits.end "结束"
|
|
84
|
+
limits.five_hour_session "5 小时会话"
|
|
85
|
+
limits.five_min_load_avg "5 分钟平均负载"
|
|
86
|
+
limits.github_api "GitHub API"
|
|
87
|
+
limits.limits_at_end "结束时限额"
|
|
88
|
+
limits.limits_at_start "开始时限额"
|
|
89
|
+
limits.limits_change "限额变化"
|
|
90
|
+
limits.na "不可用"
|
|
91
|
+
limits.note_delta_approx "注意:变化值为近似值(并行会话共享同一预算)。"
|
|
92
|
+
limits.passed "已过"
|
|
93
|
+
limits.plan "方案"
|
|
94
|
+
limits.ram "内存"
|
|
95
|
+
limits.requests "请求"
|
|
96
|
+
limits.resets_at "{{time}} 重置"
|
|
97
|
+
limits.resets_in "{{duration}} 后重置"
|
|
98
|
+
limits.seven_day_all_models "7 天所有模型"
|
|
99
|
+
limits.seven_day_sonnet_only "7 天仅 Sonnet"
|
|
100
|
+
limits.session "会话"
|
|
101
|
+
limits.start "开始"
|
|
102
|
+
limits.unavailable "不可用"
|
|
103
|
+
limits.unlimited "无限"
|
|
104
|
+
limits.used "已用"
|
|
105
|
+
limits.week "周"
|
|
106
|
+
limits.weekly "每周"
|
|
69
107
|
telegram.fetching_limits "🔄 正在获取使用限额……"
|
|
70
108
|
telegram.gathering_version "🔄 正在收集版本信息……"
|
|
71
109
|
telegram.usage_limits_title "📊 *使用限额*"
|
|
@@ -87,6 +125,92 @@ zh
|
|
|
87
125
|
telegram.language_invalid "❌ 语言无效。支持的语言:{{supported}}。\n用法:/language <代码>"
|
|
88
126
|
telegram.language_set "✅ 语言已设置为 *{{language}}*。"
|
|
89
127
|
telegram.language_current "🌐 当前语言:*{{language}}*。\n支持的语言:{{supported}}。\n用法:/language <代码>"
|
|
128
|
+
telegram.yes "✅ 是"
|
|
129
|
+
telegram.no "❌ 否"
|
|
130
|
+
telegram.info_requested_by_label "请求者"
|
|
131
|
+
telegram.info_issue_label "Issue"
|
|
132
|
+
telegram.info_pull_request_label "Pull request"
|
|
133
|
+
telegram.info_url_label "URL"
|
|
134
|
+
telegram.info_options_label "🛠 选项"
|
|
135
|
+
telegram.info_locked_options_label "🔒 锁定选项"
|
|
136
|
+
telegram.help_title "🤖 *SwarmMindBot 帮助*"
|
|
137
|
+
telegram.help_status_stopped "🛑 *机器人状态:已停止*"
|
|
138
|
+
telegram.help_reason "原因:{{reason}}"
|
|
139
|
+
telegram.help_stopped "停止时间:{{stoppedAt}}"
|
|
140
|
+
telegram.help_resume "使用 /start(仅聊天所有者)恢复。"
|
|
141
|
+
telegram.help_diagnostic_information "📋 *诊断信息:*"
|
|
142
|
+
telegram.help_chat_id "• 聊天 ID:`{{chatId}}`"
|
|
143
|
+
telegram.help_topic_id "• 话题 ID:`{{topicId}}`"
|
|
144
|
+
telegram.help_chat_type "• 聊天类型:{{chatType}}"
|
|
145
|
+
telegram.help_chat_title "• 聊天标题:{{chatTitle}}"
|
|
146
|
+
telegram.help_available_commands "📝 *可用命令:*"
|
|
147
|
+
telegram.help_solve_enabled "*/solve*(别名:*/do*、*/continue*、*/claude*、*/codex*、*/opencode*、*/agent*、*/gemini*、*/qwen*)- 解决 GitHub issue"
|
|
148
|
+
telegram.help_solve_usage "用法:`/solve <github-url> [options]`"
|
|
149
|
+
telegram.help_solve_example "示例:`/solve https://github.com/owner/repo/issues/123 --model sonnet`"
|
|
150
|
+
telegram.help_solve_alias_detail "工具别名会添加 `--tool <tool>`:`/codex <github-url>` 等同于 `/solve <github-url> --tool codex`"
|
|
151
|
+
telegram.help_solve_reply "也可以回复包含 GitHub 链接的消息:`/solve`"
|
|
152
|
+
telegram.help_solve_disabled "*/solve*(别名:*/do*、*/continue*、*/claude*、*/codex*、*/opencode*、*/agent*、*/gemini*、*/qwen*)- ❌ 已禁用"
|
|
153
|
+
telegram.help_locked_options "🔒 锁定选项:`{{options}}`"
|
|
154
|
+
telegram.help_task_enabled "*/task* - 根据仓库链接和 issue 文本创建 GitHub issue"
|
|
155
|
+
telegram.help_task_usage "用法:`/task <github-repository-url>` 后接 issue 文本,或回复 `/task`"
|
|
156
|
+
telegram.help_task_example "示例:`/task https://github.com/owner/repo`,然后在后续行写 issue 文本"
|
|
157
|
+
telegram.help_split_enabled "*/split* - 将 GitHub issue 拆分为更小的 issue"
|
|
158
|
+
telegram.help_split_usage "用法:`/split <github-issue-url> [options]` 或 `/task --split <github-issue-url>`"
|
|
159
|
+
telegram.help_split_example "示例:`/split https://github.com/owner/repo/issues/123 --split-count 2`"
|
|
160
|
+
telegram.help_task_disabled "*/task* / */split* - ❌ 已禁用"
|
|
161
|
+
telegram.help_hive_enabled "*/hive* - 运行 hive 命令"
|
|
162
|
+
telegram.help_hive_usage "用法:`/hive <github-url> [options]`"
|
|
163
|
+
telegram.help_hive_example "示例:`/hive https://github.com/owner/repo`"
|
|
164
|
+
telegram.help_hive_disabled "*/hive* - ❌ 已禁用"
|
|
165
|
+
telegram.help_solve_queue "`/solve_queue` - 显示 solve 队列状态"
|
|
166
|
+
telegram.help_limits "*/limits* - 显示使用限额"
|
|
167
|
+
telegram.help_version "*/version* - 显示机器人和运行时版本"
|
|
168
|
+
telegram.help_language "*/language* `[en|ru|zh|hi]` - 设置或显示首选回复语言(内存中,按用户)"
|
|
169
|
+
telegram.help_accept_invites "`/accept_invites` - 接受所有待处理的 GitHub 邀请"
|
|
170
|
+
telegram.help_merge "*/merge* - 合并队列(实验性)"
|
|
171
|
+
telegram.help_merge_usage "用法:`/merge <github-repo-url>`"
|
|
172
|
+
telegram.help_merge_description "按顺序合并所有带有 'ready' 标签的 PR。"
|
|
173
|
+
telegram.help_subscribe "*/subscribe* / */unsubscribe* - 🔔 私聊转发 /solve 完成通知(实验性,#1688)"
|
|
174
|
+
telegram.help_help "*/help* - 显示此帮助消息"
|
|
175
|
+
telegram.help_stop_start "*/stop* / */start* - 停止或恢复接收新任务(仅所有者)"
|
|
176
|
+
telegram.help_stop_uuid "*/stop* `<uuid>` - 向隔离的 solve/hive 会话发送 CTRL+C(仅所有者)。也可回复包含 UUID 的消息。"
|
|
177
|
+
telegram.help_log "*/log* - 获取隔离会话日志(仅所有者)。用法:`/log <uuid>` 或回复 `/log`"
|
|
178
|
+
telegram.help_terminal_watch "*/terminal\\_watch* - 实时更新隔离会话日志(仅所有者)。用法:`/terminal_watch <uuid>` 或回复 `/terminal_watch`"
|
|
179
|
+
telegram.help_notifications "🔔 *会话通知:* 完成通知会自动发送;使用 /subscribe 获取私聊转发。"
|
|
180
|
+
telegram.help_isolation_mode "🔒 *隔离模式:* `{{isolationBackend}}`(实验性)"
|
|
181
|
+
telegram.help_group_note "⚠️ *注意:* /solve、/do、/continue、/claude、/codex、/opencode、/agent、/gemini、/qwen、/task、/split、/hive、/solve\\_queue、/limits、/version、/accept\\_invites、/merge、/stop 和 /start 仅在群聊中有效。/terminal\\_watch、/subscribe 和 /unsubscribe 在私聊和群聊中有效。"
|
|
182
|
+
telegram.help_common_options "🔧 *常用选项:*"
|
|
183
|
+
telegram.help_model_option "• `--model <model>` 或 `-m` - {{modelDescription}}"
|
|
184
|
+
telegram.help_base_branch_option "• `--base-branch <branch>` 或 `-b` - PR 目标分支(默认:仓库默认分支)"
|
|
185
|
+
telegram.help_think_option "• `--think <level>` - 思考级别(off/low/medium/high/xhigh/max)| `--thinking-budget <num>` - token 预算(0-63999)"
|
|
186
|
+
telegram.help_verbose_option "• `--verbose` 或 `-v` - 详细输出 | `--attach-logs` - 将日志附加到 PR"
|
|
187
|
+
telegram.help_show_limits_option "• `--show-limits` - 实验性:在开始、结束和变化量中嵌入 Claude/Codex 使用情况(#594)"
|
|
188
|
+
telegram.help_tip "💡 *提示:* 还有更多选项。完整列表见文档。"
|
|
189
|
+
telegram.help_restricted_mode "🔒 *受限模式:* 已授权:{{authorized}}"
|
|
190
|
+
telegram.help_allow_topic_hint "💡 要允许此话题:`{{allowTopicHint}}`"
|
|
191
|
+
telegram.help_troubleshooting_header "🔧 *故障排查:*"
|
|
192
|
+
telegram.help_troubleshooting_body "如果机器人没有收到消息:\n1. 在 @BotFather 中检查 privacy mode\n • 向 @BotFather 发送 `/setprivacy`\n • 为你的机器人选择 'Disable'\n • 将机器人移出群组后重新加入\n2. 或将机器人设为群组管理员\n3. 使用 `--verbose` 标志重启机器人以诊断"
|
|
193
|
+
telegram.solve_queued "📋 solve 命令已入队({{tool}} 队列位置 #{{position}})"
|
|
194
|
+
telegram.solve_waiting "⏳ 等待中({{tool}} 队列 #{{position}})"
|
|
195
|
+
telegram.waiting_label "⏳ 等待"
|
|
196
|
+
telegram.reason_label "原因"
|
|
197
|
+
telegram.did_you_mean "💡 你是指:`{{suggestion}}`"
|
|
198
|
+
telegram.solve_invalid_url_help "示例:`/solve https://github.com/owner/repo/issues/123`\n\n也可以回复包含 GitHub 链接的消息并发送 `/solve`"
|
|
199
|
+
telegram.hive_invalid_url_help "示例:`/hive https://github.com/owner/repo`"
|
|
200
|
+
telegram.missing_github_url "缺少 GitHub URL。用法:/{{commandName}} <github-url> [options]"
|
|
201
|
+
telegram.first_arg_must_be_github_url "第一个参数必须是 GitHub URL"
|
|
202
|
+
telegram.url_issues_list_error "URL 指向 issue 列表页,但需要具体的 issue\n\n💡 修复方法:\n1. 打开仓库:{{url}}\n2. 点击一个具体 issue\n3. 复制 URL(应以 /issues/NUMBER 结尾)\n\n示例:`{{example}}`"
|
|
203
|
+
telegram.url_pulls_list_error "URL 指向 pull request 列表页,但需要具体的 pull request\n\n💡 修复方法:\n1. 打开仓库:{{url}}\n2. 点击一个具体 pull request\n3. 复制 URL(应以 /pull/NUMBER 结尾)\n\n示例:`{{example}}`"
|
|
204
|
+
telegram.url_repo_error "URL 指向仓库,但需要具体的 {{allowedTypes}}\n\n💡 修复方法:\n1. 前往:{{url}}/issues\n2. 点击要解决的 issue\n3. 使用包含 issue 编号的完整 URL\n\n示例:`{{example}}`"
|
|
205
|
+
telegram.url_must_be_type "URL 必须是 GitHub {{allowedTypes}}(不是 {{type}})"
|
|
206
|
+
telegram.work_session_starting "🔄 正在启动..."
|
|
207
|
+
telegram.work_session_executing "⏳ 正在执行..."
|
|
208
|
+
telegram.work_session_finished "工作会话已成功完成"
|
|
209
|
+
telegram.work_session_failed "工作会话失败(退出代码:{{exitCode}})"
|
|
210
|
+
telegram.duration_label "耗时"
|
|
211
|
+
telegram.session_label "会话"
|
|
212
|
+
telegram.isolation_label "隔离"
|
|
213
|
+
telegram.error_executing_command "❌ 执行 {{commandName}} 命令时出错"
|
|
90
214
|
language.en "英语"
|
|
91
215
|
language.ru "俄语"
|
|
92
216
|
language.zh "中文"
|
|
@@ -290,18 +290,20 @@ export async function monitorSessions(bot, verbose = false, options = {}) {
|
|
|
290
290
|
try {
|
|
291
291
|
const showLimitsLib = await import('./telegram-show-limits.lib.mjs');
|
|
292
292
|
const limitsLib = await import('./limits.lib.mjs');
|
|
293
|
+
const { lt } = await import('./limits-i18n.lib.mjs');
|
|
293
294
|
const endSnapshot = await showLimitsLib.captureLimitsSnapshot({
|
|
294
295
|
tool: sessionInfo.tool || 'claude',
|
|
295
296
|
verbose,
|
|
296
297
|
limitsLib,
|
|
297
298
|
});
|
|
298
299
|
sessionInfo.limitsAtEnd = endSnapshot;
|
|
299
|
-
const
|
|
300
|
+
const locale = sessionInfo.locale || null;
|
|
301
|
+
const deltaBlock = showLimitsLib.formatLimitsDeltaBlock(sessionInfo.limitsAtStart || null, endSnapshot, { locale });
|
|
300
302
|
if (deltaBlock) limitsExtraSections.push(deltaBlock);
|
|
301
303
|
else {
|
|
302
304
|
// Either start snapshot was missing or tool changed — fall back
|
|
303
305
|
// to a plain end-of-task snapshot so the user still sees current state.
|
|
304
|
-
const endBlock = showLimitsLib.formatLimitsSnapshotBlock(endSnapshot, { title: '
|
|
306
|
+
const endBlock = showLimitsLib.formatLimitsSnapshotBlock(endSnapshot, { title: `📊 ${lt('limits_at_end', {}, { locale })}`, locale });
|
|
305
307
|
if (endBlock) limitsExtraSections.push(endBlock);
|
|
306
308
|
}
|
|
307
309
|
} catch (limitsError) {
|