feat: interactive questions via Telegram inline keyboards#67
Open
salemsayed wants to merge 1 commit intoTinyAGI:mainfrom
Open
feat: interactive questions via Telegram inline keyboards#67salemsayed wants to merge 1 commit intoTinyAGI:mainfrom
salemsayed wants to merge 1 commit intoTinyAGI:mainfrom
Conversation
- Add question-bridge module for Claude's AskUserQuestion → Telegram inline keyboard flow with poll-based answer retrieval - Add configurable timeout (max_response_time) to agent invocations with SIGTERM→SIGKILL escalation to prevent hung sessions - Strip CLAUDECODE env var from spawned processes to avoid nested session errors - Deliver partial text before [QUESTION] tags as separate messages - Add heartbeat handler to refresh pending message TTL during long processing - Add proactive/agent-initiated messaging via senderId for direct delivery - Improve error handling with 4xx permanent error detection in telegram client Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
e40cad2 to
c09142a
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
-p) mode[QUESTION]tags instead of using the disabledAskUserQuestiontool. The queue processor detects these, forwards to Telegram, waits for the user's button tap, then continues the conversation via--resumeHow it works
Screenshot
Files changed
src/lib/question-bridge.tssrc/lib/types.tssrc/lib/config.tssrc/lib/invoke.tssrc/queue-processor.tssrc/channels/telegram-client.tsKey design decisions
wxflag on answer writes prevents duplicate answers from double-taps--output-format jsonon first call, then--resume <sessionId>for continuationsTest plan
npm run build:main)🤖 Generated with Claude Code