mirror of
https://gitcode.com/JianFeeeee/HomeAgent.git
synced 2026-10-15 03:52:25 +00:00
refactor: migrate built-in plugins to SDK-only interface
- Six-phase plan complete: webui/cli/healthcheck/pluginmgr/clawhubadapter now interact with the kernel exclusively via internal/sdk interfaces; all Configure() calls and package-level global injection removed - buildSDK in internal/plugin/registry.go is the single assembly point - Add internal/sdk/events.go exporting event types/constants - Fix ProviderManager cooldown sharing: LuaAdaptedProvider.Name() now returns the source name instead of lua_<adapter>, so multiple sources sharing an adapter (single script load via shared VM AdapterCache) no longer share failure-cooldown state - Verified: build/vet/tests green, deployed to homeagent.service with full plugin capability testing via local OpenAI-compatible mock
This commit is contained in:
22
internal/sdk/config_impl.go
Normal file
22
internal/sdk/config_impl.go
Normal file
@ -0,0 +1,22 @@
|
||||
package sdk
|
||||
|
||||
import "gitcode.com/JianFeeeee/HomeAgent/pkg/types"
|
||||
|
||||
// configImpl 持有运行期配置对象的引用(与配置数据库无关)。
|
||||
type configImpl struct {
|
||||
cfg *types.Config
|
||||
}
|
||||
|
||||
func NewConfig(cfg *types.Config) ConfigAPI {
|
||||
return &configImpl{cfg: cfg}
|
||||
}
|
||||
|
||||
func (c *configImpl) Get() *types.Config {
|
||||
return c.cfg
|
||||
}
|
||||
|
||||
func (c *configImpl) Put(cfg *types.Config) {
|
||||
c.cfg = cfg
|
||||
}
|
||||
|
||||
var _ ConfigAPI = (*configImpl)(nil)
|
||||
Reference in New Issue
Block a user