@markusylisiurunen/tau 0.3.76 → 0.3.77

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 (124) hide show
  1. package/dist/core/cli.js +0 -3
  2. package/dist/core/cli.js.map +1 -1
  3. package/dist/core/config/builtin_themes.js +0 -30
  4. package/dist/core/config/builtin_themes.js.map +1 -1
  5. package/dist/core/config/content_loader.js +10 -115
  6. package/dist/core/config/content_loader.js.map +1 -1
  7. package/dist/core/config/index.js +1 -1
  8. package/dist/core/config/index.js.map +1 -1
  9. package/dist/core/config/paths.js +0 -1
  10. package/dist/core/config/paths.js.map +1 -1
  11. package/dist/core/config/runtime.js +1 -1
  12. package/dist/core/config/runtime.js.map +1 -1
  13. package/dist/core/config/runtime_config_snapshot.js +0 -1
  14. package/dist/core/config/runtime_config_snapshot.js.map +1 -1
  15. package/dist/core/config/schema.js +8 -84
  16. package/dist/core/config/schema.js.map +1 -1
  17. package/dist/core/config/skills_loader.js +0 -8
  18. package/dist/core/config/skills_loader.js.map +1 -1
  19. package/dist/core/config/theme_variants.js.map +1 -1
  20. package/dist/core/config/virtual_bundle.js +1 -4
  21. package/dist/core/config/virtual_bundle.js.map +1 -1
  22. package/dist/core/debug.js +0 -2
  23. package/dist/core/debug.js.map +1 -1
  24. package/dist/core/index.js +0 -1
  25. package/dist/core/index.js.map +1 -1
  26. package/dist/core/models/catalog.js +2 -3
  27. package/dist/core/models/catalog.js.map +1 -1
  28. package/dist/core/personas.js +3 -81
  29. package/dist/core/personas.js.map +1 -1
  30. package/dist/core/static/index.js +0 -3
  31. package/dist/core/static/index.js.map +1 -1
  32. package/dist/core/static/tau_docs/config-reference.md +17 -59
  33. package/dist/core/static/tau_docs/configuration.md +5 -10
  34. package/dist/core/static/tau_docs/credentials.md +9 -28
  35. package/dist/core/static/tau_docs/image-generation.md +1 -1
  36. package/dist/core/static/tau_docs/node-sdk.md +1 -1
  37. package/dist/core/static/tau_docs/ownership-and-scope.md +3 -3
  38. package/dist/core/static/tau_docs/pdf-unpacking.md +1 -1
  39. package/dist/core/static/tau_docs/personas.md +3 -1
  40. package/dist/core/static/tau_docs/prompts-and-project-context.md +0 -10
  41. package/dist/core/static/tau_docs/remote-sessions.md +5 -21
  42. package/dist/core/static/tau_docs/session-protocol-methods.md +1 -7
  43. package/dist/core/static/tau_docs/skills.md +0 -22
  44. package/dist/core/static/tau_docs/speech-generation.md +1 -1
  45. package/dist/core/static/tau_docs/telegram.md +4 -9
  46. package/dist/core/static/tau_docs/troubleshooting.md +15 -15
  47. package/dist/core/static/tau_docs/tui.md +9 -24
  48. package/dist/core/telegram/adapter.js +17 -20
  49. package/dist/core/telegram/adapter.js.map +1 -1
  50. package/dist/core/telegram/cli.js +4 -5
  51. package/dist/core/telegram/cli.js.map +1 -1
  52. package/dist/core/telegram/runtime.js +3 -2
  53. package/dist/core/telegram/runtime.js.map +1 -1
  54. package/dist/core/telegram/tts.js +11 -9
  55. package/dist/core/telegram/tts.js.map +1 -1
  56. package/dist/core/tool/image_generate.js +37 -14
  57. package/dist/core/tool/image_generate.js.map +1 -1
  58. package/dist/core/tool/media.js +84 -4
  59. package/dist/core/tool/media.js.map +1 -1
  60. package/dist/core/tool/pdf_unpack.js +17 -10
  61. package/dist/core/tool/pdf_unpack.js.map +1 -1
  62. package/dist/core/tool/speech_generate.js +30 -13
  63. package/dist/core/tool/speech_generate.js.map +1 -1
  64. package/dist/core/utils/gemini_transcription.js +5 -95
  65. package/dist/core/utils/gemini_transcription.js.map +1 -1
  66. package/dist/core/utils/{gemini_speech.js → speech.js} +167 -428
  67. package/dist/core/utils/speech.js.map +1 -0
  68. package/dist/core/utils/speech_to_text.js +24 -52
  69. package/dist/core/utils/speech_to_text.js.map +1 -1
  70. package/dist/core/utils/speech_to_text_keywords.js +65 -0
  71. package/dist/core/utils/speech_to_text_keywords.js.map +1 -1
  72. package/dist/core/version.js +1 -1
  73. package/dist/execution/fly_sprite_execution_environment.js +4 -2
  74. package/dist/execution/fly_sprite_execution_environment.js.map +1 -1
  75. package/dist/main.js +6 -78
  76. package/dist/main.js.map +1 -1
  77. package/dist/protocol/index.d.ts +1 -1
  78. package/dist/protocol/index.js.map +1 -1
  79. package/dist/protocol/session_protocol.d.ts +2 -15
  80. package/dist/protocol/session_protocol.js +1 -20
  81. package/dist/protocol/session_protocol.js.map +1 -1
  82. package/dist/sdk/local_client.js +0 -6
  83. package/dist/sdk/local_client.js.map +1 -1
  84. package/dist/tui/chat_view.js +1 -3
  85. package/dist/tui/chat_view.js.map +1 -1
  86. package/dist/tui/listen_capture.js +7 -26
  87. package/dist/tui/listen_capture.js.map +1 -1
  88. package/dist/tui/session_chat_app.js +3 -19
  89. package/dist/tui/session_chat_app.js.map +1 -1
  90. package/dist/tui/session_chat_controller.js +58 -29
  91. package/dist/tui/session_chat_controller.js.map +1 -1
  92. package/dist/tui/speech_playback.js +10 -8
  93. package/dist/tui/speech_playback.js.map +1 -1
  94. package/dist/tui/ui/pending_messages.js +2 -1
  95. package/dist/tui/ui/pending_messages.js.map +1 -1
  96. package/package.json +3 -3
  97. package/dist/core/install/cli.js +0 -260
  98. package/dist/core/install/cli.js.map +0 -1
  99. package/dist/core/models/tau_model_overrides.js +0 -4
  100. package/dist/core/models/tau_model_overrides.js.map +0 -1
  101. package/dist/core/utils/gemini_speech.js.map +0 -1
  102. package/dist/core/utils/openai_transcription.js +0 -594
  103. package/dist/core/utils/openai_transcription.js.map +0 -1
  104. package/dist/execution/cloudflare_sandbox_execution_environment.js +0 -563
  105. package/dist/execution/cloudflare_sandbox_execution_environment.js.map +0 -1
  106. package/dist/execution/sandbox_tool_helpers.js +0 -30
  107. package/dist/execution/sandbox_tool_helpers.js.map +0 -1
  108. package/dist/starter/prompts/approval-review-branch.md +0 -7
  109. package/dist/starter/prompts/approval-review-current-changes.md +0 -7
  110. package/dist/starter/prompts/approval-review-last-commit.md +0 -7
  111. package/dist/starter/prompts/commit-all.md +0 -9
  112. package/dist/starter/prompts/commit-staged.md +0 -9
  113. package/dist/starter/prompts/guided-review-branch.md +0 -7
  114. package/dist/starter/prompts/guided-review-current-changes.md +0 -7
  115. package/dist/starter/prompts/guided-review-last-commit.md +0 -7
  116. package/dist/starter/prompts/plan.md +0 -7
  117. package/dist/starter/prompts/review-branch.md +0 -7
  118. package/dist/starter/prompts/review-current-changes.md +0 -7
  119. package/dist/starter/prompts/review-last-commit.md +0 -7
  120. package/dist/starter/prompts/rewrite-prompt.md +0 -89
  121. package/dist/starter/skills/approval-review/SKILL.md +0 -219
  122. package/dist/starter/skills/code-review/SKILL.md +0 -102
  123. package/dist/starter/skills/guided-review/SKILL.md +0 -152
  124. package/dist/starter/skills/plan/SKILL.md +0 -53
