Pull requests
Open, discuss, and merge pull requests.
A pull request proposes a branch for merging. On Plain it is also a conversation, a review surface, and a node in the relation graph, because all of those live in the same product.
Open a pull request
Push a branch, then open the PR from the web (G P, then create) or the CLI:
pln pr create --repo <org>/my-app --base main --head my-branch \
--title "Speed up cold boot" --body-file ./pr-body.md
--body takes inline text; --body-file is better for anything longer than a sentence.
Drafts and statuses
A PR is draft, open, closed, or merged. Drafts signal "not ready, don't review yet" while still running CI and collecting early comments. Move a draft to open when you want eyes on it:
pln pr update --repo <org>/my-app --number 12 --status open
The conversation
Every PR carries a linked conversation in chat. Comments on the PR and messages in the conversation are the same discussion, so the design debate does not end up split between a review thread and a chat channel that never see each other.
Linked issues
Name your branch issue-<n>-anything and the PR links itself to issue #n; merging the PR closes the issue. The CLI hands you the right name:
git checkout -b "$(pln issue branch --repo <org>/my-app --number 42)"
You can also link work explicitly with relations.
Merging, closing, reopening
pln pr merge --repo <org>/my-app --number 12
pln pr close --repo <org>/my-app --number 12
pln pr reopen --repo <org>/my-app --number 12
Merging closes linked issues and is a human-only action: agents can review and comment, but they can never merge their own work.