@markusylisiurunen/tau 0.3.36 → 0.3.38

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.
Files changed (127) hide show
  1. package/README.md +93 -17
  2. package/dist/core/agent/agent_runtime.js +22 -0
  3. package/dist/core/agent/agent_runtime.js.map +1 -1
  4. package/dist/core/auth/cli.js +10 -0
  5. package/dist/core/auth/cli.js.map +1 -1
  6. package/dist/core/auth/providers/openai_codex.js +36 -16
  7. package/dist/core/auth/providers/openai_codex.js.map +1 -1
  8. package/dist/core/cli.js +4 -1
  9. package/dist/core/cli.js.map +1 -1
  10. package/dist/core/config/builtin_themes.js +0 -93
  11. package/dist/core/config/builtin_themes.js.map +1 -1
  12. package/dist/core/config/client_tools.js +109 -0
  13. package/dist/core/config/client_tools.js.map +1 -0
  14. package/dist/core/config/content_loader.js +3 -1
  15. package/dist/core/config/content_loader.js.map +1 -1
  16. package/dist/core/config/index.js +1 -1
  17. package/dist/core/config/index.js.map +1 -1
  18. package/dist/core/config/schema.js +100 -1
  19. package/dist/core/config/schema.js.map +1 -1
  20. package/dist/core/history/cli.js +90 -0
  21. package/dist/core/history/cli.js.map +1 -0
  22. package/dist/core/history/config.js +11 -0
  23. package/dist/core/history/config.js.map +1 -0
  24. package/dist/core/history/history_manager.js +170 -0
  25. package/dist/core/history/history_manager.js.map +1 -0
  26. package/dist/core/history/local_history_store.js +407 -0
  27. package/dist/core/history/local_history_store.js.map +1 -0
  28. package/dist/core/history/remote_history_client.js +152 -0
  29. package/dist/core/history/remote_history_client.js.map +1 -0
  30. package/dist/core/history/replication.js +89 -0
  31. package/dist/core/history/replication.js.map +1 -0
  32. package/dist/core/history/setup.js +187 -0
  33. package/dist/core/history/setup.js.map +1 -0
  34. package/dist/core/history/transcript.js +39 -0
  35. package/dist/core/history/transcript.js.map +1 -0
  36. package/dist/core/history/types.js +2 -0
  37. package/dist/core/history/types.js.map +1 -0
  38. package/dist/core/models/tau_model_overrides.js +63 -4
  39. package/dist/core/models/tau_model_overrides.js.map +1 -1
  40. package/dist/core/personas.js +2 -1
  41. package/dist/core/personas.js.map +1 -1
  42. package/dist/core/runtime/chat_runtime.js +9 -0
  43. package/dist/core/runtime/chat_runtime.js.map +1 -1
  44. package/dist/core/static/code_mode/history/documentation.md +133 -0
  45. package/dist/core/static/code_mode/history/sandbox_runner.mjs +108 -0
  46. package/dist/core/static/code_mode/web/documentation.md +7 -7
  47. package/dist/core/subagents/agent_supervisor.js +1 -1
  48. package/dist/core/subagents/agent_supervisor.js.map +1 -1
  49. package/dist/core/subagents/registry.js +2 -1
  50. package/dist/core/subagents/registry.js.map +1 -1
  51. package/dist/core/subagents/types.js +2 -1
  52. package/dist/core/subagents/types.js.map +1 -1
  53. package/dist/core/telegram/adapter.js +30 -0
  54. package/dist/core/telegram/adapter.js.map +1 -1
  55. package/dist/core/telegram/session_manager.js +143 -26
  56. package/dist/core/telegram/session_manager.js.map +1 -1
  57. package/dist/core/tools/catalog.js +11 -2
  58. package/dist/core/tools/catalog.js.map +1 -1
  59. package/dist/core/tools/history.js +125 -0
  60. package/dist/core/tools/history.js.map +1 -0
  61. package/dist/core/tools/spawn_agent.js +1 -0
  62. package/dist/core/tools/spawn_agent.js.map +1 -1
  63. package/dist/core/tools/tool_names.js +2 -0
  64. package/dist/core/tools/tool_names.js.map +1 -1
  65. package/dist/core/tools/web.js +1 -1
  66. package/dist/core/tools/web.js.map +1 -1
  67. package/dist/core/utils/repository.js +44 -0
  68. package/dist/core/utils/repository.js.map +1 -0
  69. package/dist/core/utils/spawn_capture.js +58 -22
  70. package/dist/core/utils/spawn_capture.js.map +1 -1
  71. package/dist/core/utils/user_metadata.js +14 -0
  72. package/dist/core/utils/user_metadata.js.map +1 -1
  73. package/dist/core/version.js +1 -1
  74. package/dist/history/worker/index.js +989 -0
  75. package/dist/history/worker/index.js.map +1 -0
  76. package/dist/host/local_session_host.js +285 -179
  77. package/dist/host/local_session_host.js.map +1 -1
  78. package/dist/main.js +40 -8
  79. package/dist/main.js.map +1 -1
  80. package/dist/protocol/session_protocol.d.ts +4 -1
  81. package/dist/protocol/session_protocol.js +14 -6
  82. package/dist/protocol/session_protocol.js.map +1 -1
  83. package/dist/sdk/index.d.ts +1 -1
  84. package/dist/sdk/index.js.map +1 -1
  85. package/dist/sdk/local_client.js +5 -0
  86. package/dist/sdk/local_client.js.map +1 -1
  87. package/dist/sdk/session.js +22 -3
  88. package/dist/sdk/session.js.map +1 -1
  89. package/dist/store/session_snapshot_migrations.js +65 -1
  90. package/dist/store/session_snapshot_migrations.js.map +1 -1
  91. package/dist/transport/in_process_session_transport.js +3 -0
  92. package/dist/transport/in_process_session_transport.js.map +1 -1
  93. package/dist/transport/index.d.ts +1 -1
  94. package/dist/transport/index.js.map +1 -1
  95. package/dist/transport/session_protocol_transport_helpers.js +10 -0
  96. package/dist/transport/session_protocol_transport_helpers.js.map +1 -1
  97. package/dist/transport/session_transport.d.ts +2 -0
  98. package/dist/transport/stdio_session_transport.d.ts +3 -1
  99. package/dist/transport/stdio_session_transport.js +13 -6
  100. package/dist/transport/stdio_session_transport.js.map +1 -1
  101. package/dist/transport/websocket_session_transport.d.ts +3 -1
  102. package/dist/transport/websocket_session_transport.js +11 -2
  103. package/dist/transport/websocket_session_transport.js.map +1 -1
  104. package/dist/tui/chat_controller/diff_review_service.js +12 -11
  105. package/dist/tui/chat_controller/diff_review_service.js.map +1 -1
  106. package/dist/tui/chat_controller/diff_review_user_message.js +1 -0
  107. package/dist/tui/chat_controller/diff_review_user_message.js.map +1 -1
  108. package/dist/tui/chat_controller/history_message_model.js +4 -1
  109. package/dist/tui/chat_controller/history_message_model.js.map +1 -1
  110. package/dist/tui/chat_view.js +0 -11
  111. package/dist/tui/chat_view.js.map +1 -1
  112. package/dist/tui/command_client_tools.js +80 -0
  113. package/dist/tui/command_client_tools.js.map +1 -0
  114. package/dist/tui/session_chat_app.js +26 -6
  115. package/dist/tui/session_chat_app.js.map +1 -1
  116. package/dist/tui/session_chat_controller.js +68 -71
  117. package/dist/tui/session_chat_controller.js.map +1 -1
  118. package/dist/tui/session_creation_attributes.js +66 -0
  119. package/dist/tui/session_creation_attributes.js.map +1 -0
  120. package/dist/tui/ui/theme/palette.js +0 -3
  121. package/dist/tui/ui/theme/palette.js.map +1 -1
  122. package/dist/tui/ui/theme/theme.js.map +1 -1
  123. package/dist/tui/ui/user_message.js +4 -10
  124. package/dist/tui/ui/user_message.js.map +1 -1
  125. package/package.json +1 -1
  126. package/dist/tui/memory_mode.js +0 -24
  127. package/dist/tui/memory_mode.js.map +0 -1
