provide-terminal
2026-04-01
HTTP intercept, TelnetSession, 14-package ecosystem extraction, 100% coverage
373 files · 10,666+ · 1,057-
HTTP intercept: gate CLI, CF relay, and frontend modify editor
5 files changed
intercept.pyuterm intercept CLI — intercept gate with request modification and CF relay_tunnel_api.pyCF: browser→worker relay for http_action + text frame supportHijackHost.tsxFrontend: intercept UI with enable/disable toggles, action bar, and request modify editorhttp-intercept-modify-design.mdPhase 4 HTTP intercept/modify design spechttp-intercept-modify-implementation.mdPhase 4 HTTP intercept/modify implementation plan
- HTTP intercept adds the ability to pause, inspect, modify, and forward HTTP requests. The intercept gate CLI controls whether requests are held or forwarded. CF Worker relays http_action commands. The frontend intercept UI provides toggles to enable/disable interception, an action bar (forward, drop, modify), and a text editor for request body modification. Inspect progress feedback and text frame handling added to the WS receiver.
instantiate
behavioral
3 files
intercept.py_tunnel_api.pyHijackHost.tsx
TelnetSession with RFC 854 IAC negotiation
1 file changed
telnet.pyTelnetSession using TelnetTransport for proper RFC 854 IAC option negotiation
- TelnetSession added as a first-class Session protocol implementation using TelnetTransport for proper RFC 854 IAC option negotiation (ECHO, SUPPRESS-GO-AHEAD, NAWS terminal size). Replaces the previous ad-hoc telnet handling.
instantiate
behavioral
1 file
telnet.py
Extract 4 new packages from monolith
5 files changed
pyproject.tomlundef-terminal-ai: MCP tools extracted (511 LOC)pyproject.tomlundef-terminal-client: CLI client extracted (704 LOC)pyproject.tomlundef-terminal-transports: transport layer extractedpyproject.tomlundef-terminal-detection: connector detection extracted to break bridge-tunnel circular dependencyworker_link.pyhijack/ → bridge/; bridge.py → worker_link.py
- Four packages extracted from the undef-terminal monolith: undef-terminal-ai (511 LOC of MCP tools), undef-terminal-client (704 LOC CLI client), undef-terminal-transports (transport layer abstractions), and undef-terminal-detection (connector type detection, extracted to break a bridge-tunnel circular import dependency). hijack/ directory renamed to bridge/, bridge.py renamed to worker_link.py for clarity. HijackCoordinator extracted as shared component.
decouple
internal
3 files
pyproject.tomlpyproject.tomlpyproject.toml
100% coverage on gateway, manager, and pty packages
3 files changed
test_gateway.py102 passing gateway tests; split to stay under 500 LOC limittest_manager.pyManager 100% branch+line coverage — _monitor, process, timeseriestest_pty_coverage.pyAll pty modules at 100% coverage (branch + line) in Docker
- gateway, manager, and pty packages all reach 100% branch+line coverage. Gateway test file split at 500 LOC. Manager coverage closed across _monitor, process tracking, and timeseries. pty coverage run in Docker for native PTY access. inspect.py pragma narrowed to ImportError-only; _run_inspect pragma removed.
qualify
internal
2 files
test_gateway.pytest_manager.py
pty CI jobs, persistent timeseries, Linux subreaper
3 files changed
ci.ymlpty-unit and pty-docker CI jobs added; paths_to_mutate regex fixed for multi-line TOML arrays; Pillow added to dev deps for mutation-gate shell rendertimeseries.pyPersistent timeseries file handle — closes on exitprocess.pyLinux subreaper set for PTY process tree containment
- CI gains pty-unit and pty-docker jobs for PTY coverage on bare runners and in Docker respectively. paths_to_mutate regex fixed for multi-line TOML array syntax. Timeseries file handle persisted and closed properly on exit. Linux subreaper set so orphaned PTY child processes are reaped by the manager rather than init.
baseline
internal
2 files
ci.ymltimeseries.py
14-package ecosystem docs and PlantUML architecture diagrams
2 files changed
README.mdPlatform documentation rewrite for 14-package ecosystem; 5800+ tests, 12 packages notedarchitecture-14pkg.pumlPlantUML architecture diagram for 12-package ecosystem
- README rewritten as platform documentation covering the 14-package ecosystem. PlantUML architecture diagrams added for the 12-package ecosystem. Per-package READMEs added for all packages: core, transports, gateway, pty, render, frontend, ai, client, detection, manager, tunnel.
specify
internal
1 file
README.md