Metadata-Version: 2.4
Name: percept-harness
Version: 0.1.0
Summary: Research preview — server-side transport shell + tier-0 salience gate (WatchSpec down / Tier0Signal up) for the Percept cognition core.
Author-email: Divi <divi@velvee.ai>
License: Apache-2.0
Keywords: vision,edge,tier-0,salience-gate,perception,percept
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: percept-vision>=0.1.0
Provides-Extra: fast
Requires-Dist: numpy>=1.24; extra == "fast"
Provides-Extra: pose
Requires-Dist: mediapipe>=0.10; extra == "pose"
Provides-Extra: dev
Requires-Dist: pytest>=8; extra == "dev"
Requires-Dist: ruff>=0.6; extra == "dev"

# percept-harness

> **⚠️ Research preview — v0.1.0.** Published for real-life testing and feedback, not for production.
> APIs may change between `0.1.x` releases — pin a version.

The **server-side transport shell + tier-0 salience gate** for the
[Percept](https://pypi.org/project/percept-vision/) cognition core.

It speaks the frozen edge wire contract — the brain compiles active goals **down** to a `WatchSpec`
(anchors + per-goal cheap-detector selection); a coarse motion gate consumes that spec frame-by-frame,
reports a `Tier0Signal` **up**, and the expensive cloud `perceive_judged` call runs **only when salience
clears threshold**. It also hosts the **edge detector registry** — cheap, opt-in "skills" (motion-periodicity,
acoustic-onset, pose-openness) the brain selects per goal to count/propose timed boundaries on-device.

Pure stdlib for the L1 lane (`numpy` is an optional fast path; `mediapipe` is opt-in via `[pose]`). The real
on-device gate is `@percept/edge` (JS/WASM); this is the Python server-side reference that speaks the same
contract.

```bash
pip install percept-harness          # pulls percept-vision
pip install percept-harness[pose]    # + BlazePose for the pose-openness rep-counter
```

See the [main README](https://github.com/) and `percept-vision` for the full architecture. Apache-2.0.
