✨ feat: migrate tools and channels to subprocess plugins#72
✨ feat: migrate tools and channels to subprocess plugins#72
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7a6af93d88
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
cmd/anna-plugin/channel.go
Outdated
| store: store, | ||
| authStore: authStore, | ||
| engine: engine, | ||
| linkCodes: auth.NewLinkCodeStore(), |
There was a problem hiding this comment.
Use shared link-code store for channel plugins
Initialize channel plugins with a process-local auth.NewLinkCodeStore() here makes /link <code> unusable after this migration: admin link codes are generated in the gateway process (admin.Server.generateLinkCode), but channel handlers now consume codes in a different process with a different in-memory store, so valid codes are always treated as invalid. This breaks account linking for all subprocess-backed channels unless link codes are moved to shared storage or bridged over IPC.
Useful? React with 👍 / 👎.
Implements the full plugin runtime migration slice for tools and channels.
What changed:
read,bash,edit,write,webfetch) onto the subprocess runtime through the dedicatedanna-pluginhelper.runtime_pluginssetting so tool and channel slots can be rebound by plugin ID without affecting JS plugins.anna plugin runtime listandanna plugin runtime bindfor operator visibility and binding control.Verification:
mise x -- go test ./...mise run release:check