Skip to main content

Helper for your tty interactions

Project description

prompt

Version: 13.0.0

Helper for your tty interactions

Table of Contents

Tests

Run the test suite:

pytest tests/

With coverage:

pytest --cov=prompt tests/

Integration in the Suite

This package is part of the Wexample Suite — a collection of high-quality, modular tools designed to work seamlessly together across multiple languages and environments.

Related Packages

The suite includes packages for configuration management, file handling, prompts, and more. Each package can be used independently or as part of the integrated suite.

Visit the Wexample Suite documentation for the complete package ecosystem.

Dependencies

  • attrs: >=23.1.0
  • cattrs: >=23.1.0
  • colorama:
  • readchar:
  • wcwidth:
  • wexample-helpers: >=14.2.0

Versioning & Compatibility Policy

Wexample packages follow Semantic Versioning (SemVer):

  • MAJOR: Breaking changes
  • MINOR: New features, backward compatible
  • PATCH: Bug fixes, backward compatible

We maintain backward compatibility within major versions and provide clear migration guides for breaking changes.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Free to use in both personal and commercial projects.

Integration in the Suite

This package is part of the Wexample Suite — a collection of high-quality, modular tools designed to work seamlessly together across multiple languages and environments.

Related Packages

The suite includes packages for configuration management, file handling, prompts, and more. Each package can be used independently or as part of the integrated suite.

Visit the Wexample Suite documentation for the complete package ecosystem.

About us

Wexample stands as a cornerstone of the digital ecosystem — a collective of seasoned engineers, researchers, and creators driven by a relentless pursuit of technological excellence. More than a media platform, it has grown into a vibrant community where innovation meets craftsmanship, and where every line of code reflects a commitment to clarity, durability, and shared intelligence.

This packages suite embodies this spirit. Trusted by professionals and enthusiasts alike, it delivers a consistent, high-quality foundation for modern development — open, elegant, and battle-tested. Its reputation is built on years of collaboration, refinement, and rigorous attention to detail, making it a natural choice for those who demand both robustness and beauty in their tools.

Wexample cultivates a culture of mastery. Each package, each contribution carries the mark of a community that values precision, ethics, and innovation — a community proud to shape the future of digital craftsmanship.

Prompt IO Quickstart

WithIoManager: owning or sharing the IoManager

  • Any class that needs prompt output should inherit WithIoManager.
  • Call self.ensure_io_manager() to lazily create or reuse an IoManager.
  • To inherit a parent’s indentation/verbosity, call self.set_parent_io_handler(parent); every context you create is automatically nested +1.
  • If someone else instantiates the manager, call self.use_io_manager(io) to reuse it instead of creating a new instance.

WithIoMethods: direct method proxies

  • Mix in WithIoMethods when you want to call self.log(...), self.separator(...), etc., without reaching into self.io.
  • The mixin delegates missing attribute lookups to the underlying IoManager, and it automatically injects context=self.create_io_context() so nested logging just works.

Typical pattern

from wexample_prompt.mixins.with_io_methods import WithIoMethods

class Worker(WithIoMethods):
    def __attrs_post_init__(self):
        self.ensure_io_manager()          # Owns an IoManager

    def run(self):
        self.log("top level message")     # via WithIoMethods

class Child(WithIoMethods):
    def __attrs_post_init__(self, parent):
        self.set_parent_io_handler(parent)  # reuse & indent

    def run(self):
        self.log("nested message")

The executor or parent decides whether to create a fresh manager or cascade an existing one; children only call ensure_io_manager() and never worry about the init order.

prompt

Version: 6.1.2

Helper for your tty interactions

Table of Contents

Tests

Run the test suite:

pytest tests/

With coverage:

pytest --cov=prompt tests/

Integration in the Suite

This package is part of the Wexample Suite — a collection of high-quality, modular tools designed to work seamlessly together across multiple languages and environments.

Related Packages

The suite includes packages for configuration management, file handling, prompts, and more. Each package can be used independently or as part of the integrated suite.

Visit the Wexample Suite documentation for the complete package ecosystem.

Dependencies

  • attrs: >=23.1.0
  • cattrs: >=23.1.0
  • colorama:
  • inquirerpy:
  • readchar:
  • wcwidth:
  • wexample-helpers: >=8.0.0

Versioning & Compatibility Policy

Wexample packages follow Semantic Versioning (SemVer):

  • MAJOR: Breaking changes
  • MINOR: New features, backward compatible
  • PATCH: Bug fixes, backward compatible

