> ## Documentation Index
> Fetch the complete documentation index at: https://docs.node-pad.com/llms.txt
> Use this file to discover all available pages before exploring further.

# References and Cross-Branch Context

> Use @ references and merge sources to pull context across branches without flattening the workspace into one prompt.

export const EdgeChip = ({type = 'continuation', children}) => <span className="np-edge-chip" data-type={type}>{children}</span>;

Two ways to reuse work from elsewhere on the canvas: <EdgeChip type="reference">`@` references</EdgeChip> for targeted cross-links, and <EdgeChip type="merge">merge sources</EdgeChip> for broader synthesis drafts. Both move context across branches without copy-pasting conversation text by hand.

<Columns cols={2}>
  <Card title="@ references" icon="at-sign">
    Type `@` in a draft to open the reference picker. Choose either a branch or a specific message. NodePad inserts the visible token into the draft and stores the actual linked node behind it. The text token alone is not the source of truth.

    Use `@` when one message elsewhere on the canvas already says the thing you want to reuse.
  </Card>

  <Card title="Merge sources" icon="git-merge">
    Merge flows are better when the next prompt needs several sources at once. Instead of pointing to one message, you are asking the model to reason across a set of messages from different branches.

    Useful for comparing recommendations, combining research findings, rewriting a draft using evidence gathered elsewhere, or deciding between alternate approaches.
  </Card>
</Columns>

## How to choose

Reach for `@` when you need one specific message and a narrow, explicit cross-link with a lightweight prompt footprint. Reach for merge sources when the next turn must reason across multiple messages from different branches and the prompt can carry a larger context.

## Practical examples

<AccordionGroup>
  <Accordion title="Writing">
    Reference a fact-check branch with `@` when you only need one verified stat. Use merge sources when the next prompt needs several research findings or alternate versions at once.
  </Accordion>

  <Accordion title="Engineering">
    Reference a specific diagnosis message when you want to preserve its exact reasoning. Use merge sources when you want a decision draft that weighs two alternate fixes.
  </Accordion>

  <Accordion title="Research">
    Reference one branch when you need a quote or a specific result. Use merge sources when you want a summary that spans several lines of investigation.
  </Accordion>
</AccordionGroup>

<Note>
  Merge sources can carry attachments and tool-call context with them. That is powerful, but it also increases the size of the next prompt — keep an eye on scope. Text notes are not referenceable model context by default; they are canvas annotations for humans.
</Note>

## Continue

<Columns cols={2}>
  <Card title="Merging" icon="git-merge" href="/concepts/merging">
    How a merge composer assembles source messages.
  </Card>

  <Card title="Forking" icon="git-branch" href="/concepts/forking">
    Branching is what makes cross-branch references possible.
  </Card>
</Columns>
