Metadata-Version: 2.4
Name: Ownbox
Version: 0.1.2
Summary: The Ownbox developer kit: write a machine for an Ownbox, and run it here against a local Ownbox.
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 custom machine for an Ownbox, and run it on your own
computer against a local Ownbox.

```
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 custom machine is a folder: `machine.yaml` says what it may touch, and `__init__.py` is its code, written against
`from core import sdk`. A new one opens as a page, a dashboard named for it with what it does, its own latest data and
Run now, and `ownbox run` draws that page as your Ownbox will. `ownbox run` starts it the way an Ownbox does, with the standard library and the SDK only, and
answers every call from a local Ownbox:

- 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.

Its code lives with you: in that folder on your own computer, and if you like, your own GitHub (or any git) repository.
Your Ownbox needs neither. 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: your Claude sends the files, your Ownbox checks and dry-runs that exact
build, and its owner says yes on Approvals before anything runs. Your Ownbox keeps the installed copy and its versions,
and never pulls code from GitHub.

On a partner's Ownbox, one more yes: when the build is ready, Approve on its card sends it to Ownbox, and Ownbox reads
the code and approves it before it installs there. The card says when it is waiting for Ownbox.
