@deadragdoll/tellymcp 0.0.9 → 0.0.11
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/.env.example.client +42 -50
- package/.env.example.gateway +49 -61
- package/CHANGELOG.md +3 -3
- package/README-ru.md +205 -384
- package/README.md +195 -1194
- package/TOOLS.md +294 -377
- package/VERSION.md +36 -10
- package/config/codex/plugins/telly-workflows/.codex-plugin/plugin.json +18 -0
- package/config/codex/plugins/telly-workflows/references/invariants.md +10 -0
- package/config/codex/plugins/telly-workflows/skills/telly-browser-screenshot/SKILL.md +27 -0
- package/config/codex/plugins/telly-workflows/skills/telly-collab-artifact/SKILL.md +22 -0
- package/config/codex/plugins/telly-workflows/skills/telly-human-telegram/SKILL.md +31 -0
- package/config/codex/plugins/telly-workflows/skills/telly-partner-note/SKILL.md +36 -0
- package/config/templates/env.both.template +40 -20
- package/config/templates/env.client.template +34 -18
- package/config/templates/env.gateway.template +38 -22
- package/dist/cli.js +322 -75
- package/dist/codexPluginInstaller.js +215 -0
- package/dist/lib/mixins/session.errors.js +34 -1
- package/dist/lib/pinoTargets.js +2 -2
- package/dist/moleculer.config.js +7 -5
- package/dist/services/features/telegram-mcp/approval.service.js +1 -1
- package/dist/services/features/telegram-mcp/browser.service.js +95 -2
- package/dist/services/features/telegram-mcp/collaboration.service.js +41 -4
- package/dist/services/features/telegram-mcp/ensuredb.service.js +145 -26
- package/dist/services/features/telegram-mcp/gateway-delivery.service.js +285 -103
- package/dist/services/features/telegram-mcp/gateway-rmq.service.js +3 -2
- package/dist/services/features/telegram-mcp/gateway-socket.service.js +905 -87
- package/dist/services/features/telegram-mcp/gateway.service.js +876 -81
- package/dist/services/features/telegram-mcp/mcp-http.service.js +9 -1
- package/dist/services/features/telegram-mcp/mcp-server.service.js +17 -26
- package/dist/services/features/telegram-mcp/notify.service.js +128 -2
- package/dist/services/features/telegram-mcp/runtime.service.js +27 -7
- package/dist/services/features/telegram-mcp/session-context.service.js +29 -2
- package/dist/services/features/telegram-mcp/src/app/bootstrap/runtime.js +133 -10
- package/dist/services/features/telegram-mcp/src/app/config/env.js +161 -51
- package/dist/services/features/telegram-mcp/src/app/http.js +375 -42
- package/dist/services/features/telegram-mcp/src/app/webapp/assets.js +386 -58
- package/dist/services/features/telegram-mcp/src/app/webapp/auth.js +3 -0
- package/dist/services/features/telegram-mcp/src/app/webapp/terminal.js +12 -0
- package/dist/services/features/telegram-mcp/src/entities/request/model/schema.js +116 -104
- package/dist/services/features/telegram-mcp/src/entities/xchange/model/types.js +2 -0
- package/dist/services/features/telegram-mcp/src/features/ask-user/model/askUserTelegram.js +1 -1
- package/dist/services/features/telegram-mcp/src/features/browser/model/browserScreenshotTool.js +1 -1
- package/dist/services/features/telegram-mcp/src/features/browser/model/browserService.js +249 -19
- package/dist/services/features/telegram-mcp/src/features/collaboration/model/gatewaySessionsService.js +71 -0
- package/dist/services/features/telegram-mcp/src/features/collaboration/model/listGatewaySessionsTool.js +33 -0
- package/dist/services/features/telegram-mcp/src/features/collaboration/model/localCollaborationBackend.js +93 -82
- package/dist/services/features/telegram-mcp/src/features/collaboration/model/sendPartnerFileService.js +47 -5
- package/dist/services/features/telegram-mcp/src/features/collaboration/model/sendPartnerFileTool.js +1 -1
- package/dist/services/features/telegram-mcp/src/features/collaboration/model/sendPartnerNoteTool.js +1 -1
- package/dist/services/features/telegram-mcp/src/features/distributed-client/model/gatewayClientAccess.js +82 -0
- package/dist/services/features/telegram-mcp/src/features/distributed-client/model/gatewayCollaborationBackend.js +22 -14
- package/dist/services/features/telegram-mcp/src/features/distributed-gateway/model/gatewayHttpService.js +649 -75
- package/dist/services/features/telegram-mcp/src/features/distributed-gateway/model/remoteConsoleActionClient.js +76 -0
- package/dist/services/features/telegram-mcp/src/features/embedded-runtime/model/embeddedRuntimeBroker.js +92 -0
- package/dist/services/features/telegram-mcp/src/features/foreground-terminal/model/foregroundTerminalRuntime.js +192 -0
- package/dist/services/features/telegram-mcp/src/features/notify/model/notifyService.js +382 -3
- package/dist/services/features/telegram-mcp/src/features/notify/model/notifyTelegramTool.js +1 -1
- package/dist/services/features/telegram-mcp/src/features/notify/model/sendFileToTelegramTool.js +33 -0
- package/dist/services/features/telegram-mcp/src/features/session-context/model/clearSessionContextTool.js +1 -1
- package/dist/services/features/telegram-mcp/src/features/session-context/model/getSessionContextTool.js +1 -1
- package/dist/services/features/telegram-mcp/src/features/session-context/model/renameSessionTool.js +1 -1
- package/dist/services/features/telegram-mcp/src/features/session-context/model/sessionContextService.js +42 -200
- package/dist/services/features/telegram-mcp/src/features/session-context/model/setSessionContextTool.js +1 -1
- package/dist/services/features/telegram-mcp/src/features/terminal-buffer/model/terminalBufferService.js +96 -0
- package/dist/services/features/telegram-mcp/src/features/terminal-input/model/terminalInputService.js +97 -0
- package/dist/services/features/telegram-mcp/src/features/tools-sync/model/refreshToolsMarkdownService.js +107 -58
- package/dist/services/features/telegram-mcp/src/features/tools-sync/model/refreshToolsMarkdownTool.js +1 -1
- package/dist/services/features/telegram-mcp/src/features/xchange/model/getXchangeRecordTool.js +28 -0
- package/dist/services/features/telegram-mcp/src/features/xchange/model/listXchangeRecordsTool.js +28 -0
- package/dist/services/features/telegram-mcp/src/features/xchange/model/markXchangeRecordReadTool.js +28 -0
- package/dist/services/features/telegram-mcp/src/features/xchange/model/xchangeService.js +169 -0
- package/dist/services/features/telegram-mcp/src/processes/human-approval/model/orchestrator.js +5 -4
- package/dist/services/features/telegram-mcp/src/shared/i18n/index.js +46 -0
- package/dist/services/features/telegram-mcp/src/shared/i18n/resources/en.js +652 -0
- package/dist/services/features/telegram-mcp/src/shared/i18n/resources/ru.js +652 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/memory/processLocalSessionStore.js +27 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/object-storage/minioExchangeStore.js +11 -8
- package/dist/services/features/telegram-mcp/src/shared/integrations/redis/stateStore.js +51 -71
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/proxyFetch.js +21 -22
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transport.js +411 -6524
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportAttachmentStore.js +93 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportBroadcastActions.js +385 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportConsoleRegistry.js +143 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportConstructorWiring.js +633 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportContent.js +84 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportContext.js +78 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportDocumentActions.js +36 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportEventActions.js +292 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportFileHandoffActions.js +352 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportFormatting.js +75 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportGatewayActions.js +44 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportLifecycleActions.js +161 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportLive.js +56 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportLiveActions.js +77 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportMenuCallbacks.js +254 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportMenuFactories.js +538 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportMenuFingerprints.js +93 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportMenuFlow.js +344 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportMenuShell.js +62 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportMenuState.js +408 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportMenuText.js +216 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportMessageFlow.js +452 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportOutputActions.js +189 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportPartnerActions.js +286 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportPayloadState.js +101 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportProjectActions.js +463 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportProjectEntryActions.js +202 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportProjectEvents.js +99 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportProjectMenus.js +138 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportProjectState.js +308 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportProjectView.js +426 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportRequestFlow.js +278 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportSessionActions.js +143 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportTerminalActions.js +468 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportTerminalRuntime.js +171 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportTypes.js +2 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportUtils.js +330 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/telegram/transportXchangeState.js +107 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/terminal/client.js +255 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/terminal/ptyRegistry.js +543 -0
- package/dist/services/features/telegram-mcp/src/shared/integrations/xchange/sqliteRecordStore.js +223 -0
- package/dist/services/features/telegram-mcp/src/shared/lib/gatewayScope.js +24 -0
- package/dist/services/features/telegram-mcp/src/shared/lib/logger/logger.js +6 -0
- package/dist/services/features/telegram-mcp/src/shared/lib/project-identity/projectIdentity.js +147 -76
- package/dist/services/features/telegram-mcp/src/shared/lib/telegramXchangeRecords.js +72 -0
- package/dist/services/features/telegram-mcp/src/shared/lib/terminalPromptDetection.js +237 -0
- package/dist/services/features/telegram-mcp/src/shared/lib/version/versionHandshake.js +129 -1
- package/dist/services/features/telegram-mcp/src/shared/lib/xchangeRecordHints.js +98 -0
- package/dist/services/features/telegram-mcp/standalone-http.service.js +13 -1
- package/dist/services/features/telegram-mcp/terminal-buffer.service.js +42 -0
- package/dist/services/features/telegram-mcp/terminal-input.service.js +41 -0
- package/dist/services/features/telegram-mcp/tools-sync.service.js +16 -2
- package/dist/services/features/telegram-mcp/xchange.service.js +123 -0
- package/docs/STANDALONE-ru.md +172 -0
- package/docs/STANDALONE.md +172 -0
- package/package.json +11 -5
- package/scripts/build-package-artifact.sh +27 -0
- package/scripts/deploy-gateway.sh +64 -0
- package/scripts/deploy-onebot-branch.sh +27 -0
- package/scripts/postinstall.js +11 -36
- package/STANDALONE-ru.md +0 -274
- package/STANDALONE.md +0 -274
- package/dist/services/features/telegram-mcp/inbox.service.js +0 -33
- package/dist/services/features/telegram-mcp/pair.service.js +0 -33
- package/dist/services/features/telegram-mcp/src/app/webapp/tmux.js +0 -10
- package/dist/services/features/telegram-mcp/src/features/inbox/model/deleteTelegramInboxMessageTool.js +0 -33
- package/dist/services/features/telegram-mcp/src/features/inbox/model/getTelegramInboxCountTool.js +0 -33
- package/dist/services/features/telegram-mcp/src/features/inbox/model/getTelegramInboxTool.js +0 -33
- package/dist/services/features/telegram-mcp/src/features/inbox/model/inboxService.js +0 -77
- package/dist/services/features/telegram-mcp/src/features/pair-session/model/clearSessionPairingTool.js +0 -33
- package/dist/services/features/telegram-mcp/src/features/pair-session/model/createSessionPairCodeTool.js +0 -33
- package/dist/services/features/telegram-mcp/src/features/pair-session/model/generatePairCode.js +0 -202
- package/dist/services/features/telegram-mcp/src/features/session-context/model/getTmuxTargetTool.js +0 -33
- package/dist/services/features/telegram-mcp/src/features/session-context/model/setTmuxTargetTool.js +0 -33
- package/dist/services/features/telegram-mcp/src/shared/integrations/tmux/client.js +0 -363
package/.env.example.client
CHANGED
|
@@ -1,25 +1,21 @@
|
|
|
1
|
-
# TellyMCP
|
|
1
|
+
# TellyMCP client example
|
|
2
2
|
|
|
3
|
-
#
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
#
|
|
8
|
-
|
|
3
|
+
# Optional project label shown in prompts.
|
|
4
|
+
# PROJECT_NAME=
|
|
5
|
+
|
|
6
|
+
# Optional explicit session identity for the first run.
|
|
7
|
+
# TELLYMCP_SESSION_ID=NEW
|
|
8
|
+
# TELLYMCP_SESSION_LABEL=NEW
|
|
9
9
|
|
|
10
|
-
# Redis для состояния сессий, меню, inbox и привязок.
|
|
11
10
|
REDIS_HOST=127.0.0.1
|
|
12
11
|
REDIS_PORT=6379
|
|
13
12
|
REDIS_DB=1
|
|
14
13
|
# REDIS_USERNAME=
|
|
15
14
|
# REDIS_PASSWORD=
|
|
16
15
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
# TTL pair-code в секундах.
|
|
20
|
-
PAIR_CODE_TTL_SECONDS=600
|
|
16
|
+
MODE=reject
|
|
17
|
+
PAIR_CODE_TTL_SECONDS=300
|
|
21
18
|
|
|
22
|
-
# Локальный standalone MCP endpoint для агента в client-режиме.
|
|
23
19
|
MCP_HTTP_HOST=127.0.0.1
|
|
24
20
|
MCP_HTTP_PORT=8787
|
|
25
21
|
MCP_HTTP_PATH=/mcp
|
|
@@ -27,46 +23,48 @@ MCP_HTTP_PATH=/mcp
|
|
|
27
23
|
MCP_HTTP_ENABLE_DEBUG_ROUTES=false
|
|
28
24
|
MCP_HTTP_ENABLE_PRUNE_ROUTE=false
|
|
29
25
|
|
|
30
|
-
# Режим распределённой работы клиента.
|
|
31
26
|
DISTRIBUTED_MODE=client
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
# Публичный WS URL шлюза.
|
|
35
|
-
GATEWAY_WS_URL=
|
|
36
|
-
# WS path на шлюзе.
|
|
27
|
+
GATEWAY_PUBLIC_URL=https://your-domain.example/api/gateway
|
|
28
|
+
GATEWAY_WS_URL=wss://your-domain.example/api/gateway/ws
|
|
37
29
|
GATEWAY_WS_PATH=/api/gateway/ws
|
|
38
|
-
|
|
39
|
-
|
|
30
|
+
GATEWAY_TOKEN=change_me_gateway_token
|
|
31
|
+
GATEWAY_USER_UUID=
|
|
32
|
+
# GATEWAY_AUTH_TOKEN=
|
|
33
|
+
|
|
34
|
+
TERMINAL_SHELL=bash
|
|
35
|
+
TERMINAL_COLS=120
|
|
36
|
+
TERMINAL_ROWS=40
|
|
37
|
+
TERMINAL_SCROLLBACK_LINES=4000
|
|
40
38
|
|
|
41
|
-
|
|
39
|
+
TERMINAL_NUDGE_ENABLED=true
|
|
40
|
+
TERMINAL_NUDGE_DEBOUNCE_SECONDS=10
|
|
41
|
+
TERMINAL_NUDGE_COOLDOWN_SECONDS=30
|
|
42
|
+
TERMINAL_NUDGE_MESSAGE=получи newest telegram_message через list_xchange_records/get_xchange_record, выполни запрос и ответь человеку через notify_telegram; не останавливайся на анализе
|
|
43
|
+
TERMINAL_PARTNER_NUDGE_MESSAGE=получи newest partner_note через list_xchange_records/get_xchange_record, выполни задачу в текущей консоли и обязательно отправь результат через send_partner_note или send_partner_file; только потом mark_xchange_record_read
|
|
44
|
+
TERMINAL_PARTNER_REPLY_NUDGE_MESSAGE=получи newest partner_note через list_xchange_records/get_xchange_record; если newest note имеет kind=reply или не требует ответа, не отправляй новый send_partner_note/send_partner_file без явного нового запроса. Если этот reply завершает задачу от человека, сразу отправь финальный результат в Telegram через notify_telegram или send_file_to_telegram; только потом mark_xchange_record_read
|
|
45
|
+
TERMINAL_CAPTURE_MODE=visible
|
|
46
|
+
TERMINAL_CAPTURE_LINES=300
|
|
47
|
+
TERMINAL_PROMPT_SCAN_ENABLED=true
|
|
48
|
+
TERMINAL_PROMPT_SCAN_INTERVAL_SECONDS=15
|
|
49
|
+
TERMINAL_PROMPT_SCAN_COOLDOWN_SECONDS=120
|
|
50
|
+
TERMINAL_PROMPT_SCAN_STRATEGY=strict
|
|
51
|
+
TERMINAL_PROMPT_SCAN_MIN_SCORE=5
|
|
42
52
|
WEBAPP_ENABLED=true
|
|
43
53
|
WEBAPP_BASE_PATH=/webapp
|
|
44
|
-
|
|
54
|
+
WEBAPP_PUBLIC_URL=https://your-domain.example/api/webapp
|
|
45
55
|
WEBAPP_INITDATA_TTL_SECONDS=300
|
|
46
56
|
WEBAPP_SESSION_TTL_SECONDS=900
|
|
47
57
|
WEBAPP_LAUNCH_MODE=fullscreen
|
|
48
|
-
WEBAPP_VISIBLE_SCREENS=
|
|
58
|
+
WEBAPP_VISIBLE_SCREENS=10
|
|
49
59
|
WEBAPP_POLL_INTERVAL_MS=2000
|
|
50
60
|
WEBAPP_ACTION_COOLDOWN_MS=150
|
|
51
61
|
|
|
52
|
-
# Локальная папка обмена файлами и note.
|
|
53
62
|
MCP_XCHANGE_DIR=.mcp-xchange
|
|
54
63
|
|
|
55
|
-
# Tmux nudges и live-capture.
|
|
56
|
-
TMUX_NUDGE_ENABLED=true
|
|
57
|
-
TMUX_NUDGE_DEBOUNCE_SECONDS=10
|
|
58
|
-
TMUX_NUDGE_COOLDOWN_SECONDS=30
|
|
59
|
-
TMUX_NUDGE_MESSAGE=проверь inbox
|
|
60
|
-
TMUX_PARTNER_NUDGE_MESSAGE=не inbox: прочитай SHARED_INDEX.md и partner note
|
|
61
|
-
TMUX_CAPTURE_MODE=visible
|
|
62
|
-
TMUX_CAPTURE_LINES=300
|
|
63
|
-
# TMUX_SOCKET_PATH=
|
|
64
|
-
|
|
65
|
-
# Browser integration.
|
|
66
64
|
BROWSER_ENABLED=true
|
|
67
65
|
BROWSER_HEADLESS=false
|
|
68
66
|
BROWSER_DEVTOOLS=false
|
|
69
|
-
BROWSER_ADDRESS=http://localhost:5173
|
|
67
|
+
# BROWSER_ADDRESS=http://localhost:5173
|
|
70
68
|
BROWSER_TIMEOUT_MS=20000
|
|
71
69
|
BROWSER_MAX_EVENTS=200
|
|
72
70
|
BROWSER_WAIT_UNTIL=load
|
|
@@ -74,22 +72,16 @@ BROWSER_WAIT_UNTIL=load
|
|
|
74
72
|
# BROWSER_CHANNEL=chrome
|
|
75
73
|
BROWSER_SLOW_MO_MS=0
|
|
76
74
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
TELEGRAM_DEFAULT_TIMEOUT_SECONDS=900
|
|
80
|
-
TELEGRAM_MAX_CONTEXT_CHARS=3000
|
|
81
|
-
TELEGRAM_MAX_QUESTION_CHARS=1000
|
|
82
|
-
TELEGRAM_MAX_MESSAGE_CHARS=3900
|
|
83
|
-
TELEGRAM_INBOX_BATCH_SIZE=20
|
|
84
|
-
TELEGRAM_MENU_PAYLOAD_TTL_SECONDS=300
|
|
75
|
+
NAMESPACE=mcp
|
|
76
|
+
NODE_ID=agent
|
|
85
77
|
|
|
86
|
-
#
|
|
87
|
-
PROXY_USE=
|
|
88
|
-
HTTP_PROXY=
|
|
89
|
-
SOCKS5_PROXY=
|
|
78
|
+
# Optional outbound proxy.
|
|
79
|
+
# PROXY_USE=http
|
|
80
|
+
# HTTP_PROXY=http://user:pass@proxy.example:3128
|
|
81
|
+
# SOCKS5_PROXY=socks5h://user:pass@proxy.example:1080
|
|
90
82
|
|
|
91
|
-
# Логирование.
|
|
92
83
|
LOG_LEVEL=info
|
|
93
84
|
LOG_FILE_ENABLED=false
|
|
94
85
|
LOG_FILE_PATH=.tellymcp/log.jsonl
|
|
86
|
+
# LOG_STDERR_LEVEL=error
|
|
95
87
|
ENABLE_LOGFEED=0
|
package/.env.example.gateway
CHANGED
|
@@ -1,50 +1,46 @@
|
|
|
1
|
-
# TellyMCP
|
|
1
|
+
# TellyMCP gateway example
|
|
2
2
|
|
|
3
|
-
# Токен Telegram-бота шлюза.
|
|
4
3
|
TELEGRAM_BOT_TOKEN=
|
|
5
|
-
# Username бота, с @ или без.
|
|
6
4
|
TELEGRAM_BOT_USERNAME=
|
|
7
|
-
#
|
|
8
|
-
|
|
5
|
+
# ADMIN_TOKEN=
|
|
6
|
+
# DEBUG_LANGUAGE=ru
|
|
7
|
+
|
|
8
|
+
# Enable webhook instead of polling.
|
|
9
|
+
# TELEGRAM_WEBHOOK_ENABLED=true
|
|
10
|
+
# TELEGRAM_WEBHOOK_PATH=/telegram/webhook
|
|
11
|
+
# TELEGRAM_WEBHOOK_PUBLIC_URL=https://your-domain.example/api/telegram/webhook
|
|
12
|
+
# TELEGRAM_WEBHOOK_SECRET=change_me_webhook_secret
|
|
13
|
+
# TELEGRAM_WEBHOOK_TRACE=false
|
|
14
|
+
# TELEGRAM_WEBHOOK_DROP_PENDING_UPDATES=false
|
|
9
15
|
|
|
10
|
-
# Redis для состояния сессий, меню, inbox и привязок.
|
|
11
16
|
REDIS_HOST=127.0.0.1
|
|
12
17
|
REDIS_PORT=6379
|
|
13
18
|
REDIS_DB=1
|
|
14
19
|
# REDIS_USERNAME=
|
|
15
20
|
# REDIS_PASSWORD=
|
|
16
21
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
# TTL pair-code в секундах.
|
|
20
|
-
PAIR_CODE_TTL_SECONDS=600
|
|
22
|
+
MODE=reject
|
|
23
|
+
PAIR_CODE_TTL_SECONDS=300
|
|
21
24
|
|
|
22
|
-
# Настройки MCP endpoint. Во внешнем gateway/both bind используется PORT + ROOT_PREFIX.
|
|
23
25
|
MCP_HTTP_HOST=127.0.0.1
|
|
24
|
-
# MCP path берётся отсюда; порт служит fallback, если PORT не задан.
|
|
25
26
|
MCP_HTTP_PORT=8787
|
|
26
27
|
MCP_HTTP_PATH=/mcp
|
|
27
28
|
# MCP_HTTP_BEARER_TOKEN=
|
|
28
29
|
MCP_HTTP_ENABLE_DEBUG_ROUTES=false
|
|
29
30
|
MCP_HTTP_ENABLE_PRUNE_ROUTE=false
|
|
30
31
|
|
|
31
|
-
# Режим распределённой работы шлюза.
|
|
32
32
|
DISTRIBUTED_MODE=gateway
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
# WS path на общем ingress.
|
|
33
|
+
GATEWAY_PUBLIC_URL=https://your-domain.example/api/gateway
|
|
34
|
+
GATEWAY_WS_URL=wss://your-domain.example/api/gateway/ws
|
|
36
35
|
GATEWAY_WS_PATH=/api/gateway/ws
|
|
37
|
-
|
|
38
|
-
GATEWAY_AUTH_TOKEN=
|
|
36
|
+
GATEWAY_TOKEN=change_me_gateway_token
|
|
37
|
+
# GATEWAY_AUTH_TOKEN=
|
|
39
38
|
|
|
40
|
-
# Общий backend ingress.
|
|
41
39
|
ROOT_PREFIX=/api
|
|
42
|
-
APP_NAME=tellymcp-gateway
|
|
43
|
-
NAMESPACE=mcp
|
|
44
|
-
NODE_ID=gateway
|
|
45
40
|
PORT=8080
|
|
41
|
+
NAMESPACE=mcp
|
|
42
|
+
NODE_ID=GWAY
|
|
46
43
|
|
|
47
|
-
# Postgres для gateway metadata.
|
|
48
44
|
DB_HOST=127.0.0.1
|
|
49
45
|
DB_PORT=5432
|
|
50
46
|
DB_USER=
|
|
@@ -52,43 +48,48 @@ DB_PASSWORD=
|
|
|
52
48
|
DB_NAME=
|
|
53
49
|
DB_SCHEME=mcp
|
|
54
50
|
|
|
55
|
-
# RabbitMQ
|
|
51
|
+
# Optional RabbitMQ fanout.
|
|
56
52
|
# RMQ_HOST=127.0.0.1
|
|
57
53
|
# RMQ_PORT=5672
|
|
58
54
|
# RMQ_USER=
|
|
59
55
|
# RMQ_PASSWORD=
|
|
60
56
|
# RMQ_VHOST=/
|
|
61
|
-
# RMQ_EXCHANGE=
|
|
57
|
+
# RMQ_EXCHANGE=telegram_mcp.gateway
|
|
62
58
|
|
|
63
|
-
# Включение Telegram Mini App / Live view.
|
|
64
59
|
WEBAPP_ENABLED=true
|
|
65
60
|
WEBAPP_BASE_PATH=/webapp
|
|
66
|
-
WEBAPP_PUBLIC_URL=
|
|
61
|
+
WEBAPP_PUBLIC_URL=https://your-domain.example/api/webapp
|
|
67
62
|
WEBAPP_INITDATA_TTL_SECONDS=300
|
|
68
63
|
WEBAPP_SESSION_TTL_SECONDS=900
|
|
69
64
|
WEBAPP_LAUNCH_MODE=fullscreen
|
|
70
|
-
WEBAPP_VISIBLE_SCREENS=
|
|
65
|
+
WEBAPP_VISIBLE_SCREENS=10
|
|
71
66
|
WEBAPP_POLL_INTERVAL_MS=2000
|
|
72
67
|
WEBAPP_ACTION_COOLDOWN_MS=150
|
|
73
68
|
|
|
74
|
-
# Локальная папка обмена файлами и note.
|
|
75
69
|
MCP_XCHANGE_DIR=.mcp-xchange
|
|
76
70
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
71
|
+
TERMINAL_SHELL=bash
|
|
72
|
+
TERMINAL_COLS=120
|
|
73
|
+
TERMINAL_ROWS=40
|
|
74
|
+
TERMINAL_SCROLLBACK_LINES=4000
|
|
75
|
+
|
|
76
|
+
TERMINAL_NUDGE_ENABLED=true
|
|
77
|
+
TERMINAL_NUDGE_DEBOUNCE_SECONDS=10
|
|
78
|
+
TERMINAL_NUDGE_COOLDOWN_SECONDS=30
|
|
79
|
+
TERMINAL_NUDGE_MESSAGE=получи newest telegram_message через list_xchange_records/get_xchange_record, выполни запрос и ответь человеку через notify_telegram; не останавливайся на анализе
|
|
80
|
+
TERMINAL_PARTNER_NUDGE_MESSAGE=получи newest partner_note через list_xchange_records/get_xchange_record, выполни задачу в текущей консоли и обязательно отправь результат через send_partner_note или send_partner_file; только потом mark_xchange_record_read
|
|
81
|
+
TERMINAL_PARTNER_REPLY_NUDGE_MESSAGE=получи newest partner_note через list_xchange_records/get_xchange_record; если newest note имеет kind=reply или не требует ответа, не отправляй новый send_partner_note/send_partner_file без явного нового запроса. Если этот reply завершает задачу от человека, сразу отправь финальный результат в Telegram через notify_telegram или send_file_to_telegram; только потом mark_xchange_record_read
|
|
82
|
+
TERMINAL_CAPTURE_MODE=visible
|
|
83
|
+
TERMINAL_CAPTURE_LINES=300
|
|
84
|
+
TERMINAL_PROMPT_SCAN_ENABLED=false
|
|
85
|
+
TERMINAL_PROMPT_SCAN_INTERVAL_SECONDS=15
|
|
86
|
+
TERMINAL_PROMPT_SCAN_COOLDOWN_SECONDS=120
|
|
87
|
+
TERMINAL_PROMPT_SCAN_STRATEGY=strict
|
|
88
|
+
TERMINAL_PROMPT_SCAN_MIN_SCORE=5
|
|
89
|
+
BROWSER_ENABLED=false
|
|
89
90
|
BROWSER_HEADLESS=false
|
|
90
91
|
BROWSER_DEVTOOLS=false
|
|
91
|
-
BROWSER_ADDRESS=http://localhost:5173
|
|
92
|
+
# BROWSER_ADDRESS=http://localhost:5173
|
|
92
93
|
BROWSER_TIMEOUT_MS=20000
|
|
93
94
|
BROWSER_MAX_EVENTS=200
|
|
94
95
|
BROWSER_WAIT_UNTIL=load
|
|
@@ -96,26 +97,13 @@ BROWSER_WAIT_UNTIL=load
|
|
|
96
97
|
# BROWSER_CHANNEL=chrome
|
|
97
98
|
BROWSER_SLOW_MO_MS=0
|
|
98
99
|
|
|
99
|
-
#
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
TELEGRAM_MAX_QUESTION_CHARS=1000
|
|
104
|
-
TELEGRAM_MAX_MESSAGE_CHARS=3900
|
|
105
|
-
TELEGRAM_INBOX_BATCH_SIZE=20
|
|
106
|
-
TELEGRAM_MENU_PAYLOAD_TTL_SECONDS=300
|
|
107
|
-
|
|
108
|
-
# Необязательные прокси.
|
|
109
|
-
PROXY_USE=
|
|
110
|
-
HTTP_PROXY=
|
|
111
|
-
SOCKS5_PROXY=
|
|
100
|
+
# Optional outbound proxy.
|
|
101
|
+
# PROXY_USE=http
|
|
102
|
+
# HTTP_PROXY=http://user:pass@proxy.example:3128
|
|
103
|
+
# SOCKS5_PROXY=socks5h://user:pass@proxy.example:1080
|
|
112
104
|
|
|
113
|
-
# Логирование.
|
|
114
105
|
LOG_LEVEL=info
|
|
115
|
-
LOG_FILE_ENABLED=
|
|
106
|
+
LOG_FILE_ENABLED=true
|
|
116
107
|
LOG_FILE_PATH=.tellymcp/log.jsonl
|
|
108
|
+
# LOG_STDERR_LEVEL=error
|
|
117
109
|
ENABLE_LOGFEED=0
|
|
118
|
-
|
|
119
|
-
# Секреты шлюза.
|
|
120
|
-
SESSION_SECRET=change_me_session_secret
|
|
121
|
-
TOKEN_BINDING_SECRET=change_me_token_binding_secret
|
package/CHANGELOG.md
CHANGED
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
- сессия
|
|
51
51
|
- отправитель
|
|
52
52
|
- список файлов
|
|
53
|
-
-
|
|
53
|
+
- Добавлен унифицированный note-based обмен; позже он переведён на structured xchange records на sqlite.
|
|
54
54
|
- Добавлен `send_partner_file` для реальной передачи локального файла через partner delivery.
|
|
55
55
|
- Добавлена `TOOLS.md` hash-синхронизация между gateway и client:
|
|
56
56
|
- `session_tools` в `ws hello`
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
- безопасные packaged templates для `.env`
|
|
75
75
|
|
|
76
76
|
### Changed
|
|
77
|
-
- Полностью убран
|
|
77
|
+
- Полностью убран legacy standalone MCP transport. `telegram_mcp` работает только через REST/MCP over HTTP.
|
|
78
78
|
- Локальный standalone HTTP listener убран; `telegram_mcp` больше не поднимает отдельный сервер вне Moleculer gateway.
|
|
79
79
|
- UI Telegram переосмыслен по двум режимам:
|
|
80
80
|
- `🏠 Local` для локальной разработки и link внутри одного бота
|
|
@@ -110,7 +110,7 @@
|
|
|
110
110
|
- `npm install -g @deadragdoll/tellymcp`
|
|
111
111
|
- `tellymcp init <client|gateway|both>`
|
|
112
112
|
- `tellymcp run`
|
|
113
|
-
- старый `go/node
|
|
113
|
+
- старый `go/node terminal-proxy` path полностью удалён, поддерживается только прямой локальный terminal runtime
|
|
114
114
|
|
|
115
115
|
### Fixed
|
|
116
116
|
- Исправлен `Headers have already sent` при работе MCP/WebApp через общий HTTP runtime.
|