fix: import getMaxToolUseConcurrency into local scope and add ripgrep fallback (#8)
toolOrchestration.ts used `export { getMaxToolUseConcurrency } from
'./toolConcurrency.js'` (a re-export) but then called the function
directly in runToolsConcurrently(). A re-export does not bring the name
into the module's own scope, causing a ReferenceError at runtime —
visible as "getMaxToolUseConcurrency is not defined" in --print mode.
TypeScript also flagged this as TS2304 on main.
Fix: replace the re-export with an explicit import + a separate export
statement so the name is both locally callable and publicly exported.
ripgrep.ts fell through to the vendor binary path on non-bundled (npm)
installs where the vendor/ directory is not shipped alongside dist/cli.mjs,
producing "spawn .../vendor/ripgrep/x64-linux/rg ENOENT". Fix: check
whether the vendor binary exists before returning the builtin config;
fall back to system rg if it is absent.
This commit is contained in:
@@ -4,10 +4,11 @@ import { findToolByName, type ToolUseContext } from '../../Tool.js'
|
||||
import type { AssistantMessage, Message } from '../../types/message.js'
|
||||
import { all } from '../../utils/generators.js'
|
||||
import { type MessageUpdateLazy, runToolUse } from './toolExecution.js'
|
||||
export {
|
||||
import {
|
||||
DEFAULT_MAX_TOOL_USE_CONCURRENCY,
|
||||
getMaxToolUseConcurrency,
|
||||
} from './toolConcurrency.js'
|
||||
export { DEFAULT_MAX_TOOL_USE_CONCURRENCY, getMaxToolUseConcurrency }
|
||||
|
||||
export type MessageUpdate = {
|
||||
message?: Message
|
||||
|
||||
Reference in New Issue
Block a user