{"id":36676597,"url":"https://github.com/harakeishi/gh-discussion","last_synced_at":"2026-01-12T10:51:13.617Z","repository":{"id":298294144,"uuid":"999267019","full_name":"harakeishi/gh-discussion","owner":"harakeishi","description":"A GitHub CLI extension for managing discussions, providing functionality similar to gh issue and gh pr for GitHub Discussions.","archived":false,"fork":false,"pushed_at":"2025-06-10T14:08:22.000Z","size":18455,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-12-24T18:02:41.886Z","etag":null,"topics":["github","githubcli","go","golang"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/harakeishi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-10T02:09:53.000Z","updated_at":"2025-09-28T19:40:38.000Z","dependencies_parsed_at":"2025-06-10T11:40:30.147Z","dependency_job_id":null,"html_url":"https://github.com/harakeishi/gh-discussion","commit_stats":null,"previous_names":["harakeishi/gh-discussion"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/harakeishi/gh-discussion","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harakeishi%2Fgh-discussion","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harakeishi%2Fgh-discussion/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harakeishi%2Fgh-discussion/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harakeishi%2Fgh-discussion/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/harakeishi","download_url":"https://codeload.github.com/harakeishi/gh-discussion/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harakeishi%2Fgh-discussion/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28338846,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T10:40:25.642Z","status":"ssl_error","status_checked_at":"2026-01-12T10:39:27.820Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["github","githubcli","go","golang"],"created_at":"2026-01-12T10:51:10.668Z","updated_at":"2026-01-12T10:51:13.602Z","avatar_url":"https://github.com/harakeishi.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# gh-discussion\n\nA GitHub CLI extension for managing discussions, providing functionality similar to `gh issue` and `gh pr` for GitHub Discussions.\n\nEnglish | [日本語](README_ja.md)\n\n## Features\n\n- **List discussions** with filtering and search capabilities\n- **View discussion details** with optional comments\n- **Multiple output formats**: table, JSON, custom templates\n- **GitHub CLI integration**: uses your existing GitHub authentication\n\n## Demo\n\n### Listing discussions\n![List discussions](img/list.png)\n\n### Viewing discussion details\n![View discussion](img/view.png)\n\n### Viewing discussion with comments\n![View discussion with comments](img/view-with-comment.png)\n\n## Installation\n\n### Prerequisites\n\n- [GitHub CLI](https://cli.github.com/) must be installed and authenticated\n- Go 1.21 or later (for building from source)\n\n### Install from source\n\n```bash\ngit clone https://github.com/harakeishi/gh-discussion.git\ncd gh-discussion\ngo build -o gh-discussion\ngh extension install .\n```\n\n### Install as GitHub CLI extension\n\n```bash\ngh extension install harakeishi/gh-discussion\n```\n\n## Usage\n\n### List discussions\n\n```bash\n# List discussions in the current repository\ngh discussion list\n\n# List discussions in a specific repository\ngh discussion list -R owner/repo\n\n# Filter by author\ngh discussion list -a username\n\n# Search discussions\ngh discussion list -S \"API documentation\"\n\n# Filter by category\ngh discussion list --category \"General\"\n\n# Filter by answered status\ngh discussion list --answered true\ngh discussion list --answered false\n\n# Limit results\ngh discussion list -L 50\n\n# Output specific fields as JSON\ngh discussion list --json \"number,title,author,category,isAnswered\"\n\n# Open in web browser\ngh discussion list -w\n```\n\n### View discussion details\n\n```bash\n# View discussion by number\ngh discussion view 123\n\n# View discussion in specific repository\ngh discussion view 123 -R owner/repo\n\n# View discussion by URL\ngh discussion view https://github.com/owner/repo/discussions/123\n\n# Include comments\ngh discussion view 123 -c\n\n\n# Output specific fields\ngh discussion view 123 --json \"title,body,author,comments\"\n\n\n# Open in web browser\ngh discussion view 123 -w\n```\n\n## Available JSON Fields\n\n### Discussion fields\n- `activeLockReason`, `answer`, `answerChosenAt`, `answerChosenBy`\n- `author`, `authorAssociation`, `body`, `bodyHTML`, `bodyText`\n- `category`, `comments`, `createdAt`, `createdViaEmail`, `databaseId`\n- `editor`, `id`, `includesCreatedEdit`, `isAnswered`, `lastEditedAt`\n- `locked`, `number`, `publishedAt`, `reactionGroups`, `repository`\n- `resourcePath`, `title`, `updatedAt`, `url`, `upvoteCount`\n- `viewerCanDelete`, `viewerCanReact`, `viewerCanSubscribe`\n- `viewerCanUpdate`, `viewerDidAuthor`, `viewerSubscription`\n\n### Nested object fields\n\n#### Author/User fields\n- `avatarUrl`, `login`, `url`, `id`, `name`, `email`\n\n#### Category fields\n- `id`, `name`, `description`, `emoji`, `emojiHTML`, `isAnswerable`, `createdAt`, `updatedAt`\n\n#### Comment fields\n- `author`, `authorAssociation`, `body`, `bodyHTML`, `bodyText`, `createdAt`\n- `id`, `isAnswer`, `isMinimized`, `minimizedReason`, `publishedAt`\n- `reactionGroups`, `replies`, `replyTo`, `updatedAt`, `url`\n- `viewerCanMarkAsAnswer`, `viewerCanUnmarkAsAnswer`\n\n#### Repository fields\n- `id`, `name`, `nameWithOwner`, `owner`, `url`, `description`\n\n## Examples\n\n### Find unanswered questions in a specific category\n\n```bash\ngh discussion list --category \"Q\u0026A\" --answered false --json \"number,title,author,createdAt\"\n```\n\n### List recent discussions by a specific author\n\n```bash\ngh discussion list -a username -L 10 --json \"number,title,createdAt,isAnswered\"\n```\n\n## Development\n\n### Project structure\n\n```\ngh-discussion/\n├── main.go                 # Entry point\n├── cmd/                    # Command implementations\n│   ├── list.go            # List command\n│   ├── view.go            # View command\n│   └── create.go          # Create command\n├── pkg/\n│   ├── client/\n│   │   └── github.go      # GraphQL client\n│   ├── models/\n│   │   └── discussion.go  # Data models\n│   └── formatter/\n│       └── output.go      # Output formatting\n├── go.mod\n├── go.sum\n└── README.md\n```\n\n### Building\n\n```bash\ngo build -o gh-discussion\n```\n\n### Testing\n\n```bash\ngo test ./...\n```\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Add tests if applicable\n5. Submit a pull request\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n\n## Acknowledgments\n\n- Inspired by GitHub CLI's `gh issue` and `gh pr` commands\n- Built using the [GitHub CLI Go library](https://github.com/cli/go-gh)\n- Uses [Cobra](https://github.com/spf13/cobra) for CLI framework \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharakeishi%2Fgh-discussion","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fharakeishi%2Fgh-discussion","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharakeishi%2Fgh-discussion/lists"}