Skip to main content

A CLI tool for dispatching file processing jobs to GCP Pub/Sub and listening for results

Project description

File Prompt CLI

A CLI tool for dispatching files to GCP Pub/Sub and listening for results.

Installation

pip install file-prompt-tool

Usage

The CLI tool provides a single command to dispatch files to GCP Pub/Sub and listen for results:

file-prompt "*.txt" \
  --prompt "Summarize this text" \
  --project-id "your-project-id" \
  --bucket "your-bucket-name" \
  --topic "your-topic-name" \
  --subscription "your-subscription-name"

Arguments

  • files: File paths or glob patterns to process (required)
  • --prompt, -p: Prompt to use for processing (required)
  • --project-id: GCP project ID (required)
  • --bucket: GCS bucket name (required)
  • --topic: Pub/Sub topic name (required)
  • --subscription: Pub/Sub subscription name (required)
  • --timeout, -t: Timeout in seconds for processing each file (default: 300)
  • --verbose, -v: Enable verbose output (default: false)

Example

# Process all text files in the current directory
file-prompt "*.txt" \
  --prompt "Summarize this text" \
  --project-id "my-project" \
  --bucket "my-bucket" \
  --topic "file-processing" \
  --subscription "file-results"

# Process specific files with verbose output
file-prompt file1.txt file2.txt \
  --prompt "Analyze this document" \
  --project-id "my-project" \
  --bucket "my-bucket" \
  --topic "file-processing" \
  --subscription "file-results" \
  --verbose

Development

Setup

  1. Clone the repository
  2. Install development dependencies:
    pip install -e ".[dev]"
    

Running Tests

pytest

Code Style

The project uses:

  • Black for code formatting
  • isort for import sorting
  • flake8 for linting
  • mypy for type checking

Run all checks:

black .
isort .
flake8
mypy .

License

MIT

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

file_prompt_tool-0.1.0.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

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

file_prompt_tool-0.1.0-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file file_prompt_tool-0.1.0.tar.gz.

File metadata

  • Download URL: file_prompt_tool-0.1.0.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.7

File hashes

Hashes for file_prompt_tool-0.1.0.tar.gz
Algorithm Hash digest
SHA256 edbbcd1478f98644a874dbdcb8811e16ff036412030972fd218716afc0b2709b
MD5 1706523baade88395ce164b5a6cd01f0
BLAKE2b-256 9699347a432569d88e3b7fc5d06eb355b3ce8e08bdbf6cc21f22ac65c06ac699

See more details on using hashes here.

File details

Details for the file file_prompt_tool-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for file_prompt_tool-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 53b39d444ab8d226a4d641fa1a3db52c3f3d76e626309d62690579f5876aba0b
MD5 4a178adda9f8cd3dd6682c851d7bffa0
BLAKE2b-256 7ef99f319456fe91bd3768eb23073ac8855232a8367b66ff4b733b808d1de5f9

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