step-realtime-cli 版本
1.0.0
Node 版本 & OS
Node 24.16.0 / Linux (Fedora 44)
复现步骤
grep -n "normalizeArgsForFingerprint\|normalizeToolArguments" \
packages/core/src/agent/agent-loop.ts packages/core/src/tools/runtime.ts
grep -n "function safeParse" \
packages/core/src/tools/native-impls/shell-tools.ts packages/core/src/tools/native-impls/file-tools.ts
期望行为
公共函数应提取到 packages/utils 共享层,消除重复维护
实际行为
两处完全相同的代码重复:
normalizeToolArguments 和 normalizeArgsForFingerprint — JSON 序列化+折叠逻辑在 agent-loop.ts 和 runtime.ts 中各有一份
safeParse(JSON.parse 包装函数)在 shell-tools.ts 和 file-tools.ts 中各有一份
日志 / 堆栈
截图(可选)
No response
自检
step-realtime-cli 版本
1.0.0
Node 版本 & OS
Node 24.16.0 / Linux (Fedora 44)
复现步骤
期望行为
公共函数应提取到
packages/utils共享层,消除重复维护实际行为
两处完全相同的代码重复:
normalizeToolArguments和normalizeArgsForFingerprint— JSON 序列化+折叠逻辑在agent-loop.ts和runtime.ts中各有一份safeParse(JSON.parse 包装函数)在shell-tools.ts和file-tools.ts中各有一份日志 / 堆栈
截图(可选)
No response
自检