-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy path.cursor-updates
More file actions
74 lines (57 loc) · 6.07 KB
/
Copy path.cursor-updates
File metadata and controls
74 lines (57 loc) · 6.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# Forq CLI Updates
- Implemented CLI interface with commander, including basic REPL command and help system.
- Created interactive REPL implementation with readline, supporting basic commands (/help, /clear, /exit).
- Enhanced REPL with command history navigation using arrow keys and colorful prompt using chalk.
- Added npm script for easy REPL access: `npm run repl`.
- Implemented System Prompt and User Prompt Management with config/systemPrompt.ts, AI API integration, and conversation history logging.
- Implemented Tool System core with Tool interface, dynamic tool loading, tool execution, and AI integration. Added echo and listDir tools for testing.
- Fixed compatibility issue with chalk by downgrading to v4.1.2 and improved tool system to handle empty parameters correctly.
- Implemented semantic tools: embedding, semantic search, and read semantic search files
- Implemented bash tool for secure command execution with persistence
- Added comprehensive permission system with user prompting and persistent configuration
- Implemented Context Management functionality, including loading project instructions from FORQ.md, collecting git context, providing directory structure summary, and implementing conversation history compaction via the `/compact` command.
- Implemented Configuration Management with global and project-specific config files, allowing customization of API settings, tools, REPL behavior, and logging options through both files and the `forq config` CLI command.
# Cursor Updates
- Implemented file system tools (listDir, readFile, editFile, deleteFile, createFile) with error handling and security checks.
- Implemented search tools (fileSearch, ripgrepSearch) with fuzzy filename matching and regex-based content search.
- Added tools parameter to Anthropic API calls to enable tool functionality in the CLI.
- Enhanced tool descriptions to follow best practices, including detailed usage guidance and parameter descriptions.
- Fixed tool calling implementation by properly handling Anthropic API's structured tool_use response format.
- Implemented complete tool cycle functionality with Claude, allowing tool results to be sent back to the AI for comprehensive responses.
## 2024-03-04
- Implemented analytics module to track session metrics (duration, commands, tool usage)
- Enhanced error logging with stack traces through logger.ts
- Created forq log CLI command to review session actions and logs
- Added detailed diff generation for file modifications to track all changes transparently
- Completed the Testing & Quality Assurance section by configuring Jest, adding initial tests for CLI and tools, and setting up GitHub Actions CI pipeline.
- Fixed character duplication bug in REPL by implementing a new inquirer-based REPL instead of using raw mode and keypress event handling.
- Completed the Documentation & User Onboarding story with README, CLI commands documentation, prompt guidelines, example workflows, and detailed help command implementation.
- Fixed AI response streaming by replacing queryAI with streamAI in the REPL loop to provide real-time response output instead of showing dots and then the complete response at once.
- Enhanced system prompt with comprehensive guidelines for better security, improved communication style, detailed task approach instructions, and project memory feature using FORQ.md.
## 2024-03-05
- Added complete tool cycle functionality that sends tool execution results back to Claude for final responses.
- Implemented configuration option to enable/disable the complete tool cycle feature.
- Added a new REPL command `/tool-cycle` to toggle the tool cycle setting.
- Removed deprecated `extractToolCalls` function in favor of new structured response handling.
- Fixed bugs in tool cycle implementation including proper error handling and message formatting.
- Enhanced debugging capabilities for tool result processing with detailed logging.
- Added message metadata support to correctly preserve original API responses.
- Implemented non-blocking tool result processing to keep the REPL responsive when completing tool cycles.
## 2024-03-06
- Fixed the deleteFile tool by removing the redundant confirm parameter and relying solely on the requiresPermission flag for user confirmation, making it consistent with other file operation tools.
## 2024-03-12
- Enhanced ripgrepSearch tool with fallback mechanism when ripgrep is not installed, allowing seamless operation by implementing a Node.js-based file search algorithm.
- Improved REPL agenticity by implementing recursive tool execution that automatically processes consecutive tool calls without returning to the prompt, enabling the AI to complete multi-step tasks in a single interaction.
- Fixed conversation context for tool calls by adding tool results to the main conversation history, ensuring the AI has access to previous tool outputs for better context-aware responses.
## 2024-03-13
- Fixed module system compatibility issue by changing tsconfig.json from "NodeNext" to "CommonJS" and "Node" to resolve "Unexpected token 'export'" errors when loading TypeScript definition files.
- Fixed API request error with empty message content by filtering out messages with empty content before sending to Anthropic API.
## 2024-05-31
- Fixed asynchronous control flow issues in REPL's agentic workflow by modifying streamAI to return proper promises and await completion.
- Consolidated duplicate processToolCalls functions into a single recursive handleToolCallsRecursively function that properly awaits all tool executions.
- Replaced .then() usage with async/await throughout the codebase for more predictable control flow.
- Ensured the REPL prompt is not displayed until the entire chain of tool calls and AI responses is fully completed.
- Improved streaming implementation to ensure proper handling of tool calls while maintaining a responsive user interface.
## 2025-03-05
- Implemented a robust promise-based permission system that properly awaits user confirmation before proceeding with tool execution.
- Fixed critical bug in tool permission handling that was causing the app to crash when requesting permission for createFile operations.