Releases
v1.33.0
Compare
Sorry, something went wrong.
No results found
ytspar
released this
01 Jul 09:25
1.33.0 (2026-07-01)
Features
accept --parent as alias for --parent-ticket (#97 ) (d26233c )
auth: add OAuth 2.0 (PKCE) authentication (#18 ) (4e3b59f )
auth: migrate command call sites to OAuth-aware getActiveAuth (#19 ) (76c7e8d )
auth: wire OAuth into FileService (last unmigrated auth path) (#20 ) (57a3d59 )
branch: add branch validate subcommand (team-validity gate) (#194 ) (477c732 )
cli: add cli-introspect + validate-flag for SKILL.md flag-name linting (#76 ) (5e97d5d )
comments: add 'comments delete' + lock multi-element update parity (DEV-4306) (#127 ) (4dafdef )
comments: enforce --body/--body-file mutual exclusivity + document body-file (DEV-4450) (#143 ) (262e017 )
comments: rename --file to --body-file on create and update (#110 ) (61caf88 )
comments: report mention resolution + warn on unresolved @names (DEV-4987) (#186 ) (64a3988 )
config: add 'config migrate-from-personal' to slim against team (DEV-4458) (#141 ) (c93a096 )
config: add config team subcommand for wiring shared team config (DEV-4104) (#114 ) (371e7b7 )
config: add team/local config split with local.json (DEV-4172) (#108 ) (95bebab )
config: auto-discover team config from ~/.config/el-tools-root marker (DEV-4258) (#116 ) (414aba9 )
config: support shared team config file layer (ea3f282 )
defaults (assignee, priority), disk cache, wizard prompts, team OAuth config (#22 ) (0525c2f )
discovery: URL/slug project resolution + truncation warning + CLI-first rule (#100 ) (29ea130 )
enrich issues create validation errors with team-scoped suggestions (#98 ) (763a495 )
enrich: route project resolver failures through team-scoped enrichment (DEV-4135) (#101 ) (db6c81d )
filters: add --name to users/labels/projects list, --state/--exclude-state/--active to projects list (#36 ) (a52f005 )
format: add --format summary for human-readable output (#28 ) (2bdf3d2 )
init: interactive setup wizard (linctl init) (#7 ) (23c62f8 )
issue-id: accept bug/ and spike/ branch prefixes (DEV-4777) (#167 ) (00c500f )
issue-id: accept codex/ branch prefix (DEV-4660) (#160 ) (800418c )
issues read: add --sections for multi-section extraction (DEV-4479) (#145 ) (eeb9a0f )
issues: accept relation flags on issues update (DEV-4201) (#111 ) (afa05c5 )
issues: add --field flag to issues read for markdown section extraction (ALL-940) (#71 ) (404002f )
issues: add --quiet and summary output to issues relate (DEV-5081) (#191 ) (8aaa102 )
issues: add issues tree <ID> for depth-N parent→children walks (DEV-4480) (#149 ) (19ebdbb )
issues: add duplicate-detection gate to issues create (DEV-4823) (#171 ) (bb830f5 )
issues: auto-claim on branch creation (DEV-4500) (#155 ) (530ffa1 )
issues: default --include-closed off on list/search (DEV-4478) (#146 ) (5edf798 )
issues: emit dup-gate blocked/overridden telemetry events (DEV-4834) (#174 ) (18afcd3 )
issues: record branch.<branch>.linearIssue marker on branch creation (DEV-4293) (#128 ) (be59c1d )
output: add WindowedMeta type to the shared output envelope (DEV-4668) (#163 ) (ed9e448 )
output: expose @enrichlayer/el-linear/output secondary entry point (DEV-3799) (#125 ) (fb989b0 )
profiles: legacy config detection + migrate-legacy command [ALL-922,ALL-923] (#17 ) (4536396 )
profiles: switch between multiple Linear workspaces (#15 ) (0bd6c37 )
projects: add --team filter to projects list (DEV-4165) (#104 ) (e7c5e0e )
projects: add projects read subcommand (DEV-4610) (#158 ) (cd33b33 )
read,writes: add --body raw-description output and --quiet one-line write confirmation (DEV-4650) (#157 ) (b6baf62 )
read: add --with relations opt-in include (DEV-4476) (#148 ) (86d4268 )
read: batch issues read <id...> into a single GraphQL call (DEV-4477) (#147 ) (d0fc818 )
refs wrap: auto-detect positional file argument (DEV-4077) (#94 ) (1dc2155 )
refs: add wrap subcommand with markdown + slack emitters [ALL-917] (#10 ) (16ceea9 )
resolver: registry resolution for --delegate + batch assignee (DEV-4872) (#178 ) (988430d )
resolver: route --subscriber through the identity registry (DEV-4880) (#182 ) (f33d238 )
search: emit relation_candidates confirmation prompt (DEV-4494) (#168 ) (69e5415 )
summary: --format summary honors --fields projection (DEV-4750) (#166 ) (3b46ac9 )
validation: per-team type-label set; DEV uses research not spike (DEV-4084) (#124 ) (dcaf178 )
workspace: --workspace-url-key flag + EL_LINEAR_WORKSPACE_URL_KEY env (ALL-920) (#67 ) (9ced5d4 )
Bug Fixes
append/insert '--' separator on git checkout/branch invocations (DEV-4064) (#83 ) (3b74370 )
auth: serialize OAuth refresh against concurrent CLIs (ALL-931) (#32 ) (f569221 )
bump CLI version string to 1.4.0 (matching package.json + tag) (#16 ) (77e7c16 )
comments: add bodyData fallback to update (parity with create) (DEV-4261) (#119 ) (c54cd8e )
comments: emit Linear-native prosemirror schema names (DEV-3785) (#117 ) (4d267e6 )
dup-detection: stopword tool-name boilerplate to cut false positives (DEV-4830) (#173 ) (3b195b6 )
introspect: add --check-flag option + explicit return after process.exit (#79 ) (ebba3f8 )
issues: batch-resolve null-filter no-op breaks --project & label resolution (#106 ) (d9cbe5c )
issues: exclude duplicate-typed states from default list/search (DEV-4879) (#179 ) (5cf6852 )
issues: make gate telemetry opt-in for open-source installs (DEV-4839) (#176 ) (760b313 )
issues: reject a nonexistent UUID --project with a clear error (#107 ) (dddcdcf )
issues: resolve full-name --assignee in list/search (DEV-4312) (#129 ) (a95cd6a )
network: prefer IPv4 for API calls to survive broken-IPv6 networks (DEV-4415) (#136 ) (1ff9290 )
profile: atomic writes for migrate-legacy (ALL-932) (#30 ) (01131d1 )
projects: scope --project name resolver by --team (DEV-4103) (#123 ) (3c72a23 )
projects: surface active projects, support --all, warn on truncation (DEV-4175) (#113 ) (c03ffd3 )
refs: share protected-range scanner between wrap + extract (ALL-933) (#33 ) (9405eca )
sanitize OAuth refresh error body at source (DEV-4065) (#87 ) (1e11ac0 )
security: close 4 adversarial findings + read --version from package.json (#75 ) (2c429f1 )
security: OAuth callback + headless paste + data-file allowlist + rate limit (ALL-935 batch 2) (#37 ) (403a38a )
security: redaction + scheme allowlist + unicode mentions (ALL-935) (#35 ) (5c344e9 )
security: snapshot oauthStatePath + profile-keyed loadConfig cache (ALL-935 deferred) (#46 ) (e614bff )
serialize init wizard config writes with file lock (DEV-4066) (#88 ) (b32ebe1 )
summary: capture kind before --fields/--raw strip signature fields (ALL-933) (#66 ) (d7a404f )
summary: sanitize terminal output + harden numeric edges (ALL-934) (#31 ) (3d1535a )
validate EL_LINEAR_WORKSPACE_URL_KEY env + config urlKey shape (DEV-4067) (#85 ) (52307c7 )
You can’t perform that action at this time.