Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion extensions/cli/src/permissions/permissionChecker.ts
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,9 @@
}

// Check if tool has dynamic policy evaluation
const tool = ALL_BUILT_IN_TOOLS.find((t) => t.name === toolCall.name);
const tool = ALL_BUILT_IN_TOOLS.find(
(t) => t.function.name === toolCall.name,

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (ubuntu-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (macos-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 22)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 20)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 18)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow risky commands based on user preference (curl)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:601:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > Hybrid Permission Model with Dynamic Evaluation > User has Bash in 'allow' mode > should allow safe commands (echo hello)

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:586:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match argument patterns with glob patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:539:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match Bash command patterns in checkToolPermission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:494:24

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should fall back to ask when no policy matches

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:476:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match based on arguments

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:452:31

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should match wildcard patterns

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:425:25

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should exclude tools with exclude permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:408:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should ask for tools with ask permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:391:22

Check failure on line 151 in extensions/cli/src/permissions/permissionChecker.ts

View workflow job for this annotation

GitHub Actions / test (windows-latest, 24)

src/permissions/permissionChecker.test.ts > Permission Checker > checkToolPermission > should allow tools with allow permission

TypeError: Cannot read properties of undefined (reading 'name') ❯ src/permissions/permissionChecker.ts:151:23 ❯ checkToolPermission src/permissions/permissionChecker.ts:150:35 ❯ src/permissions/permissionChecker.test.ts:377:22
);
if (tool?.evaluateToolCallPolicy) {
// Convert CLI permission to core policy
const basePolicy = permissionPolicyToToolPolicy(basePermission);
Expand Down
6 changes: 3 additions & 3 deletions extensions/cli/src/services/ToolPermissionService.ts
Original file line number Diff line number Diff line change
Expand Up @@ -138,9 +138,9 @@ export class ToolPermissionService
}));
policies.push(...allowed);
const specificBuiltInSet = new Set(specificBuiltIns);
const notMentioned = ALL_BUILT_IN_TOOLS.map((t) => t.name).filter(
(name) => !specificBuiltInSet.has(name),
);
const notMentioned = ALL_BUILT_IN_TOOLS.map(
(t) => t.function.name,
).filter((name) => !specificBuiltInSet.has(name));
const disallowed: ToolPermissionPolicy[] = notMentioned.map((tool) => ({
tool,
permission: "exclude",
Expand Down
2 changes: 1 addition & 1 deletion extensions/cli/src/stream/handleToolCalls.ts
Original file line number Diff line number Diff line change
Expand Up @@ -189,7 +189,7 @@ export async function getRequestTools(isHeadless: boolean) {
const allowedTools: Tool[] = [];
for (const tool of availableTools) {
const result = checkToolPermission(
{ name: tool.name, arguments: {} },
{ name: tool.function.name, arguments: {} },
permissionsState.permissions,
);

Expand Down
8 changes: 6 additions & 2 deletions extensions/cli/src/stream/streamChatResponse.helpers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -309,12 +309,16 @@ export async function preprocessStreamedToolCalls(

// Get all available tools

// Get all available tools
const availableTools: Tool[] = await getAllAvailableTools(isHeadless);
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot Oct 30, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Moving getAllAvailableTools() outside the per-tool try/catch means any setup failure (e.g., model service not initialized) now rejects preprocessStreamedToolCalls entirely instead of producing a handled tool error. Please restore the await inside the try so thrown errors are caught and reported.

Prompt for AI agents
Address the following comment on extensions/cli/src/stream/streamChatResponse.helpers.ts at line 313:

<comment>Moving getAllAvailableTools() outside the per-tool try/catch means any setup failure (e.g., model service not initialized) now rejects preprocessStreamedToolCalls entirely instead of producing a handled tool error. Please restore the await inside the try so thrown errors are caught and reported.</comment>

<file context>
@@ -309,12 +309,16 @@ export async function preprocessStreamedToolCalls(
   // Get all available tools
 
+  // Get all available tools
+  const availableTools: Tool[] = await getAllAvailableTools(isHeadless);
+
   // Process each tool call
</file context>
Fix with Cubic


// Process each tool call
for (const toolCall of toolCalls) {
const startTime = Date.now();
try {
const availableTools: Tool[] = await getAllAvailableTools(isHeadless);
const tool = availableTools.find((t) => t.name === toolCall.name);
const tool = availableTools.find(
(t) => t.function.name === toolCall.name,
);
if (!tool) {
throw new Error(`Tool ${toolCall.name} not found`);
}
Expand Down
65 changes: 34 additions & 31 deletions extensions/cli/src/tools/edit.ts
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ export function validateAndResolveFilePath(args: any): {
if (!readFilesSet.has(resolvedPath)) {
throw new ContinueError(
ContinueErrorReason.EditToolFileNotRead,
`You must use the ${readFileTool.name} tool to read ${file_path} before editing it.`,
`You must use the ${readFileTool.function.name} tool to read ${file_path} before editing it.`,
);
}

Expand All @@ -62,47 +62,50 @@ export interface EditArgs extends EditOperation {
}

export const editTool: Tool = {
name: "Edit",
displayName: "Edit",
readonly: false,
isBuiltIn: true,
description: `Performs exact string replacements in a file.
type: "function",
function: {
name: "Edit",
description: `Performs exact string replacements in a file.

USAGE:
- ALWAYS use the \`${readFileTool.name}\` tool just before making edits, to understand the file's up-to-date contents and context.
- When editing text from ${readFileTool.name} tool output, ensure you preserve exact whitespace/indentation.
- ALWAYS use the \`${readFileTool.function.name}\` tool just before making edits, to understand the file's up-to-date contents and context.
- When editing text from ${readFileTool.function.name} tool output, ensure you preserve exact whitespace/indentation.
- Always prefer editing existing files in the codebase. NEVER write new files unless explicitly required.
- Only use emojis if the user explicitly requests it. Avoid adding emojis to files unless asked.
- Use \`replace_all\` for replacing and renaming strings across the file. This parameter is useful if you want to rename a variable, for instance.

WARNINGS:
- When not using \`replace_all\`, the edit will FAIL if \`old_string\` is not unique in the file. Either provide a larger string with more surrounding context to make it unique or use \`replace_all\` to change every instance of \`old_string\`.
- The edit will FAIL if you have not recently used the \`${readFileTool.name}\` tool to view up-to-date file contents.`,
parameters: {
type: "object",
required: ["file_path", "old_string", "new_string"],
properties: {
file_path: {
type: "string",
description:
"Absolute or relative path to the file to modify. Absolute preferred",
},
old_string: {
type: "string",
description:
"The text to replace - must be exact including whitespace/indentation",
},
new_string: {
type: "string",
description:
"The text to replace it with (MUST be different from old_string)",
},
replace_all: {
type: "boolean",
description: "Replace all occurrences of old_string (default false)",
- The edit will FAIL if you have not recently used the \`${readFileTool.function.name}\` tool to view up-to-date file contents.`,
parameters: {
type: "object",
required: ["file_path", "old_string", "new_string"],
properties: {
file_path: {
type: "string",
description:
"Absolute or relative path to the file to modify. Absolute preferred",
},
old_string: {
type: "string",
description:
"The text to replace - must be exact including whitespace/indentation",
},
new_string: {
type: "string",
description:
"The text to replace it with (MUST be different from old_string)",
},
replace_all: {
type: "boolean",
description: "Replace all occurrences of old_string (default false)",
},
},
},
},
displayName: "Edit",
readonly: false,
isBuiltIn: true,
preprocess: async (args) => {
const { old_string, new_string, replace_all } = args as EditArgs;

Expand Down
17 changes: 10 additions & 7 deletions extensions/cli/src/tools/exit.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
import { Tool } from "./types.js";

export const exitTool: Tool = {
name: "Exit",
displayName: "Exit",
description:
"Exit the current process with status code 1, indicating a failure or error",
parameters: {
type: "object",
properties: {},
type: "function",
function: {
name: "Exit",
description:
"Exit the current process with status code 1, indicating a failure or error",
parameters: {
type: "object",
properties: {},
},
},
displayName: "Exit",
readonly: false,
isBuiltIn: true,
run: async (): Promise<string> => {
Expand Down
7 changes: 4 additions & 3 deletions extensions/cli/src/tools/fetch.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -136,14 +136,15 @@ describe("fetchTool", () => {
});

it("should have correct tool metadata", () => {
expect(fetchTool.name).toBe("Fetch");
expect(fetchTool.type).toBe("function");
expect(fetchTool.function.name).toBe("Fetch");
expect(fetchTool.displayName).toBe("Fetch");
expect(fetchTool.description).toBe(
expect(fetchTool.function.description).toBe(
"Fetches content from a URL, converts to markdown, and handles long content with truncation",
);
expect(fetchTool.readonly).toBe(true);
expect(fetchTool.isBuiltIn).toBe(true);
expect(fetchTool.parameters).toEqual({
expect(fetchTool.function.parameters).toEqual({
type: "object",
required: ["url"],
properties: {
Expand Down
25 changes: 14 additions & 11 deletions extensions/cli/src/tools/fetch.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,23 @@ import { fetchUrlContentImpl } from "core/tools/implementations/fetchUrlContent.
import { Tool } from "./types.js";

export const fetchTool: Tool = {
name: "Fetch",
displayName: "Fetch",
description:
"Fetches content from a URL, converts to markdown, and handles long content with truncation",
parameters: {
type: "object",
required: ["url"],
properties: {
url: {
type: "string",
description: "The URL to fetch content from",
type: "function",
function: {
name: "Fetch",
description:
"Fetches content from a URL, converts to markdown, and handles long content with truncation",
parameters: {
type: "object",
required: ["url"],
properties: {
url: {
type: "string",
description: "The URL to fetch content from",
},
},
},
},
displayName: "Fetch",
readonly: true,
isBuiltIn: true,
preprocess: async (args) => {
Expand Down
44 changes: 24 additions & 20 deletions extensions/cli/src/tools/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -70,11 +70,10 @@ export async function getAllAvailableTools(
const isCapable = isModelCapable(provider, name, model);
if (isCapable) {
tools.push(multiEditTool);
logger.debug("Using MultiEdit tool for capable model");
} else {
tools.push(editTool);
logger.debug(
"Excluded Edit tool for capable model - MultiEdit will be used instead",
);
logger.debug("Using Edit tool for basic model");
}

logger.debug("Capability-based tool filtering", {
Expand All @@ -101,7 +100,7 @@ export async function getAllAvailableTools(
}

export function getToolDisplayName(toolName: string): string {
const tool = ALL_BUILT_IN_TOOLS.find((t) => t.name === toolName);
const tool = ALL_BUILT_IN_TOOLS.find((t) => t.function.name === toolName);
return tool?.displayName || toolName;
}

Expand Down Expand Up @@ -136,30 +135,33 @@ export function convertToolToChatCompletionTool(
return {
type: "function" as const,
function: {
name: tool.name,
description: tool.description,
name: tool.function.name,
description: tool.function.description,
parameters: {
type: "object",
required: tool.parameters.required,
properties: tool.parameters.properties,
required: tool.function.parameters.required,
properties: tool.function.parameters.properties,
},
},
};
}

export function convertMcpToolToContinueTool(mcpTool: MCPTool): Tool {
return {
name: mcpTool.name,
displayName: mcpTool.name.replace("mcp__", "").replace("ide__", ""),
description: mcpTool.description ?? "",
parameters: {
type: "object",
properties: (mcpTool.inputSchema.properties ?? {}) as Record<
string,
ParameterSchema
>,
required: mcpTool.inputSchema.required,
type: "function",
function: {
name: mcpTool.name,
description: mcpTool.description ?? "",
parameters: {
type: "object",
properties: (mcpTool.inputSchema.properties ?? {}) as Record<
string,
ParameterSchema
>,
required: mcpTool.inputSchema.required,
},
},
displayName: mcpTool.name.replace("mcp__", "").replace("ide__", ""),
readonly: undefined, // MCP tools don't have readonly property
isBuiltIn: false,
run: async (args: any) => {
Expand Down Expand Up @@ -234,8 +236,10 @@ export async function executeToolCall(

// Only checks top-level required
export function validateToolCallArgsPresent(toolCall: ToolCall, tool: Tool) {
const requiredParams = tool.parameters.required ?? [];
for (const [paramName] of Object.entries(tool.parameters)) {
const requiredParams = tool.function.parameters.required ?? [];
for (const [paramName] of Object.entries(
tool.function.parameters.properties ?? {},
)) {
if (
requiredParams.includes(paramName) &&
(toolCall.arguments[paramName] === undefined ||
Expand Down
23 changes: 13 additions & 10 deletions extensions/cli/src/tools/listFiles.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,22 @@ import { Tool } from "./types.js";

// List files in a directory
export const listFilesTool: Tool = {
name: "List",
displayName: "List",
description: "List files in a directory",
parameters: {
type: "object",
required: ["dirpath"],
properties: {
dirpath: {
type: "string",
description: "The path to the directory to list",
type: "function",
function: {
name: "List",
description: "List files in a directory",
parameters: {
type: "object",
required: ["dirpath"],
properties: {
dirpath: {
type: "string",
description: "The path to the directory to list",
},
},
},
},
displayName: "List",
readonly: true,
isBuiltIn: true,
preprocess: async (args) => {
Expand Down
Loading
Loading