Commit Graph

246 Commits

Author SHA1 Message Date
Matt Holloway 4f41865ccc Merge branch 'main' into actions-consolidated
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
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
License Check / license-check (push) Has been cancelled
2025-11-21 10:37:39 +00:00
JoannaaKL 28b868dad4 Add in memory cache for lockdown mode (#1416)
* Apply lockdown mode to issues and pull requests

* Add cache

* Unlock in defer

* Add muesli/cache2go

* [WIP] Replace custom cache in lockdown.go with cache2go struct (#1425)

* Initial plan

* Replace custom cache with cache2go library

- Added github.com/muesli/cache2go dependency
- Replaced custom map-based cache with cache2go.CacheTable
- Removed manual timer management (scheduleExpiry, ensureEntry methods)
- Removed timer field from repoAccessCacheEntry struct
- Updated GetRepoAccessInfo to use cache2go's Value() and Add() methods
- Updated SetTTL to flush and re-add entries with new TTL
- Used unique cache names per instance to avoid test interference
- All existing tests pass with the new implementation

Co-authored-by: JoannaaKL <67866556+JoannaaKL@users.noreply.github.com>

* Final verification complete

Co-authored-by: JoannaaKL <67866556+JoannaaKL@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: JoannaaKL <67866556+JoannaaKL@users.noreply.github.com>

* Use muesli for cache

* Make RepoAccessCache a singleton (#1426)

* Initial plan

* Implement RepoAccessCache as a singleton pattern

Co-authored-by: JoannaaKL <67866556+JoannaaKL@users.noreply.github.com>

* Complete singleton implementation and verification

Co-authored-by: JoannaaKL <67866556+JoannaaKL@users.noreply.github.com>

* Remove cacheIDCounter as requested

Co-authored-by: JoannaaKL <67866556+JoannaaKL@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: JoannaaKL <67866556+JoannaaKL@users.noreply.github.com>

* Update mutexes

* .

* Reuse cache

* .

* .

* Fix logic after vibe coding

* Update docs

* .

* Refactoring to make the code pretty

* Hide lockdown logic behind shouldFilter function

* .

* Tests

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
2025-11-21 10:34:51 +01:00
Matt Holloway d9234b6199 Update pkg/github/actions_test.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-20 16:50:17 +00:00
Matt Holloway 8e7fa5536e Update pkg/github/actions.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-20 16:48:29 +00:00
Matt Holloway b141589cda Update pkg/github/actions.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-20 16:48:13 +00:00
Matt Holloway c3283c9ad4 fix test err string 2025-11-20 15:32:40 +00:00
Matt Holloway fc48cfea52 update actions run trigger tool to include delete 2025-11-20 15:30:22 +00:00
Matt Holloway 348b2bd0b4 update get_job_log to get_workflow_job_logs 2025-11-20 14:50:17 +00:00
Matt Holloway 72fb1d5d37 lint and bug fixes for actions get logs tools 2025-11-20 14:41:14 +00:00
Matt Holloway d8e94928b8 consolidate get logs tools 2025-11-20 14:33:03 +00:00
Matt Holloway c0f99d1242 refactor: update tool description and comment formatting in actions.go 2025-11-20 11:36:04 +00:00
Matt Holloway 817292ed1e Merge branch 'main' into actions-consolidated 2025-11-19 14:01:55 +00:00
Ksenia Bobrova ec6afa776d Instruct LLM to use pull request template when creating PRs (#1442) 2025-11-19 11:47:31 +01:00
Ksenia Bobrova f3b9a63311 Report error when API silently fails to add review comment (#1441) 2025-11-19 10:11:17 +01:00
SangheeSon 2f64ac0c21 Add discussion metadata fields to get_discussion tool (#1305)
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
Publish to MCP Registry / publish (push) Has been cancelled
* Add state metadata fields to get_discussion tool

Fixes #1303

The get_discussion tool was missing important state metadata that's
already available in get_issue. Added four fields to provide complete
discussion status information:

- state: Current discussion state (OPEN/CLOSED)
- isAnswered: Whether the discussion has an accepted answer
- answeredAt: Timestamp when answer was provided
- answerChosenAt: Timestamp when answer was selected

Changed GetDiscussion to return a map instead of github.Discussion
struct since the go-github library doesn't include all these fields
in its type definition. This approach is consistent with other
functions in this codebase (ListDiscussions, GetDiscussionComments).

All tests pass and linter checks pass.

* Fix Discussion field mappings based on GitHub GraphQL API

Changes:
- Replace 'State' (doesn't exist) with 'Closed' (Boolean)
- Remove 'AnsweredAt' (doesn't exist)
- Keep 'IsAnswered' (verified to exist in GitHub GraphQL API)
- Use 'AnswerChosenAt' for answer timestamp

Updated both implementation and tests to match actual GitHub GraphQL schema.
All tests passing.

---------

Co-authored-by: tommaso-moro <tommaso-moro@github.com>
2025-11-17 10:20:39 +00:00
Tony Truong 88a594e76b improve response/feedback loop with better error messages (#1414) 2025-11-17 10:19:42 +01:00
Jonathan Otalora e95d8ee6fe addresses float64 to in64 feedback from copilot 2025-11-16 23:42:14 +01:00
Jonathan Otalora 1d6499d875 removes unused code 2025-11-16 23:42:14 +01:00
Jonathan Otalora bd7ca66505 updates mcp-server with latest google-go-github APIs 2025-11-16 23:42:14 +01:00
Jonathan c73f06fa29 bumps google/go-github to v79 2025-11-15 22:07:38 +01:00
Tom Elliott e9033462e1 projects: serialization & pagination updates (#1390)
* pagination, serialization updates

* projects: add server instructions (#1393)

* add server instructions

* Update instructions.go

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-14 11:25:35 +00:00
JoannaaKL 2e5418093f Add lockdown mode to filter issue (#1371)
* Add lockdown mode to filter issue

* Update flag name

* Update pkg/lockdown/lockdown.go

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Merge two graphql queries into one

* Don't use Issue.Repository

* Add function signature

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-10 17:01:21 +01:00
Natalie Dunbar e26cf427ef Add Repository Tree Navigation Tool (#1164)
* add repo nav tool

* comment responses

* move into git.go

* fix documentation

* Update pkg/github/git.go

Co-authored-by: Adam Holt <omgitsads@github.com>

* Fix undefined variable error in GetRepositoryTree

* Update git.go to use github.com/google/go-github/v77 for consistency with main branch

---------

Co-authored-by: Adam Holt <omgitsads@github.com>
2025-11-10 10:29:13 -05:00
Jonathan b68bec003d Update mcp server with latest google/go-github API (#1358)
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
Build and Test Go Project / build (macos-latest) (push) Has been cancelled
GoReleaser Release / release (push) Has been cancelled
License Check / license-check (push) Has been cancelled
Publish to MCP Registry / publish (push) Has been cancelled
* licences update from required CI build

* fixes licences

* implements new helpers to support google/go-github v77 API

* upgrades toolset to leverage google/go-github v77 with the exception of Update and Delete items

* refactor string conversion helpers

* reverts migration google/go-github GetProjectItem due to bug with the underlying library implementation

* additional refactoring for server helpers based on recent updates to google/go-github

* test updates based on underlying lib requirements

* resolves licences conflicts with script/licenses

* cleanup

* reduce change diff

* updates helper docs to reflect to methods

* upgrades delete projects item to google/go-github

* returns error from parsing string to int64

* improved OptionalBigIntArrayParam doc

* improves implementation for RequiredBigInt

* improves documentation for temporary fieldSelectionOptions struct
2025-11-07 17:31:17 +00:00
Jonathan cf0e05e300 Update to google/go-github@v77 (#1357)
* update to google/go-github@v77

* licences update from required CI build

* fixes licences

* fixes possible nil reference

* refresh licences due to recent conflicts

---------

Co-authored-by: Roberto Nacu <kerobbi@github.com>
2025-11-07 08:06:27 -08:00
JoannaaKL 6a39a39e6d Add html filtering (#1356)
* Add html content sanitizer

* Add basic html sanitization

* .

* Correct licenses and scripts to ignore vendor directory

* Use singleton

* Simplify
2025-11-05 12:49:49 +01:00
Adam Holt 7028be0281 Improve descriptions to be clearer
Build and Test Go Project / build (ubuntu-latest) (push) Has been cancelled
Build and Test Go Project / build (windows-latest) (push) Has been cancelled
License Check / license-check (push) Has been cancelled
Build and Test Go Project / build (macos-latest) (push) Has been cancelled
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
The filters don't return something new, they filter existing results.
2025-10-31 17:12:19 +01:00
Adam Holt 617e44c3aa Update description 2025-10-31 16:38:14 +01:00
Adam Holt c398bc257a Split out into List and Get tools, add trigger 2025-10-31 16:01:37 +01:00
JoannaaKL 304f29a2fd Add basic content sanitizer (#1344) 2025-10-31 12:51:22 +01:00
Adam Holt 6722490e61 Make it clear you can pass a file name 2025-10-30 17:05:58 +01:00
Adam Holt ff4af578de More detailed descriptions 2025-10-30 16:46:17 +01:00
Adam Holt 02526f5d2a Merge branch 'main' into actions-consolidated 2025-10-30 15:31:35 +01:00
Adam Holt eb4dd2784e fix linter issues 2025-10-30 14:56:54 +01:00
Adam Holt a5a2267d1a Fix tests 2025-10-30 14:50:17 +01:00
Adam Holt c33b0ba88f comment out tool for now 2025-10-30 13:01:00 +01:00
Adam Holt 73131911f2 Add the list_workflows option to the actions_read tool 2025-10-30 12:52:05 +01:00
Adam Holt cdcbe4bff2 Add filename for the description 2025-10-30 12:46:01 +01:00
Vidit Ostwal dc5381078a Added get gist tool (#1105)
* Added get gist tool

* adjust prompt

* update readme (autogen)

---------

Co-authored-by: tommaso-moro <tommaso-moro@github.com>
2025-10-30 10:47:01 +00:00
Adam Holt 972edb15fa Update description 2025-10-30 11:29:57 +01:00
Adam Holt 88869ceae0 Update description 2025-10-29 16:45:39 +01:00
Adam Holt 6baf170bb0 Take a string and parse 2025-10-28 14:48:46 +01:00
Adam Holt ee9abaa001 Change to actions_read 2025-10-27 17:23:42 +01:00
JoannaaKL 0b65b1be52 Update description (#1319)
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
Build and Test Go Project / build (macos-latest) (push) Has been cancelled
GoReleaser Release / release (push) Has been cancelled
License Check / license-check (push) Has been cancelled
Publish to MCP Registry / publish (push) Has been cancelled
2025-10-27 16:21:50 +01:00
JoannaaKL 2592447223 Dont pass milestone if not provided (#1318) 2025-10-27 15:39:44 +01:00
Jonathan 6f5040734a Updates github-mcp-server to go-github/v76 (#1289)
* updates github-mcp-server to go-github/v76

* updates license files

* refactors ListProjects to make use of
google/go-github ProjectsService

* refactors GetProject to make use of google/go-github ProjectsService

* declaring commit without a pointer

* cleanup additional commit pointer

---------

Co-authored-by: Tommaso Moro <37270480+tommaso-moro@users.noreply.github.com>
2025-10-27 13:53:53 +01:00
Adam Holt ce0ab9cb99 Tests for artifacts and usage 2025-10-24 14:03:28 +02:00
Tom Elliott 70cb7375e5 projects: update fields and prompt (#1292)
* update fields and prompt

* update snapshots

* update docs

* pr feedback

* update snapshots

* update docs
2025-10-24 10:47:13 +02:00
Tom Elliott af2e93b846 projects: add item field support (#1282)
* add fields

* generate docs

* pr feedback

---------

Co-authored-by: Tom Elliott <tmelliottjr@lcjr0246td.lan>
2025-10-23 15:32:00 +02:00
Ksenia Bobrova 3ba8d4a122 Issues consolidation (#1211)
* Issues consolidation

* Issues consolidation

* Clarify get_review_comments description

* Add get_comments method

* Formatting fixes

* Clarify tool description

* Clarify tool descriptions
2025-10-23 13:27:07 +02:00