Clean up agentDir handling and remove redundant code

- Use default params instead of resolvedAgentDir pattern in loaders
- Remove unused DiscoverAndLoadHooksOptions interface
- Remove redundant github-copilot special casing in getAvailableModels
This commit is contained in:
Mario Zechner 2025-12-22 01:52:58 +01:00
parent 1236ab8007
commit f7a12c478c
3 changed files with 4 additions and 26 deletions

View file

@ -317,9 +317,8 @@ export async function discoverAndLoadCustomTools(
configuredPaths: string[],
cwd: string,
builtInToolNames: string[],
agentDir?: string,
agentDir: string = getAgentDir(),
): Promise<CustomToolsLoadResult> {
const resolvedAgentDir = agentDir ?? getAgentDir();
const allPaths: string[] = [];
const seen = new Set<string>();
@ -335,7 +334,7 @@ export async function discoverAndLoadCustomTools(
};
// 1. Global tools: agentDir/tools/
const globalToolsDir = path.join(resolvedAgentDir, "tools");
const globalToolsDir = path.join(agentDir, "tools");
addPaths(discoverToolsInDir(globalToolsDir));
// 2. Project-local tools: cwd/.pi/tools/

View file

@ -215,15 +215,6 @@ function discoverHooksInDir(dir: string): string[] {
}
}
export interface DiscoverAndLoadHooksOptions {
/** Explicit paths from settings.json or CLI */
configuredPaths?: string[];
/** Current working directory */
cwd?: string;
/** Agent config directory. Default: from getAgentDir() */
agentDir?: string;
}
/**
* Discover and load hooks from standard locations:
* 1. agentDir/hooks/*.ts (global)
@ -234,9 +225,8 @@ export interface DiscoverAndLoadHooksOptions {
export async function discoverAndLoadHooks(
configuredPaths: string[],
cwd: string,
agentDir?: string,
agentDir: string = getAgentDir(),
): Promise<LoadHooksResult> {
const resolvedAgentDir = agentDir ?? getAgentDir();
const allPaths: string[] = [];
const seen = new Set<string>();
@ -252,7 +242,7 @@ export async function discoverAndLoadHooks(
};
// 1. Global hooks: agentDir/hooks/
const globalHooksDir = path.join(resolvedAgentDir, "hooks");
const globalHooksDir = path.join(agentDir, "hooks");
addPaths(discoverHooksInDir(globalHooksDir));
// 2. Project-local hooks: cwd/.pi/hooks/

View file

@ -369,18 +369,7 @@ export async function getAvailableModels(
}
const availableModels: Model<Api>[] = [];
const copilotCreds = loadOAuthCredentials("github-copilot");
const hasCopilotEnv = !!(process.env.COPILOT_GITHUB_TOKEN || process.env.GH_TOKEN || process.env.GITHUB_TOKEN);
const hasCopilot = !!copilotCreds || hasCopilotEnv;
for (const model of allModels) {
if (model.provider === "github-copilot") {
if (hasCopilot) {
availableModels.push(model);
}
continue;
}
const apiKey = await getApiKeyForModel(model);
if (apiKey) {
availableModels.push(model);