@tanagram/lore 0.1.87 → 0.1.89

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,28 +1,77 @@
1
- # `@tanagram/lore`
1
+ # Lore
2
2
 
3
- The command-line interface for Lore.
3
+ Lore captures your Claude Code, Codex, and Cowork sessions and turns them
4
+ into something your team can search, discuss, and build on.
4
5
 
5
- ## Privacy: Lore uploads according to your local filters
6
+ Your AI coding sessions run on your machine. The Lore CLI watches for new
7
+ ones and uploads them to your workspace automatically, so there is no
8
+ copy-paste, no screenshots, no "save this thread" button to remember.
9
+
10
+ ## Get started
11
+
12
+ ```sh
13
+ npm install -g @tanagram/lore
14
+ lore
15
+ ```
16
+
17
+ `lore` opens a dashboard in your terminal. Sign in there once and, on
18
+ macOS, background uploads start immediately. On Linux, run `lore configure`
19
+ to pick which directories upload.
20
+
21
+ That's it. Keep coding. New sessions show up in your workspace automatically.
22
+
23
+ ## How privacy works
24
+
25
+ **Private by default.** Every session starts visible only to you. You
26
+ choose per session whether to share it with your workspace or make it
27
+ public. Workspace admins cannot override that choice.
28
+
29
+ **You control what uploads.** Lore only uploads sessions from directories
30
+ you allowlist. The first-run wizard pre-checks your three most recent
31
+ projects; nothing outside your allowlist is ever sent. Re-run the picker
32
+ any time with `lore configure`, or edit the list directly:
33
+
34
+ ```sh
35
+ lore listen list # what's currently allowlisted
36
+ lore listen create ~/code/project # start uploading from here
37
+ lore listen delete ~/code/project # stop
38
+ ```
39
+
40
+ **What a session contains.** Your prompts, the assistant's responses,
41
+ tool calls, file edits, and diffs, plus metadata like timestamps, model,
42
+ and the repo it ran in. Diffs include the changed lines of the files you
43
+ edited. Lore does not collect environment variables, secrets, or API keys.
44
+
45
+ **Stop anytime.** `lore disable` halts background uploads. `lore logout`
46
+ removes your stored credentials. You can delete any session, or your whole
47
+ account, from the web app.
48
+
49
+ ---
50
+
51
+ ## Reference: upload filters
6
52
 
7
53
  The Lore daemon evaluates `~/.lore/upload_filters.json` (`~/.lore-dev/`
8
54
  in dev) before auto-uploading Claude Code sessions. Missing config or an
9
- empty `include` allowlist means upload nothing. Non-empty `include`
10
- dimensions (`cwd`, `repo`, `skills`) are ANDed together, values within a
11
- dimension are ORed, and `exclude` rules override includes.
55
+ empty `include` allowlist means upload nothing. The `cwd` and `repo`
56
+ allowlists are a union: a session is location-allowed if it matches a
57
+ `cwd` rule OR a `repo` rule (so a non-git directory uploads via its `cwd`
58
+ even when `repo` rules also exist). When set, `include.skills` further
59
+ narrows that set (ANDed). Values within a dimension are ORed, and
60
+ `exclude` rules override includes.
12
61
 
13
62
  The explicit commands (`lore export`, `lore share-codex`,
14
63
  `lore share-cowork`) are user-initiated and upload the requested session
15
64
  directly.
16
65
 
17
- Adding directories through the TUI is a convenience for writing cwd
18
- include filters. The post-login wizard shows your most-recent Claude Code
19
- project cwds with the top three pre-checked, and pressing Enter accepts
20
- them. `lore listen configure` re-enters that same interactive flow any
21
- time (it's also one of the quick actions on the `lore` dashboard). For
66
+ Adding repos and directories through the TUI is a convenience for writing
67
+ `repo` and `cwd` include filters. The post-login wizard shows your
68
+ most-recent Claude Code projects with the top three pre-checked: a project
69
+ inside a git repo is offered as its `origin` remote, and a non-repo
70
+ directory is offered by its path. Pressing Enter accepts them. `lore configure` re-enters that same interactive flow any time
71
+ (it's also one of the quick actions on the `lore` dashboard). For
22
72
  scripted/non-interactive edits, manage the cwd filters directly:
23
73
 
24
74
  ```sh
25
- lore listen configure # re-run the interactive wizard
26
75
  lore listen create ~/code/projectA # watch ~/code/projectA
27
76
  lore listen create ~/work --workspace acme # route work to a non-default workspace
28
77
  lore listen list # tabular output
@@ -76,8 +125,8 @@ through Ink in TTY mode:
76
125
  device code panel → polling), then a success box with the resolved
77
126
  LaunchAgent paths. Distinct copy for timed-out / denied / expired.
78
127
  On first login the device-code flow is followed by a one-screen
79
- "Configure upload directories" wizard that can write cwd include
80
- filters for users who prefer a directory allowlist workflow.
128
+ "Configure uploads" wizard that writes `repo` and `cwd` include
129
+ filters from your recent repos and directories.
81
130
  - **`lore enable` / `disable` / `restart`** — spinner with mode-specific
82
131
  copy while launchctl works, then a success or error MessageBox.
83
132
  - **`lore status`** — two-panel view (health on the left, paths on the
@@ -143,8 +192,8 @@ Esc to return to the sidebar, and q to exit.
143
192
  - `lore disable` — stops and removes the macOS background uploader.
144
193
  - `lore restart` — restarts the macOS background uploader.
145
194
  - `lore status` / `lore status --json` — shows background uploader health.
146
- - `lore listen configure` — re-enter the interactive wizard for picking
147
- the directories Lore auto-uploads from (the same flow shown on first
195
+ - `lore configure` — re-enter the interactive wizard for picking the
196
+ directories Lore auto-uploads from (the same flow shown on first
148
197
  login). Requires an interactive terminal.
149
198
  - `lore listen create <path> [--workspace <name>]` — allowlist a directory for
150
199
  daemon auto-uploads. Defaults to your active workspace; pass workspace
@@ -161,7 +210,9 @@ Esc to return to the sidebar, and q to exit.
161
210
  JSON object with the thread URL. Use `--session-id <id>` to pick a specific
162
211
  session, `--project <path>` to override the project lookup, and
163
212
  `--visibility private|workspace|public` to set the resulting thread's
164
- visibility. The URL is also copied to the system clipboard when a clipboard
213
+ visibility. Use `--highlight <description>` to have the API resolve a
214
+ natural-language share highlight and return a `/thread/<id>#tb_…` block
215
+ anchor or range when it finds a match. The URL is also copied to the system clipboard when a clipboard
165
216
  tool is available (`pbcopy` / `wl-copy` / `xclip` / `xsel` / `clip.exe`).
166
217
  - `lore share-cowork` — shares a Claude Cowork local-agent-mode session
167
218
  to Lore. Defaults to the current session when run from inside one
@@ -171,7 +222,7 @@ Esc to return to the sidebar, and q to exit.
171
222
  Use `--session <session-id>` to share a specific session by id, or
172
223
  `--list` to enumerate local sessions newest-first without sharing.
173
224
  Re-running for the same session converges to the same thread (md5
174
- dedup), so it's safe to retry. Prints the resulting `/session/<id>`
225
+ dedup), so it's safe to retry. Prints the resulting `/thread/<id>`
175
226
  URL on success.
176
227
 
177
228
  ## Dev vs prod