Preflight
Problem
Operators need to assign a plugin's LLM tools to conversation, work, or both without changing the plugin's event handlers and commands.
Proposal
Deliver per-plugin tool assignment together with its profile UI and enforcement in the main Agent and handoff paths. The proposed initial default is work-only, matching the prototype.
Design: PR #28 and its English proposal. Parent: P / #122. PR #28 is documentation only; this issue tracks follow-up implementation or evaluation.
Associated PR: PR #143 (non-draft; base split/btw-loop-runtime).
Acceptance criteria
Dependencies and delivery
Blocked by: B1 / #123, B7 / #129
Introduce shared filtering only where the existing catalog needs it; do not create an independent capability registry.
Implementation anchors
Historical prototype 33ee103a62937db3e930c89ba47a648b75cc7772 provides provenance, not code to copy unchanged:
Integrate with the current tool catalog, Skill snapshot assembly, and authorization service, rechecking current master when implementation begins.
Validation
Commands below are required for the implementation PR, not results claimed by this issue.
Existing current-master regression baseline:
uv run pytest tests/unit/test_astr_main_agent.py tests/unit/test_astr_agent_tool_exec.py tests/unit/test_skill_tool_assembly.py
Historical prototype tests to adapt with the feature (they are not shipped by documentation-only PR #28):
After adapting the corresponding Dashboard test, run from dashboard/:
pnpm test:vitest tests/pluginLoopSelector.vitest.ts
pnpm i18n:check
For changed documentation, run pnpm run docs:build from docs/ and make check-md from the repository root. Update OpenAPI and generated outputs together only if the HTTP contract changes.
Out of scope
Changing plugin commands into background tasks, arbitrary plugin proxies, or legacy plugin support is outside scope.
Repository requirements
Follow AGENTS.md, GOVERNANCE.md, and AI_POLICY.md. This issue uses the feature_request template. Keep Python 3.14+, current configuration shapes, existing authorization boundaries, and bilingual feature documentation. A follow-up PR requires human maintainer review and a separate AI-assisted review. Use the feat PR template for the corresponding work.
Author
Agent
Agent note
Codex prepared this development issue at the user's request from PR #28, its discussion, the referenced source, existing tests, and current-master integration points. AI assisted the research and English drafting. Filing this issue changes no runtime behavior and does not claim feature tests or model trials have passed. Remaining decisions concern implementation details and experimental evidence within the stated scope.
Preflight
Problem
Operators need to assign a plugin's LLM tools to conversation, work, or both without changing the plugin's event handlers and commands.
Proposal
Deliver per-plugin tool assignment together with its profile UI and enforcement in the main Agent and handoff paths. The proposed initial default is work-only, matching the prototype.
Design: PR #28 and its English proposal. Parent: P / #122. PR #28 is documentation only; this issue tracks follow-up implementation or evaluation.
Associated PR: PR #143 (non-draft; base
split/btw-loop-runtime).Acceptance criteria
Dependencies and delivery
Blocked by: B1 / #123, B7 / #129
Introduce shared filtering only where the existing catalog needs it; do not create an independent capability registry.
Implementation anchors
Historical prototype
33ee103a62937db3e930c89ba47a648b75cc7772provides provenance, not code to copy unchanged:prototype _filter_plugin_tools_for_loop.handoff plugin filtering.profile assignment UI.Integrate with the current tool catalog, Skill snapshot assembly, and authorization service, rechecking current master when implementation begins.
Validation
Commands below are required for the implementation PR, not results claimed by this issue.
Existing current-master regression baseline:
Historical prototype tests to adapt with the feature (they are not shipped by documentation-only PR #28):
After adapting the corresponding Dashboard test, run from
dashboard/:For changed documentation, run
pnpm run docs:buildfromdocs/andmake check-mdfrom the repository root. Update OpenAPI and generated outputs together only if the HTTP contract changes.Out of scope
Changing plugin commands into background tasks, arbitrary plugin proxies, or legacy plugin support is outside scope.
Repository requirements
Follow AGENTS.md, GOVERNANCE.md, and AI_POLICY.md. This issue uses the feature_request template. Keep Python 3.14+, current configuration shapes, existing authorization boundaries, and bilingual feature documentation. A follow-up PR requires human maintainer review and a separate AI-assisted review. Use the feat PR template for the corresponding work.
Author
Agent
Agent note
Codex prepared this development issue at the user's request from PR #28, its discussion, the referenced source, existing tests, and current-master integration points. AI assisted the research and English drafting. Filing this issue changes no runtime behavior and does not claim feature tests or model trials have passed. Remaining decisions concern implementation details and experimental evidence within the stated scope.