Foreword¶
In DSH Web workflow development, the execution status of agents is usually hidden on the backend, leaving the frontend without clear feedback. While waiting for a response, users often do not know whether an agent is actively processing. The dsh-pelican plugin solves this status-visibility problem by displaying an SVG animation in the bottom-right corner and providing global task status indicators.
Plugin Positioning¶
dsh-pelican is a static dual-side plugin for DSH Web. It is maintained by Little-Star888. It maps backend agent execution status into frontend interactions through an SVG riding animation in the bottom-right corner and global task status indicators.
Core Features¶
This plugin includes the following core capabilities:
- Bottom-right SVG riding animation: Displays an SVG animation in the bottom-right corner of the Web client.
- Global task status indicators: Maintains an
idle/thinking/donestate machine and displays the corresponding status on the frontend. - API interface: Provides the
GET /api/pelican/statusendpoint, allowing the browser to actively poll the current status. - Debugging tool: Provides the
pelican_debugtool for viewing states, sequence numbers, and event counts. - Interactive feedback:
- While a task is being processed, the pelican reminds users with “I’m here, please wait.”
- When a task is completed, it shows a “Task completed 🎉” bubble, plays a notification sound, and supports sending system notifications.
Installation and Enablement¶
This plugin resides on disk and is not a session-scoped dynamic plugin. After installation, you must restart the dsh process for it to take effect. It supports the following three installation methods:
1. Local Path Installation (No Publishing Required)
dsh plugin --profile web add ./dsh-pelican
2. npm Installation (Publishing Required First)
dsh plugin --profile web add dsh-pelican
3. GitHub Installation (Pushing the Repository Required First)
dsh plugin --profile web add github:Little-Star888/dsh-pelican
After installation is complete, restart the dsh process.
Status Mechanism¶
The plugin maintains its state machine by listening to global agent events:
| Event | State |
|---|---|
User sends a message (agent/inbox/inserted) |
thinking |
Response ending (agent/turn-stopping / agent/status: idle) |
done |
| No activity | idle |
Debugging¶
You can use the pelican_debug tool to view the current state, sequence number, pending Agent ID, and event counts. This is helpful for troubleshooting status synchronization issues.
Use Cases and Notes¶
- Use cases: Web workflows where agent execution status needs to be displayed in the frontend interface.
- Notes:
- This plugin runs with the permissions of the current dsh process. Please ensure the installed source code is secure.
- The plugin is licensed under the MIT License.
- Local installation does not require publishing, but npm or GitHub installation requires the repository to be published or pushed first.
Summary¶
dsh-pelican uses lightweight animations and status notifications to make interactions between the Web interface and the DSH backend more intuitive. Developers can quickly integrate it using the installation commands and verify state transitions with the debugging tools.