We maintain backward compatibility within major versions and provide clear migration guides for breaking changes.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Free to use in both personal and commercial projects.

Integration in the Suite

This package is part of the Wexample Suite — a collection of high-quality, modular tools designed to work seamlessly together across multiple languages and environments.

Related Packages

The suite includes packages for configuration management, file handling, prompts, and more. Each package can be used independently or as part of the integrated suite.

Visit the Wexample Suite documentation for the complete package ecosystem.

About us

Wexample stands as a cornerstone of the digital ecosystem — a collective of seasoned engineers, researchers, and creators driven by a relentless pursuit of technological excellence. More than a media platform, it has grown into a vibrant community where innovation meets craftsmanship, and where every line of code reflects a commitment to clarity, durability, and shared intelligence.

This packages suite embodies this spirit. Trusted by professionals and enthusiasts alike, it delivers a consistent, high-quality foundation for modern development — open, elegant, and battle-tested. Its reputation is built on years of collaboration, refinement, and rigorous attention to detail, making it a natural choice for those who demand both robustness and beauty in their tools.

Wexample cultivates a culture of mastery. Each package, each contribution carries the mark of a community that values precision, ethics, and innovation — a community proud to shape the future of digital craftsmanship.

Prompt IO Quickstart

WithIoManager: owning or sharing the IoManager

  • Any class that needs prompt output should inherit WithIoManager.
  • Call self.ensure_io_manager() to lazily create or reuse an IoManager.
  • To inherit a parent’s indentation/verbosity, call self.set_parent_io_handler(parent); every context you create is automatically nested +1.
  • If someone else instantiates the manager, call self.use_io_manager(io) to reuse it instead of creating a new instance.

WithIoMethods: direct method proxies

  • Mix in WithIoMethods when you want to call self.log(...), self.separator(...), etc., without reaching into self.io.
  • The mixin delegates missing attribute lookups to the underlying IoManager, and it automatically injects context=self.create_io_context() so nested logging just works.

Typical pattern

from wexample_prompt.mixins.with_io_methods import WithIoMethods

class Worker(WithIoMethods):
    def __attrs_post_init__(self):
        self.ensure_io_manager()          # Owns an IoManager

    def run(self):
        self.log("top level message")     # via WithIoMethods

class Child(WithIoMethods):
    def __attrs_post_init__(self, parent):
        self.set_parent_io_handler(parent)  # reuse & indent

    def run(self):
        self.log("nested message")

The executor or parent decides whether to create a fresh manager or cascade an existing one; children only call ensure_io_manager() and never worry about the init order.

prompt

Version: 2.0.0

Helper for your tty interactions

Table of Contents

Tests

Run the test suite:

pytest tests/

With coverage:

pytest --cov=prompt tests/

Integration in the Suite

This package is part of the Wexample Suite — a collection of high-quality, modular tools designed to work seamlessly together across multiple languages and environments.

Related Packages

The suite includes packages for configuration management, file handling, prompts, and more. Each package can be used independently or as part of the integrated suite.

Visit the Wexample Suite documentation for the complete package ecosystem.

Dependencies

  • attrs: >=23.1.0
  • cattrs: >=23.1.0
  • colorama:
  • inquirerpy:
  • readchar:
  • wcwidth:
  • wexample-helpers: >=1.1.0

Versioning & Compatibility Policy

Wexample packages follow Semantic Versioning (SemVer):

  • MAJOR: Breaking changes
  • MINOR: New features, backward compatible
  • PATCH: Bug fixes, backward compatible

We maintain backward compatibility within major versions and provide clear migration guides for breaking changes.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Free to use in both personal and commercial projects.

Integration in the Suite

This package is part of the Wexample Suite — a collection of high-quality, modular tools designed to work seamlessly together across multiple languages and environments.

Related Packages

The suite includes packages for configuration management, file handling, prompts, and more. Each package can be used independently or as part of the integrated suite.

Visit the Wexample Suite documentation for the complete package ecosystem.

About us

Wexample stands as a cornerstone of the digital ecosystem — a collective of seasoned engineers, researchers, and creators driven by a relentless pursuit of technological excellence. More than a media platform, it has grown into a vibrant community where innovation meets craftsmanship, and where every line of code reflects a commitment to clarity, durability, and shared intelligence.

This packages suite embodies this spirit. Trusted by professionals and enthusiasts alike, it delivers a consistent, high-quality foundation for modern development — open, elegant, and battle-tested. Its reputation is built on years of collaboration, refinement, and rigorous attention to detail, making it a natural choice for those who demand both robustness and beauty in their tools.

