Skip to content

feat(bridges): add QQ bot bridge with group + C2C support#121

Open
tsint wants to merge 2 commits into
SafeRL-Lab:mainfrom
tsint:main
Open

feat(bridges): add QQ bot bridge with group + C2C support#121
tsint wants to merge 2 commits into
SafeRL-Lab:mainfrom
tsint:main

Conversation

@tsint
Copy link
Copy Markdown

@tsint tsint commented May 12, 2026

Adds QQ Bot bridge support through the official qq-botpy SDK.

Changes

  • Add /qq command for configuring, starting, stopping, and checking QQ bridge status.
  • Support QQ group and C2C private chat messages.
  • Route QQ messages into the existing agent query flow with per-target job queues.
  • Stream agent output and tool progress back to QQ.
  • Support QQ permission/input prompts, scoped to the original QQ target to prevent cross-chat approvals.
  • Support QQ image attachments by forwarding downloaded images into the agent turn.
  • Add QQ runtime context fields and bridge turn detection.
  • Add optional qq dependency extra using qq-botpy.
  • Update prompt golden fixture for the new /qq command.
  • Add QQ bridge unit tests covering config, routing, reply context, queueing, streaming hook serialization, image handling, and permission target isolation.

Testing

  • uv run python -m pytest tests/e2e_prompt_regression.py tests/test_prompt_selection.py tests/test_prompt_assembly.py tests/test_qq_bridge.py -q
  • uv run python -m py_compile bridges/qq.py runtime.py tools/interaction.py tests/test_qq_bridge.py
$ uv run python -m pytest tests/e2e_prompt_regression.py tests/test_prompt_selection.py tests/test_prompt_assembly.py tests/test_qq_bridge.py -q
.................................................................................................                                                                                                                                                                                      [100%]
97 passed in 1.86s
$ uv run python -m py_compile bridges/qq.py runtime.py tools/interaction.py tests/test_qq_bridge.py
$ 

@chauncygu
Copy link
Copy Markdown
Contributor

@copilot resolve the merge conflicts in this pull request

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants