feat: add milestone support to linear_issue and linear_project tools#7
Merged
feat: add milestone support to linear_issue and linear_project tools#7
Conversation
- Add resolveMilestoneId(projectId, name) resolver to linear-api.ts - Add milestone param (create + update) to linear_issue tool - create: requires project to be set; resolves milestone by name - update: uses existing issue project if no project param provided - Add projectMilestone to linear_issue view response - Add projectMilestones nodes to linear_project view response - Update SKILL.md docs with milestone param and resolver details - 11 new tests (389 total, all passing)
- Extract fetchIssueContext() for issue team/description/project lookup - Extract buildScalarFields() (sync) for simple field assignment - Extract buildResolvedFields() for async resolver calls - Resolves: complexity > 20, require-atomic-updates, await-thenable
jonryser
approved these changes
Mar 18, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds project milestone support to the
linear_issueandlinear_projecttools.Changes
linear-api.tsresolveMilestoneId(projectId, name)resolver — looks up a milestone by name within a project, case-insensitive, with clear error listing available optionslinear_issuetoolmilestoneparam oncreateandupdate— associates the issue with a named project milestonecreate: requiresprojectto be setupdate: uses the existing issue project if noprojectparam providedviewresponse now includesprojectMilestone { id, name }linear_projecttoolviewresponse now includesprojectMilestones { nodes { id, name, targetDate, description } }skills/linear/SKILL.mdmilestoneparam andresolveMilestoneIdresolverTests
11 new tests — 389 total, all passing.
resolveMilestoneId: 5 tests (happy path, case-insensitive, not found, empty project, variable passing)linear_issue createwith milestone: 2 tests (milestone resolved, error without project)linear_issue updatewith milestone: 4 tests (uses existing project, uses new project param, error when no project)linear_project viewmilestones: 1 test