Adds a built-in terminal dock that runs a real pseudo-terminal per repository tab.
- Backend: new src-tauri/src/terminal.rs implements TerminalState and Tauri commands
terminal_open, terminal_write, terminal_resize and terminal_close using the
portable-pty crate. Terminal output is emitted via "terminal:data" and exits
via "terminal:exit". Includes unit tests for UTF-8 chunk handling. Cargo.toml
updated to depend on portable-pty and main.rs registers the state/commands.
- Frontend: App.svelte/UI and app.css updated to show a resizable terminal dock,
toggleable with Ctrl+` and persisted open/height state. TerminalPanel.svelte is
lazy-loaded per repo tab (frontend provides session ids like repo:<path>).
package.json adds @xterm/xterm and @xterm/addon-fit for the frontend terminal
surface.
- Docs: CHANGELOG.md notes the new embedded terminal feature.
Behavior: each repository tab has its own PTY-backed shell started in the repo
cwd; the user's shell (SHELL/COMSPEC) is used so prompts, aliases and interactive
behavior work as in a normal terminal.