feat: merge prepare and run steps into unified entry point

Consolidates the two-step architecture (prepare → run) into a single
step to eliminate file-based and output-based communication.

Changes:
- Add base-action/src/lib.ts with exports for main action import
- Modify run-claude-sdk.ts to accept prompt string directly and return result
- Add generatePromptContent() that returns prompt without file I/O
- Update mode prepare() to return promptContent in result
- Create src/entrypoints/run.ts as unified entry point
- Update action.yml to use single Run Claude Code step
- Update output references from steps.prepare to steps.claude-code

Benefits:
- No file I/O for prompt - data stays in memory
- No step output parsing - direct function returns
- Simpler debugging - single entry point
- Faster execution - no subprocess overhead
- Type safety - TypeScript across the boundary

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Ashwin Bhat
2025-12-23 11:32:00 -08:00
parent e5b07416ea
commit e8e8fdc051
11 changed files with 484 additions and 139 deletions

View File

@@ -97,4 +97,10 @@ export type ModeResult = {
currentBranch: string;
};
mcpConfig: string;
/** Generated prompt content for Claude */
promptContent?: string;
/** Comma-separated list of allowed tools */
allowedTools?: string;
/** Comma-separated list of disallowed tools */
disallowedTools?: string;
};