package/README.md CHANGED
@@ -138,7 +138,7 @@ tau attach --session 0195d6e4-4cf9-7f44-a2d8-f8f7f49ee9d3 -- ssh vps 'cd /path/t
138
138
 
139
139
  Session attach renders the authoritative session snapshot, streams recoverable `session.delta` updates and independently revisioned, non-persisted `session.pendingUserMessages` replacements, submits normal user input through `session.submit`, `session.queue`, and `session.steer`, supports steering/interruption, runs `!`/`!!` Bash commands in the session execution environment, records `/listen` from the local microphone, speaks `/speak` locally, reloads session content with `/reload`, switches session personas with `/persona:<id>` or `Ctrl+P`, inserts session prompt templates with `/prompt:<id>`, manages persistent autonomous goals with `/goal`, compacts the session with `/compact:*`, creates a new session with `/new`, and exits with `/exit` or `Ctrl+C` twice.
140
140
 
141
- The TUI advertises client tools for diff review and input prefill. `prefill_input` fills only an empty editor and leaves existing draft text unchanged. Pass `--no-client-tools` to `tau` or `tau attach` to advertise neither tool, for example when another TUI attached to the same session already owns the client tools.
141
+ The TUI advertises client tools for diff review, input prefill, and the effective command-backed tools selected from global definitions. `prefill_input` fills only an empty editor and leaves existing draft text unchanged. Pass `--no-client-tools` to `tau` or `tau attach` to advertise no TUI client tools, for example when another TUI attached to the same session already owns them.
142
142
 
143
143
  Model `bash` tool calls, `!`/`!!`, `session.exec`, and Tau-controlled command helpers each run in a fresh, non-interactive login Bash belonging to the session execution environment. Tau sets `HOME` to the execution environment home, so Bash reads `/etc/profile` and then the first available user login file (`~/.bash_profile`, `~/.bash_login`, or `~/.profile`). Bash also reads inherited `BASH_ENV` when set; otherwise `.bashrc` is loaded only when the login configuration sources it. Login startup files must be automation-safe: they must not write to stdout or stderr, read stdin, require a TTY, or terminate the shell unexpectedly. Tau does not filter or frame startup output. Commands start from the backend's target-side environment and apply explicit execution-environment overrides; the local backend filters sensitive variables inherited from the Tau host. Node, Git, and other helper executables resolve from the same login-configured `PATH` as model commands. Shell state such as `cd`, exports, aliases, functions, and `nvm use` does not persist between calls.
144
144
 
@@ -165,7 +165,7 @@ The runner keeps tool and lifecycle progress quiet: Telegram receives command ac
165
165
 