Wexample cultivates a culture of mastery. Each package, each contribution carries the mark of a community that values precision, ethics, and innovation — a community proud to shape the future of digital craftsmanship.

Prompt IO Quickstart

WithIoManager: owning or sharing the IoManager

  • Any class that needs prompt output should inherit WithIoManager.
  • Call self.ensure_io_manager() to lazily create or reuse an IoManager.
  • To inherit a parent’s indentation/verbosity, call self.set_parent_io_handler(parent); every context you create is automatically nested +1.
  • If someone else instantiates the manager, call self.use_io_manager(io) to reuse it instead of creating a new instance.

WithIoMethods: direct method proxies

  • Mix in WithIoMethods when you want to call self.log(...), self.separator(...), etc., without reaching into self.io.
  • The mixin delegates missing attribute lookups to the underlying IoManager, and it automatically injects context=self.create_io_context() so nested logging just works.

Typical pattern

from wexample_prompt.mixins.with_io_methods import WithIoMethods

class Worker(WithIoMethods):
    def __attrs_post_init__(self):
        self.ensure_io_manager()          # Owns an IoManager

    def run(self):
        self.log("top level message")     # via WithIoMethods

class Child(WithIoMethods):
    def __attrs_post_init__(self, parent):
        self.set_parent_io_handler(parent)  # reuse & indent

    def run(self):
        self.log("nested message")

The executor or parent decides whether to create a fresh manager or cascade an existing one; children only call ensure_io_manager() and never worry about the init order.

Known Limitations & Roadmap

Current limitations and planned features are tracked in the GitHub issues.

See the project roadmap for upcoming features and improvements.

Status & Compatibility

Maturity: Production-ready

Python Support: >=3.10

OS Support: Linux, macOS, Windows

Status: Actively maintained

Useful Links

Migration Notes

When upgrading between major versions, refer to the migration guides in the documentation.

Breaking changes are clearly documented with upgrade paths and examples.

Known Limitations & Roadmap

Current limitations and planned features are tracked in the GitHub issues.

See the project roadmap for upcoming features and improvements.

Status & Compatibility

Maturity: Production-ready

Python Support: >=3.10

OS Support: Linux, macOS, Windows

Status: Actively maintained

Useful Links

Migration Notes

When upgrading between major versions, refer to the migration guides in the documentation.

Breaking changes are clearly documented with upgrade paths and examples.

Known Limitations & Roadmap

Current limitations and planned features are tracked in the GitHub issues.

See the project roadmap for upcoming features and improvements.

Status & Compatibility

Maturity: Production-ready

Python Support: >=3.10

OS Support: Linux, macOS, Windows

Status: Actively maintained

Useful Links

Migration Notes

When upgrading between major versions, refer to the migration guides in the documentation.

Breaking changes are clearly documented with upgrade paths and examples.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

wexample_prompt-13.0.0.tar.gz (135.6 kB view details)

Uploaded Source

Built Distribution

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

wexample_prompt-13.0.0-py3-none-any.whl (202.7 kB view details)

Uploaded Python 3

File details

Details for the file wexample_prompt-13.0.0.tar.gz.

File metadata

  • Download URL: wexample_prompt-13.0.0.tar.gz
  • Upload date:
  • Size: 135.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.25.9 CPython/3.12.3 Linux/6.8.0-124-generic

File hashes

Hashes for wexample_prompt-13.0.0.tar.gz
Algorithm Hash digest
SHA256 6d0fd69f47b0647b674ac9843e0a63cb1a17fa5348d1464c5f486cfd6612e6e2
MD5 cc4b2d50985d2aaab570eea86550ca7d
BLAKE2b-256 0689d5898661655c83c3f8b3ba718398a71e4fac631f1a7c1ccb3991591bf4e4

See more details on using hashes here.

File details

Details for the file wexample_prompt-13.0.0-py3-none-any.whl.

File metadata

  • Download URL: wexample_prompt-13.0.0-py3-none-any.whl
  • Upload date:
  • Size: 202.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: pdm/2.25.9 CPython/3.12.3 Linux/6.8.0-124-generic

File hashes

Hashes for wexample_prompt-13.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6b23915b7cd0aace83d039d77fcb846b2855f281ae1245238010d0c668577aa7
MD5 89f231a0f8bda7cced491a46f9324efc
BLAKE2b-256 fae9719cb312fc62faafd29726da8c780d12ab3e16cc3b5f851dee24d4c2a1e4

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