- Introduced cron-parser for improved cron expression handling in the WorkflowScheduler.
- Added validation for cron expressions during schedule creation and updates, ensuring correct format and providing user feedback on errors.
- Implemented utility methods for generating supported cron examples and validating cron expressions, enhancing usability and clarity in scheduling workflows.
- Updated llmProcessor to support variable substitution in prompts, improving flexibility in input handling.
- Introduced a method to retrieve an optional proxy base URL for production use, improving security by allowing API calls to be routed through a backend.
- Updated error handling to provide clear messages when the API key is not configured or when the proxy is not set in production.
- Refactored the web scraping processor to handle undefined configuration values more gracefully, ensuring default behaviors are maintained.
- Updated ExecutionEngine to construct a plan object for workflow execution, improving clarity and structure.
- Added a mapping for node labels to IDs within the plan, facilitating variable substitution and enhancing usability.
- Ensured backward compatibility with existing node ID references while supporting new node label functionality.
- Updated README to reflect new variable substitution methods using node labels alongside node IDs for improved usability.
- Modified demo workflows to utilize descriptive node labels for variable references, enhancing clarity in configurations.
- Implemented a mapping system in the ExecutionEngine to support variable substitution using node labels, ensuring backward compatibility with existing node ID references.
- Added validation for unique node labels within the workflow to prevent conflicts and improve user experience.
- Enhanced utility functions for variable validation to accommodate both node IDs and labels, ensuring robust error handling during workflow execution.
- Added validation checks for workflow structure, including detection of circular dependencies and validation errors before execution.
- Enhanced ExecutionPanel to display validation error messages to users, improving feedback during workflow execution.
- Updated error handling in workflow store to specifically manage validation errors, ensuring clear communication of issues to users.
- Introduced detailed logging for validation failures, aiding in debugging and user experience.
- Removed local state management for nodes and edges, syncing directly with the workflow store for improved consistency.
- Introduced new updateNodePosition and updateNodeData methods in the workflow store to handle node position and data updates.
- Simplified edge and node change handling by utilizing callbacks for direct store updates, enhancing performance and maintainability.
- Cleaned up unused code related to local state management, improving overall code clarity.
- Refactored TestingPanel to include detailed logging during workflow execution and enhanced error handling for better user feedback.
- Updated ExecutionEngine to support real-time node status updates through a callback mechanism, allowing for more dynamic execution monitoring.
- Introduced new node statuses ('completed' and 'failed') to provide clearer execution state representation.
- Improved BaseNode component to handle invalid data gracefully and added debug logging for better traceability.
- Enhanced workflow store to manage and log node status updates effectively, improving overall workflow execution visibility.
- Introduced a new test script for verifying workflow execution, allowing for easier testing of workflow configurations.
- Enhanced the ExecutionPanel to support the creation of test workflows with data input and output nodes.
- Updated node status handling and improved UI interactions for better user experience.
- Refactored components to streamline the workflow creation process and added new icons for better visual representation.
- Implemented panel state management for improved visibility and control over the execution and node library panels.
- Introduced DatabaseConnectionManager and DatabaseNodeConfiguration components for managing database connections within workflows.
- Implemented ExecutionConfiguration component to allow users to configure execution settings, including execution mode and retry policies.
- Enhanced WorkflowToolbar to integrate database connection management and scheduling functionalities.
- Added WorkflowScheduler component for scheduling workflows with various trigger types.
- Updated the store to manage execution states and configurations, improving overall workflow execution handling.
- Introduced new database node types: DatabaseQueryNode, DatabaseInsertNode, DatabaseUpdateNode, and DatabaseDeleteNode, enhancing workflow capabilities.
- Added corresponding configurations in NodeConfiguration for database operations, including fields for connectors, queries, and data handling.
- Implemented base connector classes for MongoDB, MySQL, and PostgreSQL, providing a structured approach to database interactions.
- Updated the WorkflowEditor to include new database nodes and their respective icons and categories for improved user experience.
- Enhanced the overall node management system to support new database functionalities, ensuring seamless integration within the existing framework.
- Introduced the Radix UI Select component to enhance dropdown functionality in NodeConfiguration.
- Refactored NodeConfiguration to replace standard select elements with the new Select component, improving UI consistency and user experience.
- Updated various input elements to utilize custom Input and Textarea components for better styling and functionality.
- Added new Card and Badge components for improved layout and visual appeal in the configuration modal.
- Enhanced button interactions and styling for a more cohesive design across the application.
- Replaced standard button elements with a custom Button component in TestingPanel and WorkflowToolbar for consistent styling and improved UI.
- Updated button properties and classes to align with the new Button component's design, enhancing user experience across the application.
- Adjusted layout and spacing for better visual coherence and usability.
- Updated ApiKeysSettings component to utilize Radix UI's Dialog for improved modal functionality and styling.
- Refactored OnboardingModal to implement Radix UI Dialog components, enhancing user experience and consistency.
- Introduced new Input and Textarea components for better form handling and styling.
- Updated WorkflowToolbar to pass the isOpen prop to ApiKeysSettings for better state management.
- Added new dependencies for Radix UI components to streamline UI development.
- Added new dependencies: @radix-ui/react-slot, class-variance-authority, tailwind-merge, and tailwindcss-animate to improve UI components and styling.
- Updated Tailwind CSS configuration to include additional content paths for better utility generation.
- Introduced custom CSS variables for theming and improved button component for consistent styling across the application.
- Introduced new onboarding steps highlighting embedding generation and similarity search capabilities.
- Updated existing descriptions to include vector search and optimization details.
- Enhanced API key configuration instructions for improved user guidance.
- Added new features section to outline recent enhancements in the workflow.
- Adjusted padding and height properties for the modal to improve visual consistency and usability.
- Enhanced the layout structure by adding flex properties to ensure better responsiveness and organization of content.
- Updated overflow handling to optimize the display of API key configurations within the modal.
- Eliminated the API Keys settings button and associated state management from the App component.
- Removed the API Keys Settings modal, streamlining the user interface and focusing on core workflow functionalities.
- This change reflects a shift away from the API Keys management feature, simplifying the overall application structure.
- Introduced a new ApiKeysSettings component for managing API keys, including Pinecone and DeepSeek configurations.
- Updated App component to include a button for accessing API Keys settings.
- Replaced the deprecated OpenAIConfig component with ApiKeysSettings in WorkflowToolbar.
- Enhanced user experience by providing clear feedback on API key status and validation during configuration.
- Implemented local storage management for API keys, ensuring persistence across sessions.
- Removed unused AgentTask import from WorkflowAgent to streamline code.
- Simplified complexity determination logic in ClassifyIntentTool by eliminating the complexityScore variable, enhancing readability and efficiency.
- Integrated a new prompt optimization service to enhance AI task node prompts, improving context-awareness and domain specificity.
- Updated NodeConfiguration component to include a button for optimizing prompts, displaying results for user review and application.
- Enhanced workflow generation logic to utilize optimized prompts, ensuring better performance in AI analysis tasks.
- Refactored existing prompt generation methods to leverage the new prompt optimizer, streamlining the process for various data types and tasks.
- Added detailed context and instructions for AI tasks, improving the overall user experience and output quality.
- Added detailed logging for PDF processing completion and output updates in DataInputNode.
- Refactored pdfService to utilize a browser-native approach for PDF text extraction, improving performance and reliability.
- Updated workflowStore to handle pre-processed PDF data, allowing for better integration and output management.
- Enhanced variable substitution utility to provide clearer warnings about unresolved variables and available nodes.
- Improved workflow generation logic to differentiate between PDF and URL-based inputs, ensuring appropriate processing nodes are added.
- Updated the CopilotPanel to include a more detailed success message with complexity indicators and node count.
- Improved the ClassifyIntentTool to provide a comprehensive breakdown of workflow requests, including complexity analysis, step breakdown, data flow, and integration points.
- Enhanced the GenerateWorkflowTool to display complexity and step breakdown in the generated workflow output.
- Added new properties to the IntentClassification interface for better data handling.
- Implemented a fallback mechanism in workflow generation to support enhanced intent classification.
- Added clearAllNodes method to the workflow store to reset the workflow state, clearing all nodes and edges.
- Updated WorkflowToolbar to replace the clearExecutionResults function with clearAllNodes, renaming the button to "Reset workflow (clear all nodes)" for clarity.
- Enhanced user experience by ensuring the reset action is clearly communicated through UI changes.
- Introduced a new architecture for the multi-agent intelligence layer, replacing the monolithic `CopilotService` with a modular tool-based system.
- Added core components including `AgentManager`, `WorkflowAgent`, and various tools for intent classification, entity extraction, workflow generation, validation, and suggestions.
- Implemented a comprehensive test script and demo component for interactive testing of the new agent system.
- Updated TypeScript configuration and integrated the new architecture into the existing workflow store, ensuring backward compatibility with the previous API.
- Enhanced documentation to reflect the new architecture and its components, providing a clear overview of the system's capabilities and usage.
- Deleted multiple workflow JSON files and a test results JSON file to clean up the project structure and remove unused resources.
- This includes the removal of firecrawl_workflow_test.json, Workflow_2.json, Workflow_1760486472779.json, and workflow_test_results_1.json.
- The deletion helps streamline the project and focuses on maintaining only relevant workflows and test results.
- Revised project description to include comparisons with Zapier and added details on automation capabilities.
- Expanded features section to highlight new AI-powered node types and functionalities, including variable substitution and advanced workflow management.
- Added a new AI Copilot Assistant section detailing its capabilities for workflow generation and suggestions.
- Updated installation instructions to include API key configuration and deployment options.
- Included troubleshooting tips for common issues related to API keys, web scraping, and workflow execution.
- Enhanced documentation with additional resources and a roadmap for future development.
- Introduced a new CopilotPanel component for enhanced user interaction, allowing users to describe workflows and receive AI-generated suggestions.
- Implemented workflow generation from natural language input using the CopilotService, enabling users to create workflows based on their descriptions.
- Added validation and suggestion features to improve the generated workflows, ensuring they meet user requirements and best practices.
- Enhanced the WorkflowEditor to include a button for opening the CopilotPanel, streamlining the workflow creation process.
- Updated the workflow store to manage AI suggestions and validation results, improving the overall user experience and functionality.
- Added 'build' directory to .gitignore to prevent tracking of build outputs.
- Deleted obsolete build files including asset-manifest.json, demo-workflows.json, index.html, and associated CSS and JS files, streamlining the project structure and reducing clutter.
- Deleted Windows PowerShell and Bash setup scripts for the Agent Workflow Builder, streamlining the setup process.
- Improved styling and functionality in the ExecutionPanel and WorkflowEditor components, including enhanced node status indicators, progress tracking, and user interface refinements.
- Added new icons and animations for better visual feedback and user experience.
- Updated WorkflowList to include onboarding modal for first-time users, enhancing usability and guidance.
- Updated handleCreateWorkflow to accept an optional workflow name, allowing users to specify a name when creating a workflow.
- Enhanced WorkflowList component to support editing workflow names, including input fields for editing and buttons for saving or canceling changes.
- Integrated updateWorkflow method in the workflow store to manage workflow name updates, ensuring changes are persisted.
- Implemented a new button to delete the currently selected node in the WorkflowEditor.
- Added a handler to manage the deletion process, ensuring the node is removed and the configuration view is closed after deletion.
- Enhanced user interface with a delete button that appears only when a node is selected, improving usability.
- Introduced format sanitization to ensure only supported formats are used, deduplicating requests.
- Normalized output formats to include a safe fallback of markdown.
- Implemented a preferred order for output selection, prioritizing string outputs suitable for downstream processing.
- Added maxLength enforcement for output text to control response size.
- Added URL validation to ensure the provided URL starts with http:// or https://.
- Refactored scrape options to create a minimal, whitelisted options object to prevent 400 errors.
- Improved error logging to capture detailed information on API call failures.
- Implemented a retry mechanism for 400 Bad Request errors with minimal options for better resilience.
- Updated workflowStore to implement variable substitution for node outputs, allowing dynamic input handling across different node types.
- Modified processing functions for LLM, data output, web scraping, embedding, similarity search, and structured output nodes to utilize the new variable substitution mechanism.
- Adjusted demo-workflows.json to reflect changes in node configurations, including format updates for web scraping and model changes for LLM tasks.
- Modified the output of the web scraping node to return the complete result data instead of just the content, enhancing the information available for further processing.
- Renamed FirecrawlApp to Firecrawl for consistency with the SDK.
- Expanded FirecrawlConfig interface to include additional options such as maxAge, storeInCache, and location.
- Updated FirecrawlResponse interface to accommodate new response fields including rawHtml, summary, and actions.
- Implemented batchScrapeWithFirecrawl function for handling multiple URLs in a single request.
- Improved error handling and optional parameter checks in the scraping logic.
- Introduced Firecrawl API support in the workflow builder, allowing users to scrape web content.
- Updated NodeConfiguration component to include new fields for Firecrawl settings, such as output formats and content filtering options.
- Enhanced OpenAIConfig component to manage both OpenAI and Firecrawl API keys.
- Created firecrawlService to handle API interactions and scraping logic.
- Modified workflowStore to process web scraping nodes using Firecrawl, improving error handling and fallback responses.
- Removed obsolete test-localStorage.html file as part of project cleanup.
- Added success feedback in WorkflowToolbar upon saving a workflow, including visual changes to the save button.
- Implemented localStorage operations for saving, loading, and clearing workflows in workflowStore.
- Updated workflow management functions to persist changes to localStorage, ensuring data consistency across sessions.
- Introduced new workflow test results JSON file to capture node execution outcomes.
- Updated NodeConfiguration component to replace OpenAI model options with DeepSeek models.
- Modified OpenAIConfig component to prioritize DeepSeek API key storage and validation.
- Enhanced openaiService to initialize with DeepSeek API and handle API key checks accordingly.
- Updated error messages and UI labels to reflect the integration of DeepSeek API.
- Added .env to .gitignore to prevent sensitive data exposure.
- Updated package.json and package-lock.json to include OpenAI SDK version 6.3.0.
- Enhanced NodeConfiguration component to support additional model options for AI tasks.
- Modified TestingPanel to accept test input for workflow execution.
- Improved WorkflowToolbar with OpenAI configuration button and modal.
- Refactored workflow execution logic to handle test inputs and added processing functions for various node types.