166
166
  Telegram DM input supports plain text, voice/audio transcription with the transcript echoed back for verification, and attachment queueing (`image/*`, PDF, `.txt`, `.md`, `.json`, `.csv`, `.yaml`, `.yml`). allowed groups are opt-in via `allowedChatIds`; non-triggering group text/captions, attachments, audio transcripts, and processing errors are buffered as sender-attributed context and the most recent 50 messages since the previous bot-triggering turn are included when a bot mention triggers a turn. group commands accept explicit bot mentions on or around the command, such as `/status@botusername`, `/status @botusername`, or `@botusername /status`.
167
167
 
168
- Telegram config defines `bots`, `projects`, `workspaceRoot`, optional `systemMessage`, and optional `maxSessions`. Projects may describe one repository or compose several repository projects under a generated multi-repo root. Repositories use persistent bare caches at `<workspaceRoot>-repo-cache/<projectId>.git`; active session records and per-chat project preferences are persisted, workspaces survive runner restarts, and unreferenced workspace entries are removed on startup. Tau reconnects preserved sessions to their corresponding snapshots. When creating or reconstructing a workspace, Telegram starts an optional executable `.tau/scripts/provision` repository hook through the Tau session without blocking chat access; failures are reported while the session remains available. Preserved workspaces skip provisioning on restart. for config details, see [docs/telegram.md](docs/telegram.md).
168
+ Telegram config defines `bots`, `projects`, `workspaceRoot`, optional `systemMessage`, and optional `maxSessions`. Projects may describe one repository or compose several repository projects under a generated multi-repo root. Repositories use persistent bare caches at `<workspaceRoot>-repo-cache/<projectId>.git`; active and failed session records and per-chat project preferences are persisted, workspaces survive runner restarts, and unreferenced workspace entries are removed on startup. Tau reconnects preserved active sessions to their corresponding snapshots, while failed records retain the initiating submission diagnostic until the session is closed. When creating or reconstructing a workspace, Telegram starts an optional executable `.tau/scripts/provision` repository hook through the Tau session without blocking chat access; failures are reported while the session remains available. Preserved workspaces skip provisioning on restart. for config details, see [docs/telegram.md](docs/telegram.md).
169
169
 
170
170
  ## built-in tool commands
171
171
 
@@ -177,6 +177,33 @@ tau tool pdf-unpack ./docs/spec.pdf
177
177
 
178
178
  `tau tool pdf-unpack` sends the original PDF to Mistral for OCR/Markdown, renders page image patches locally with `pdftoppm`, writes a persistent temp directory with `document.md`, `pages/`, and `images/`, and prints the output paths as plain text for follow-up model use.
179
179
 
180
+ ## session history
181
+
182
+ Tau records every session to a machine-local SQLite history database independently of the resumable session snapshot. History retains committed user text (including leading `<system>` blocks), assistant preambles and responses, and completed tool calls with their full results. Rewind removes the superseded suffix, while compaction does not remove original transcript entries.
183
+
184
+ Built-in personas include the read-only `history` code-mode tool, and their subagents inherit it by default. Agents are instructed to invoke it only when the user or other active instructions directly ask them to reference historical transcripts. Custom subagents can include or exclude it in their `tools` list like `bash` or `web`. Its `history.search()` and `history.read()` APIs provide global access to bounded transcript results across repositories and execution environments; ordinary JavaScript can further filter and project them. Attribute search supports exact strings and generic `{ "contains": "text" }` substring filters. Conventional client-supplied attributes include `source` and `repository`; repository values use `host/owner/repository`, with comma-delimited values for composite workspaces. Local TUI startup derives this value from the current Git repository or direct child repositories, `/new` preserves a known value, Telegram derives it from project configuration, attach-created sessions leave it absent, and SDK/raw clients include it only when their caller provides it. If local history initialization or projection fails, Tau keeps the session running, persists one warning notice for clients (including Telegram), and makes history unavailable for that process.
185
+
186
+ A bundled single-owner Cloudflare service can combine histories from several Tau hosts and generate searchable session titles and summaries with Cloudflare AI using GPT-5.6 Luna at medium reasoning effort. Digest generation normally sends a compact role-delimited projection of the full transcript, omitting entry metadata and middle-truncating each tool result to roughly 512 estimated tokens; documented context-overflow errors trigger recursive halving through at most three levels before final synthesis. The Worker applies sequential D1 schema migrations when it starts against a reused database. It requires the **Workers Paid** plan so indefinite retention, FTS queries, replication batches, and digest processing use the paid D1/Worker limits rather than the free plan's 500 MB per-database, 50-query, and 10 ms CPU ceilings.
187
+
188
+ ```sh
189
+ export CLOUDFLARE_API_TOKEN=...
190
+ tau history setup --domain history.example.com --zone-name example.com
191
+ export TAU_HISTORY_API_KEY=... # use the value printed by setup
192
+ ```
193
+
194
+ Configure the endpoint only in global Tau config:
195
+
196
+ ```json
197
+ {
198
+ "history": {
199
+ "endpoint": "https://history.example.com",
200
+ "apiKeyEnv": "TAU_HISTORY_API_KEY"
201
+ }
202
+ }
203
+ ```
204
+
205
+ Without `history` config, capture and queries remain machine-local. With a remote target, Tau writes locally first and forwards ordered, idempotent append/truncate operations asynchronously; remote outages never block session execution. Local entries remain complete, while remote entries larger than 1 MiB middle-truncate oversized payload fields with an explicit marker, and append operations stay below the replication byte budget. `tau history destroy --yes` removes the bundled Worker and D1 database.
206
+
180
207
  ## Nook static mini-apps
181
208
 