@@ -1,152 +0,0 @@
1
- ---
2
- name: "guided-review"
3
- description: "Split large diffs or change sets into natural review chunks, then guide the user through focused diff_review sessions. Trigger: explicit."
4
- ---
5
-
6
- ## Goal
7
-
8
- Turn an overwhelming review scope into a two-phase guided review:
9
-
10
- 1. An orientation brief that explains the change and prepares the reviewer.
11
- 2. A sequence of focused diff reviews, run in the review mode the user chooses.
12
-
13
- Each review chunk should be small enough to understand in one sitting and large enough to preserve the relevant context.
14
-
15
- Use this skill only when the user explicitly asks for guided review, to split a diff into reviewable pieces, or to walk through changes step by step.
16
-
17
- ## Determine the review scope
18
-
19
- Infer the scope from the request. If no scope is given, default to uncommitted changes.
20
-
21
- Use these defaults:
22
-
23
- - Current changes or uncommitted changes: inspect `git status --short` and `git diff HEAD`.
24
- - Current branch: inspect `git diff main...HEAD`.
25
- - Most recent commit: inspect `git show HEAD`.
26
- - A named branch, commit, range, or path: inspect that exact scope.
27
-
28
- If the request contains conflicting scope signals, ask one clarifying question before doing review work.
29
-
30
- ## Determine the review mode
31
-
32
- Phase 2 must run in one explicit mode. Honor the mode if the user already specified it. If the mode is not specified, ask the user to choose at the end of phase 1, before opening the first diff review.
33
-
34
- Supported modes:
35
-
36
- - `collect-only`: collect the user's review comments without editing files. Keep a running record of findings, open questions, and follow-up items for a final synthesis after all chunks are reviewed. Do not implement anything unless the user later asks.
37
- - `apply-as-you-go`: address review comments immediately after each chunk, then have the user review the resulting net changes before moving to the next chunk.
38
-
39
- Treat natural-language equivalents like "regular review," "collect comments," or "don't make changes" as `collect-only`. Treat requests like "make the changes right away" or "address comments as we go" as `apply-as-you-go`.
40
-
41
- Do not infer `apply-as-you-go` just because feedback is actionable. If the user's intent is ambiguous, default to asking rather than editing.
42
-
43
- ## Understand intent before phase 1
44
-
45
- Do not start by mechanically grouping files. Build enough understanding of what the change is trying to accomplish so the orientation and chunks reflect the author's intent.
46
-
47
- Start with the full diff or change summary, then read surrounding code, relevant tests, types, call sites, and related patterns as needed. Identify the main behavior changes, supporting refactors, dependency order, and risk areas. Trace how changed files interact so each chunk preserves the context a reviewer needs.
48
-
49
- Pay special attention to changed boundaries and invocation surfaces: commands, routes, handlers, events, CLIs, schemas, SDKs, typed clients, config, feature flags, background jobs, migrations, generated artifacts, or docs consumed by machines. Do not assume a wrapper or declaration change is obvious from the implementation chunk; if it changes how another component calls the feature, it belongs in the orientation.
50
-
51
- Also trace any trust or safety model that is central to the change. For authentication, authorization, tokens, secrets, external callbacks, file access, persistence boundaries, validation, rate limits, idempotency, concurrency, or data retention, understand who can do what, how access is granted and revoked, and what failure modes the reviewer should keep in mind.
52
-
53
- Only create the orientation brief and chunk plan once you can explain the overall purpose of the change, the role each major file group plays, the caller-facing surfaces that changed, and the core safety or lifecycle assumptions. If the intent is still unclear after exploration, say what is unclear and ask a focused question before launching reviews.
54
-
55
- ## Phase 1: write the orientation brief
56
-
57
- Phase 1 prepares the reviewer. Do not call `diff_review` during phase 1.
58
-
59
- Write a concise reviewer briefing that tells the story of the change and gives the reviewer the mental model they need before looking at code. It should read like a well-written narrative, not a checklist or a file-by-file inventory. Use headings to make it skimmable. Do not paste large diffs or long file lists.
60
-
61
- Choose the right medium for each piece of information. Use prose for intent, motivation, reasoning, and narrative flow. Use small code blocks to show concrete contracts and mechanics: minimal real syntax for schema or config changes, type signatures, JSON shapes, command names and payloads, or stripped-down control flow. Prefer the form closest to the source contract over an invented table when the source form is compact enough. Showing is often faster to absorb than the equivalent explanation in prose. Use bullets for compact enumerations like changed commands, entry points, risk items, field additions, or chunk names. Mix these freely; the goal is that every piece of information appears in the form that makes it fastest to understand.
62
-
63
- A useful structure is: start with the problem or intent, then show the main mechanics and lifecycle, then make the caller-facing contract changes concrete, then call out review focus areas and the chunk map. The chunk map can be a compact list when that is the clearest format.
64
-
65
- When a change adds or modifies named entry points, include a concise list of those entry points with one short explanation each. This can include commands, routes, exported functions, SDK methods, config keys, event names, jobs, docs, or any other surface a caller or another component must know about. Keep it selective and useful rather than exhaustive boilerplate.
66
-
67
- The brief should cover:
68
-
69
- - The overall intent and story of the change.
70
- - Important changes in mechanics, such as data flow, state transitions, lifecycle behavior, retries, ordering, or failure handling.
71
- - Any contract or shape changes, such as APIs, commands, response types, schemas, storage layouts, SDK/client declarations, config formats, or machine-consumed docs.
72
- - The trust and safety model when relevant: authentication, authorization, token or secret handling, expiry or revocation, validation, cross-tenant isolation, access to uploaded/downloaded data, external calls, and persistence assumptions.
73
- - The most important behavior changes and user-visible effects.
74
- - The riskiest areas or assumptions the reviewer should keep in mind.
75
- - The chunk plan: each chunk's label, scope, relative importance, and why it belongs together.
76
- - Any low-value noise you plan to skip or only summarize, such as generated output, mechanical formatting, lockfile churn, or repetitive renames.
77
-
78
- End phase 1 by pausing. If the review mode is unknown, ask the user to choose `collect-only` or `apply-as-you-go`. If the mode is known, ask whether to start phase 2 in that mode. Do not open the first chunk unless the user explicitly tells you to start phase 2.
79
-
80
- ## Build a chunk plan
81
-
82
- Group review chunks by coherent purpose. Prefer natural boundaries over equal sizes.
83
-
84
- Good chunk boundaries include:
85
-
86
- - One feature or behavior change and its tests.
87
- - One subsystem or package.
88
- - A migration or schema change with the code that consumes it.
89
- - A UI surface and its state/model changes.
90
- - Documentation or configuration changes that explain or enable the same behavior.
91
- - A risky cross-cutting change isolated from low-risk mechanical edits.
92
-
93
- Not every changed line deserves the same review attention. Rank chunks by review value and call out which ones are highest-risk or most important. You can skip or briefly summarize low-value noise as long as doing so does not hide meaningful net behavior changes.
94
-
95
- Avoid these mistakes:
96
-
97
- - Do not split implementation from its tests when they need to be reviewed together.
98
- - Do not group unrelated files just because they are small.
99
- - Do not create chunks so tiny that the user loses context.
100
- - Do not hide risky files inside a large miscellaneous chunk.
101
- - Do not force the user through noisy or low-value chunks when a summary is enough.
102
-
103
- ## Phase 2: launch focused diff reviews
104
-
105
- Use the `diff_review` tool for each chunk when it is available.
106
-
107
- Prefer `source: "git_diff"` when a chunk can be represented cleanly with `git diff` arguments, especially path-limited scopes such as `["main...HEAD", "--", "src/foo.ts", "test/foo.test.ts"]` or `["--", "src/foo.ts"]`.
108
-
109
- Use `source: "patch_files"` only when path-limited `git diff` is not precise enough, such as selected hunks, hand-curated subsets, or multiple custom patches. Patch files must contain git unified diff sections with `diff --git` headers. If the available tools cannot write patch files, explain the limitation and use a broader `git_diff` chunk.
110
-
111
- ## Required preamble before each review
112
-
113
- Immediately before every `diff_review` call, write a short user-facing preamble that orients the user for the chunk they are about to review. Keep it concise, but make sure the user has enough context before the review opens.
114
-
115
- The preamble must state:
116
-
117
- - Which chunk is being reviewed and how important it is.
118
- - What the chunk is intended to accomplish in the broader change.
119
- - Why this scope is coherent and what context connects the files or hunks.
120
- - What the user should focus on while reviewing.
121
-
122
- Example:
123
-
124
- "Next I want you to review the session-runner chunk: `src/core/session/runner.ts` plus its focused tests. This is a high-value chunk because it changes the handoff point for phased tool UI events, so it controls whether progress events can interleave safely with final tool results and abort handling. Focus on whether the runner drains intermediate UI updates correctly without losing the final result."
125
-
126
- Then call `diff_review` for exactly that chunk.
127
-
128
- ## Between chunks
129
-
130
- After each review returns, inspect the feedback before moving on. Keep the review mode explicit and do not start the next chunk until the current chunk is complete, deferred, or explicitly skipped by the user.
131
-
132
- In `collect-only` mode:
133
-
134
- - Do not edit files.
135
- - Record the comments, findings, and open questions for a final synthesis after all chunks are reviewed.
136
- - Do not echo or summarize the user's feedback chunk-by-chunk unless an ambiguity blocks the next review.
137
- - Between chunks, use only a terse transition and continue according to the agreed flow. Ask before continuing only when the user requested pauses or the feedback raises a blocking question.
138
-
139
- At the end of `collect-only` mode, write a final review overview that draws the comments together across all chunks. Group related comments by theme, subsystem, or severity; call out duplicates, contradictions, open questions, and likely next actions. Do not just concatenate per-chunk notes.
140
-
141
- In `apply-as-you-go` mode:
142
-
143
- - Address clear review comments immediately.
144
- - Ask a focused question before editing when feedback is ambiguous or sounds like discussion rather than a requested change.
145
- - Run the smallest useful checks for the affected code when practical.
146
- - Re-check the affected net diff after editing.
147
- - Present the fix summary and have the user review the updated changes before moving on. Prefer a follow-up `diff_review` for the current chunk or a focused patch containing the fix.
148
- - Repeat this loop until the user says the chunk is complete, explicitly defers remaining feedback, or asks to skip the follow-up review.
149
-
150
- Never leave code changes unreviewed. Any file you edit while addressing feedback must be included in a follow-up review or explicitly deferred by the user before you launch the next chunk. If a fix touches files planned for a later chunk, update the chunk plan and tell the user how the scope changed.
151
-
152
- Keep the sequence explicit. Tell the user which chunks are complete, which were skipped or summarized as low-value noise, and which chunks remain. In `apply-as-you-go` mode, also state which feedback was addressed before asking for the required follow-up review.
@@ -1,53 +0,0 @@
1
- ---
2
- name: "plan"
3
- description: "Create implementation plans in two phases: clarify requirements first, then produce a concrete step-by-step plan without writing code. Trigger: explicit."
4
- ---
5
-
6
- Produce implementation plans, not implementations. Explore, ask questions, and document a clear path forward, then stop.
7
-
8
- ## How this works
9
-
10
- This task has two phases with a hard boundary between them:
11
-
12
- 1. **Clarify**: Understand the request fully before planning. Explore the codebase to resolve ambiguity on your own when possible. Only ask questions for things you cannot determine from the code. Do not proceed until the user confirms you have it right.
13
- 2. **Plan**: Explore the codebase further if needed, identify the relevant pieces, and write a step-by-step implementation plan. Then stop.
14
-
15
- You must complete Phase 1 before starting Phase 2. You must stop after Phase 2. Do not write code. Do not begin implementing.
16
-
17
- ## Phase 1: Clarify the request
18
-
19
- Read the request below. Explore the codebase to answer your own questions when the code can provide clarity. Only ask the user about things you cannot determine from the code itself.
20
-
21
- If the request is unambiguous (or becomes clear after exploring the code), summarize your understanding in two to three sentences and ask the user to confirm.
22
-
23
- If you must ask questions, keep them minimal, and focus only on decisions that genuinely require user input. Number questions from 1 to n.
24
-
25
- Do not guess at requirements. Do not fill gaps with assumptions. But do use the codebase to reduce what you need to ask.
26
-
27
- ## Phase 2: Write the implementation plan
28
-
29
- Once the user confirms your understanding, explore the codebase and produce a plan with exactly these sections:
30
-
31
- ### Summary
32
-
33
- One paragraph: what is being built and why.
34
-
35
- ### Background
36
-
37
- The context a developer would need: relevant existing behavior, constraints, edge cases, and dependencies.
38
-
39
- ### Plan
40
-
41
- Numbered steps describing what to change and where. Each step should be concrete enough that a developer could execute it without re-reading the original request. Reference specific files, functions, or patterns when you know them.
42
-
43
- ### Relevant files
44
-
45
- A list of files and code sections involved, with a one-line note on each file's role. If you found none, say so.
46
-
47
- ## Writing style
48
-
49
- Write the plan as a standalone document, not as a conversation. Use imperative voice ("Add a validation check to...") or neutral third person ("The handler should validate..."). Avoid first person ("I will add..."). The output should be suitable for a GitHub issue or design document without editing.
50
-
51
- ## When you are done
52
-
53
- End your response after the plan. Do not offer to implement it. Do not write code unless the user explicitly asks in a follow-up message.