Commit Graph

1958 Commits

Author SHA1 Message Date
Hoshina 773ce9bcb6 fix: update BotStatus type in oneBotRawEvent and adjust status checks 2026-02-14 19:58:19 +08:00
Meng Zhuo 1cff7d4e37 Merge pull request #153 from alexhoshina/doc/fix-errors
docs: update QQ Open Platform link to correct URL
2026-02-14 17:48:04 +08:00
Hoshina f7421128a0 style: remove unnecessary log messages in WebSocket listener 2026-02-14 17:46:47 +08:00
Meng Zhuo 1cb690df32 Merge pull request #169 from PixelTux/architecture-32-bit
Architecture 32 bit
2026-02-14 17:27:20 +08:00
Meng Zhuo 59c7aa1628 Merge pull request #167 from Lixeer/main
feat: add provider `deepseek`
2026-02-14 17:27:01 +08:00
Hoshina 1fcf3fde0f style: fix format 2026-02-14 17:23:18 +08:00
Meng Zhuo b805ec8bde Merge pull request #158 from easyzoom/feat/device-hotplug-notifications
feat: add device hotplug event notifications (USB on Linux)
2026-02-14 17:17:53 +08:00
easyzoom 378045510d feat: add device hotplug event notifications (USB on Linux) 2026-02-14 17:03:04 +08:00
karan 2720fa71c7 add I2C and SPI tools for hardware interaction (#140)
* add I2C and SPI tools for hardware interaction

- Implemented I2CTool for I2C bus interaction, including device scanning, reading, and writing.
- Implemented SPITool for SPI bus communication, supporting device listing, data transfer, and reading.
- Added platform-specific implementations for Linux and stubs for non-Linux platforms.
- Updated agent loop to register new I2C and SPI tools.
- Created documentation for hardware skills, including usage examples and pinmux setup instructions.

* Remove build constraints for Linux from I2C and SPI tool files.
2026-02-14 16:53:17 +08:00
Hoshina 7fa641a2ed feat: add OneBot channel support 2026-02-14 16:50:21 +08:00
Lixeer 18d3634f1b feat: Improve parameter fault tolerance for DeepSeek 2026-02-14 16:47:46 +08:00
Lixeer afc3a2cda3 feat: add provider deepseek 2026-02-14 16:35:49 +08:00
PixelTux ba0ef4b62c Merge branch 'main' into architecture-32-bit 2026-02-14 09:32:24 +01:00
ex-takashima 7d45101fcd docs: add LINE channel setup instructions to README
Add LINE Official Account setup guide to both README.md and README.ja.md,
including configuration, webhook URL setup, and Docker Compose port note.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 16:29:46 +08:00
moveyield 1299b20465 refactor: remove unused min func
Signed-off-by: moveyield <moveyield@outlook.com>
2026-02-14 16:24:20 +08:00
qiaoborui da804a0748 fix(codex): include required instructions and improve account-id extraction 2026-02-14 12:48:16 +08:00
Hoshina 11a6f5eb71 docs: update QQ Open Platform link to correct URL 2026-02-14 12:43:44 +08:00
qiaoborui 7304ab7d33 fix(auth): align OpenAI OAuth authorize URL and params 2026-02-14 12:37:49 +08:00
daming大铭 5872e0f55e Merge pull request #147 from ex-takashima/feat/line-channel
feat(channels): add LINE Official Account channel support
2026-02-14 11:24:00 +08:00
ex-takashima 6463796fa1 fix: update tests to match upstream API changes
Fix web_test.go and config_test.go to use current function signatures
after merging upstream changes (WebSearchToolOptions, BraveConfig).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 11:32:42 +09:00
ex-takashima ac79a23e0a style: fix gofmt formatting (CRLF -> LF)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 11:21:47 +09:00
Meng Zhuo ff92973361 chore: fix tab in build 2026-02-14 09:56:21 +08:00
Meng Zhuo d7822e5d52 chore: fmt code in build 2026-02-14 09:47:55 +08:00
ex-takashima aa7a8b89c3 merge: resolve conflict with upstream main
Merge upstream changes (HeartbeatConfig addition) alongside LINEConfig.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 10:47:06 +09:00
zepan 6083168ab4 update wechat group qrcode 2026-02-14 09:11:44 +08:00
ex-takashima f294a71bc5 feat(channels): add LINE Official Account channel support
Add LINE Messaging API as the 9th messaging channel using HTTP Webhook.
Supports text/image/audio messages, group chat @mention detection,
reply with quote, and loading animation.

- No external SDK required (standard library only)
- HMAC-SHA256 webhook signature verification
- Reply Token (free) with Push API fallback
- Group chat: respond only when @mentioned
- Quote original message in replies using quoteToken

Closes #146

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 10:01:20 +09:00
PixelTux 2cb90f2fe6 Merge branch 'main' into architecture-32-bit 2026-02-13 21:18:34 +01:00
seth a286100db5 Merge branch 'main' into patch-1 2026-02-13 11:02:04 -08:00
Avisek 45351a6a79 refactor: Trim trailing slashes from the API base URL and enhance API error messages with status codes. 2026-02-14 02:09:55 +08:00
lxowalle 1aea912fcd Merge pull request #83 from carzygod/main
update telegram username support
2026-02-14 00:49:14 +08:00
lxowalle 55d5e89246 Merge pull request #78 from SatyamDevv/main
feat(search): Add DuckDuckGo fallback for credit-card-free web search
2026-02-14 00:16:40 +08:00
lxowalle bd9c9d7efc Merge branch 'main' into main 2026-02-14 00:16:10 +08:00
seth 15e3c7d08a chore: lint readme
MD004 / ul-style Unordered list style [Expected: asterisk; Actual: dash]
MD009 / no-trailing-spaces Trailing spaces [Expected: 0 or 2; Actual: 1]
MD012 / no-multiple-blanks Multiple consecutive blank lines [Expected: 1; Actual: 2]
MD022 / blanks-around-headings Headings should be surrounded by blank lines [Expected: 1; Actual: 0; Below]
MD031 / blanks-around-fences Fenced code blocks should be surrounded by blank lines
MD032 / blanks-around-lists Lists should be surrounded by blank lines
2026-02-13 08:05:14 -08:00
Leandro Barbosa 0f5b2f67bb style: fix gofmt formatting in cooldown files
Remove extra spaces in comment alignment to pass fmt-check CI.
2026-02-13 12:26:44 -03:00
Leandro Barbosa 8a6fb7d9e3 merge: sync upstream/main into feat/multi-agent-routing
Resolve conflicts in loop.go, config.go, config_test.go,
spawn.go, and subagent.go. Integrate upstream ToolResult/AsyncTool
pattern with multi-agent routing features. Rename mockProvider
to mockRegistryProvider in registry_test.go to avoid redeclaration
with upstream's loop_test.go.
2026-02-13 12:24:26 -03:00
Leandro Barbosa 272536a11a feat: add multi-agent routing with declarative bindings
Implement per-agent workspace/model/session isolation with 7-level
priority routing cascade (peer > parent_peer > guild > team > account >
channel > default). Backward compatible - empty agents.list creates
implicit "main" agent from defaults.

Core components:
- routing/agent_id.go: ID normalization with pre-compiled regex
- routing/session_key.go: 4 DM scope modes with identity links
- routing/route.go: RouteResolver with priority-based binding matcher
- agent/instance.go: Per-agent state (workspace, sessions, tools, model)
- agent/registry.go: Agent lifecycle, route resolution, subagent ACL

Integration:
- config.go: AgentModelConfig (flexible JSON), bindings, session config
- loop.go: Complete rewrite for multi-agent dispatch
- Channel adapters: peer_kind/peer_id metadata (telegram, discord, slack)
- spawn.go: Subagent allowlist enforcement per agent

Validated end-to-end with Discord channel-based bindings, default
fallback routing, and per-agent session persistence.
2026-02-13 12:12:33 -03:00
Leandro Barbosa 6e7149509a feat: add model fallback chain with error classification
Add 2-layer fallback system (text + image) with automatic candidate
resolution. Includes error classifier (~40 patterns), per-provider
cooldown (exponential backoff), and model reference parsing.

- FailoverError/FailoverReason types for structured error handling
- ErrorClassifier with rate_limit, billing, auth, timeout patterns
- FallbackChain with cooldown management and candidate rotation
- ModelRef parser for provider/model string format
- 128 tests, 95%+ coverage
2026-02-13 12:12:12 -03:00
Meng Zhuo 82a9a80d94 Merge pull request #130 from MHCP000/fix/codeblock-index-bug
fix: correct index bug in extractCodeBlocks and extractInlineCodes
2026-02-13 22:52:42 +08:00
lxowalle 878650c459 * fix: heartbeat/service_test.go test failed 2026-02-13 22:19:18 +08:00
lxowalle 7f60392d88 Merge pull request #24 from Esubaalew/main
Fix concurrency races in session manager and stabilize service lifecycles
2026-02-13 22:17:23 +08:00
lxowalle bc27707671 Merge branch 'main' into main 2026-02-13 22:08:20 +08:00
zeo 1e17bac9f0 fix: correct index bug in extractCodeBlocks and extractInlineCodes
The previous implementation used len(codes)-1 in ReplaceAllStringFunc,
which caused all placeholders to point to the same (last) index.
This resulted in only the last code block being displayed correctly
when multiple code blocks were present in a message.

Now using a proper counter variable that increments for each match,
ensuring each code block gets a unique placeholder index.
2026-02-13 21:38:14 +08:00
daming大铭 14de80d35f Merge pull request #128 from yinwm/feat/better-version
feat: add git commit hash to version and improve documentation
2026-02-13 20:25:27 +08:00
yinwm b5a8effcd6 style: fix var block formatting
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 20:23:36 +08:00
zepan 82fea61551 update readme 2026-02-13 20:20:33 +08:00
yinwm 92490feff0 refactor(version): extract version formatting helpers and improve build info display
Extract formatVersion() and formatBuildInfo() helper functions to reduce code duplication between printVersion() and statusCmd(). Update git commit default value to "dev" in Makefile for consistency with version handling. Update documentation for QQ and DingTalk chat integration in Japanese README.
2026-02-13 19:56:31 +08:00
yinwm 3c2e467324 Merge remote-tracking branch 'origin/HEAD' into feat/better-version 2026-02-13 19:34:44 +08:00
daming大铭 9036a511fb Merge branch 'sipeed:main' into main 2026-02-13 19:34:11 +08:00
yinwm e0f702fe03 docs: add security sandbox documentation
Add comprehensive documentation about the security sandbox feature,
including default configuration, protected tools, exec tool
protection, error examples, and security boundary consistency.
Also remove outdated config.openrouter.json sample file.
2026-02-13 19:33:21 +08:00
Meng Zhuo ee3e8ccebb Merge pull request #124 from mengzhuo/mengzhuo-fmt-1
Add dependencies for fmt-check in vet and test jobs
2026-02-13 18:47:54 +08:00