Skip to content

Conversation

@tmelliottjr
Copy link
Contributor

@tmelliottjr tmelliottjr commented Oct 22, 2025

Towards: #44

This PR adds an optional fields parameter to list_project_items and get_project_item tools, allowing users to specify which custom field IDs to include in responses. Previously, only the title field was returned by default.

The implementation includes a new ManageProjectItemsPrompt that provides step-by-step guidance for working with GitHub Projects, including discovering projects, viewing available fields, querying items with specific field values, and updating field values on project items.

The type system is updated to distinguish between projectV2Field (field definitions) and projectV2FieldValues (field values on items), ensuring proper serialization of field data. Comprehensive test coverage validates field selection functionality across both organization and user-owned projects.

@tmelliottjr tmelliottjr marked this pull request as ready for review October 22, 2025 20:21
@tmelliottjr tmelliottjr requested a review from a team as a code owner October 22, 2025 20:21
Copilot AI review requested due to automatic review settings October 22, 2025 20:21
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds support for custom field selection in GitHub Projects V2 items, addressing issue #44. Users can now specify which field IDs to include when listing or retrieving project items, with only the title field returned by default if no fields are specified.

Key Changes:

  • Added optional fields parameter to list_project_items and get_project_item tools for selecting specific custom fields
  • Introduced ManageProjectItemsPrompt to guide users through project workflows including field discovery and updates
  • Refactored type system to distinguish between field definitions (projectV2Field) and field values on items (projectV2ItemFieldValue)

Reviewed Changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
pkg/github/tools.go Registered the new ManageProjectItemsPrompt with the projects toolset
pkg/github/projects_test.go Added test coverage for field parameter validation in list and get operations
pkg/github/projects.go Implemented field selection logic, refactored options types, and added the ManageProjectItemsPrompt
pkg/github/minimal_types.go Updated MinimalProjectItem to use projectV2ItemFieldValue type for fields
pkg/github/toolsnaps/list_project_items.snap Updated schema snapshot to include fields parameter
pkg/github/toolsnaps/get_project_item.snap Updated schema snapshot to include fields parameter
README.md Documented the new fields parameter for both tools

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@JoannaaKL JoannaaKL merged commit af2e93b into main Oct 23, 2025
18 checks passed
@JoannaaKL JoannaaKL deleted the tmelliottjr/add-project-item-fields-support branch October 23, 2025 13:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants