nawabari 0.12.2 → 0.13.0

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
@@ -82,6 +82,75 @@ The initial-claim grammar is `--resource <path-or-glob> --mode <read|write|exclu
82
82
 
83
83
  Resource-claim enforcement is disabled by default for a new session: `commit`/`push` authorization does not require the session to hold a resource claim for its own session-owned operations. Pass `--enforce-claims` to `session create` to opt that session into the previous claim-authorization behavior, including `MISSING_RESOURCE_CLAIM`/`INSUFFICIENT_CLAIM_MODE` denials and existing claim-mode compatibility rules. Worktree ownership, branch ownership, and `RESOURCE_CLAIM_CONFLICT` protection against another session's active claim remain enforced either way.
84
84
 
85
+ ### Working-set artifacts
86
+
87
+ For a bounded session, supply **both** `--execution-scope-file` and `--candidate-working-set-file` to `session create`. The JSON below illustrates the versioned fields accepted by the [canonical parsers](./src/working-set.ts). Replace the identity, revision, digest, and paths with values from the implementation authorization and the repository being bootstrapped. `repositoryHost` and `repositoryId` must agree between the two artifacts and the authorization; `repository` is optional in the execution scope and required in the candidate. The candidate `revision` and execution-scope `base.revision` must equal the session's resolved Git base revision (40 or 64 hexadecimal characters). `base.branch` names that base; `base.freshness` and the top-level execution-scope `branch` are optional bounded strings.
88
+
89
+ `execution-scope.json`:
90
+
91
+ ```json
92
+ {
93
+ "version": 1,
94
+ "kind": "implementation-execution-scope",
95
+ "authorization": {
96
+ "version": 1,
97
+ "kind": "implementation-authorization",
98
+ "contractVersion": 1,
99
+ "implementation": {
100
+ "repositoryHost": "github.com",
101
+ "repositoryId": "1329799765",
102
+ "repository": "yohn-jp/nawabari",
103
+ "number": 659
104
+ },
105
+ "governedBodyDigest": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef"
106
+ },
107
+ "repository": { "repositoryHost": "github.com", "repositoryId": "1329799765", "repository": "yohn-jp/nawabari" },
108
+ "base": { "branch": "main", "revision": "e0e3c4376c9d70c87f24c7211b5ded1f3d58a983" },
109
+ "scope": {
110
+ "readOnly": ["README.md", "src/**"],
111
+ "write": [],
112
+ "create": [],
113
+ "delete": [],
114
+ "deny": []
115
+ }
116
+ }
117
+ ```
118
+
119
+ `candidate-working-set.json`:
120
+
121
+ ```json
122
+ {
123
+ "kind": "candidate-working-set",
124
+ "schemaVersion": 1,
125
+ "workingSetId": "implementation-659-candidate-v1",
126
+ "repository": { "repositoryHost": "github.com", "repositoryId": "1329799765", "repository": "yohn-jp/nawabari" },
127
+ "revision": "e0e3c4376c9d70c87f24c7211b5ded1f3d58a983",
128
+ "entries": [
129
+ {
130
+ "state": "required",
131
+ "target": { "kind": "file", "locator": "README.md" },
132
+ "reason": { "id": "implementation-659", "summary": "Read the public contract" },
133
+ "evidence": [{ "artifact": "implementation-659", "reference": "working-set-bootstrap" }]
134
+ }
135
+ ]
136
+ }
137
+ ```
138
+
139
+ The execution scope is the maximum authority: all five arrays (`readOnly`, `write`, `create`, `delete`, `deny`) are required, contain canonical repository-relative path selectors, and may be empty. The authorization's `implementation.number` is a positive integer and `governedBodyDigest` is a 64-character lowercase hexadecimal digest from the governing authorization. `implementation.repository` is optional. Candidate `entries` may be empty; each entry requires `state` (`required`, `supporting`, `verification`, or `unresolved`), `target` (`kind`: `file`, `symbol`, `test`, or `unresolved`; plus a nonempty `locator`), `reason` (`id` and `summary`), and an `evidence` array of `{ "artifact", "reference" }` objects. An `unresolved` state requires an `unresolved` target kind; concrete states require a concrete target kind. Candidate entries describe need, not permission. Unknown fields are rejected; the parser in `src/working-set.ts` is the contract authority.
140
+
141
+ ```bash
142
+ nawabari session create --base main --execution-scope-file execution-scope.json \
143
+ --candidate-working-set-file candidate-working-set.json --json
144
+ nawabari session show --session "$session_id" --json
145
+ nawabari session scope expand --help --json
146
+ nawabari session scope expand --session "$session_id" --repository 1329799765 \
147
+ --repository-host github.com --revision "$revision" \
148
+ --execution-scope-file execution-scope.json --path src/new-context.ts \
149
+ --operation READONLY --reason 'Needed for current task' --json
150
+ ```
151
+
152
+ Read `working_set.revision` from `session show --json` before expansion. A granted expansion advances that revision and appends `working_set.history`; a stale revision or different execution-scope provenance is rejected without changing the working set. The requested path must be within the original execution-scope maximum and outside its `deny` selectors. READONLY expansion grants no WRITE, CREATE, or DELETE authority. Mutation still follows the existing claim and scope checks. If a resource handoff reports `Destination maximum scope is unavailable`, inspect the destination and explicitly expand its scope first; retry `session handoff` with fresh claim-set generation through the normal handoff command. Handoff never expands destination scope itself.
153
+
85
154
  The packed auxiliary-state declaration above is the bounded `copy` form: a `repository-local` source is copied to a `managed-worktree` target with `durability: durable`. It is an explicit, repeatable, allowlisted capability. It does not discover ignored state, project process-local sockets/PID files/logs, shadow Git-tracked paths, or expose arbitrary host filesystem paths. Auxiliary-state projection is separate from `SessionRuntimeProjection`: the former copies declared repository-local durable state for a managed worktree; the latter describes explicit runtime material and filesystem visibility for protected execution. Auxiliary state does not change the runtime projection.
86
155
 
87
156
  The create operation is atomic, but a caller must treat an uncertain result carefully. If JSON reports `REGISTRY_DURABILITY_UNCERTAIN`, re-read the reported session and claims before retrying. If the exact original declaration is already present, follow `bootstrap_retry.next_action: inspect-established-session` and inspect that `session_id`; if another declaration owns the worktree or branch, follow `bootstrap_retry.next_action: inspect-blocking-session`. Nawabari never silently adopts an existing owner. A retry is appropriate only after the authoritative state proves that the requested bootstrap was not established.
@@ -262,6 +331,20 @@ The command surface includes Session lifecycle, Resource Claims, authorization/e
262
331
 
263
332
  `src/cli-command-registry.ts` is the single canonical authority for that surface: every command/option name is a `CommandId`/`OptionId` literal type derived directly from the registry data (not hand-typed), and `--help`, `capabilities`, and the executable dispatcher's own accepted-flag parsing all read that same data. There is no second command or option table to keep in sync.
264
333
 
334
+ ### Optional machine-local Control Server
335
+
336
+ ```bash
337
+ nawabari server [--port <port>]
338
+ ```
339
+
340
+ `nawabari server` runs one foreground Control Server and built-in Web UI at `http://127.0.0.1:47471/` (default port `47471`; `--port` selects another; an occupied port fails instead of choosing another endpoint). The listener binds IPv4 loopback `127.0.0.1` only and the bind address is not configurable. Stop it with Ctrl-C or `SIGTERM`.
341
+
342
+ One listener serves every locally known Nawabari repository. Repository discovery uses a machine-local locator catalog (`$XDG_STATE_HOME/nawabari/control-repositories.json`, default `~/.local/state/nawabari/`) that holds only repository identity (common Git directory) and worktree path; `session create` and `server` record the current repository when it already has a Nawabari registry. The catalog is discovery metadata, not authority: each request reopens that repository's own backend, and each repository's registry, lifecycle, claims, runtime and filesystem authority stay independent.
343
+
344
+ The HTTP v1 API is `GET /api/v1/health`, `GET /api/v1/repositories`, `GET /api/v1/repositories/:repositoryKey/snapshot`, `GET /api/v1/repositories/:repositoryKey/sessions/:sessionId`, and `POST /api/v1/repositories/:repositoryKey/sessions/:sessionId/actions`. Reads re-project the canonical `RepositoryRuntimeSnapshot`; actions accept only the typed `session action` contract (`action_id`, `token`, `confirmation`) and delegate to the repository's `SessionActionDispatcher`, so stale evidence fails closed (HTTP 409) and `discard-session` still needs the authoritative preview plus explicit confirmation. No route executes command text.
345
+
346
+ Every API request needs the `x-nawabari-control-token` header. The token is random per start, bootstrapped only into the same-origin root document, and never printed, logged, persisted, or put in URLs. Requests with an unexpected `Host` or a foreign `Origin` are rejected, no CORS headers are sent, and actions accept bounded `application/json` bodies only. The Web UI polls every 3 seconds and has a manual refresh; it offers only the actions listed by the current canonical diagnostic. The server is optional: every other command, including `nawabari ui`, keeps calling the backend directly.
347
+
265
348
  ## Stable package exports
266
349
 
267
350
  Node consumers can use public projections without spawning the CLI:
@@ -126,7 +126,7 @@ declare const REGISTRY_DATA: readonly [{
126
126
  name: "--enforce-claims";
127
127
  description: string;
128
128
  } & CliHelpOptionSpec];
129
- readonly notes: readonly ["All create options are optional. Use status --json to discover managed_worktree_root.", "--worktree and --worktree-root cannot be combined.", "--profile-parameter requires --profile; ambiguous unqualified profile ids are rejected.", "Initial claims are provisioned atomically with the session; each --resource must be immediately followed by its own --mode, and zero pairs remains backward compatible.", "Resource-claim enforcement is disabled by default; pass --enforce-claims to require claims for commit/push authorization on this session. Worktree and branch ownership, and claim conflicts against other sessions, remain enforced regardless.", "Providing one bounded working-set artifact requires the other; both are validated before worktree ownership is established.", "A claim conflict returns blocking-owner evidence. A durability-uncertain result is retry-safe only after re-reading the reported registry state; an existing owner is never silently adopted.", "Without an override, Nawabari creates the safe managed root <repository-parent>/.nawabari/worktrees on first use. Existing absolute worktree paths directly under the repository parent remain accepted for compatibility."];
129
+ readonly notes: readonly ["All create options are optional. Use status --json to discover managed_worktree_root.", "--worktree and --worktree-root cannot be combined.", "--profile-parameter requires --profile; ambiguous unqualified profile ids are rejected.", "Initial claims are provisioned atomically with the session; each --resource must be immediately followed by its own --mode, and zero pairs remains backward compatible.", "Resource-claim enforcement is disabled by default; pass --enforce-claims to require claims for commit/push authorization on this session. Worktree and branch ownership, and claim conflicts against other sessions, remain enforced regardless.", "Providing one bounded working-set artifact requires the other; both are validated before worktree ownership is established.", "Both JSON artifact formats and field semantics are documented in README Working-set artifacts; session show --json exposes working_set.revision for expansion.", "A claim conflict returns blocking-owner evidence. A durability-uncertain result is retry-safe only after re-reading the reported registry state; an existing owner is never silently adopted.", "Without an override, Nawabari creates the safe managed root <repository-parent>/.nawabari/worktrees on first use. Existing absolute worktree paths directly under the repository parent remain accepted for compatibility."];
130
130
  }, {
131
131
  readonly name: "session id";
132
132
  readonly summary: "Resolve the current session identity";
@@ -246,7 +246,7 @@ declare const REGISTRY_DATA: readonly [{
246
246
  name: "--unresolved";
247
247
  description: string;
248
248
  } & CliHelpOptionSpec];
249
- readonly notes: readonly ["The current working-set revision is a mandatory CAS token; stale requests are rejected without mutation.", "READONLY is evaluated independently. Mutation classes also require the existing session claim authority.", "The execution-scope artifact must match the session's established provenance; it cannot widen Inari maximum authority."];
249
+ readonly notes: readonly ["The current working-set revision is a mandatory CAS token; stale requests are rejected without mutation.", "READONLY is evaluated independently. Mutation classes also require the existing session claim authority.", "The execution-scope artifact must match the session's established provenance; it cannot widen Inari maximum authority.", "Inspect session show --json working_set.revision and history; use the same bootstrap execution-scope JSON. See README Working-set artifacts."];
250
250
  }, {
251
251
  readonly name: "session reconcile";
252
252
  readonly summary: "Apply bounded lifecycle reconciliation for one selected session";
@@ -345,6 +345,20 @@ declare const REGISTRY_DATA: readonly [{
345
345
  readonly usage: "nawabari ui";
346
346
  readonly options: readonly [];
347
347
  readonly notes: readonly ["The UI reads one canonical repository runtime snapshot at startup and on refresh; it never mutates registry, Git, or filesystem state.", "Non-interactive callers receive one bounded projection and may combine this command with --json."];
348
+ }, {
349
+ readonly name: "server";
350
+ readonly summary: "Run the machine-local control server and built-in Web UI";
351
+ readonly usage: "nawabari server [--port <port>]";
352
+ readonly options: readonly [{
353
+ name: "--port";
354
+ description: string;
355
+ } & {
356
+ readonly value: "<port>";
357
+ readonly default: "47471";
358
+ readonly minimum: 1;
359
+ readonly maximum: 65535;
360
+ }];
361
+ readonly notes: readonly ["Runs in the foreground and binds 127.0.0.1 only; the bind address is not configurable. An occupied port fails.", "Serves every locally known Nawabari repository through one listener; each repository keeps its own backend authority.", "API requests require the ephemeral startup token header; the token rotates on restart and is never printed."];
348
362
  }, {
349
363
  readonly name: "session coordination preview";
350
364
  readonly summary: "Preview bounded coordination between two sessions";
@@ -64,10 +64,10 @@ const REGISTRY_DATA = [
64
64
  repeatable: true,
65
65
  }),
66
66
  option("--auxiliary-state", "JSON repository-local auxiliary-state declaration to materialize in the managed worktree; repeatable", { value: "<json>", repeatable: true }),
67
- option("--execution-scope-file", "Bounded JSON execution-scope artifact file for governed bootstrap", {
67
+ option("--execution-scope-file", "Version 1 implementation-execution-scope JSON; see README Working-set artifacts", {
68
68
  value: "<path>",
69
69
  }),
70
- option("--candidate-working-set-file", "Bounded JSON candidate-working-set artifact file for governed bootstrap", { value: "<path>" }),
70
+ option("--candidate-working-set-file", "Schema version 1 candidate-working-set JSON; see README Working-set artifacts", { value: "<path>" }),
71
71
  option("--enforce-claims", "Opt this session into resource-claim enforcement; without it, operation authorization does not require resource claims for session-owned operations"),
72
72
  ],
73
73
  notes: [
@@ -77,6 +77,7 @@ const REGISTRY_DATA = [
77
77
  "Initial claims are provisioned atomically with the session; each --resource must be immediately followed by its own --mode, and zero pairs remains backward compatible.",
78
78
  "Resource-claim enforcement is disabled by default; pass --enforce-claims to require claims for commit/push authorization on this session. Worktree and branch ownership, and claim conflicts against other sessions, remain enforced regardless.",
79
79
  "Providing one bounded working-set artifact requires the other; both are validated before worktree ownership is established.",
80
+ "Both JSON artifact formats and field semantics are documented in README Working-set artifacts; session show --json exposes working_set.revision for expansion.",
80
81
  "A claim conflict returns blocking-owner evidence. A durability-uncertain result is retry-safe only after re-reading the reported registry state; an existing owner is never silently adopted.",
81
82
  "Without an override, Nawabari creates the safe managed root <repository-parent>/.nawabari/worktrees on first use. Existing absolute worktree paths directly under the repository parent remain accepted for compatibility.",
82
83
  ],
@@ -168,6 +169,7 @@ const REGISTRY_DATA = [
168
169
  "The current working-set revision is a mandatory CAS token; stale requests are rejected without mutation.",
169
170
  "READONLY is evaluated independently. Mutation classes also require the existing session claim authority.",
170
171
  "The execution-scope artifact must match the session's established provenance; it cannot widen Inari maximum authority.",
172
+ "Inspect session show --json working_set.revision and history; use the same bootstrap execution-scope JSON. See README Working-set artifacts.",
171
173
  ],
172
174
  },
173
175
  {
@@ -262,6 +264,24 @@ const REGISTRY_DATA = [
262
264
  "Non-interactive callers receive one bounded projection and may combine this command with --json.",
263
265
  ],
264
266
  },
267
+ {
268
+ name: "server",
269
+ summary: "Run the machine-local control server and built-in Web UI",
270
+ usage: `${CLI_NAME} server [--port <port>]`,
271
+ options: [
272
+ option("--port", "Local TCP port on 127.0.0.1", {
273
+ value: "<port>",
274
+ default: "47471",
275
+ minimum: 1,
276
+ maximum: 65535,
277
+ }),
278
+ ],
279
+ notes: [
280
+ "Runs in the foreground and binds 127.0.0.1 only; the bind address is not configurable. An occupied port fails.",
281
+ "Serves every locally known Nawabari repository through one listener; each repository keeps its own backend authority.",
282
+ "API requests require the ephemeral startup token header; the token rotates on restart and is never printed.",
283
+ ],
284
+ },
265
285
  {
266
286
  name: "session coordination preview",
267
287
  summary: "Preview bounded coordination between two sessions",
@@ -1 +1 @@
1
- {"version":3,"file":"cli-command-registry.js","sourceRoot":"","sources":["../src/cli-command-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-command-registry.js","sourceRoot":"","sources":["../src/cli-command-registry.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -3,6 +3,7 @@ import { type SessionBackend } from "./domain/session.js";
3
3
  import { type CliIO } from "./presentation.js";
4
4
  import { type RepositoryTerminalInput, type RepositoryTerminalOutput } from "./ui/repository-terminal.js";
5
5
  import type { RepositoryScreenModel } from "./ui/repository-screen.js";
6
+ import { type ControlServer } from "./control-server.js";
6
7
  import { type SandboxCommand, type SandboxExecutionResult, type SandboxLauncherOptions, type SandboxProbe, type SandboxRuntimeLayout } from "./domain/sandbox.js";
7
8
  export { CLI_COMMAND_REGISTRY, COMMAND_REGISTRY, publicCliCommandDefinitions, publicCliCommandNames, resolveCliCommandDefinition, canonicalCommandForName, } from "./cli-command-registry.js";
8
9
  export type { CliCommandDefinition, CliHelpOptionSpec, CommandId, OptionId } from "./cli-command-registry.js";
@@ -36,6 +37,12 @@ export type CliDependencies = {
36
37
  readonly isTTY?: boolean;
37
38
  readonly signal?: AbortSignal;
38
39
  };
40
+ /** Optional Control Server composition; test/integration seam. */
41
+ controlServer?: {
42
+ readonly catalogPath?: string;
43
+ readonly signal?: AbortSignal;
44
+ readonly onListening?: (server: ControlServer) => void;
45
+ };
39
46
  version?: string;
40
47
  sandboxRunner?: (request: import("./domain/sandbox.js").SandboxExecutionRequest, command: SandboxCommand, options?: SandboxLauncherOptions) => Promise<DomainResult<SandboxExecutionResult>>;
41
48
  sandboxProbe?: SandboxProbe;
package/dist/cli.js CHANGED
@@ -11,6 +11,8 @@ import { createLocalSessionBackend } from "./domain/session-backend.js";
11
11
  import { defaultCliIO, renderFailure, renderSuccess } from "./presentation.js";
12
12
  import { repositoryScreenModelFromRuntimeSnapshot, runRepositoryTerminal, } from "./ui/repository-terminal.js";
13
13
  import { parseSessionDiscardPreview } from "./ui/session-actions.js";
14
+ import { CONTROL_SERVER_HOST, CONTROL_SERVER_SCHEMA, DEFAULT_CONTROL_SERVER_PORT, startControlServer, } from "./control-server.js";
15
+ import { defaultControlRepositoryCatalogPath, registerRepositoryLocator } from "./control-repositories.js";
14
16
  import { MACHINE_CONTRACT_ID, MACHINE_CONTRACT_SCHEMA_VERSION, machineContract } from "./contract.js";
15
17
  import { resolveSandboxExecutionRequest, runSandboxedCommand, discoverSandboxRuntimeLayout, CANONICAL_EXECUTABLE_ROOT, } from "./domain/sandbox.js";
16
18
  import { EXPLICIT_COMPATIBILITY_RUNTIME_POLICY, STRICT_RUNTIME_POLICY, } from "./domain/runtime-projection.js";
@@ -67,12 +69,20 @@ validateCliRegistryParity();
67
69
  function helpSpecFor(commandArguments) {
68
70
  if (commandArguments.length === 0)
69
71
  return ROOT_HELP_SPEC;
70
- const key = commandArguments[0] === "resource"
71
- ? `resource ${commandArguments[1] ?? "list"}`
72
- : commandArguments[0] === "session" && ["coordination", "file"].includes(commandArguments[1] ?? "")
73
- ? commandArguments.slice(0, 3).join(" ")
74
- : commandArguments.slice(0, 2).join(" ");
75
- return resolveCliCommandDefinition(key) ?? resolveCliCommandDefinition(commandArguments[0]) ?? ROOT_HELP_SPEC;
72
+ return (registeredCommandForArguments(commandArguments) ??
73
+ (commandArguments[0] === "resource" && commandArguments[1] === undefined
74
+ ? resolveCliCommandDefinition("resource list")
75
+ : undefined) ??
76
+ resolveCliCommandDefinition(commandArguments[0] ?? "") ??
77
+ ROOT_HELP_SPEC);
78
+ }
79
+ function registeredCommandForArguments(commandArguments) {
80
+ for (let length = commandArguments.length; length > 0; length -= 1) {
81
+ const resolved = resolveCliCommandDefinition(commandArguments.slice(0, length).join(" "));
82
+ if (resolved !== undefined)
83
+ return resolved;
84
+ }
85
+ return undefined;
76
86
  }
77
87
  function helpPayload(spec) {
78
88
  if (spec.name === "root") {
@@ -344,6 +354,7 @@ function parseOptions(arguments_, allowed) {
344
354
  action_preview: null,
345
355
  operation_id: null,
346
356
  confirm: false,
357
+ port: null,
347
358
  };
348
359
  let dryRun = false;
349
360
  for (let index = 0; index < arguments_.length; index += 1) {
@@ -522,6 +533,8 @@ function parseOptions(arguments_, allowed) {
522
533
  options.fetch_remote = value;
523
534
  else if (name === "--fetch-branch")
524
535
  options.fetch_branch = value;
536
+ else if (name === "--port")
537
+ options.port = value;
525
538
  }
526
539
  if (options.apply && dryRun) {
527
540
  return failure(usageError("INVALID_ARGUMENT", "--apply and --dry-run cannot be used together."));
@@ -1290,6 +1303,7 @@ async function executeProtectedSessionCommand(arguments_, dependencies, context,
1290
1303
  ok: true,
1291
1304
  value: {
1292
1305
  ...managed.value.result,
1306
+ ...managed.value.request_identity,
1293
1307
  execution: managed.value.execution,
1294
1308
  supervisor: managed.value.supervisor,
1295
1309
  },
@@ -1318,6 +1332,11 @@ async function executeProtectedSessionCommand(arguments_, dependencies, context,
1318
1332
  ok: true,
1319
1333
  value: {
1320
1334
  ...result.value,
1335
+ session_id: request.value.session_id,
1336
+ repository: request.value.repository,
1337
+ worktree: request.value.worktree,
1338
+ branch: request.value.branch,
1339
+ network_mode: request.value.network_mode,
1321
1340
  ...(result.value.runtime_resolution === undefined && request.value.runtime_resolution === undefined
1322
1341
  ? {}
1323
1342
  : { runtime_resolution: result.value.runtime_resolution ?? request.value.runtime_resolution }),
@@ -1368,6 +1387,51 @@ async function executeCommand(commandArguments, dependencies) {
1368
1387
  });
1369
1388
  return { ok: true, value: terminalResult };
1370
1389
  }
1390
+ if (command === "server") {
1391
+ const parsed = parseOptions([subcommand, ...rest].filter((argument) => argument !== undefined), dispatcherAllowedOptions("server"));
1392
+ if (!parsed.ok)
1393
+ return parsed;
1394
+ const portText = parsed.value.port ?? String(DEFAULT_CONTROL_SERVER_PORT);
1395
+ const port = /^\d{1,5}$/u.test(portText) ? Number(portText) : Number.NaN;
1396
+ if (!(port >= 1 && port <= 65_535)) {
1397
+ return failure(usageError("INVALID_ARGUMENT", "--port must be an integer between 1 and 65535.", {
1398
+ option: "--port",
1399
+ value: portText,
1400
+ }));
1401
+ }
1402
+ const catalogPath = dependencies.controlServer?.catalogPath ?? defaultControlRepositoryCatalogPath();
1403
+ // Discovery metadata only: the current repository is recorded when it is
1404
+ // already Nawabari-managed; other known repositories stay visible.
1405
+ registerRepositoryLocator(catalogPath, dependencies.cwd);
1406
+ const started = await startControlServer({ port, backend: dependencies.backend, catalogPath });
1407
+ if (!started.ok)
1408
+ return started;
1409
+ const endpoint = {
1410
+ schema: CONTROL_SERVER_SCHEMA,
1411
+ status: "listening",
1412
+ url: started.value.url,
1413
+ host: CONTROL_SERVER_HOST,
1414
+ port: started.value.port,
1415
+ };
1416
+ (dependencies.io ?? defaultCliIO()).stdout(renderSuccess(dependencies.json ? "json" : "human", "server", endpoint));
1417
+ dependencies.controlServer?.onListening?.(started.value);
1418
+ await new Promise((resolve) => {
1419
+ const signal = dependencies.controlServer?.signal;
1420
+ const stop = () => {
1421
+ process.off("SIGINT", stop);
1422
+ process.off("SIGTERM", stop);
1423
+ signal?.removeEventListener("abort", stop);
1424
+ resolve();
1425
+ };
1426
+ if (signal?.aborted)
1427
+ return stop();
1428
+ signal?.addEventListener("abort", stop, { once: true });
1429
+ process.once("SIGINT", stop);
1430
+ process.once("SIGTERM", stop);
1431
+ });
1432
+ await started.value.close();
1433
+ return { ok: true, value: { ...endpoint, status: "stopped" } };
1434
+ }
1371
1435
  if (command === "session" && subcommand === "action") {
1372
1436
  const parsed = parseOptions(rest, dispatcherAllowedOptions("session action"));
1373
1437
  if (!parsed.ok)
@@ -2102,6 +2166,9 @@ async function executeSessionFileOperation(arguments_, backend, context) {
2102
2166
  return success(serializeWorktreeFileOperationCliOutcome(outcome));
2103
2167
  }
2104
2168
  function commandName(commandArguments) {
2169
+ const registered = registeredCommandForArguments(commandArguments);
2170
+ if (registered !== undefined)
2171
+ return registered.name;
2105
2172
  if (commandArguments[0] === "session") {
2106
2173
  if (["coordination", "file"].includes(commandArguments[1] ?? ""))
2107
2174
  return commandArguments.slice(0, 3).join(" ");
@@ -2381,6 +2448,7 @@ export async function runCli(argv, dependencies = {}) {
2381
2448
  io,
2382
2449
  json: mode === "json",
2383
2450
  repositoryTerminal: dependencies.repositoryTerminal,
2451
+ controlServer: dependencies.controlServer,
2384
2452
  sandboxRunner: dependencies.sandboxRunner,
2385
2453
  sandboxProbe: dependencies.sandboxProbe,
2386
2454
  sandboxRuntimeLayout: runtimeLayout,
@@ -2393,8 +2461,13 @@ export async function runCli(argv, dependencies = {}) {
2393
2461
  const childExitCode = result.value.exit_code;
2394
2462
  const childSignal = result.value.signal;
2395
2463
  const interactive = command === "session shell";
2396
- if (!interactive && command !== "ui")
2464
+ if (!interactive && command !== "ui" && command !== "server")
2397
2465
  io.stdout(renderSuccess(mode, command, result.value));
2466
+ if (command === "session create" && dependencies.backend === undefined) {
2467
+ // Best-effort discovery locator for the optional Control Server; the
2468
+ // CLI result never depends on it.
2469
+ registerRepositoryLocator(dependencies.controlServer?.catalogPath ?? defaultControlRepositoryCatalogPath(), cwd);
2470
+ }
2398
2471
  if ((command === "session run" || command === "session exec" || interactive) &&
2399
2472
  (childSignal !== null || (typeof childExitCode === "number" && childExitCode !== 0))) {
2400
2473
  if (childSignal !== null)