feat(core): add worktree to plugin tool context
This commit is contained in:
parent
2180be2f3f
commit
1f9313847f
2 changed files with 10 additions and 1 deletions
|
|
@ -67,7 +67,11 @@ export namespace ToolRegistry {
|
|||
parameters: z.object(def.args),
|
||||
description: def.description,
|
||||
execute: async (args, ctx) => {
|
||||
const pluginCtx = { ...ctx, directory: Instance.directory } as unknown as PluginToolContext
|
||||
const pluginCtx = {
|
||||
...ctx,
|
||||
directory: Instance.directory,
|
||||
worktree: Instance.worktree,
|
||||
} as unknown as PluginToolContext
|
||||
const result = await def.execute(args as any, pluginCtx)
|
||||
const out = await Truncate.output(result, {}, initCtx?.agent)
|
||||
return {
|
||||
|
|
|
|||
|
|
@ -9,6 +9,11 @@ export type ToolContext = {
|
|||
* Prefer this over process.cwd() when resolving relative paths.
|
||||
*/
|
||||
directory: string
|
||||
/**
|
||||
* Project worktree root for this session.
|
||||
* Useful for generating stable relative paths (e.g. path.relative(worktree, absPath)).
|
||||
*/
|
||||
worktree: string
|
||||
abort: AbortSignal
|
||||
metadata(input: { title?: string; metadata?: { [key: string]: any } }): void
|
||||
ask(input: AskInput): Promise<void>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue