Add worktrees, per-hunk review, effort per message, regenerate, voice input

- Isolated git worktree per session (create, status, merge, discard)
- Permission card: accept file-edit hunks individually; agent learns what was rejected
- Reasoning effort per message; regenerate the last answer with another model/effort
- Voice input via the Web Speech API
- Folder-up button in the file browser; ssh, rsync and mc in the image

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Richard ZinkandClaude Opus 5.5 committed 2026-11-08 22:29:58 +01:00
1 parent df1924b0a1
commit fca1c41087
22 files changed
+821 -32

No files matched your search

+35
View File
@@ -334,6 +334,41 @@ export const en = {
"jobs.status.done": "done",
"jobs.status.timeout": "timed out",
"jobs.status.error": "error",
"chat.more": "More",
"worktree.title": "Isolated git worktree",
"worktree.hint": "The agent works on its own branch; your working copy on “{base}” stays untouched until you merge.",
"worktree.dirty": "{n} uncommitted files",
"worktree.commits": "{n} commits",
"worktree.merge": "Merge into {base}",
"worktree.remove": "Discard",
"worktree.mergeConfirm": "Commit open changes and merge {branch} into {base}?",
"worktree.removeConfirm": "Discard the worktree and branch {branch}? Unmerged changes are lost.",
"worktree.merged": "Merged into {base}",
"worktree.removed": "Worktree discarded",
"worktree.created": "The session now works in its own worktree",
"worktree.create": "Isolated worktree",
"worktree.busy": "Wait until the agent is done.",
"worktree.isolate": "Work in an isolated git worktree",
"worktree.isolateHint": "own branch, merge when done",
"worktree.creating": "Creating worktree…",
"files.up": "One folder up",
"permission.hunksHint": "{n} changes – untick the ones you don't want.",
"permission.applySelected": "Apply selected ({k}/{n})",
"effort.title": "Thinking effort for this message",
"effort.auto": "Effort: model default",
"effort.autoShort": "Effort: auto",
"effort.low": "Effort: low",
"effort.medium": "Effort: medium",
"effort.high": "Effort: high",
"effort.max": "Effort: max",
"regen.button": "Regenerate",
"regen.title": "Redo this answer",
"regen.hint": "Removes this answer (and restores files it changed), then runs your last message again – with the model and effort chosen here.",
"regen.go": "Regenerate",
"voice.start": "Dictate (speech recognition of your browser)",
"voice.stop": "Stop dictation",
"voice.denied": "Microphone access was denied – allow it in the browser settings.",
"voice.error": "Speech recognition failed",
"new.title": "New session",
"new.directory": "Project directory",
"new.up": "Up",