Currently, workflows support a global search path at ~/.archon/.archon/workflows/ via getArchonHome() in discoverWorkflows(). Commands have no equivalent — they only load from:
- .archon/commands/ (project-local)
- .archon/commands/defaults/ (bundled defaults)
- commands.folder from .archon/config.yaml (project-local, no tilde expansion)
Request: Add ~/.archon/.archon/commands/ as a global fallback in getCommandFolderSearchPaths(), loaded after project-local commands but before bundled defaults — mirroring the existing global workflow pattern.
Use case: Teams maintaining a shared set of custom commands (e.g. company-specific workflow steps) want to author them in one place and have them available across all project repos without copying files into each repo or committing machine-specific absolute paths to .archon/config.yaml.
Suggested change (in packages/paths/src/archon-paths.ts):
export function getCommandFolderSearchPaths(configuredFolder?: string): string[] {
const globalCommandsPath = join(getArchonHome(), 'commands');
const paths = ['.archon/commands', '.archon/commands/defaults', globalCommandsPath];
if (
configuredFolder &&
configuredFolder !== '.archon/commands' &&
configuredFolder !== '.archon/commands/defaults'
) {
paths.push(expandTilde(configuredFolder)); // also fix tilde expansion here
}
return paths;
}
This also fixes a secondary issue: configuredFolder from config currently doesn't expand ~, so commands: folder: ~/.archon/commands silently fails.
Currently, workflows support a global search path at ~/.archon/.archon/workflows/ via getArchonHome() in discoverWorkflows(). Commands have no equivalent — they only load from:
Request: Add ~/.archon/.archon/commands/ as a global fallback in getCommandFolderSearchPaths(), loaded after project-local commands but before bundled defaults — mirroring the existing global workflow pattern.
Use case: Teams maintaining a shared set of custom commands (e.g. company-specific workflow steps) want to author them in one place and have them available across all project repos without copying files into each repo or committing machine-specific absolute paths to .archon/config.yaml.
Suggested change (in packages/paths/src/archon-paths.ts):
export function getCommandFolderSearchPaths(configuredFolder?: string): string[] {
const globalCommandsPath = join(getArchonHome(), 'commands');
const paths = ['.archon/commands', '.archon/commands/defaults', globalCommandsPath];
}
This also fixes a secondary issue: configuredFolder from config currently doesn't expand ~, so commands: folder: ~/.archon/commands silently fails.