https://github.com/ljlm0402/auto-github-tool
π€ AGT(Automatic Git & GitHub Tool)
https://github.com/ljlm0402/auto-github-tool
automatic branch git github issues pull-request tool
Last synced: 6 months ago
JSON representation
π€ AGT(Automatic Git & GitHub Tool)
- Host: GitHub
- URL: https://github.com/ljlm0402/auto-github-tool
- Owner: ljlm0402
- License: mit
- Created: 2025-02-09T08:59:20.000Z (8 months ago)
- Default Branch: master
- Last Pushed: 2025-02-22T08:44:43.000Z (8 months ago)
- Last Synced: 2025-04-02T16:01:48.794Z (6 months ago)
- Topics: automatic, branch, git, github, issues, pull-request, tool
- Language: JavaScript
- Homepage: http://npm.im/auto-github-tool
- Size: 48.8 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
Auto GitHub Tool
π€ A CLI tool to automate GitHub issue handling, branch creation, and PR submission.
## AGT μκ°
AGT(Automatic GitHub Tool)λ GitHub Issueλ₯Ό κΈ°λ°μΌλ‘ λΈλμΉ κ΄λ¦¬μ ν 리νμ€νΈ(PR) μμ±μ μλννμ¬ κ°λ°μμ μμ°μ±μ ν₯μμν€κ³ , λΈλμΉ κ΄λ¦¬μ μΌκ΄μ±μ μ μ§νλ λꡬμ λλ€.
μ΄ λꡬλ₯Ό μ¬μ©νλ©΄ λ€μκ³Ό κ°μ μμ μ λΉ λ₯΄κ² μνν μ μμ΅λλ€:
- **μ΄μ λͺ©λ‘ μ‘°ν**
- **μ μ΄μ μμ± (μ λͺ© μ λ ₯ κ°λ₯)**
- **μ΄μ κΈ°λ° λΈλμΉ μμ±**
- **PR μμ±**## π λͺ©μ°¨
- [μꡬ μ¬ν](#μꡬ-μ¬ν)
- [μ€μΉ λ° μ€ν](#μ€μΉ-λ°-μ€ν)
- [μ¬μ©λ²](#μ¬μ©λ²)
- [λμ μμ](#λμ-μμ)
- [λ¬Έμ ν΄κ²°](#λ¬Έμ -ν΄κ²°)## π μꡬ μ¬ν
- Node.js 14 μ΄μ
- GitHub CLI (gh) μ€μΉ νμ
- GitHub κ³μ μ΄ νμν©λλ€.```sh
node -v # λ²μ νμΈ
gh --version # μ€μΉ νμΈ
```## π μ€μΉ λ° μ€ν
1. **GitHub CLI μ€μΉ**
```bash
# Homebrewλ₯Ό ν΅ν μ€μΉ
brew install gh
```2. **GitHub κ³μ μ°λ**
```bash
gh auth login
```
- ν둬ννΈμ λ°λΌ μ§ν:
1. `? What account do you want to log into?` β `GitHub.com` μ ν
2. `? What is your preferred protocol for Git operations?` β `HTTPS` μ ν
3. `? Authenticate Git with your GitHub credentials?` β `Yes` μ ν
4. `? How would you like to authenticate GitHub CLI?` β `Login with a web browser` μ ν
5. νμλ one-time codeλ₯Ό 볡μ¬
6. μλμΌλ‘ μ΄λ¦¬λ λΈλΌμ°μ μμ GitHub λ‘κ·ΈμΈ
7. 볡μ¬ν μ½λ μ λ ₯νμ¬ μΈμ¦ μλ£3. **AGT μ€νμμ€ μ€μΉ**
```bash
npm install -g auth-github-tool
```
μ€μΉ ν agt λͺ λ Ήμ΄λ₯Ό μ¬μ©νμ¬ μ€νν μ μμ΅λλ€.## π μ¬μ©λ²
### 1. λͺ λ Ήμ΄ κ°μ```sh
agt help # μ¬μ© κ°λ₯ν λͺ λ Ήμ΄ λͺ©λ‘ μΆλ ₯
agt list # μ€νλ μ΄μ λͺ©λ‘ μ‘°ν
agt issue # μ μ΄μ μμ±
agt branch # μ νν μ΄μ κΈ°λ° λΈλμΉ μμ±
agt pr # νμ¬ λΈλμΉμμ PR μμ±
agt label # label μμ±
```### 2. λμλ§
```sh
$ agt helpUsage: agt [options]
Commands:
help Show this help message
list Show open issues
issue Create a new issue
branch Create a branch from an issue
pr Create a pull request
label Create a new labelExamples:
agt help
agt list
agt issue
agt branch
agt pr
agt label
```### 3. μ΄μ λͺ©λ‘ μ‘°ν
νμ¬ μ μ₯μμ λͺ¨λ μ΄μλ₯Ό λ²νΈ μμΌλ‘ μ λ ¬νμ¬ λ³΄μ¬μ€λλ€.```bash
$ agt list=== π Open Issues ===
{issue-number} {issue-title} {issue-label}
...
```### 3. μ΄μ μμ±
μ΄μ μμ±```bash
$ agt issue> π Enter issue title: {issue-title}
π Available Issue Templates:
1. bug_report.md
2. feature_request.md
3. question.md
> Select a template number or press Enter to skip: {issue-template-number}// If issue template is not selected (When selected, input items are added based on the contents of the template.)
> π Enter issue description: {issue-description}> π₯ Enter assignees (comma-separated, or press Enter to skip): {issue-assignees}
> π₯ Assignee set to your account: {your-github-account} (skip)=== π Available Labels ===
[1] bug
[2] documentation
[3] duplicate
[4] enhancement
[5] good first issue
[6] help wanted
[7] invalid
[8] question
[9] wontfix
> π· Select labels [1...9]: {issue-lables-number}
> π·οΈ Selected Labels: [{issue-labels-name}]> π Enter milestone (or press Enter to skip): {issue-milestone}
β GitHub issue created successfully.
```### 4. λΈλμΉ μμ±
μ΄μ λ²νΈλ₯Ό μ λ ₯λ°μ ν΄λΉ μ΄μμ μ λͺ©μ κΈ°λ°μΌλ‘ μλ‘μ΄ λΈλμΉλ₯Ό μμ±ν©λλ€.
- λΈλμΉ λͺ λͺ κ·μΉ: `{branch-types(feature, bugfix, hotfix, release)}/{issue-number}-{issue-title}````bash
$ agt branch=== π Open Issues ===
{issue-number} {issue-title} {issue-label}
...
> π’ Enter issue number to create branch: {issue-number}π Select a branch type:
[1] feature - Develop new features
[2] bugfix - Fix bugs
[3] hotfix - Urgent fixes
[4] release - Prepare for a release
> π’ Enter the branch type number: {branch-type-number}β Branch '{branch-type}/{issue-number}-{issue-title}' created.
```### 5. Pull Request μμ±
νμ¬ λΈλμΉμμ PRμ μλμΌλ‘ μμ±ν©λλ€.```bash
$ agt pr> π Enter PR title: {pull-request-title}
> π Provide a short summary of your changes: {pull-request-summary}=== π Open Issues ===
> π Enter the related issue number (e.g., #32): {pull-request-issue-number}
> β¨ Describe the major changes in your PR: {pull-request-changes}
> β Have you tested the changes locally? (yes/no): {pull-request-tested}
> π Does your code follow the projectβs style guidelines? (yes/no): {pull-request-guidelines}
> π Have you updated the documentation if necessary? (yes/no): {pull-request-documentation}
> π Add any additional information (optional): {pull-request-additional}
> π Enter reviewers (comma-separated, or press Enter to skip): {pull-request-reviewers}
> π₯ Enter assignees (comma-separated, or press Enter to skip): {pull-request-assignees}
> π₯ Assignee set to your account: {your-github-account}=== π Available Labels ===
[1] bug
[2] documentation
[3] duplicate
[4] enhancement
[5] good first issue
[6] help wanted
[7] invalid
[8] question
[9] wontfix
> π· Select labels [1...9]: {issue-lables-number}
> π·οΈ Selected Labels: [{issue-labels-name}]> π Enter milestone (or press Enter to skip): {pull-request-milestone}
[1] HEAD -> origin/master
[2] development
[3] master
> πΏ Select base branch: {base-branch-number}π Pushing branch {currentBranch} to remote repository...
π Creating a new pull request...
β Pull request created successfully.
```## λ¬Έμ ν΄κ²°
### β μΌλ°μ μΈ μ€λ₯
1. **Git μ μ₯μκ° μλ κ²½μ°**
```
Error: Not a git repository. Please run 'git init' first.
```
β‘οΈ ν΄κ²°: `git init` λͺ λ Ήμ΄λ‘ Git μ μ₯μ μ΄κΈ°ν2. **GitHub CLI μΈμ¦ μ€λ₯**
```
Error: Please run 'gh auth login' to authenticate with GitHub.
```
β‘οΈ ν΄κ²°: `gh auth login` μ€ννμ¬ μ¬μΈμ¦3. **μμ€ λΈλμΉκ° μλ κ²½μ°**
```
Error: Source branch '{branch-name}' does not exist
```
β‘οΈ ν΄κ²°: ν΄λΉνλ λΈλμΉκ° μ‘΄μ¬νλμ§ νμΈ## π λΌμ΄μ μ€
μ΄ νλ‘μ νΈλ MIT λΌμ΄μ μ€λ₯Ό λ°λ¦ λλ€.