sapper-iq 1.1.24 → 1.1.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/sapper.mjs +6 -6
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sapper-iq",
3
- "version": "1.1.24",
3
+ "version": "1.1.25",
4
4
  "description": "AI-powered development assistant that executes commands and builds projects",
5
5
  "main": "sapper.mjs",
6
6
  "bin": {
package/sapper.mjs CHANGED
@@ -541,8 +541,8 @@ async function runSapper() {
541
541
  - [TOOL:LIST]path[/TOOL] - List directory
542
542
  - [TOOL:READ]path[/TOOL] - Read file
543
543
  - [TOOL:SEARCH]pattern[/TOOL] - Search codebase
544
- - [TOOL:WRITE]path]content[/TOOL] - Create/overwrite file
545
- - [TOOL:PATCH]path]old|||new[/TOOL] - Edit file
544
+ - [TOOL:WRITE]path:::content[/TOOL] - Create/overwrite file (use ::: between path and content)
545
+ - [TOOL:PATCH]path:::old|||new[/TOOL] - Edit file
546
546
  - [TOOL:SHELL]command[/TOOL] - Run terminal command`
547
547
  }];
548
548
  }
@@ -630,8 +630,8 @@ async function runSapper() {
630
630
  - [TOOL:LIST]path[/TOOL] - List directory
631
631
  - [TOOL:READ]path[/TOOL] - Read file
632
632
  - [TOOL:SEARCH]pattern[/TOOL] - Search codebase
633
- - [TOOL:WRITE]path]content[/TOOL] - Create/overwrite file
634
- - [TOOL:PATCH]path]old|||new[/TOOL] - Edit file
633
+ - [TOOL:WRITE]path:::content[/TOOL] - Create/overwrite file (use ::: between path and content)
634
+ - [TOOL:PATCH]path:::old|||new[/TOOL] - Edit file
635
635
  - [TOOL:SHELL]command[/TOOL] - Run terminal command.`
636
636
  });
637
637
 
@@ -814,8 +814,8 @@ async function runSapper() {
814
814
 
815
815
  messages.push({ role: 'assistant', content: msg });
816
816
 
817
- // Fixed regex: [^\]]* allows empty path (AI sometimes sends [TOOL:LIST][/TOOL])
818
- const toolMatches = [...msg.matchAll(/\[TOOL:(\w+)\]([^\]]*)(?:\]([\s\S]*?))?\[\/TOOL\]/g)];
817
+ // Regex: supports both old format (path]content) and new format (path:::content)
818
+ const toolMatches = [...msg.matchAll(/\[TOOL:(\w+)\]([^:\]]*?)(?:(?:::|\])([\s\S]*?))?\[\/TOOL\]/g)];
819
819
 
820
820
  // Debug mode: show what regex sees
821
821
  if (debugMode) {