Three API shifts converge here:
- DefaultResourceLoaderOptions.agentDir is required as of 0.68 (the
old process.cwd() fallback was removed). Pass getFusionAgentDir()
explicitly in createFnAgent.
- createAgentSession({ tools }) is now a string[] allowlist of tool
names, not a Tool[] array (0.68). Our boundary-wrapping via
wrapToolsWithBoundary produces Tool instances, so we can no longer
pass them through \`tools\`. Move them into \`customTools\` and
suppress the built-in defaults with \`noTools: "builtin"\`. The
wrapped tools keep the same names (read, bash, ...) as the built-ins
they replace, so no call-site or prompt changes are needed.
- SettingsManager.create's first arg (cwd) became required (was
optional before). Dashboard routes that previously passed
\`undefined\` for a process-global settings view now pass
process.cwd() to match the existing DefaultPackageManager call below.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>