Skip to content

Commit ebfc9d8

Browse files
author
Test User
committed
feat(cli): add comprehensive GitHub PR workflow commands
Add `codeframe pr` command group for GitHub Pull Request management: - `pr create`: Create PRs with auto-generated descriptions from commits - `pr list`: List PRs with status filtering and JSON output - `pr get`: Get detailed PR information - `pr merge`: Merge PRs with squash/merge/rebase strategies - `pr close`: Close PRs without merging - `pr status`: Show PR status for current branch Implementation follows v2 CLI patterns (headless, no server required): - Uses existing GitHubIntegration async client - Wraps async calls with asyncio.run() for CLI context - Full test coverage (23 tests) using TDD approach - Environment-based configuration (GITHUB_TOKEN, GITHUB_REPO) Commands registered in both v1 CLI (__init__.py) and v2 CLI (app.py). Documentation updated in CLI_WIREFRAME.md with examples.
1 parent c0a3261 commit ebfc9d8

5 files changed

Lines changed: 1232 additions & 26 deletions

File tree

codeframe/cli/__init__.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,6 +316,7 @@ def version():
316316
from codeframe.cli.session_commands import session_app # noqa: E402
317317
from codeframe.cli.context_commands import context_app # noqa: E402
318318
from codeframe.cli.review_commands import review_app # noqa: E402
319+
from codeframe.cli.pr_commands import pr_app # noqa: E402
319320

320321
# Register Phase 1 command groups
321322
app.add_typer(auth_app, name="auth", help="Authentication (login, logout, register)")
@@ -332,6 +333,7 @@ def version():
332333
app.add_typer(session_app, name="session", help="Session management (get)")
333334
app.add_typer(context_app, name="context", help="Agent context (get, stats, flash-save, checkpoints)")
334335
app.add_typer(review_app, name="review", help="Code review management (status, stats, findings, list)")
336+
app.add_typer(pr_app, name="pr", help="Pull request management (create, list, merge, close)")
335337

336338

337339
if __name__ == "__main__":

codeframe/cli/app.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4161,6 +4161,11 @@ def templates_apply(
41614161
app.add_typer(templates_app, name="templates")
41624162
app.add_typer(auth_app, name="auth")
41634163

4164+
# Import and register PR commands for GitHub PR workflow
4165+
from codeframe.cli.pr_commands import pr_app
4166+
4167+
app.add_typer(pr_app, name="pr")
4168+
41644169

41654170
# =============================================================================
41664171
# Version command

0 commit comments

Comments
 (0)