Metadata-Version: 2.4
Name: aware-terminal
Version: 0.3.3
Summary: AWARE Terminal Manager: Persistent tmux + GNOME workspace automation
Author: AWARE Team
License: MIT License
        
        Copyright (c) 2025 AWARE Team
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
License-File: LICENSE
Requires-Python: >=3.12
Requires-Dist: click<9.0.0,>=8.0.0
Requires-Dist: pydantic<3.0.0,>=2.0.0
Requires-Dist: pyyaml<7.0.0,>=6.0.0
Provides-Extra: test
Requires-Dist: pytest-asyncio<0.24.0,>=0.23.7; extra == 'test'
Requires-Dist: pytest-mock<4.0.0,>=3.12.0; extra == 'test'
Requires-Dist: pytest<9.0.0,>=8.2.0; extra == 'test'
Description-Content-Type: text/markdown

# AWARE Terminal Experience

Boot once, come back to the exact workspace every time. AWARE Terminal stitches together tmux, GNOME, and AI providers so threads in Studio or aware-cli reopen with all panes running—no manual tab herding.

## Everyday Flow

1. **One-time bootstrap**  
   `uv run aware-terminal setup --auto` installs tmux + plugins, enables the user systemd service, and applies the GNOME Auto Move Windows rules. If providers (Codex, Claude, Gemini) are available, setup auto-installs them too—doctor shows confirmations and remediation hints. Prefer to approve provider installs manually? Append `--provider-policy skip` and the guided flow will prompt before updating each agent.

   Provider manifests refresh automatically when you run setup from the repo. In packaged builds we reuse the bundled manifest data; a banner will tell you whether a refresh happened or if the bundled versions are in use.
   Provider prompts highlight installed vs latest versions (`codex-cli 0.48.0 → 0.49.0`) with release notes so you can upgrade confidently.

2. **Thread-scoped terminals**  
   `aware-cli object call --type terminal --function create --id <thread> ...` spins up a tmux window tied to a thread. Descriptors land in `.aware/threads/<thread>/terminals/<id>.json`, so Studio or Control Center can render panels instantly, and `terminal attach` reopens the shell without re-running commands.

3. **Daemons that persist**  
   Terminal sessions survive reboots: the tmux service starts on login, `aware_terminal.runtime` restores panes, and Studio/CLI poll the manifest to reconnect. Providers launch in the same window, so agent runs (Codex/Claude/Gemini) share the thread history.

4. **Control Center (optional)**  
   `uv run aware-terminal control` opens the TUI overlay for live streaming; it reads the same manifests as Studio, so actions stay in sync. We’re refining this view to match the new lifecycle (thread → terminal → optional provider).

## Why it matters

- **Zero setup drift**: once auto-configured, every terminal reappears on the right workspace with the same panes; no manual tmux scripts or window moves.
- **Provider-ready**: AI launchers inherit thread context—`ensure_provider_session` plugs Codex, Claude, or Gemini into the same tmux session used for human work.
- **CLI ↔ Studio parity**: descriptors + pane manifests give both aware-cli and Studio the same contract, letting us bundle a consistent open-source experience (aware-cli + aware-terminal + providers + rules/release helpers).

Looking ahead: provider binding (`terminal bind-provider`) and Control Center updates will round out the Studio integration. For install specifics and release bundling guidance, see `tools/terminal/RELEASE.md`.
