Session-Linked Plans

When Claude Code writes a plan file during a session (via the Write tool to ~/.claude/plans/*.md), pushing that session automatically extracts the plan and links it to the session on the server.

How it works

During rn session push or rn session sync, the CLI sends the raw session JSONL to the server. The server parses the transcript, finds Write tool calls that target plan files in ~/.claude/plans/, and extracts the final content for each plan (last write wins if a plan was written multiple times). Each extracted plan is created or updated on the server and linked to the session.

No extra flags or configuration are needed — this happens automatically.

What you see

  • The push streaming output shows a "linking plans" step with the count of plans found
  • Session metadata (in rn session list and on the web view) shows the linked plan count
  • The session web view displays linked plans as clickable cards

Privacy inheritance

Linked plans inherit the session's privacy level when first created. If you later change a session's privacy (via rn session set-privacy or the API), the change cascades to all plans that were created by that session.

Delete cascade

Deleting a session also deletes any plans that were created by that session, unless the plan is also linked to another session. This prevents orphaned plans while preserving plans that are referenced from multiple sessions.

Manual plans vs linked plans

Plans pushed manually via rn plan push are independent — they are not linked to any session and are not affected by session privacy changes or deletion. Plans extracted from sessions are "session-linked" and follow the cascade rules above. Both types can be associated with projects.