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

# Notes & Sharing

> Jot a private note, share it with a teammate inbox, or merge it into Knowledge for the whole team.

A **note** is where everything in Driftless starts: a private draft only you can see. From there it can go two ways. It can travel *up* the trust axis to become team Knowledge, or *sideways* to a specific teammate's inbox. The two are independent, and neither one stops anyone from coding.

## Jotting a note

The fastest way to capture something is a one-liner from the CLI. No anchors, no ceremony:

```bash theme={"theme":"github-light"}
driftless note add --content "OAuth tokens expire every 2h in IHCE, refresh before sending"
driftless note add --content @notes/today.md --json
```

A note is a topic in its **draft** state: private to you, excluded from search, and auto-archived after \~14 days if untouched (recoverable). Think here, then decide where it goes.

Attach a note to work as you capture it. `--project <id>` files it on a [project](/concepts/projects), and `--project <id> --card <id>` attaches it to a specific card mid-loop, where it rides the card's `next` context bundle and gets synthesized into a draft topic when the project closes.

```bash theme={"theme":"github-light"}
driftless note add --content "Webhook deliveries arrive out of order, idempotency key required" \
  --project prj_abc --card card_xyz
```

## Sideways: sharing with a teammate

Share a note directly with one or more workspace members. It lands in their **inbox** ("shared with me") without becoming team-wide Knowledge. This is the right move for "you specifically should see this."

| Action                      | Surface                                                                                   |
| --------------------------- | ----------------------------------------------------------------------------------------- |
| Share a note with members   | `POST /workspaces/:slug/topics/:topicSlug/share-with` with `{ "recipients": ["user_…"] }` |
| Your inbox (shared with me) | `GET /workspaces/:slug/shared` (`?unread=true` for the unattended feed)                   |
| Mark one read / all read    | `POST /workspaces/:slug/shared/:id/read` · `POST /workspaces/:slug/shared/read-all`       |

Recipients must be **members of the workspace**. Share with a non-member and it's rejected. The dashboard's **Inbox** renders this feed, and sharing and reading are both operable over REST for agents.

## Up: merging into Knowledge

When a note is durable enough for the whole team, it climbs the trust axis: **Note → Up for review → Knowledge**. Merging is an owner/admin act. An owner or admin merges it, or explicitly asks an agent to run the merge on their behalf. What comes out is the team's source of truth, the thing agents pull before they edit. See [Governance](/concepts/governance) for the full lifecycle and the merge commands.

## A public read-only link (different thing)

Sharing *with a teammate* (above) is internal and member-gated. To hand a topic to someone **outside** the workspace, mint a public read-only link instead:

```bash theme={"theme":"github-light"}
driftless context share <topic>           # create a public link
driftless context share <topic> --revoke  # turn it off
```

|          | Share with a teammate      | Public link (`context share`)           |
| -------- | -------------------------- | --------------------------------------- |
| Audience | a workspace member's inbox | anyone with the URL                     |
| Auth     | member-gated               | unauthenticated, read-only              |
| Use when | "you should see this note" | "show this to someone outside the team" |
