@grinev/opencode-telegram-bot 0.1.0 → 0.1.1
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/README.md +14 -9
- package/dist/bot/utils/keyboard.js +1 -1
- package/dist/i18n/en.js +1 -1
- package/dist/i18n/ru.js +1 -1
- package/dist/model/types.js +3 -3
- package/dist/variant/manager.js +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -167,15 +167,16 @@ npm run dev
|
|
|
167
167
|
|
|
168
168
|
### Available Scripts
|
|
169
169
|
|
|
170
|
-
| Script
|
|
171
|
-
|
|
|
172
|
-
| `npm run dev`
|
|
173
|
-
| `npm run build`
|
|
174
|
-
| `npm start`
|
|
175
|
-
| `npm run
|
|
176
|
-
| `npm run
|
|
177
|
-
| `npm
|
|
178
|
-
| `npm
|
|
170
|
+
| Script | Description |
|
|
171
|
+
| ------------------------------- | ------------------------------------ |
|
|
172
|
+
| `npm run dev` | Build and start (development) |
|
|
173
|
+
| `npm run build` | Compile TypeScript |
|
|
174
|
+
| `npm start` | Run compiled code |
|
|
175
|
+
| `npm run release:notes:preview` | Preview auto-generated release notes |
|
|
176
|
+
| `npm run lint` | ESLint check (zero warnings policy) |
|
|
177
|
+
| `npm run format` | Format code with Prettier |
|
|
178
|
+
| `npm test` | Run tests (Vitest) |
|
|
179
|
+
| `npm run test:coverage` | Tests with coverage report |
|
|
179
180
|
|
|
180
181
|
> **Note:** No file watcher or auto-restart is used. The bot maintains persistent SSE and long-polling connections — automatic restarts would break them mid-task. After making changes, restart manually with `npm run dev`.
|
|
181
182
|
|
|
@@ -200,6 +201,10 @@ npm run dev
|
|
|
200
201
|
- Make sure the CLI binary has execute permission: `chmod +x $(which opencode-telegram)`
|
|
201
202
|
- Check that the config directory is writable: `~/.config/opencode-telegram-bot/`
|
|
202
203
|
|
|
204
|
+
## Contributing
|
|
205
|
+
|
|
206
|
+
Please follow commit and release note conventions in [CONTRIBUTING.md](CONTRIBUTING.md).
|
|
207
|
+
|
|
203
208
|
## License
|
|
204
209
|
|
|
205
210
|
[MIT](LICENSE) © Ruslan Grinev
|
|
@@ -34,7 +34,7 @@ function formatContextForButton(contextInfo) {
|
|
|
34
34
|
export function createMainKeyboard(currentAgent, currentModel, contextInfo, variantName) {
|
|
35
35
|
const keyboard = new Keyboard();
|
|
36
36
|
const agentText = getAgentDisplayName(currentAgent);
|
|
37
|
-
// Format model
|
|
37
|
+
// Format model with compact provider/model text and icon
|
|
38
38
|
const modelText = formatModelForButton(currentModel.providerID, currentModel.modelID);
|
|
39
39
|
// Context text - show "0" if no data available
|
|
40
40
|
const contextText = contextInfo
|
package/dist/i18n/en.js
CHANGED
|
@@ -162,7 +162,7 @@ export const en = {
|
|
|
162
162
|
"keyboard.context": "📊 {used} / {limit} ({percent}%)",
|
|
163
163
|
"keyboard.context_empty": "📊 0",
|
|
164
164
|
"keyboard.variant": "💭 {name}",
|
|
165
|
-
"keyboard.variant_default": "
|
|
165
|
+
"keyboard.variant_default": "💡 Default",
|
|
166
166
|
"keyboard.updated": "⌨️ Keyboard updated",
|
|
167
167
|
"pinned.default_session_title": "new session",
|
|
168
168
|
"pinned.unknown": "Unknown",
|
package/dist/i18n/ru.js
CHANGED
|
@@ -162,7 +162,7 @@ export const ru = {
|
|
|
162
162
|
"keyboard.context": "📊 {used} / {limit} ({percent}%)",
|
|
163
163
|
"keyboard.context_empty": "📊 0",
|
|
164
164
|
"keyboard.variant": "💭 {name}",
|
|
165
|
-
"keyboard.variant_default": "
|
|
165
|
+
"keyboard.variant_default": "💡 Default",
|
|
166
166
|
"keyboard.updated": "⌨️ Клавиатура обновлена",
|
|
167
167
|
"pinned.default_session_title": "new session",
|
|
168
168
|
"pinned.unknown": "Unknown",
|
package/dist/model/types.js
CHANGED
|
@@ -9,11 +9,11 @@
|
|
|
9
9
|
*/
|
|
10
10
|
export function formatModelForButton(providerID, modelID) {
|
|
11
11
|
const formatted = `${providerID}/${modelID}`;
|
|
12
|
-
// Limit to ~30 characters for button width
|
|
12
|
+
// Limit to ~30 characters for button width (excluding emoji)
|
|
13
13
|
if (formatted.length > 30) {
|
|
14
|
-
return formatted.substring(0, 27)
|
|
14
|
+
return `🤖 ${formatted.substring(0, 27)}...`;
|
|
15
15
|
}
|
|
16
|
-
return formatted
|
|
16
|
+
return `🤖 ${formatted}`;
|
|
17
17
|
}
|
|
18
18
|
/**
|
|
19
19
|
* Format model for display in messages (full format)
|
package/dist/variant/manager.js
CHANGED
|
@@ -79,7 +79,7 @@ export function setCurrentVariant(variantId) {
|
|
|
79
79
|
*/
|
|
80
80
|
export function formatVariantForButton(variantId) {
|
|
81
81
|
const capitalized = variantId.charAt(0).toUpperCase() + variantId.slice(1);
|
|
82
|
-
return
|
|
82
|
+
return `💡 ${capitalized}`;
|
|
83
83
|
}
|
|
84
84
|
/**
|
|
85
85
|
* Format variant for display in messages
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@grinev/opencode-telegram-bot",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Telegram bot client for OpenCode to run and monitor coding tasks from chat.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
"dev": "npm run build && npm start",
|
|
27
27
|
"release:prepare": "node scripts/release-prepare.mjs",
|
|
28
28
|
"release:rc": "node scripts/release-prepare.mjs rc",
|
|
29
|
+
"release:notes:preview": "node scripts/release-notes-preview.mjs",
|
|
29
30
|
"lint": "eslint src --ext .ts --max-warnings=0",
|
|
30
31
|
"format": "prettier --write \"src/**/*.ts\"",
|
|
31
32
|
"test": "vitest run",
|