182
209
  Nook is Tau's bundled Cloudflare-backed static mini-app platform. It deploys static directories to path-based site URLs and gives each site same-origin JSON KV through an injected `window.nook` browser SDK.
@@ -222,6 +249,7 @@ const session = await client.sessions.create({
222
249
  kind: "local",
223
250
  cwd: process.cwd(),
224
251
  },
252
+ attributes: { source: "sdk", repository: "github.com/example/project" },
225
253
  });
226
254
  const unsubscribe = session.onDelta((delta) => {
227
255
  // stream reconstructable session deltas
@@ -318,11 +346,11 @@ available palette tokens (theme keys):
318
346
 
319
347
  - core: `brandAccent`, `textMuted`, `textDim`, `linkText`, `thinkingText`, `codeInlineText`, `codeBlockText`
320
348
  - editor: `editorBorderNone`, `editorBorderMinimal`, `editorBorderLow`, `editorBorderMedium`, `editorBorderHigh`, `editorBorderXhigh`, `editorBorderMax`, `editorSubagentBorder`, `editorBorderRecording`
321
- - status: `statusWarn`, `statusError`, `modeMemory`, `modeBash`
349
+ - status: `statusWarn`, `statusError`, `modeBash`
322
350
  - action: `actionRunning`, `actionSuccess`, `actionError`, `actionOutput`
323
351
  - diff: `diffAdd`, `diffRemove`
324
352
  - toasts: `toastSuccess`, `toastWarn`, `toastError`
325
- - user: `userSurface`, `userMemorySurface`, `userMemoryText`
353
+ - user: `userSurface`, `userReviewSurface`, `userReviewText`, `userReviewTextMuted`, `userReviewTextDim`
326
354
 
327
355
  example theme file (`.tau/themes/solarized.json`):
328
356
 
@@ -389,7 +417,7 @@ the built-in `default` sub-agent is available unless disabled. it inherits the m
389
417
 
390
418
  sub-agent progress appears in a sticky panel. use `alt+down` to cycle active subagents and `ctrl+g` to interrupt the selected one's current run. tau caps active subagents at 8.
391
419
 
392
- `web.discover` works without an API key. to use `web.search` and `web.fetch`, set `apiKeys.exa` in `~/.config/tau/config.json` (see above) or export `EXA_API_KEY`. `web` is available to main agents and sub-agents, and runs one-shot JavaScript with bounded `web.discover`, `web.search`, and `web.fetch` APIs; search and fetch are backed by Exa. for direct URLs, the tool description asks the model to run discovery first and decide in the next turn whether to use `curl`, `web.fetch`, or another approach. discovery runs ordinary bounded requests through the session execution environment and reports metadata for direct Markdown representations and `llms.txt` files at every path prefix without returning page content or parsing links, leaving direct retrieval to a later explicit `curl` call. search and fetch remain host-owned so Exa credentials stay outside the sandbox, default to highlights, cap provider responses at 16 MiB before parsing, and omit provider-specific details. generated code runs in a capability-limited SES compartment inside a host Worker. the tool description limits use to requests that ask for or clearly imply web access, asks the model to prefer concise plain text over raw JSON dumps even when all response fields are needed, and tells it how to print the bundled API documentation.
420
+ `web.discover` works without an API key. to use `web.search` and `web.fetch`, set `apiKeys.exa` in `~/.config/tau/config.json` (see above) or export `EXA_API_KEY`. `web` is available to main agents and sub-agents, and runs one-shot JavaScript with bounded `web.discover`, `web.search`, and `web.fetch` APIs; search and fetch are backed by Exa. for direct URLs, the tool description asks the model to run discovery first and retrieve content in the next turn. discovery runs ordinary bounded requests through the session execution environment and reports metadata for direct Markdown representations and `llms.txt` files at every path prefix without returning page content or parsing links. advertised Markdown and `llms.txt` resources must be retrieved with a later explicit Bash `curl` call and must not be passed to `web.fetch`; fetch is the fallback for ordinary pages when no suitable agent-friendly resource exists or extraction is preferable. search and fetch remain host-owned so Exa credentials stay outside the sandbox, default to highlights, cap provider responses at 16 MiB before parsing, and omit provider-specific details. generated code runs in a capability-limited SES compartment inside a host Worker. the tool description limits use to requests that ask for or clearly imply web access, asks the model to prefer concise plain text over raw JSON dumps even when all response fields are needed, and tells it how to print the bundled API documentation.
393
421
 
394
422
  ## trigger sensitivity
395
423
 
@@ -439,16 +467,6 @@ paths are resolved relative to the directory containing `.tau/` (or relative to
439
467
 
440
468
  run `tau --help` to see all available options, or `tau --debug` to inspect loaded personas, prompts, skills, and the full system prompt for debugging configuration issues.
441
469
 
442
- ## memory mode
443
-
444
- prefix a single-line message with `#` to update AGENTS.md. this is useful for capturing decisions, conventions, and context as you work.
445
-
446
- ```
447
- # prefer explicit error messages with context about what operation failed
448
- ```
449
-
450
- tau updates the nearest `AGENTS.md` in your current directory ancestry (or creates one in the current directory if none exists). it integrates the new information into the existing structure. this file is loaded automatically in future sessions unless you pass `--no-agent-context-files`.
451
-
452
470
  ## commands
453
471
 
454
472
  tau supports slash commands for common actions:
@@ -533,6 +551,21 @@ model definitions can be extended and overridden through `~/.config/tau/models.j
533
551
  "args": ["--browser"],
534
552
  "env": { "TAU_DIFF_UI": "browser" }
535
553
  },
554
+ "clientTools": [
555
+ {
556
+ "name": "notify",
557
+ "defaultEnabled": true,
558
+ "description": "Show a desktop notification on the TUI machine.",
559
+ "parameters": {
560
+ "type": "object",
561
+ "properties": { "message": { "type": "string" } },
562
+ "required": ["message"],
563
+ "additionalProperties": false
564
+ },
565
+ "command": "./tools/notify",
566
+ "executionTimeoutMs": 10000
567
+ }
568
+ ],
536
569
  "subagents": {
537
570
  "defaultLaunchModels": [
538
571
  "openai/gpt-5.5:high",
@@ -568,6 +601,10 @@ model definitions can be extended and overridden through `~/.config/tau/models.j
568
601
  "accessClientId": "...",
569
602
  "accessClientSecretEnv": "NOOK_ACCESS_CLIENT_SECRET"
570
603
  },
604
+ "history": {
605
+ "endpoint": "https://history.example.com",
606
+ "apiKeyEnv": "TAU_HISTORY_API_KEY"
607
+ },
571
608
  "modelSystemNotices": {
572
609
  "openai-codex/gpt-5.5": "avoid apply_patch heredocs, use tau tools directly"
573
610
  }
@@ -588,10 +625,14 @@ the `defaultTheme` field sets the theme id to load at startup. it must be non-em
588
625
 
589
626
  `nook` configures one effective Nook target. `domain` is required. `accessClientId`, `accessClientSecret`, and `accessClientSecretEnv` are optional Cloudflare Access service-token fields; when the env var resolves, it wins over the inline secret. `tau nook setup` takes infrastructure route and Access validation inputs through `--zone-name`, `--access-team-domain`, and `--access-aud` or the `NOOK_ZONE_NAME`, `NOOK_ACCESS_TEAM_DOMAIN`, and `NOOK_ACCESS_AUD` env vars. `tau nook destroy` is an infrastructure flow that takes service-token cleanup credentials through flags or `NOOK_ACCESS_CLIENT_ID` and `NOOK_ACCESS_CLIENT_SECRET`.
590
627
 
628
+ `history` is accepted only in global config and selects the shared history service instead of machine-local queries. `endpoint` is required. The API key comes from `TAU_HISTORY_API_KEY`, `apiKeyEnv`, or `apiKey`, in that precedence order. The key stays in the host and is never exposed to generated code.
629
+
591
630
  tau ships a built-in browser diff review tool as `tau diff-tool`. `/diff` launches the configured diff tool locally from the TUI process. `diffTool` overrides the built-in fallback; `command` is required when `diffTool` is present, `args` and `env` are optional, and relative `command` paths resolve from the config level root (directory containing `.tau`, or home for the global config). set `builtInDiffTool.codeTheme` to choose the built-in diff tool's initial code theme, for example `{ "builtInDiffTool": { "codeTheme": "github-dark-dimmed" } }`. the default is `github-dark-dimmed`.
592
631
 
593
632
  supported built-in diff tool code themes are: `andromeeda`, `aurora-x`, `ayu-dark`, `ayu-mirage`, `catppuccin-frappe`, `catppuccin-macchiato`, `catppuccin-mocha`, `dark-plus`, `dracula`, `dracula-soft`, `everforest-dark`, `github-dark`, `github-dark-default`, `github-dark-dimmed`, `github-dark-high-contrast`, `gruvbox-dark-hard`, `gruvbox-dark-medium`, `gruvbox-dark-soft`, `horizon`, `horizon-bright`, `houston`, `kanagawa-dragon`, `kanagawa-wave`, `laserwave`, `material-theme`, `material-theme-darker`, `material-theme-ocean`, `material-theme-palenight`, `min-dark`, `monokai`, `night-owl`, `nord`, `one-dark-pro`, `plastic`, `poimandres`, `red`, `rose-pine`, `rose-pine-moon`, `slack-dark`, `solarized-dark`, `synthwave-84`, `tokyo-night`, `vesper`, `vitesse-black`, `vitesse-dark`.
594
633
 
634
+ `clientTools` defines command-backed model tools that execute on the TUI machine. Because these tools execute local commands when selected by the model, they are accepted only in `~/.config/tau/config.json`; project `.tau/config.json` files cannot define them. Each entry requires `name`, `defaultEnabled`, `description`, an object JSON Schema in `parameters`, and `command`, with optional `args` and positive `executionTimeoutMs`. Relative command paths resolve from home. When no project config selects tools, entries with `defaultEnabled: true` are advertised. A project `.tau/config.json` can set `enabledClientTools` to an exact allowlist of globally defined names; unknown names are ignored, an empty list disables all configured tools, and the most specific project value wins. Configured tools are available in both local `tau` and `tau attach`, and `--no-client-tools` disables them together with the built-in TUI client tools.
635
+
595
636
  the `subagents.defaultLaunchModels` field configures allowed `spawn_agent` launch overrides for the built-in `default` sub-agent. values must use `<provider>/<model>:<effort>`.
596
637
 
597
638
  `autoCompact` controls automatic session compaction and merges field-by-field across config levels. it is enabled by default with `reserveTokens: 16384` and `keepRecentTokens: 20000`. before every model subturn, Tau compares the latest successful provider-reported assistant usage from the active model plus an estimated token count for model-visible messages appended since that response against the model context window minus the reserve. when the threshold is crossed, Tau summarizes older context with at most two summary attempts, asks the compaction model to select original user messages to append verbatim inside the summary by history id, retains recent messages while middle-truncating individual textual tool and recovery results above roughly 8,192 estimated tokens, and best-effort archives the untruncated pre-compaction conversation, excluding assistant thinking, in the execution environment's OS temp directory. archivable summarized records carry history entry ids that the compaction model may cite when bulky exact details are better retrieved from the archive than copied into the summary. manual `/compact:*` commands remain summary-replacement commands and do not create these archives.
@@ -610,6 +651,41 @@ tau telegram --config-file <path>
610
651
 
611
652
  see [docs/telegram.md](docs/telegram.md) for the config schema, project selection commands, repository and composite project definitions, and GitHub cache requirements.
612
653
 
654
+ ### command client tools
655
+
656
+ Command client tools extend the standard TUI without modifying Tau. Define them only in `~/.config/tau/config.json`; Tau requires each parameter schema to be an object with root `type: "object"`, trusts the remaining schema contents, advertises the effective tools to the session host, and runs their commands on the machine where `tau` or `tau attach` is running. Every definition must set `defaultEnabled`. Without a workspace selection, only default-enabled tools are advertised.
657
+
658
+ A project or nested directory can select a different exact set without defining executable behavior:
659
+
660
+ ```json
661
+ {
662
+ "enabledClientTools": ["notify", "deploy"]
663
+ }
664
+ ```
665
+
666
+ The most specific `.tau/config.json` selection wins. Unknown names are skipped, and `enabledClientTools: []` disables every configured command client tool for that workspace.
667
+
668
+ For every call, Tau validates the arguments against the configured schema, starts the command directly without a shell, and writes one versioned JSON request to stdin:
669
+
670
+ ```json
671
+ {
672
+ "version": 1,
673
+ "sessionId": "session-id",
674
+ "callId": "call-id",
675
+ "arguments": { "message": "Build finished" }
676
+ }
677
+ ```
678
+
679
+ A successful command must exit with code zero and write exactly one JSON result to stdout:
680
+
681
+ ```json
682
+ { "content": "Notification shown." }
683
+ ```
684
+
685
+ The `content` string becomes the model-visible tool result. A nonzero exit fails the tool using stderr, falling back to stdout when stderr is empty. Tau runs the command from the TUI's current working directory with the TUI process environment unchanged, limits total output to 1 MiB, and terminates the command's process group on cancellation, terminal transport failure, timeout, or excess output. Process-group termination escalates to `SIGKILL` after two seconds even if the command leader exits first. `executionTimeoutMs` defaults to 60 seconds.
686
+
687
+ Configured names must be unique and cannot replace built-in TUI or host tools. Only one observing client may advertise a given name for a session. `--no-client-tools` disables command client tools together with `diff_review` and `prefill_input`.
688
+
613
689
  ### diff review tool
614
690
 
615
691
  tau ships `tau diff-tool`, a built-in browser diff review tool and reference implementation of the diff-review tool protocol. Configure `builtInDiffTool.codeTheme` to choose the built-in tool's initial code theme; the default is `github-dark-dimmed`.
@@ -672,7 +748,7 @@ optional frontmatter fields:
672
748
  - `allowedReasoningLevels`: list of reasoning levels shown in the ui
673
749
  - `skills`: list of enabled skill names (matched by `name` in skill frontmatter), or `"*"` to enable all discovered skills. if omitted, custom personas default to `"*"`. set `skills: []` to disable skills completely.
674
750
  - `tools`: optional list of persona-selected host tools. `nook` additionally requires effective Nook configuration before it becomes available.
675
- - `subagents`: optional map of subagent definitions. the built-in `default` sub-agent is implicit unless `default: false` is provided. custom subagents must include `systemPrompt` and may include `description`, `provider`+`model`, `reasoning`, `serviceTier`, `tools`, and `launchModels` (when specifying a model, `provider` and `model` must be provided together). names must be lowercase with dashes (max 64 chars). `launchModels` entries must use `<provider>/<model>:<effort>` and are used to allowlist launch-time `spawn_agent` overrides. example:
751
+ - `subagents`: optional map of subagent definitions. the built-in `default` sub-agent is implicit unless `default: false` is provided. custom subagents must include `systemPrompt` and may include `description`, `provider`+`model`, `reasoning`, `serviceTier`, `tools`, and `launchModels` (when specifying a model, `provider` and `model` must be provided together). subagent `tools` accepts `bash`, `write`, `edit`, `view_image`, `web`, and `history`; when omitted, eligible main-persona tools are inherited. names must be lowercase with dashes (max 64 chars). `launchModels` entries must use `<provider>/<model>:<effort>` and are used to allowlist launch-time `spawn_agent` overrides. example:
676
752
  ```yaml
677
753
  subagents:
678
754
  default: false
@@ -688,7 +764,7 @@ optional frontmatter fields:
688
764
  - openai/gpt-5.5:high
689
765
  - anthropic/claude-haiku-4-5:medium
690
766
  ```
691
- - `tools`: list of tool names to enable for this persona. allowed: `bash`, `write`, `edit`, `view_image`, `web`, `nook`, `spawn_agent`, `send_input_to_agent`, `wait_for_agents`, `list_agents`, `interrupt_agent`. if omitted, defaults to `bash`, `write`, `edit`, `view_image`, `web`, `nook` (and subagent tools when subagents are enabled). `nook` is available only when effective Nook configuration is also present.
767
+ - `tools`: list of tool names to enable for this persona. allowed: `bash`, `write`, `edit`, `view_image`, `web`, `nook`, `history`, `spawn_agent`, `send_input_to_agent`, `wait_for_agents`, `list_agents`, `interrupt_agent`. if omitted, defaults to `bash`, `write`, `edit`, `view_image`, `web`, `nook`, `history` (and subagent tools when subagents are enabled). `nook` is available only when effective Nook configuration is also present.
692
768
 
693
769
  the markdown body becomes the system prompt.
694
770
 
@@ -302,6 +302,28 @@ export class AgentRuntime {
302
302
  }
303
303
  return true;
304
304
  }
305
+ async retryFromHistoryEntryId(historyEntryId) {
306
+ this.assertActive();
307
+ if (this.status !== "idle") {
308
+ throw new Error("cannot retry a running agent");
309
+ }
310
+ const historyIndex = this.historyEntries.findIndex((entry) => entry.id === historyEntryId);
311
+ const entry = this.historyEntries[historyIndex];
312
+ if (historyIndex < 0 || entry?.message.role !== "user")
313
+ return false;
314
+ const removedEntryIds = this.historyEntries.slice(historyIndex + 1).map((item) => item.id);
315
+ if (removedEntryIds.length === 0)
316
+ return true;
317
+ this.replaceHistoryEntries(this.historyEntries.slice(0, historyIndex + 1));
318
+ await this.deliver({
319
+ type: "history_rewound",
320
+ historyEntryId: entry.id,
321
+ text: this.extractRewindUserText(entry.message),
322
+ removedEntryIds,
323
+ revision: this.revision,
324
+ });
325
+ return true;
326
+ }
305
327
  async rewindToHistoryEntryId(historyEntryId) {
306
328
  this.assertActive();
307
329
  if (this.status !== "idle") {
@@ -1 +1 @@
1
- {"version":3,"file":"agent_runtime.js","sourceRoot":"","sources":["../../../src/core/agent/agent_runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent_runtime.js","sourceRoot":"","sources":["../../../src/core/agent/agent_runtime.ts"],"names":[],"mappings":"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"}
@@ -189,6 +189,16 @@ export async function runListCommand(options) {
189
189
  const plan = account.plan ? `[${account.plan}]` : undefined;
190
190
  const headerSegments = [` ${marker}`, label, plan].filter(Boolean);
191
191
  log(headerSegments.join(" "));
192
+ if (account.credentialRefreshStatus === "failed") {
193
+ log(chalk.red(account.credentialExpired
194
+ ? ' credentials expired; refresh failed, run "tau auth login codex" to re-authenticate'
195
+ : " credential refresh failed; stored credentials have not expired"));
196
+ }
197
+ if (account.usageRefreshStatus === "failed") {
198
+ log(chalk.yellow(account.usage
199
+ ? " usage refresh failed; showing stale cached usage"
200
+ : " usage refresh failed; usage unavailable"));
201
+ }
192
202
  if (account.usage) {
193
203
  for (const window of account.usage.windows) {
194
204
  const labelText = formatWindowLabel(window.windowSeconds) ?? window.name;
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/core/auth/cli.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACnF,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAoBhD,MAAM,CAAC,MAAM,yBAAyB,GAAwB;IAC5D,EAAE,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,iCAAiC,EAAE;CACjF,CAAC;AAEF,MAAM,gBAAgB,GAAG,mBAAmB,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC;AAC1D,IAAI,CAAC,gBAAgB,EAAE,CAAC;IACtB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,sBAAsB,GAA8C;IACxE,cAAc,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC;CACrE,CAAC;AAEF,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACjE,MAAM,SAAS,GAAG,EAAE,CAAC;AAErB,MAAM,UAAU,gBAAgB,CAAC,IAAc;IAC7C,MAAM,CAAC,UAAU,EAAE,GAAG,cAAc,CAAC,GAAG,IAAI,CAAC;IAE7C,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACnD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,6BAA6B,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACrE,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,UAAU,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,CAAC,WAAW,EAAE,GAAG,SAAS,CAAC,GAAG,cAAc,CAAC;QACnD,IAAI,WAAW,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,8BAA8B,WAAW,GAAG,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC;gBACpB,CAAC,CAAC,8BAA8B,KAAK,GAAG;gBACxC,CAAC,CAAC,mCAAmC,KAAK,GAAG,CAChD,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACpE,CAAC;IAED,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;gBACnB,CAAC,CAAC,6BAA6B,KAAK,GAAG;gBACvC,CAAC,CAAC,kCAAkC,KAAK,GAAG,CAC/C,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC5B,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,WAA+B,CAAC;QACpC,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACrE,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;YACpC,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;QAED,IAAI,SAA6B,CAAC;QAClC,OAAO,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAE,CAAC;YACxC,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;gBAC7B,MAAM,IAAI,KAAK,CACb,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;oBACtB,CAAC,CAAC,+BAA+B,QAAQ,GAAG;oBAC5C,CAAC,CAAC,oCAAoC,QAAQ,GAAG,CACpD,CAAC;YACJ,CAAC;YACD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC9D,CAAC;YAED,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACxC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;YACtE,CAAC;YACD,SAAS,GAAG,KAAK,CAAC;YAClB,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;QAED,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QACD,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvC,SAAS;SACV,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,4BAA4B,UAAU,IAAI,EAAE,GAAG,CAAC,CAAC;AACnE,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa;IACtC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACpC,CAAC;AAED,SAAS,kBAAkB,CAAC,SAA8B;IACxD,OAAO,SAAS;SACb,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,QAAQ,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,GAAG,CAAC;SACjF,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,MAAoB,EACpB,GAAY,EACZ,SAA8B;IAE9B,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAC5B,GAAG,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;IACnC,GAAG,CAAC,EAAE,CAAC,CAAC;IACR,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC;QAC7B,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,mBAAmB,SAAS,CAAC,MAAM,IAAI;KACjD,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACjD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QACtE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,SAAS,CAAC,KAAK,CAAE,CAAC,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,eAAe,CACtB,WAA+B,EAC/B,SAA8B;IAE9B,IAAI,CAAC,WAAW;QAAE,OAAO,SAAS,CAAC;IACnC,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAC7B,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,UAAU,IAAI,QAAQ,CAAC,KAAK,KAAK,UAAU,CAC1E,EAAE,EAAE,CAAC;IACN,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnE,MAAM,IAAI,KAAK,CAAC,qBAAqB,WAAW,iBAAiB,SAAS,EAAE,CAAC,CAAC;IAChF,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAQrC;IACC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,yBAAyB,CAAC;IAEjE,IAAI,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC/D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,QAAQ,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,QAAQ,GAAG,EAAE,GAAG,sBAAsB,EAAE,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IACzE,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEnC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,iBAAiB,SAAS,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,GAAG,CAAC,iBAAiB,QAAQ,KAAK,CAAC,CAAC;IAEpC,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC;QAChC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;YAChB,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC9B,GAAG,CAAC,EAAE,CAAC,CAAC;gBACR,GAAG,CAAC,oDAAoD,CAAC,CAAC;gBAC1D,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACf,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;oBACvB,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBAC1B,CAAC;gBACD,GAAG,CAAC,mFAAmF,CAAC,CAAC;gBACzF,GAAG,CAAC,EAAE,CAAC,CAAC;gBACR,OAAO;YACT,CAAC;YAED,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;gBACjC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACR,GAAG,CAAC,gCAAgC,CAAC,CAAC;gBACtC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;gBAC3B,GAAG,CAAC,eAAe,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACrC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACR,OAAO;YACT,CAAC;YAED,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;KACF,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzD,WAAW,CAAC,eAAe,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IACnD,GAAG,CAAC,wBAAwB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAQtC;IACC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,yBAAyB,CAAC;IAEjE,IAAI,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC/D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,QAAQ,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzD,WAAW,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACvD,GAAG,CAAC,mBAAmB,OAAO,CAAC,SAAS,QAAQ,QAAQ,SAAS,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;AACvF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAGpC;IACC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,oBAAoB,EAAE,CAAC;IAE3D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,kCAAkC,CAAC,CAAC;QACxC,OAAO;IACT,CAAC;IAED,KAAK,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;QAC5D,IAAI,aAAa,GAAG,CAAC;YAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/B,GAAG,CAAC,GAAG,QAAQ,CAAC,aAAa,KAAK,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC;QAC1D,MAAM,UAAU,GAAG,QAAQ,CAAC,iBAAiB,CAAC;QAC9C,KAAK,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;YAClE,MAAM,UAAU,GAAG,UAAU,KAAK,OAAO,CAAC,SAAS,CAAC;YACpD,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YACpD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,SAAS,CAAC;YACjD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,MAAM,cAAc,GAAG,CAAC,KAAK,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YACpE,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9B,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;oBAC3C,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC;oBACzE,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;oBACvD,MAAM,WAAW,GAAG,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC;oBACxD,MAAM,GAAG,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;oBAC1C,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC5C,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC1D,MAAM,SAAS,GAAG,KAAK;wBACrB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,KAAK,aAAa,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;wBAC3E,CAAC,CAAC,SAAS,CAAC;oBACd,MAAM,YAAY,GAAG,CAAC,OAAO,SAAS,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBACvF,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC9B,CAAC;YACH,CAAC;YACD,IAAI,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChD,GAAG,CAAC,EAAE,CAAC,CAAC;YACV,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,aAAqB;IAC9C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,aAAa,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC5E,IAAI,aAAa,GAAG,KAAK,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC;IACjD,CAAC;IACD,IAAI,aAAa,GAAG,IAAI,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC;IAChD,CAAC;IACD,IAAI,aAAa,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;QAC7B,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC;IAC9C,CAAC;IACD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;AACzC,CAAC;AAED,SAAS,aAAa,CAAC,YAAoB;IACzC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1E,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAC3C,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAAE,OAAO,SAAS,CAAC;IACnD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACpD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAC3D,OAAO,GAAG,GAAG,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,IAAI,OAAO,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,mBAAmB,CAAC,YAAoB;IAC/C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACzB,MAAM,OAAO,GAAG,YAAY,GAAG,IAAI,GAAG,KAAK,CAAC;IAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IAChD,IAAI,OAAO,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IAE/B,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,EAAE,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,UAAU,GAAG,EAAE,CAAC;IAC9B,MAAM,OAAO,GAAG,YAAY,GAAG,EAAE,CAAC;IAElC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,SAAS,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC;IAC/C,IAAI,SAAS,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;IACxD,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;IAC1B,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACjC,CAAC;AAED,SAAS,kBAAkB,CAAC,SAAiB;IAC3C,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,OAAO,GAAG,EAAE,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,OAAO,GAAG,MAAM,GAAG,IAAI,EAAE,CAAC;IAC5B,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IACxD,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,gBAAgB,CAAC,WAAmB;IAC3C,MAAM,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,CAAC;IAC7B,OAAO,YAAY,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,YAAY,CAAC,KAAa;IACjC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IACtC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../src/core/auth/cli.ts"],"names":[],"mappings":"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"}