Commit Graph

163 Commits

Author SHA1 Message Date
Acbox b237594495 fix: container compile 2026-02-07 20:02:11 +08:00
Acbox 60b4420235 Merge branch 'main' into refactor/channel-gateway 2026-02-07 17:29:14 +08:00
Acbox aa97083f65 docs: update trouble solution about lima and containerd in CONTRIBUTING.md 2026-02-07 17:19:19 +08:00
BBQ 83b6ee608c refactor: bind container lifecycle to bot and improve schedule trigger flow
- Add SetupBotContainer to ContainerLifecycle interface so containers
  are automatically created when a bot is created, matching the existing
  cleanup-on-delete behavior.
- Refactor schedule tools to use bot-scoped API paths and pass identity
  context for proper authorization.
- Introduce dedicated trigger-schedule endpoint in chat resolver with
  explicit schedule payload instead of reusing the generic chat path.
- Generate short-lived JWT tokens for schedule trigger callbacks with
  resolved bot owner identity.
- Validate required parameters in NewLLMClient and NewOpenAIEmbedder
  constructors, returning errors instead of falling back to defaults.
- Add unit tests for schedule token generation and chat resolver.
2026-02-07 12:04:37 +08:00
Acbox a9596ab3a8 fix(cli): stream 2026-02-07 01:37:36 +08:00
BBQ 29e6ddd1f9 refactor: replace global channel registry with instance-based Registry and interface-driven adapters
- Replace global channelRegistry singleton with explicit *Registry passed via dependency injection
- Split monolithic manager.go into connection.go (lifecycle), inbound.go (dispatch), outbound.go (pipeline)
- Introduce optional adapter interfaces: ConfigNormalizer, TargetResolver, BindingMatcher
- Move Descriptor() to Adapter interface, remove init()-based registration
- Relocate SessionHub to adapters/local package
- Extract shared UUID/time helpers to internal/db/uuid.go
- Decompose ConfigStore into fine-grained interfaces: ConfigLister, ConfigResolver, BindingStore, SessionStore
2026-02-06 23:47:12 +08:00
BBQ a246b79a4f refactor: restructure channel gateway and chat module architecture
- Refactor channel adapters (feishu, telegram, local) with enhanced descriptor and config
- Restructure channel manager, service, types, and outbound messaging
- Simplify chat module by removing normalize.go and chat.go, consolidating into resolver and types
- Update router channel handlers and tests
- Sync swagger documentation
2026-02-06 23:47:12 +08:00
Quincy 85976afad7 feat(web): redesign settings page (#26)
* perf: change model ui

* feat: edit provider

* feat: layout update

* fix: scroll bug

* feat: model and provider

* feat: Setting

* perf: chat page
2026-02-06 23:37:57 +08:00
Acbox c3cfdc4096 feat(agent): add trigger-schedule api 2026-02-06 22:12:13 +08:00
Acbox 9dcec69fd5 feat: add mcp support 2026-02-06 21:29:28 +08:00
Acbox 32a12e3c1b feat: remove extra tools and add exec tool 2026-02-06 21:10:31 +08:00
Acbox bcc6e142fa fix: drop sql & qdrant 2026-02-06 20:33:29 +08:00
Acbox 3bee018d45 chore: rename platform to channel 2026-02-06 20:01:04 +08:00
Acbox 208dda8956 feat(cli): bot and channel operation 2026-02-06 19:24:47 +08:00
Acbox b600e78cb7 chore: remove attachments in system 2026-02-06 19:02:43 +08:00
Acbox ddb67c95f5 feat: attachment parser 2026-02-06 17:00:19 +08:00
Acbox 4ad7b2abd7 refactor: system prompts 2026-02-06 16:41:00 +08:00
Acbox fe71e7d36d feat: file attachment input 2026-02-06 16:09:11 +08:00
BBQ 5a35ef34ac feat: channel gateway implementation and multi-bot refactor
- Refactor channel manager with support for Sender/Receiver interfaces and hot-swappable adapters.
- Implement identity routing and pre-authentication logic for inbound messages.
- Update database schema to support bot pre-auth keys and extended channel session metadata.
- Add Telegram and Feishu channel configuration and adapter enhancements.
- Update Swagger documentation and internal handlers for channel management.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 14:41:54 +08:00
Acbox 7d43c064c0 feat(agent): add trigger-schedule api 2026-02-06 00:32:28 +08:00
Acbox 81155f2f78 chore: add cli build task 2026-02-06 00:29:29 +08:00
Acbox 0bba6d2913 feat(agent): add container tools 2026-02-05 23:23:57 +08:00
Acbox 285f9d81d1 feat: add message and contact tools 2026-02-05 23:23:46 +08:00
Acbox 07ecb5785e refactor: agent gateway 2026-02-05 20:53:48 +08:00
Ran cb36b68ee4 feat: Atomic update mcp image 2026-02-05 02:40:10 +08:00
晨苒 dd6d570eba Merge pull request #27 from memohai/refactor/bot-channel
feat: channel gateway implementation and multi-bot refactor
2026-02-05 01:33:08 +08:00
BBQ 6aebbe9279 feat: refactor User/Bot architecture and implement multi-channel gateway
Major changes:
1. Core Architecture: Decoupled Bots from Users. Bots now have independent lifecycles, member management (bot_members), and dedicated configurations.
2. Channel Gateway:
   - Implemented a unified Channel Manager supporting Feishu, Telegram, and Local (Web/CLI) adapters.
   - Added message processing pipeline to normalize interactions across different platforms.
   - Introduced a Contact system for identity binding and guest access policies.
3. Database & Tooling:
   - Consolidated all migrations into 0001_init with updated schema for bots, channels, and contacts.
   - Optimized sqlc.yaml to automatically track the migrations directory.
4. Agent Enhancements:
   - Introduced ToolContext to provide Agents with platform-aware execution capabilities (e.g., messaging, contact lookups).
   - Added tool logging and fallback mechanisms for toolChoice execution.
5. UI & Docs: Updated frontend stores, UI components, and Swagger documentation to align with the new Bot-centric model.
2026-02-04 23:49:50 +08:00
Ran efd68d306d refactor: use sparse vector for memory 2026-02-04 11:45:10 +08:00
Acbox ecebe3c711 chore: change cname of docs deploy 2026-02-04 01:31:40 +08:00
Acbox 3a21fab9e2 feat: add fs.read_base64, fs.mkdir, fs.rename tools 2026-02-03 23:46:44 +08:00
Acbox 8c400dca22 chore: add database design rules 2026-02-03 19:09:36 +08:00
Quincy e6fd287b4d feat(web): redesign provider interface (#25) 2026-02-03 16:42:43 +08:00
Ran d775c6df6d feat: mcp transpipe cli 2026-02-03 02:11:32 +08:00
Ran ddd853fee4 chore: update api path 2026-02-03 00:29:57 +08:00
Acbox 004da9bdbb chore: add logo.png 2026-02-02 23:35:45 +08:00
Acbox 9a6d4b333d docs: clear up all content of docs 2026-02-02 23:34:43 +08:00
Acbox 629b3247dc docs: update README 2026-02-02 23:07:53 +08:00
Acbox 2b8b537523 feat: make max-calls of schedule nullable 2026-02-02 22:48:06 +08:00
Acbox 78c6758f34 chore: update drop sql 2026-02-02 17:57:01 +08:00
Acbox ab8aa5f4ef feat: enable memory search tool 2026-02-02 17:37:54 +08:00
Acbox 3f0a0f8499 feat: add get models by provider 2026-02-02 13:48:22 +08:00
Acbox c10fbfee23 feat: add auth to memory api 2026-02-02 01:40:54 +08:00
Acbox c731e0ca1d feat: move default model into user settings 2026-02-02 01:40:54 +08:00
BBQ ed5f41a87e Merge pull request #22 from HoneyBBQ/fix/llm-client-params-20260201
fix(memory): fix LLMClient parameter mismatch and add nil logger check
2026-02-01 01:59:58 -08:00
BBQ d12092870f fix(memory): fix LLMClient parameter mismatch and add nil logger check
- Update LLMClient test to match NewLLMClient signature by passing nil logger
- Add nil check for logger in NewLLMClient to prevent panic, defaulting to slog.Default()
2026-02-01 17:52:18 +08:00
BBQ 50e9d48cef feat: implement unified version management (#20) 2026-02-01 16:36:52 +08:00
BBQ cb9ea261ac Merge pull request #21 from HoneyBBQ/fix/llm-client-test-path-20260201
fix(memory): correct mock server path in LLM client test
2026-02-01 00:18:38 -08:00
Acbox Liu afd0ab3f49 Merge pull request #14 from memohai/feat/skills
feat: skills
2026-02-01 15:55:48 +08:00
BBQ dcce0617a3 fix(memory): correct mock server path in LLM client test
The LLM client's callChat method appends "/chat/completions" to the base URL.
The test's mock server was expecting "/v1/chat/completions", causing a 404
error during testing. This commit aligns the mock server path with the
actual client implementation.
2026-02-01 15:53:13 +08:00
BBQ 46d2968e2c feat: refactor logging system to slog with DI and component tagging 2026-02-01 15:23:57 +08:00