Skip to content

Slim down lineark usage for LLM token efficiency#123

Merged
flipbit03 merged 6 commits intomainfrom
worktree-issue-122-usage-slim
Mar 8, 2026
Merged

Slim down lineark usage for LLM token efficiency#123
flipbit03 merged 6 commits intomainfrom
worktree-issue-122-usage-slim

Conversation

@flipbit03
Copy link
Owner

Summary

  • Collapse low-frequency commands (teams CUD, labels CUD, comments manage, relations, documents CUD, milestones, embeds) into single-line entries with (--help for flags) hints
  • Keep high-frequency commands fully expanded: issues CRUD/search/list, comments create, all read/list commands
  • ~110 lines → ~75 lines (~30% token savings on every LLM invocation)
  • Zero loss in discoverability — everything is one --help away

Before/After example

# Before (12 lines for labels)
lineark labels create <NAME>                     Create a label
  [--team KEY] [--color HEX]                     Team, color
  [--description TEXT]                           Description
  [--parent-label-group ID]                      Nest under a group label
  [--make-label-group]                           Create as a group label
lineark labels update <ID>                       Update a label
  [--name TEXT] [--color HEX]                    Name, color
  ...5 more lines...
lineark labels delete <ID>                       Delete a label

# After (1 line)
lineark labels create|update|delete ...          Manage labels (--help for flags)

Test plan

  • make check passes (fmt, lint, clippy, docs)
  • make test passes (103 offline + 55 unit tests)
  • Column alignment lint passes

Closes #122

Collapse rarely-used commands (teams CUD, labels CUD, comments manage,
relations, documents CUD, milestones, embeds) into single-line entries
with `--help for flags` hints. Keep high-frequency commands (issues
CRUD, search, list; comments create; read commands) fully expanded.

Reduces usage output from ~110 to ~75 lines (~30% token savings on
every LLM invocation) with zero loss in discoverability.

Closes #122
Linear's search index is slower on CI than locally. Increase settle
time after archive from 2s to 5s and retry attempts from 10 to 12
(~95s total window) to avoid flaky failures.
All test teams were auto-generating the same key "TES", causing
Linear's search index to confuse recycled identifiers like "TES-1"
across different test runs. Now each team gets a unique key derived
from the UUID suffix (e.g. "T1A2B3C4"), making issue identifiers
globally unique within a test session.
Learned from CI flakiness: auto-generated team keys collide in
Linear's search index, causing human identifier lookup failures.
@flipbit03 flipbit03 self-assigned this Mar 8, 2026
@flipbit03 flipbit03 merged commit a5254f0 into main Mar 8, 2026
7 of 8 checks passed
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.

Slim down lineark usage by collapsing low-frequency commands

1 participant