- Integrated a new utility function `parseFrontmatterScalarKey` to streamline the extraction of the description from skill files.
- Improved the logic for handling frontmatter, ensuring more robust parsing and trimming of description values.
- Added 'like' mode tag to various components including server, admin interface, and authentication routes for improved user interaction.
- Introduced new functions in chat.js for sanitizing agent state and tool calls, enhancing data integrity and management.
- Updated .gitignore to include new directories for better file management.
- Introduced root admin checks in various functions to streamline permission handling for users.
- Updated skill and agent management routes to simplify access control by removing redundant role checks.
- Added favicon links to HTML files for improved branding in the admin and updates sections.
- Added middleware to handle invalid JSON body errors, returning a 400 status with a descriptive message.
- Introduced functions to normalize and filter mode tags for user permissions, improving access control for skills based on user roles.
- Updated API endpoints to incorporate mode tag filtering, ensuring users can only access skills they are permitted to view.
- Implemented a new endpoint for updating skill tags, with permission checks for non-admin users.
- Enhanced the frontend with updated styles and layout adjustments for better user experience.
- Updated the environment variable configuration to allow multiple root admin emails via `ADMIN_EMAILS`, while maintaining compatibility with the legacy `ADMIN_EMAIL`.
- Modified the admin login verification process to check against the list of root admin emails.
- Enhanced the admin role management in the frontend to reflect the new multiple admin structure.
- Introduced a new utility function `sameUserId` to streamline user ID comparisons across multiple API endpoints.
- Updated lock validation logic in the skill and agent management routes to utilize the new function, enhancing code readability and maintainability.
- Added support for clearing version history during skill and agent imports with the `--clear-versions` flag.
- Updated import scripts to handle versioning more effectively, ensuring only the latest version is retained when clearing history.
- Introduced new checks for user permissions in various API endpoints to restrict access based on roles.
- Normalized file paths during merges to ensure consistency across different operating systems.
- Updated `.gitignore` to exclude the `scripts/` directory.