Metadata-Version: 2.4
Name: Ownbox
Version: 0.1.0
Summary: The Ownbox developer kit: write a machine for an Ownbox, and run it here against a pretend box.
Project-URL: Homepage, https://www.ownbox.io
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: PyYAML>=6.0

# ownbox

The developer kit for [Ownbox](https://www.ownbox.io): write a machine for an Ownbox, and run it on your own computer
against a pretend box.

```
pip install ownbox
ownbox new visit-reminder      # a starter machine, in ./visit-reminder
ownbox run visit-reminder      # run it once, and read what it would have done
ownbox example                 # two whole machines to start from: a med spa's report, a gym's check-ins
```

A machine is a folder: `machine.yaml` says what it may touch, and `__init__.py` is its code, written against
`from core import sdk`. `ownbox run` starts it the way an Ownbox does, with the standard library and the SDK only, and
answers every call from a pretend box:

- reads of people, conversations and drafts come from invented sample data, or from your machine's own
  `fixtures/box.json`;
- sends, spends and proposals are not made, and you read what they would have been, and what each approval would
  carry out once its owner says yes;
- the AI answers one fixed sentence;
- the internet is not reached. On an Ownbox, its owner allows a host before a test reaches it.

When it does what you meant, connect your Claude to your Ownbox (its Developers page has the one line) and ask it to
send the machine there. Its owner says yes on Approvals before anything runs.
