* docs: Add Google Gemini CLI installation guide and integration
- Add comprehensive installation guide for Google Gemini CLI
- Include Docker and binary configuration options
- Add authentication setup for Gemini API and Vertex AI
- Update main README.md to include Gemini CLI in installation guides
- Update installation guides index with Gemini CLI entry and support matrix
- Follow established documentation patterns and security best practices
* Fix Gemini CLI command syntax and add remote server method
- Replace all 'gemini-cli' commands with correct 'gemini' syntax
- Fix verification commands to use '/mcp list' and '/tools' prompts
- Add httpUrl remote server method as primary configuration option
- Update config file paths from settings.json to config.json
- Correct npx installation command syntax
- Add link to official Gemini CLI documentation
Addresses feedback from soisyourface in PR review.
* Emphasize official Gemini CLI documentation link
Reduce detailed installation steps and direct users to official docs for
up-to-date instructions, addressing reviewer feedback about maintainability.
* Fix Gemini CLI configuration file name: config.json -> settings.json
The correct configuration file for Gemini CLI is settings.json, not config.json.
This applies to both global (~/.gemini/settings.json) and project-specific
(.gemini/settings.json) configurations as confirmed by official documentation.
* Remove Gemini CLI installation and authentication sections
Removed lines 11-41 containing Gemini CLI installation commands and
authentication setup instructions.
* Add Podman as Docker alternative in prerequisites
Added Podman as container engine option alongside Docker.
* Remove references to deprecated npm package
* Add comprehensive ~/.gemini/.env file example
* Fix authorization header to use literal token placeholder
Environment variable substitution in headers is not yet supported
by Gemini CLI (see google-gemini/gemini-cli#5282).
* Add issue types (#869)
* feat: add type to issues
* test: add `type` test for create and update issues
* Generate docs and toolsnaps
* Update pkg/github/issues.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Use github ptr
---------
Co-authored-by: Pranav RK <pranavrk7@gmail.com>
Co-authored-by: Pranav RK <39577726+radar07@users.noreply.github.com>
Co-authored-by: Alon Kenneth <11458012+akenneth@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Enable Dependabot (#654)
* Create/Update dependabot.yaml
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Bump SDK version to 0.36.0 (#863)
* Use server.ServerResourceTemplate and server.ServerPrompt wrappers (#886)
* Update "Close inactive issues" workflow to close issues after 180 days of inactivity (#909)
* update PR_DAYS_BEFORE_STALE
* update to mark as stale after 60 days
* Update Claude MCP install guide after testing (#706)
* Revise Claude installation guide
- Verified Claude Code installation steps
- Identified and documented issues with Claude Desktop setup
- Updated installation documentation based on testing
* Revise instructions for opening Claude Code
Updated recommendations for opening Claude Code.
* Update docs/installation-guides/install-claude.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update docs/installation-guides/install-claude.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update installation guide for Claude setup
Added installation option for using Claude Code using a release binary.
* Change section title for Go Binary installation
Updated section title for clarity regarding installation without Docker.
* Close double quote in bash command
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: LuluBeatson <lulubeatson@github.com>
Co-authored-by: Matt Holloway <mattdholloway@github.com>
Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
* Add actions job log buffer and profiler (#866)
* add sliding window for actions logs
* refactor: fix sliding
* remove trim content
* only use up to 1mb of memory for logs
* update to tail lines in second pass
* add better memory usage calculation
* increase window size to 5MB
* update test
* update vers
* undo vers change
* add incremental memory tracking
* use ring buffer
* remove unused ctx param
* remove manual GC clear
* fix cca feedback
* extract ring buffer logic to new package
* handle log content processing errors and use correct param for maxjobloglines
* fix tailing
* account for if tailLines exceeds window size
* add profiling thats reusable
* remove profiler testing
* refactor profiler: introduce safeMemoryDelta for accurate memory delta calculations
* linter fixes
* Update pkg/buffer/buffer.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* use flag for maxJobLogLines
* add param passing for context window size
* refactor: rename contextWindowSize to contentWindowSize for consistency
* fix: use tailLines if bigger but only if <= 5000
* fix: limit tailLines to a maximum of 500 for log content download
* Update cmd/github-mcp-server/main.go
Co-authored-by: Adam Holt <omgitsads@github.com>
* Update cmd/github-mcp-server/main.go
Co-authored-by: Adam Holt <omgitsads@github.com>
* move profiler to internal/
* update actions test with new profiler location
* fix: adjust buffer size limits
* make line buffer 1028kb
* fix mod path
* change test to use same buffer size as normal use
* improve test for non-sliding window implementation to not count empty lines
* make test memory measurement more accurate
* remove impossible conditional
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Adam Holt <omgitsads@github.com>
* Add get_release_by_tag tool (#938)
* add get_release_by_tag tool
* add tool
* add tests
* autogen
* remove comment
* docs(readme): Update readme to point to correct installation guides index (#892)
* docs(readme): Update readme to point to correct installation guides index
* feat(contributors): add list_repository_contributors tool
* Revert "feat(contributors): add list_repository_contributors tool"
This reverts commit ece480ea6f99f7131a6faa2d12fb2f62d3e53332.
---------
Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
* Add Global Security Advisories Toolset (#919)
* Repository security advisories (#925)
* Add support for listing repo level security advisories
* Add support for listing repo security advisories at the org level
* Update Cursor installation link (#940)
* use new link
* update local install link
* Change role from "system" to "user" in prompt messages for `AssignCodingAgentPrompt` and `IssueToFixWorkflowPrompt`. Role "system" is not allowed by Claude Code in MCP provided prompt (allowed only role "user" and "assistant") (#941)
Co-authored-by: 0xGosu <0xGosu@gmail.com>
* Local MCP is supported
* Refactor Gemini CLI install guide
* Remove Bearer from Authorization header
* Add reference to main README for latest config
* Bearer needed for headers, add references
* Add minimal response to CRUD tools, `repositories` and `search` toolsets (#988)
* add comprehensive minimal response where appropriate
* remove unneeded comments
* remove incorrect diff param
* update docs
* rm comment
* Update pkg/github/repositories.go
Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
* update toolsnaps and docs
* change minimal_output to use new OptionalBoolParamWithDefault
* Update pkg/github/repositories.go
Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
* refactor minimal conversion funcs to minimal_types.go
* consolidate response structs and remove unneeded message field
* consolidate response further
* remove CloneURL field
* Update pkg/github/repositories.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update pkg/github/server.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix undefined
* change incorrect comment
* remove old err var declaration
* Update pkg/github/repositories.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* fix syntax issue
* update toolsnaps
---------
Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* initial org repo create support (#1023)
---------
Co-authored-by: JoannaaKL <joannaakl@github.com>
Co-authored-by: Pranav RK <pranavrk7@gmail.com>
Co-authored-by: Pranav RK <39577726+radar07@users.noreply.github.com>
Co-authored-by: Alon Kenneth <11458012+akenneth@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Zack Koppert <zkoppert@github.com>
Co-authored-by: Ksenia Bobrova <almaleksia@github.com>
Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
Co-authored-by: Dimitrios Philliou <d1m1tr10s@github.com>
Co-authored-by: LuluBeatson <lulubeatson@github.com>
Co-authored-by: Matt Holloway <mattdholloway@github.com>
Co-authored-by: Adam Holt <omgitsads@github.com>
Co-authored-by: Rebecca Biju <113070179+beccccaboo@users.noreply.github.com>
Co-authored-by: Jurre <jurre@github.com>
Co-authored-by: 0xGosu <0xGosu@gmail.com>
Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
* add sliding window for actions logs
* refactor: fix sliding
* remove trim content
* only use up to 1mb of memory for logs
* update to tail lines in second pass
* add better memory usage calculation
* increase window size to 5MB
* update test
* update vers
* undo vers change
* add incremental memory tracking
* use ring buffer
* remove unused ctx param
* remove manual GC clear
* fix cca feedback
* extract ring buffer logic to new package
* handle log content processing errors and use correct param for maxjobloglines
* fix tailing
* account for if tailLines exceeds window size
* add profiling thats reusable
* remove profiler testing
* refactor profiler: introduce safeMemoryDelta for accurate memory delta calculations
* linter fixes
* Update pkg/buffer/buffer.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* use flag for maxJobLogLines
* add param passing for context window size
* refactor: rename contextWindowSize to contentWindowSize for consistency
* fix: use tailLines if bigger but only if <= 5000
* fix: limit tailLines to a maximum of 500 for log content download
* Update cmd/github-mcp-server/main.go
Co-authored-by: Adam Holt <omgitsads@github.com>
* Update cmd/github-mcp-server/main.go
Co-authored-by: Adam Holt <omgitsads@github.com>
* move profiler to internal/
* update actions test with new profiler location
* fix: adjust buffer size limits
* make line buffer 1028kb
* fix mod path
* change test to use same buffer size as normal use
* improve test for non-sliding window implementation to not count empty lines
* make test memory measurement more accurate
* remove impossible conditional
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Adam Holt <omgitsads@github.com>
* Revise Claude installation guide
- Verified Claude Code installation steps
- Identified and documented issues with Claude Desktop setup
- Updated installation documentation based on testing
* Revise instructions for opening Claude Code
Updated recommendations for opening Claude Code.
* Update docs/installation-guides/install-claude.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update docs/installation-guides/install-claude.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Update installation guide for Claude setup
Added installation option for using Claude Code using a release binary.
* Change section title for Go Binary installation
Updated section title for clarity regarding installation without Docker.
* Close double quote in bash command
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: LuluBeatson <lulubeatson@github.com>
Co-authored-by: Matt Holloway <mattdholloway@github.com>
Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
* add team tool with tests
* add to tools
* add toolsnaps and docs
* Update pkg/github/context_tools.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* rewrite to allow providing user
* rRename get_my_teams to get_teams and update documentation and tests
* remove old snap
* rm old comments
* update test teams to numbered examples
* Update descriptions for allow finding teams of other users
* return empty result over custom empty error
* fix test expectations for no teams found
* flatten teams response to not include Nodes
* update description to include clarification about teams you are a member of
* fix typo in tool desc
* updated description to be more generic for accecss note
* amended error handling
* Update pkg/github/context_tools.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* add additional tool to get team members
* update tool desc for get_team_members to include warning about auth
* added new scope info
* refactor to parse params individually
* GetTeams - rename "login" field to "org"
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: LuluBeatson <lulubeatson@github.com>
Co-authored-by: Lulu <59149422+LuluBeatson@users.noreply.github.com>
* Enhance search functionality with new query filters and utility functions
- Added multiple test cases for searching issues with various query filters in `issues_test.go`.
- Introduced utility functions in `search_utils.go` to check for specific filters and extract repository information from queries.
- Created comprehensive tests in `search_utils_test.go` to validate the new filtering logic and ensure accurate query parsing.
* Refactor repository filter extraction in search utilities
- Renamed `extractRepoFilter` to `hasRepoFilter` to simplify the function's purpose.
- Updated test cases in `search_utils_test.go` to reflect the new function name and logic.
- Adjusted tests to focus on the presence of the `repo:` filter rather than extracting owner and repo details.
* Enhance search functionality with additional query filters and utility functions
- Added new test cases for searching pull requests and users with various query filters in `pullrequests_test.go` and `search_test.go`.
- Implemented a utility function `hasTypeFilter` in `search_utils.go` to check for the presence of `type:` filters in queries.
- Updated the search handler to conditionally prepend the `type:` filter based on the presence of existing filters, improving query handling.
* Updated both regex patterns to handle this edge case
* docs: add required GitHub token permissions per action (#128)
* Feat: Add support for GitHub Releases (list and latest) tools
* Update repositories.go
Update params
* Update README.md
Add only new tool to the readme
* Revise GitHub PAT instructions and permissions section
* Readme formatting
---------
Co-authored-by: Arya Soni <aryasoni98@gmail.com>
Co-authored-by: Arya Soni <18515597+aryasoni98@users.noreply.github.com>
- Adjust some logs to use structured outputs
- Set stdioserver log prefix as const
- Do not export test func removeTimeAttr
Signed-off-by: Bailey Hayes <behayes2@gmail.com>
Co-authored-by: Matt Holloway <mattdholloway@github.com>
Co-authored-by: JoannaaKL <joannaakl@github.com>
* make resolveGitReference function more robust, add comments to follow the logic
* add tests for new functionality
* lint fix 1
* fix linting by using inverted if instead of empty if block
* remove unused var
* refactor
* remove comment
* small fix
* add ref == "" case in switch statement, use originalRef instead of ref in case definitions and some of the logic
Build and Test Go Project / build (macos-latest) (push) Has been cancelled
Build and Test Go Project / build (ubuntu-latest) (push) Has been cancelled
Build and Test Go Project / build (windows-latest) (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
Docker / build (push) Has been cancelled
GoReleaser Release / release (push) Has been cancelled
License Check / license-check (push) Has been cancelled
* initial changes
* Further advances on list_issues tool to use GRPC
* Updating pagination for Graphql ListIssues
* Sorting data structures & returning mapped Issue
* Adding dynamic label queries
* Adding dynamic state queries for list_issues
* Add optional since filter, to get issues based on last update to issue
* Move ListIssues test to graphql format & removal of temp file
* Update documentation and fix linter issues
* Removal of redundant code, and increase limit on label return
* Fixing context for status to allow for better interactions
* Update tool snaps with tool description
* Update docs for final changes to context
Fix#839 by updating the descriptions for the `owner` and `repo`
parameters for the `search_issues` and `search_pull_requests` tools to
no longer reference notifications but issues and pull requests,
respectively.
Build and Test Go Project / build (macos-latest) (push) Has been cancelled
Build and Test Go Project / build (ubuntu-latest) (push) Has been cancelled
Build and Test Go Project / build (windows-latest) (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
Docker / build (push) Has been cancelled
GoReleaser Release / release (push) Has been cancelled
License Check / license-check (push) Has been cancelled
* feat: add reviewers parameter to UpdatePullRequest and update tests
* Update pullrequests.go
* feat: enhance update pull request functionality with reviewers support
* update README to clarify optional reviewers parameter in API documentation- go run ./cmd/github-mcp-server generate-docs
* feat: enhance UpdatePullRequest to return early if no updates or reviewers are provided
* Add updating draft state to `update_pull_request` tool (#774)
* initial impl of pull request draft state update
* appease linter
* update README
* add nosec
* fixed err return type for json marshalling
* add gql test
* Add support for org-level discussions in list_discussions tool (#775)
* make repo optional, and default to .github when not provided. improve tool description
* autogen
* update tests
* small copy paste error fixes
* refactor: streamline UpdatePullRequest logic and enhance test cases for reviewer updates
* refactor: remove redundant draft update tests and streamline UpdatePullRequest logic
* test: add unit tests for updating pull request draft state
* refactor: simplify UpdatePullRequest tests by removing unused mock data
---------
Co-authored-by: Matt Holloway <mattdholloway@github.com>
Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>