@jolli.ai/space-cli 0.99.5 → 0.99.7

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
@@ -14,11 +14,43 @@ Once both are installed, the following commands become available:
14
14
  - `jolli space` — Inspect Jolli auth state and select a space for sync (`status`, `switch`)
15
15
  - `jolli source` — Manage source repositories for impact analysis (`add`, `remove`, `list`)
16
16
  - `jolli sync` — Sync markdown files with the server (`pending`, `changeset`, `up`, `down`, `full`, `strip`)
17
- - `jolli impact` — Documentation impact-analysis tools (`extract`, `search`, `agent`)
17
+ - `jolli impact` — Documentation impact-analysis tools: server-backed (`extract`, `search`, `agent`) and purely-local (`init`, `settings`, `local`, `attention` — see below)
18
18
  - `jolli agent` — Interactive LLM agent with local tool execution (`list`, `resume`)
19
19
 
20
20
  Without `@jolli.ai/space-cli` installed, the host CLI displays these commands as stubs that prompt the user to install this package.
21
21
 
22
+ ## Purely-local impact (no Jolli login)
23
+
24
+ `jolli impact` also has a **fully local mode**: point it at a docs directory and one or more local source repos, bring your own LLM key, and it updates the affected docs in place over your new commits — **no Jolli login, no space, no server round-trip, no GitHub App.**
25
+
26
+ ```bash
27
+ # Set up .jolli/settings.local.yaml
28
+ jolli impact init # auto-detect: current git repo = source, find a docs/ dir (within 2 levels)
29
+ jolli impact init --docs ./docs --source ../backend # or specify explicitly (repeat --source for multiple repos)
30
+
31
+ # Configure an LLM — default is Anthropic + claude-sonnet-4-6, so just set a key
32
+ export ANTHROPIC_API_KEY=sk-... # or OPENAI_API_KEY / GEMINI_API_KEY / JOLLI_LLM_API_KEY
33
+ jolli impact settings --provider openai --model gpt-4o # only to use a NON-default provider/model
34
+ jolli impact settings --set-key # or store the key via a hidden prompt (never in shell history)
35
+ jolli impact settings --max-tokens-per-turn 16384 # raise the per-turn output budget if edits get truncated (default 8192, range 4096..200000)
36
+
37
+ # Run impact over your new commits
38
+ jolli impact local # edit docs affected by new commits, in place
39
+ jolli impact local --uncommitted # preview against the working tree
40
+ jolli impact local --dry-run # list impacted docs only (no writes, no LLM, no key needed)
41
+ jolli impact local --thinking # stream the model's reasoning above the live panel (default: off)
42
+
43
+ # Attention = the document -> source-file mapping that impact matches against
44
+ jolli impact attention # generate / update the cache
45
+ jolli impact attention --refresh # rebuild from scratch
46
+ jolli impact attention --show # view the current mapping
47
+ ```
48
+
49
+ - A **source must be a git repository** (impact diffs it); the **docs directory does not** — it can be a standalone folder, its own repo, or a subfolder of the source.
50
+ - **Doc file types**: defaults to `.md` / `.mdx` / `.json`. Pass `--doc-extensions .md,.yaml` to `init` to stamp a different list at init time, or hand-edit the `docExtensions` field in `.jolli/settings.local.yaml` later. Replace semantics — the configured list replaces the defaults.
51
+ - Providers: `anthropic` | `openai` | `gemini` | `openai-compatible`. LLM config + key live in `.jolli/llm.local.env` (git-ignored) or the environment.
52
+ - Generated mappings are cached in `.jolli/attention.local.yaml` and are **never written back into your docs**. `init` adds `.jolli/` to your global git-ignore.
53
+
22
54
  ## Architecture
23
55
 
24
56
  This package is a **commander-shaped shell** that the host CLI loads in-process: when both packages are installed, `@jolli.ai/cli`'s plugin loader calls this package's `register(ctx)` and it extends the host's commander `program` with the commands above. It does **not** value-import `commander` or `@jolli.ai/cli/api` — both are provided by the host process at load time and are therefore externalized from the bundle.