( provider: ClineProvider, cwd: string, message: WebviewMessage, )
| 98 | } |
| 99 | |
| 100 | export async function handleOpenRulesDirectory( |
| 101 | provider: ClineProvider, |
| 102 | cwd: string, |
| 103 | message: WebviewMessage, |
| 104 | ): Promise<void> { |
| 105 | try { |
| 106 | const values = message.values ?? {} |
| 107 | const directoryPath = getRulesDirectoryPath(cwd, { |
| 108 | scope: values.scope, |
| 109 | kind: values.kind, |
| 110 | modeSlug: values.modeSlug, |
| 111 | } as CreateRuleInput) |
| 112 | openFile(directoryPath) |
| 113 | } catch (error) { |
| 114 | const errorMessage = getErrorMessage(error) |
| 115 | provider.log(`Error opening rules directory: ${errorMessage}`) |
| 116 | vscode.window.showErrorMessage(`Failed to open rules directory: ${errorMessage}`) |
| 117 | } |
| 118 | } |
| 119 | |
| 120 | async function refreshRules(provider: ClineProvider, cwd: string): Promise<RuleMetadata[]> { |
| 121 | const modes = await provider.getModes() |
no test coverage detected