Skip to main content

Secure FastAPI local companion agent for DockTer

Project description

🐳 DockTer Companion Agent

A secure, lightweight local companion agent built with FastAPI to enable one-click Docker container orchestration and live log streaming directly from your DockTer client.

🚀 Features

  • One-Click Local Deployment: Extracts generated files, constructs an isolated workspace, and spins up your services using docker compose up --build -d.
  • Live Logs Console: Streams real-time container log stdout/stderr via Server-Sent Events (SSE).
  • Subprocess Command Compatibility: Dynamically resolves modern docker compose or legacy standalone docker-compose setups.
  • Strict Security Architecture: Implements locked-down CORS configurations to prevent unauthorized web contexts from executing arbitrary commands or accessing the Docker daemon.

🛠️ Installation

You can install the companion agent locally in editable mode for development, or install it directly using standard Python packaging:

# Clone the repository and navigate to the agent folder
cd agent

# Install in editable mode
pip install -e .

Alternatively, you can run it directly using uvx or pipx (recommended):

uvx --from dockter-agent dockter-agent start

💻 CLI Usage

Once installed, the CLI tool exposes a standard set of commands:

# Start the companion agent on the default port (8001)
dockter-agent start

# Start the companion agent on a custom port
dockter-agent start --port 8002

🔒 Security Architecture

To protect your system, the agent enforces the following constraints:

  1. Confined CORS Limits: Cross-Origin Resource Sharing (CORS) is explicitly restricted to local origins (http://localhost:5173) and the official production domain (https://dockter.dev). External, untrusted sites are completely blocked from calling the API.
  2. Local Loopback Only: The Uvicorn server is bound strictly to 127.0.0.1 (localhost), preventing remote machines on the local network or public internet from accessing the endpoints.
  3. Workspace Isolation: Projects are built and orchestrated inside designated, isolated subdirectories (dockter-{project_name}) in the directory where the agent is launched.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dockter_agent-1.0.0.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dockter_agent-1.0.0-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file dockter_agent-1.0.0.tar.gz.

File metadata

  • Download URL: dockter_agent-1.0.0.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for dockter_agent-1.0.0.tar.gz
Algorithm Hash digest
SHA256 099685ecfbc844b1262afb86de14e71d403e35c148b29953caa04b186ec6aa15
MD5 1a850e11a974af4e8b7e6f2d17f0c13e
BLAKE2b-256 65863dce934d341d3e9a7454cd7ec157a5a195ee994ff6cef2d93903fc327092

See more details on using hashes here.

File details

Details for the file dockter_agent-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: dockter_agent-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 8.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for dockter_agent-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a9a12f40846eb044277f7f831f1ad9cbbbdebeb7366027f2aa7fbf74d13a8805
MD5 968edd1e0fb008a6ec8651235479f933
BLAKE2b-256 87ecbd86ea804f7d1e7868fe8c3b5fb4ec7bc7c1a6fa57ec90afcc94384bfe47

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page