Standardize all Path.read_text() calls in the test suite to pass
encoding="utf-8" so committed UTF-8 frontend JS/HTML bundles decode
correctly on Windows (cp1252 default locale) instead of raising
UnicodeDecodeError.
Co-authored-by: Mervin Praison <[email protected]>
Add a /marketplace dashboard view that browses, inspects permissions,
installs, and uninstalls plugins via the existing features/marketplace.py
backend. Registers the view in dashboard.js BUILTIN_VIEWS and adds the
page entry (Agent group) with the /api/marketplace/plugins endpoint.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <[email protected]>
Implements B-08 (MCP manager) and B-02 (command palette) from the OpenClaw
Control UI parity umbrella. MCP view lists/connects/disconnects servers via
the existing /api/mcp/* routes; command palette navigates pages via Ctrl+K.
Co-authored-by: Mervin Praison <[email protected]>
- Introduced `set_jobs_proxy` function to allow forwarding of `/api/jobs/*` requests to an external jobs server.
- Updated documentation to reflect the new proxy setup and its usage.
- Enhanced server state reset to accommodate the new jobs API configuration.
- Added tests to ensure proper functionality of the jobs API configuration and proxy settings.
This change facilitates better integration when the dashboard and jobs server operate on different ports.
Introduced documentation for a new feature allowing inline media rendering
of agent-generated images during chat. This update includes architecture
details, data flow paths, and examples for seamless integration with
existing backends. Updated related documentation to link to new feature.
- Added support for inline media (images, videos, files) in chat messages
- Updated `ChatArea`, `ChatMessages`, and `ToolCallDisplay` components to render media
- Introduced `ImagePreviewProvider` example demonstrating dynamic image rendering
- Enhanced documentation on provider media capabilities
- Updated integration and unit tests to cover new media functionality
- Implemented A2UI surfaces for agent-driven UI in chat/canvas.
- Enhanced documentation for architecture and agent UI features.
- Introduced new example demonstrating A2UI canvas integration.
- Updated various frontend components to support new features.
- Improved tests for A2UI and related functionalities.
- Integrated Server-Driven UI shell utilizing a Plugin/Registry Architecture in analysis and instruction workflows.
- Created a framework comparison report.
- Updated version in `pyproject.toml` to 0.3.104.
- Removed deprecated development mode command in `cli.py` to streamline commands.
- Modified various files, resulting in 429 insertions and 173 deletions across the codebase.
Introduces a new `SDKFileDataStore` to unify session persistence
between AIUI and the SDK, allowing seamless session management.
The CLI default datastore is now set to `sdk`, with fallback to
JSON if the SDK is not available. Updates to configuration and
tests have been made to reflect this change.
- Updated pyproject.toml to reflect version change.
- Enhanced server.py to use an effective style variable for plugins.
- Revised index.html to simplify and remove anti-flicker scripts.
- Added comprehensive integration tests for tool call events in test_tool_call_parity.py.
- Introduced a Dockerfile for building and running the AIUI application.
- Added a .dockerignore file to exclude unnecessary files.
- Created detailed deployment documentation to guide users on setting up the application using Docker.
- Improved overall structure and organization of features in the source code for better maintainability.
Introduced a new `StandaloneGateway` class that allows agent registration
and management without requiring the full `praisonai` wrapper. This
facilitates the use of channels and bots in environments where the
wrapper may not be available, improving flexibility and reducing
dependencies. Updated project dependencies and modified existing code
to integrate the new gateway functionality.
Updated the chat attachments documentation to include automatic file
processing and detailed instructions on how uploaded files integrate
with agent prompts. Added processing information for different file
types and usage examples.
- Added details on unified runtime config at ~/.praisonaiui/config.yaml.
- Updated API testing instructions to reflect persistence of config changes.
- Documented new "Run" button functionality on dashboard for agents.
- Included details on hot-reload feature and its relationship to config persistence.
Migrate individual YAML files to a unified `config.yaml` structure for
simplified data management. Update persistence functions to load and
save data directly from sections within this config file, improving
consistency and reducing redundancy.
Implement shared YAML persistence helpers to load and save feature
states. The features now can retain their configurations across server
restarts. Updated the channels and runtime config to utilize this
persistence mechanism. Version bumped to 0.3.46.
- Updated channel status to use a combination of bot status and task completion.
- Enhanced the guardrail registration process to support LLM-based guardrails.
- Updated project version to 0.3.45.
- Added comprehensive integration tests for new features and functionalities.
Three-layer fix:
1. Inline style='background:#0f172a' on <html> and <body> — this is the
very first thing the browser paints, before ANY CSS files load.
Prevents the white/transparent frame between page loads.
2. Strengthened anti-flicker CSS: now hides ALL #root children (not just
main.flex-1 > div), preventing React's debug text from flashing.
3. Nav-intercept overlay now appears instantly with opacity:1 (no fade
transition), eliminating the ~100ms gap where the flash was visible.
Added functionality to validate and utilize gateway-registered agents across different features. Enhanced health checks, configuration responses, and job execution logic to include information about gateway connectivity and available agents. Updated version in `pyproject.toml` to 0.3.29.
- Enhanced error handling during agent saving and loading with logging.
- Added support for syncing loaded agents to the gateway.
- Improved fallback mechanism to retrieve agents from the gateway.
- Updated agent creation logic to copy all fields except timestamps.
- Merged gateway-registered agents when listing agent definitions.
- Bumped version to 0.3.28 in pyproject.toml.