Monorepo workspace for owa-piggy consumer CLIs
Project description
owa-tools
Monorepo for the seven owa-piggy consumer CLIs: owa-cal, owa-mail, owa-graph, owa-doctor, owa-people, owa-sched, owa-drive. Plus the umbrella owa discovery binary.
The auth broker owa-piggy lives in its own repository. It is the only persistent-secret holder in the suite.
Status
owa-tools is currently unreleased and uses one suite version for all console scripts.
| CLI | Status |
|---|---|
owa-cal |
beta |
owa-mail |
beta |
owa-graph |
beta |
owa-doctor |
alpha |
owa-people |
alpha |
owa-sched |
alpha |
owa-drive |
alpha |
owa |
umbrella discovery binary |
Layout
owa-tools/
├── owa_cal/ calendar CRUD over Outlook REST
├── owa_mail/ mail CRUD over Outlook REST
├── owa_graph/ Microsoft Graph CLI (verb-first + 14 resource shortcut groups)
├── owa_doctor/ health check across the suite
├── owa_people/ people, directory, contacts (Graph)
├── owa_sched/ free/busy and slot finding (Graph)
├── owa_drive/ OneDrive CRUD (Graph)
├── owa/ umbrella `owa` binary (list, schema, doctor, version)
├── tools/ CI helpers (stdlib check)
├── tests/ per-tool test suites
├── completions/ bash, zsh, fish
└── docs/ per-tool docs
Running
Local dev install:
python3 -m venv .venv
.venv/bin/pip install -e .[dev]
.venv/bin/owa list
Wheel build:
.venv/bin/python -m build --wheel
The wheel contains all eight console scripts (owa, owa-cal, owa-mail, owa-graph, owa-doctor, owa-people, owa-sched, owa-drive) and they all report the same owa-tools suite version.
Test suite:
.venv/bin/python -m pytest
.venv/bin/coverage run --source=owa_core -m pytest -q
.venv/bin/coverage report --fail-under=95
.venv/bin/python -m pytest --cov --cov-fail-under=90
.venv/bin/python tools/check_stdlib_only.py
.venv/bin/python tools/check_no_secrets.py
.venv/bin/python tools/check_docs_sync.py
.venv/bin/python tools/check_artifacts.py dist/* # after build
.venv/bin/python tools/check_console_smoke.py # after build
See RELEASING.md for the suite tag-and-publish flow.
More Docs
docs/security.mddefines the token, config, redaction, and live-test boundaries.docs/agent-integration.mddocuments schema discovery,--agent, and--err-json.docs/profile-model.mdexplains howowa-toolsprofile aliases map toowa-piggyprofiles.docs/migrating-from-individual-installs.mdwalks existing users from the legacy per-tool installs to theowa-toolssuite.
Conventions
- Stdlib only at runtime, except for the local suite packages and
owa-piggy. - JSON on stdout, logs on stderr,
--prettyfor humans. --agentwraps JSON-compatible output for automation;--err-jsonemits structured stderr.- Auth via
owa-piggy(subprocess, JSON contract). - For agents and contributors, start with
AGENTS.md, then read the nearest localAGENTS.mdfor the package or directory being edited.
License
MIT.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file owa_tools-0.1.0.tar.gz.
File metadata
- Download URL: owa_tools-0.1.0.tar.gz
- Upload date:
- Size: 150.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3507c005fa5aaa848c22e80bfe62bc9303e3ca95ed4fc2c72ab5ff0b9bf8aec4
|
|
| MD5 |
314c6ec111784576e85c4491c0078720
|
|
| BLAKE2b-256 |
477c877fb2f26792ee0da36afa37debe5322cba2c3c080b5afa5089a575dbbfc
|
File details
Details for the file owa_tools-0.1.0-py3-none-any.whl.
File metadata
- Download URL: owa_tools-0.1.0-py3-none-any.whl
- Upload date:
- Size: 174.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e3b6a3cd3c1133f861386eb95ef305891da19fd78e176c41c9cf68972944f825
|
|
| MD5 |
45ffab39d915eafab515274768b52946
|
|
| BLAKE2b-256 |
3b24177bad4b4dfbfe90fd5fd8461afa4f9c1c41abef92cc3f7dd419509e6e46
|