release: v2.0.5 - Telegram Business Reporting & Core Resilience

This commit is contained in:
g1nation
2026-05-13 23:54:34 +09:00
parent 6784e85b7e
commit 39386f90b5
12 changed files with 288 additions and 20 deletions
+29
View File
@@ -3054,6 +3054,35 @@ export class AgentExecutor {
return candidates;
}
/**
* Public entry point for callers that need to apply ConnectAI's action
* tags (`<create_file>`, `<run_command>`, `<edit_file>`, …) to arbitrary
* text without going through the full `handlePrompt` pipeline.
*
* The 1인 기업 dispatcher uses this so specialist outputs that contain
* action tags actually take effect on disk — without it, agents would
* "claim" to create files but nothing would be written, which is the
* exact symptom the user reported.
*
* Returns the action report (`["✅ Created: …", "📂 Listed: …", …]`) so
* the caller can surface it back to the user. Errors inside individual
* actions are converted into report entries rather than thrown, matching
* the behaviour of the internal call site.
*/
public async executeActionTagsOnText(aiMessage: string): Promise<string[]> {
const cfg = getConfig();
const rootPath = vscode.workspace.workspaceFolders?.[0]?.uri.fsPath
|| cfg.localBrainPath
|| process.cwd();
const activeBrain = getActiveBrainProfile();
try {
return await this.executeActions(aiMessage, rootPath, activeBrain);
} catch (e: any) {
logError('executeActionTagsOnText failed.', { error: e?.message ?? String(e) });
return [`❌ Action 실행 중 오류: ${e?.message ?? e}`];
}
}
private async executeActions(aiMessage: string, rootPath: string, activeBrain: BrainProfile): Promise<string[]> {
const report: string[] = [];
let brainModified = false;