257 Commits

Author SHA1 Message Date
Peter Schilling 3f23b98659 chore: Release linear-cli version 1.2.1 v1.2.1 2025-11-10 23:58:28 -08:00
Peter Schilling 5b05c98e5d Fix jj empty change detection with --no-graph
The isJjChangeEmpty() function was including graph drawing
characters in the description output, causing empty changes to be
incorrectly identified as non-empty. Add --no-graph flag to the
jj log command to get clean description text.

This fixes the behavior where `linear issue start` would always
create a new change instead of reusing empty changes.

Claude-session-id: c5b45058-c5e3-4635-95f6-fe3ba5d5ec7e
2025-11-05 22:00:17 -08:00
Peter Schilling d168fe5e0a fmt 2025-10-29 09:51:29 -07:00
Peter Schilling ee2fb3f6b6 Add JSON output support to issue view command
Implement a --json flag for the linear issue view command to output
issue data in JSON format, enabling better integration with scripts
and other tools.

- Add -j/--json flag to output raw issue data as formatted JSON
- Modify spinner logic to avoid interfering with JSON output
- Include comprehensive test coverage for JSON output scenarios
- Update snapshots to validate JSON output format

Fixes #25

Claude-session-id: 3f32bad3-84d3-42d5-84ce-77b7628ca1ce
2025-10-22 08:41:04 -07:00
Peter Schilling 2eefae82f1 Beads setup
Claude-session-id: f6dc321b-612c-41e5-9633-53a150a82941
2025-10-22 08:31:30 -07:00
Peter Schilling efc7e2d4d6 Use AGENTS.md 2025-10-22 08:28:25 -07:00
Peter Schilling dd4cf794a2 jjagent: session f6dc321b
Claude-session-id: f6dc321b-612c-41e5-9633-53a150a82941
2025-10-22 08:28:25 -07:00
Peter Schilling c4078bd7b5 chore: Release linear-cli version 1.2.0 v1.2.0 2025-10-21 12:00:48 -07:00
Peter Schilling 7515c537d5 chore: lint 2025-10-21 11:59:38 -07:00
Peter Schilling 57f5ffabcd chore: fmt 2025-10-21 11:57:38 -07:00
Peter Schilling 46f1b89a58 chore: Improve claude setup 2025-10-21 11:55:05 -07:00
Peter Schilling be2dd51073 Add jj-vcs support for issue detection
Enable finding the current Linear issue from jj commit trailers, matching
the existing git branch-based detection. Users can now work with either git
or jj version control systems.

- Extract Linear-issue trailer parsing into getJjLinearIssue() utility
- Create getCurrentIssueFromVcs() abstraction for VCS-agnostic issue lookup
- Update getIssueIdentifier() to use new VCS-aware detection
- Support both git branch names and jj commit trailers seamlessly

Claude-session-id: cf951f85-34da-4328-be9d-241ff092feea
2025-10-21 11:55:05 -07:00
Peter Schilling 4c65d6977e Add jj-vcs support to issue start command
Refactor issue start workflow to support both git and jj version control
systems via a new LINEAR_VCS configuration option (defaults to git).

- Create vcs.ts abstraction layer handling git and jj workflows
- Create jj.ts utility module for shared jj operations and formatting
- Add LINEAR_VCS config option to select between "git" and "jj"
- Use exhaustive switch with satisfies never for type safety
- Refactor issue-describe to reuse issue description formatting
- Extract git branch operations into vcs.ts for VCS abstraction

Claude-session-id: 3a93e6b3-7ede-4bc6-b6e3-cb6b2f08682a
2025-10-21 11:55:05 -07:00
Peter Schilling e8f73717b7 Add 'issue describe' command
Implement a new describe command that outputs the issue title and
Linear-issue trailer in a simple format, without markdown parsing or
description content. This complements the existing commit-message
command with a lightweight alternative.

- Create issue-describe.ts with new describe command
- Add describe to issue command routing
- Include comprehensive snapshot tests for help, successful output,
  and error handling

Claude-session-id: 8f5b0675-298f-4694-8cd4-109cc46d8066
2025-10-20 21:22:35 -07:00
Peter Schilling f3acdd0afe Support --head flag for GH commands (#57)
Add a --head option to the issue-pull-request command and pass it
through
to the underlying gh CLI invocation so callers can specify the branch
that
contains commits for the pull request. This was needed to allow creating
PRs from a non-default head branch via this wrapper. The change adds the
option declaration and threads the head value into the action handler
and the generated gh command arguments.
2025-09-16 11:22:33 -07:00
Peter Schilling 4cbbc31f04 Remove unecessary double prompt around labels (#56)
https://ampcode.com/threads/T-8a207ad7-1f0c-4506-8428-c35e6425b372
2025-09-15 11:28:00 -07:00
Peter Schilling 557fb4a72d chore: ignore formatting commit 2025-09-02 22:15:20 -07:00
Peter Schilling 4bb3bef0c7 change formatting rules: no prose wrap, no semi colons 2025-09-02 22:13:34 -07:00
Peter Schilling 7ba1d602c0 CLI-43 Project view should use the same 'open' logic as view -a (#55)
https://linear.app/schpet/issue/CLI-43/project-view-should-use-the-same-open-logic-as-view-a
2025-09-02 22:10:50 -07:00
Peter Schilling 049bd026f2 chore: update rules 2025-09-02 21:52:29 -07:00
Peter Schilling 094dbb90c5 chore: Release linear-cli version 1.1.1 v1.1.1 2025-09-02 21:50:40 -07:00
Peter Schilling b4979bc4cc chore: Release linear-cli version 1.1.0 v1.1.0 2025-09-02 21:28:02 -07:00
Peter Schilling 1fa4770718 add changelog 2025-09-02 21:26:35 -07:00
Jesse Weaver 06b957f090 feat: add from-ref option to issue start (#54)
Add a new option to `linear issue start` that allows changing the
starting ref for the new branch.
2025-09-02 21:15:36 -07:00
Peter Schilling ed1265d510 Fix omit empty comments section in markdown output 2025-09-02 10:13:51 -07:00
Peter Schilling 31e9ae9914 chore: Release linear-cli version 1.0.1 v1.0.1 2025-08-26 09:22:31 -07:00
Peter Schilling 0e34c6f04f updated changelog 2025-08-23 08:54:46 -07:00
Peter Schilling 2befc8f0af CLI-57 Setting a label on an issue should be case-insensitive (#53)
https://linear.app/schpet/issue/CLI-57/setting-a-label-on-an-issue-should-be-case-insensitive
2025-08-22 21:34:52 -07:00
Peter Schilling f5e1043de7 update tests 2025-08-21 13:14:35 -07:00
Peter Schilling fef3ed456f improve README 2025-08-21 11:56:11 -07:00
Peter Schilling a3f890caac fmt 2025-08-21 09:28:40 -07:00
Peter Schilling e76b734ed8 setup pre-commit hooks 2025-08-21 08:56:58 -07:00
Peter Schilling bd5e507041 pager leaves content visible after quitting
fixes CLI-55
2025-08-21 08:41:27 -07:00
Peter Schilling 3060a13831 Improve issue-create interactive choices - Fixes CLI-24 2025-08-21 08:28:50 -07:00
Peter Schilling 4992870c28 consistent arg names for issueId 2025-08-20 22:19:01 -07:00
Peter Schilling 5f553dad02 default auto assign to self based on linear settings
and properly load all teams in issue create
2025-08-20 22:13:07 -07:00
Peter Schilling 729a24e5ef update README 2025-08-20 21:45:02 -07:00
Peter Schilling ce05c15bd0 Update README with linear issue start command and footnote 2025-08-20 21:42:08 -07:00
Peter Schilling 0fbbb5977a refactor: move interactive inline 2025-08-20 21:39:49 -07:00
Peter Schilling 4841f59085 improve issue create copy 2025-08-20 21:36:09 -07:00
Peter Schilling eff742832f Update issue start command with searchable prompt 2025-08-20 21:28:35 -07:00
Peter Schilling 7730a8346e update copy on team id command 2025-08-20 14:39:41 -07:00
Peter Schilling fae1b1319c tweak usage 2025-08-20 13:26:29 -07:00
Peter Schilling 5f97b37817 chore: Release linear-cli version 1.0.0 v1.0.0 2025-08-20 13:15:40 -07:00
Peter Schilling de7fd9182e chore: Release linear-cli version 1.0.0 2025-08-20 13:10:01 -07:00
Peter Schilling 393193b119 note usage 2025-08-20 13:08:38 -07:00
Peter Schilling cf51a9ea89 include id in teams list 2025-08-20 11:54:08 -07:00
Peter Schilling 3597fd2f23 run deno fmt and lint on cc hooks 2025-08-20 11:50:37 -07:00
Peter Schilling 8456a967a6 use -s consistently to be shorthand for --state 2025-08-20 09:11:24 -07:00
Peter Schilling 7936bcfd70 Avoid colors in snapshot tests 2025-08-19 22:27:43 -07:00