Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -623,6 +623,7 @@ SPDX-License-Identifier: AGPL-3.0-or-later
Gestalt Mobile is distributed under the GNU Affero General Public License
version 3 or, at your option, any later version. See [LICENSE](LICENSE).

Use `--xerj manual` (default, retrieval only), `--xerj auto` (opt-in indexing), or `--xerj off`.
Source discovery defaults to `--xerj auto` (index and watch). Use `--xerj manual`
for retrieval only or `--xerj off` to disable the integration.
See [root-wide XERJ discovery](docs/xerj.md) for background indexing, exclusions,
status, recovery and the retrieval/write-permission boundary.
7 changes: 5 additions & 2 deletions docs/xerj.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,16 @@ XERJ is optional. Install it with `gestalt xerj install`, then start Mobile:
gestalt mobile -- --cwd /path/to/source-root
```

`manual` is the default when launched through Mobile's CLI. It starts or discovers
`auto` is the default when launched through Mobile's CLI. It indexes and watches
the source root in the background without blocking startup.

Use `--xerj manual` for retrieval only. It starts or discovers
the retrieval backend but does not scan source files, create an ignore file, or
start a watcher. Existing indexes remain available and unchanged; an empty index
provides no source results until explicitly populated. New files, edits and
deletions are not reflected until an operator runs indexing.

`--xerj auto` explicitly opts into background indexing and watching, including the
Automatic indexing and watching include the
rc.87 incremental-addition limitation described below. `--xerj off` disables
Mobile's XERJ integration. An absent XERJ does not prevent startup. These use Mobile's existing CLI
configuration, not a separate service configuration file. The manager must be on
Expand Down
2 changes: 1 addition & 1 deletion src/server/cli.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ Options:
--disable-passkey-auth Disable passkey access control (unsafe on shared or network hosts)
--data-dir <path> Directory for persistent application data
--icon <path> SVG or PNG used as the installed PWA application icon
--xerj <mode> Source discovery: manual (default, no indexing), auto, off
--xerj <mode> Source discovery: auto (default, index and watch), manual, off
--skills <profile> Use a global skill profile for every session
--skills list List saved global skill profiles without starting the server
--help Show this help
Expand Down
4 changes: 2 additions & 2 deletions src/server/config.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ describe('parseConfig', () => {
},
root: resolve('/caller'),
dataDir: undefined,
xerj: 'manual',
xerj: 'auto',
});
});

Expand Down Expand Up @@ -66,7 +66,7 @@ describe('parseConfig', () => {
},
root: resolve('/caller/work'),
dataDir: './state',
xerj: 'manual',
xerj: 'auto',
iconPath: resolve('/caller/subdirectory/brand.png'),
});
});
Expand Down
2 changes: 1 addition & 1 deletion src/server/config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ export function parseConfig(args: string[], cwd = process.cwd()): RelayConfig {
index += 1;
}

const xerj = values.get('--xerj') ?? 'manual';
const xerj = values.get('--xerj') ?? 'auto';
if (xerj !== 'auto' && xerj !== 'manual' && xerj !== 'off')
throw new CliUsageError('--xerj must be auto, manual, or off');

Expand Down
Loading