- Introduced a centralized AI prompt registry to consolidate main, human, and memory prompts, improving maintainability and auditability.
- Enhanced human execution strategy to allow for progressive exploration in case of recoverable failures, preventing premature task blocking.
- Removed the `HumanTaskInput.mode` field, simplifying the input contract to `taskId` and `objective`, reducing coupling and complexity.
- Updated relevant documentation and specifications to reflect architectural changes and ensure consistency across the system.
- Implemented structured prompt building interfaces to enforce output contracts and improve prompt quality.
- Ensured backward compatibility by maintaining existing event semantics while transitioning to the new prompt management system.
- Introduced a unified prompt registry for main, human, and memory prompts to improve maintainability and reduce duplication.
- Replaced inline prompts in various nodes with calls to the new prompt registry.
- Enhanced the human execution model to allow for progressive exploration after recoverable failures, rather than immediate blocking.
- Removed the `mode` field from `HumanTaskInput`, simplifying the input contract to just `taskId` and `objective`.
- Updated documentation to reflect changes in architecture and prompt management.
- Added structured prompt building functions to ensure consistent output contracts across the system.
- Updated the docx tool capabilities to include new actions: 'docx_open', 'docx_outline', 'docx_get_block', 'docx_search', 'docx_apply_ops', 'docx_render_preview', 'docx_save', and 'docx_validate'.
- Introduced a new types file for docx-related types, including specifications for text runs, paragraphs, tables, and operations.
- Created a worker for handling document processing tasks, including opening documents, outlining, searching, applying operations, rendering previews, and saving.
- Implemented a client for the docx worker to manage requests and responses.
- Added protocol definitions for communication between the main thread and the worker.
- Enhanced the ChatPage component to support document previews for artifacts.
- Deleted `initNode.ts` and `slotCommitNode.ts` to streamline the human node structure.
- Updated `toolExecNode.ts` to remove unnecessary phases and simplify the tool execution logic.
- Adjusted `types.ts` to reflect the removal of phases and state properties related to slot management.
- Modified `contextDispatchNode.ts` and `dispatchNode.ts` to align with the new flow and removed references to slot states.
- Introduced `intentNode.ts` to handle intent decisions and context enrichment.
- Updated state schemas to remove slot-related properties and adjust the main stage flow.
- Cleaned up unused imports and types across various files to enhance code clarity and maintainability.
- Implemented docx capability tools including inspection, editing, and saving functionalities.
- Added local knowledge base retrieval tools for hybrid, vector, and FTS searches.
- Created a registry to manage capability tools and their configurations.
- Developed terminal execution capabilities with command risk assessment and workspace boundary checks.
- Introduced artifact management for terminal commands, including file creation and updates.
- Enhanced error handling and event emission for better tracking of tool execution states.
- Added `toolExecNode.ts` for executing tools in human tasks, handling tool responses, and managing task states.
- Introduced `types.ts` to define types related to human run states and phases.
- Created `contextDispatchNode.ts` for dispatching context enrichment tasks.
- Developed `contextGateNode.ts` to manage context decision-making and transitions.
- Implemented `dispatchNode.ts` for handling task dispatching and state updates.
- Added `finalizeNode.ts` to generate final answers based on task outcomes.
- Created helper functions in `helpers.ts` for managing context evidence and task planning.
- Implemented `planNode.ts` for generating task plans based on user input and context.
- Updated `types.ts` to include new types for human tasks and context management.
- Refactored utility functions in `aiCapabilityUtils.ts` to streamline task handling.
- Enhanced `ChatPage.tsx` to support new event types and display human step tracking.
- Updated shared types to include new event stages and task definitions.
- Add hostActionExecutor.ts to manage execution of host actions including context retrieval, plan creation, and final answers.
- Introduce hostActionTools.ts for defining and validating host action schemas.
- Create hostNode.ts to handle decision-making and task execution logic for the AI host.
- Implement hostPrompt.ts to generate prompts for host decision-making based on current state and context evidence.
- Enhance runtime.ts to include local instructions in the AI run context.
- Update types.ts to define new types for host actions and events.
- Modify ChatPage.tsx to handle internal events and improve user feedback on task execution and approval processes.
- Ensure proper handling of internal events in the UI to avoid unnecessary user notifications.
- Implemented terminal command execution with safety checks and approval gating.
- Added tools for running commands and marking completion.
- Introduced policies for workspace boundary checks and command risk classification.
- Enhanced artifact tracking for file operations resulting from terminal commands.
- Created utility functions for managing task execution and event emissions.
- Developed a local knowledge base retrieval system with hybrid, vector, and FTS search capabilities.
- Added terminalExec.ts for running shell commands with timeout and output management.
- Introduced terminalPolicy.ts for workspace boundary checks and command risk classification.
- Developed terminalTools.ts to handle command execution, artifact detection, and event emission.
- Removed outdated test files related to previous implementations.
- Added utility functions for bounded loops and file artifact event emission.
- Implemented `emitFileArtifactEvent` for emitting file artifact events.
- Created `TerminalCapabilityTools` for executing terminal commands with workspace boundary checks and risk classification.
- Added `checkWorkspaceBoundary` and `classifyCommandRisk` functions for command validation.
- Introduced `terminalPolicy` for managing terminal command policies.
- Enhanced `ChatPage` to display file artifacts and provide options to open or reveal paths.
- Updated shared types to include artifact-related types and events.
- Added utility functions for grouping artifact events by task.
- Introduced utility functions for handling carrier content and tool calls in `graph.ts`.
- Simplified task mapping logic by creating a dedicated `toPlannedTask` function.
- Enhanced error handling in `ModelService` and `EmbeddingService` for better clarity.
- Added new utility functions in `decoder.ts` for type-safe conversions.
- Improved document handling in `DocumentsStore` with better type checks and normalization.
- Updated preload API to streamline communication between renderer and main process.
- Enhanced type definitions for better clarity and maintainability in global types.
- Refactored components to improve type safety and reduce TypeScript errors.
- Removed WritingFolderRecord, WritingDocumentRecord, and related methods from global types.
- Cleaned up legacy writing workflow types and events from shared types.
- Updated serialization utility to improve type safety for IPC results.
- Changed input and output types in AiRunEvent to use 'unknown' for better type handling.