In DSH Web development, invoking Skills, switching Agents, or viewing plugin information usually requires manually typing the full command. dsh-quick-invoke is a standalone Cordis plugin for DSH Web that provides a unified / quick entry, candidate selection, and Host command execution capabilities for Skills, Agent presets, and Plugins.
This plugin is maintained by thuCGRA. It does not modify the DSH core and does not provide direct-invocation syntax for arbitrary Tools. Tool invocation is still selected by the Agent based on natural language and continues to go through DSH’s tools, approval, guard, and permission processes.
Core Features¶
The plugin primarily provides the following command capabilities:
- Unified
/quick entry: Enter/in DSH Web to view available commands. - Skill quick invocation: Enter
/skilland select a candidate to directly initiate a Skill invocation. - Agent switching: Enter
/agentand select a candidate to switch the Agent preset (must be in an empty session and follow the official API). - Plugin discovery and inspection: Use the
/plugincommand to view the list of loaded plugins and inventory information. - Host command support: Supports candidate selection and Host command execution for Skills and Agents.
- Automatic input focus restoration: After a candidate is confirmed, only the input field is populated, and the input focus is automatically restored after the draft is populated, so the user can continue typing without manually clicking.
Installation and Enablement¶
Prerequisites¶
- A Node.js environment.
- DSH
0.1.1-rc.2or a compatible version is installed. - An existing DSH Web profile that combines commands, skills, agent presets, plugin inventory, and command UI-related plugins.
- The current user has write permissions to the DSH profile directory.
Installation Steps¶
Enter the plugin directory and install it using the DSH profile plugin management command:
cd $localPath/dsh-quick-invoke
dsh plugin --profile web add "$PWD"
After installation, restart the Web profile to load Host registration and the Client bundle:
dsh web --no-open
Usage Examples¶
The plugin provides the following typical usages:
- View command candidates:
Enter/in the DSH Web input field to see candidates such as/skill,/agent, and/plugin. - Invoke a Skill:
Enter/skill, select the target Skill, and the input field is populated with the command. Continue entering the task and then manually send it.
/skill quick-invoke-test 验证快捷调用链路
/skill quick-invoke-skill-context 请复述任务上下文
- Invoke an Agent:
Enter/agentand select an available preset. After sending, the Host processes it through the officialagentPreset.selectAPI.
/agent quick-invoke-agent 分析这个问题
- Plugin management:
View the plugin list and detailed information.
/plugin list
/plugin inspect dsh-quick-invoke
How It Works and Limitations¶
Architecture and Execution Flow¶
The plugin is divided into Host and Client parts, using different Cordis contexts:
* Host: Registers and executes commands, queries Skills and Agent presets, and performs operations through official API seams.
* Client: Decorates the command menu, retrieves dynamic candidates, locates the session, and populates the input field.
The execution flow is as follows:
1. The user enters /.
2. The DSH Web command UI presents candidates.
3. The user selects a candidate. Only the input field is populated; no remote operation is executed.
4. The user manually sends the full command.
5. The Host executes the command, performs parsing, validation, and permission checks, and logs command/run and command/done events.
Important Limitations¶
- Plugin enable/disable: The plugin does not support
/plugin enableor/plugin disablecommands. Use the DSH profile CLI to manage enabling and disabling plugins. - Plugin open:
/plugin openexplicitly fails when no generic opener is available and does not fall back to internal logic. - Agent switching constraints: Switching Agent presets is constrained by the Agent lifecycle. It must be performed on an empty Agent and must use the official
agentPreset.selectAPI. If the official seam is inaccessible, the command explicitly fails. - Project-level resources: Project-level Skills and Agent presets are only for demonstration and discovery and cannot be used directly as global resources.
Notes¶
- Candidate behavior: Selecting a candidate only populates the input field and does not automatically send a message. The plugin restores focus after the draft is populated.
- Project-level discovery: Presets under
.dsh/agent/are only for discovery, are marked asunregistered, and are not selectable. - Source code review: The plugin does not modify the DSH core, but review the source code before use to ensure it meets the dependency requirements of the current environment.
Conclusion¶
dsh-quick-invoke streamlines the Skill and Agent invocation workflow in DSH Web through a unified / entry and candidate mechanism. It remains consistent with the DSH core architecture without disrupting existing tool invocation or security processes.