Skip to content

Add --content and --content-file to project update - #278

Merged
schpet merged 1 commit into
mainfrom
schpet/push-urltzmnqlyop
Sep 4, 2026
Merged

Add --content and --content-file to project update#278
schpet merged 1 commit into
mainfrom
schpet/push-urltzmnqlyop

Conversation

@schpetbot

Copy link
Copy Markdown
Collaborator

project update now accepts --content <markdown> and --content-file <path> to replace a project's long-form overview body, matching the flags project create already had. Until now the only way to change the body after creation was a hand-written projectUpdate mutation through linear api.

  • Same spellings and help text as project create; resolved through create's existing helper so mutual exclusion and file-read errors cannot drift between the two commands.
  • --content and --description are independent API fields and may be combined (description is Linear's short 255-char summary; content is the markdown body).
  • No short aliases: -f already means --description-file on this command, and create has none for content either.
  • Verified live on a scratch project (created and deleted by the flow): file and inline updates land; Linear keeps the existing body when sent an empty string, so an empty file is not a way to clear it, and the code/test comments say so rather than claiming otherwise.
  • Docs, changelog, and the generated skill reference updated.

https://claude.ai/code/session_01A9qEGri4p2HZMQSuYsBmub

A project's long-form overview body could be set at creation via
project create --content / --content-file, but never changed afterwards:
project update only exposed --description, which is Linear's separate
255-character summary field. Updating the body meant hand-writing a
projectUpdate mutation through linear api and reading the markdown from a
file yourself.

project update now takes the same two flags as create, spelled and worded
identically, and resolves them through create's existing helper so the
mutual-exclusion and file-read behavior cannot drift between the two
commands. Content and description are independent API fields and may be
set together. The no-options guard uses null checks so an empty content
file still counts as an explicit value to forward; Linear currently keeps
the existing body when sent an empty string, so this is not a way to clear
it, and cliffy rejects --content "" outright.

No short aliases: -f already means --description-file on this command and
create has none for content either.

Claude-Session: https://claude.ai/code/session_01A9qEGri4p2HZMQSuYsBmub
@schpet
schpet merged commit 7e0577f into main Sep 4, 2026
15 checks passed
@schpet
schpet deleted the schpet/push-urltzmnqlyop branch September 4, 2026 03:11
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.

2 participants