{{ message }}
Repository navigation
Conversation
linkliti
force-pushed
the
feat/promote-plugins
branch
from
September 24, 2026 11:00
5838432 to
acebc92
Compare
Contributor
Author
1 of 6 tasks
Move the wait tool, its managed_wait helper, and prompt templates into plugins/_wait with 1:1 behavior; tool discovery and prompt collection already resolve plugin assets. Verified tool contracts test suite (38 passed).
Move the notify_user tool and its prompt templates into plugins/_notify_user with 1:1 behavior; notifications keep using the shared notification manager. Verified tool contracts test suite.
Move the search_engine tool, its prompt, and its tool message handler out of core messages.js into the plugin's webui extension; bundled Responses schema keys now point at plugin tool paths alongside the wait and notify_user moves. Verified tool contract, responses tools, and webui process types tests.
Move the a2a_chat tool and its prompt into plugins/_a2a_chat with 1:1 behavior; session caching stays on agent data and a2a contract tests import the plugin module. Verified tool contract and responses tools tests.
Move the scheduler agent tool and its prompt into plugins/_scheduler with 1:1 behavior; the shared TaskScheduler service, its API endpoints, and the Tasks UI stay in core for api, job_loop, and chat naming use. Verified tool contract, scheduler timezone, and timezone regression tests.
Move the behaviour tool, its system-prompt extension, and the behavior rules prompts out of _memory and core prompts into plugins/_behaviour_adjustment; rules persistence keeps the intentional cross-plugin memory subdir import. Verified tool contract and responses tools tests.
Relocate the six new child DOX rows into the existing alphabetical table order so the index stays consistent with its conventions.
Give the wait tool a dedicated wait log type, move the legacy progress presentation into the plugin with the corrected HLD badge, and drop the dead core progress handler and dispatch case.
Drop the unused search_engine imports, guard the notify_user timeout and wait and scheduler argument parsing against invalid values, harden search and a2a session handling, reject empty behaviour rulesets, accept range-step cron expressions, anchor the wait countdown to whole seconds, and remove the orphaned behaviour.search prompt.
Move the coerce_bool helper from parallel_tools to the shared tool module, import it directly in the parallel tool, scheduler, a2a chat, code execution, remote connector, and subordinate tools, and teach the tool stub used by contract tests about it.
Relocate the scheduler task CRUD API handlers, the Tasks modal and sidebar section, and the scheduler styles into plugins/_scheduler, add the sidebar-tasks-list extension point to the sidebar, read the tasks store from core consumers through a soft accessor so the plugin can be disabled, and keep the tick endpoint and the shared scheduling engine in core.
Relocate the developer, hacker, researcher, and tiny-local profiles into plugins/_agent_profiles with plugin-based profile discovery, keep agent0, default, and _example in the core agents directory, and mark the plugin always enabled so configured profiles keep resolving.
Relocate the bundled skills collection into plugins/_skills/skills with plugin-based discovery, keep a skills/AGENTS.md pointer at the historical path, keep the bundled skills directory as a global catalog root, and rely on the always-enabled _skills plugin so every bundled skill keeps resolving.
Import the real agent, tool, ws, ws_manager, and model_config modules before the setdefault stubs in the browser regression tests, teach the vision load tool stub about coerce_bool, and update the agent editor, prompt budget, and ws client tests to the plugin-based profile locations and task store accessor.
Cover the wait tool argument validation, whole-second countdown tick anchoring, intervention pause extension, and remaining-time formatting, and cover the search engine result formatting and execution paths, updating both plugin verification docs to name the new test files.
Restore the bundled skills directory as a global skill root after the skills plugin move, rename the _behaviour_adjustment plugin and its tool, prompts, and tests to the behavior_adjustment spelling with a legacy behaviour.md rules fallback, unwrap the wrapped markdown lines in the skills plugin DOX, drop the wait handler file docstring, and remove the extra blank line in the chats store imports.
Remove the explicit _scheduler references from core webui by dropping the hardcoded Tasks dropdown button, welcome action card, scheduler CSS preloads, and flatpickr loading, and let the scheduler plugin contribute them through the neutral sidebar-quick-actions-dropdown-start, welcome-actions-end, and page-head extension points.
Contribute the Tasks card through a new neutral welcome-actions-middle extension point between the Memory and Files cards instead of the lower-grid welcome-actions-end slot, register the point in the WebUI extension surface tests, and update the scheduler plugin DOX ownership.
Contribute the Memory card on the welcome screen through a welcome-actions-middle extension fragment in the _memory plugin that opens the memory dashboard modal directly, and drop the hardcoded card and its dispatcher case from core WebUI while keeping the card between the Projects and Files slots.
Drop the always_enabled declaration from the _agent_profiles plugin so it follows the standard activation rules like other bundled plugins, and reword its DOX contract to describe the standard enabled-state behavior.
Move plugins/_skills/skills 1:1 into a new always-enabled _bundled_skills plugin that owns the collection as a standard plugin skill root, keep catalog loading and visibility policy in the _skills feature plugin, and update plugin DOX, the root skills pointer, contribution docs, and test path expectations.
Update remaining bundled skill references to the _bundled_skills plugin root, align the agent profiles README with the standard enabled-state rules, remove the orphaned memory store import from the welcome store, point the tiny-local guide and its contract test at the plugin profile path, drop a doubled staticmethod decorator left in the remote code execution tool, soften the skills pointer DOX discovery claim, unify the tasks store soft-access idiom in the chats store, and add a scheduler regression test for the invalid update state response.
Drop the always_enabled declaration from the _bundled_skills plugin so it follows the standard activation rules like other bundled plugins, and reword its plugin, collection, pointer, and helper DOX contracts plus the plugins index row to describe the standard enabled-state behavior.
Replace the stale core HDL entry left after the wait badge rename with plugin-owned CSS: the wait plugin now serves the slate HLD accent and the search engine plugin serves the WEB accent through page-head style extensions instead of the core process-group stylesheet.
Put the flatpickr stylesheet preload and deferred script back into webui/index.html at their original spot, keep the scheduler plugin loading only its own scheduler and datepicker styles through the page-head extension, and update the scheduler DOX asset-loading ownership accordingly.
Point the chat naming and sidebar folders stores at the scheduler plugin tasks store, repoint the folder list and pin indicators at the shared scheduler task row, move the pin presentation, scheduler editor, and row actions tests to the relocated plugin paths, restore the tasks list view surface expectation, drop the index row of the right-click plugin removed on ready, and align the sidebar folders and sidebar DOX ownership wording with the promoted components.
Correct the reserved core profile list and point bundled specialist profiles at _agent_profiles in the a0-create-agent skill, restore the Child DOX Index in the _skills AGENTS.md, and unwrap the _skills README paragraphs.
Remove the neutral middle welcome actions point and contribute the Memory and Tasks cards through the welcome-actions-start slot instead, dropping the middle point from the surface tests and updating the scheduler plugin DOX.
Remove the title attributes from the Memory and Tasks items contributed to the sidebar-quick-actions-dropdown-start slot by the memory and scheduler plugins; the dropdown items already render visible text labels, so the redundant hover tooltips go away.
linkliti
force-pushed
the
feat/promote-plugins
branch
from
October 11, 2026 15:03
590dc0c to
a461d2e
Compare
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Promote following tools to standalone plugins with minor fixes, preserving their original logic:
behavior_adjustmentis 1 token cheaper according to OpenAI tokenizer, added empty ruleset rejectionOther changes:
Note: thumbnails were not generated for new plugins