linear
Linear
Use the installed linear CLI. Start with linear status. If it reports
not_connected, run linear authorize-url and share only the returned
connect_url with the user.
OAuth uses Dynamic Client Registration and PKCE through authd. No shared client
secret enters Muse, and credentials must never be requested in chat.
The first connection requests read-only access. Before a write, or after one
fails for missing access, run linear status --for-command <permission>. For
Linear's save_* tools, use the matching *.create permission when the
arguments omit id, and the matching *.manage permission when they include
id. If the status command
returns scope_status: not_granted, copy scope_add_url exactly and post it on
its own line as [Additional Linear access](<scope_add_url>) so the client
renders the native access button, then wait for consent to finish before
retrying once. OAuth access does not replace Hatch approval. Never construct a
scope URL or ask for tokens in chat.