Skip to main content

Office — CLI to manage sittings and meeting rooms in office maps.

Project description

office

Agent-first CLI for managing seat assignments and meeting rooms across office floor plans. Floor layouts are hand-traced SVGs; people come from BambooHR; assignments live in a Google Sheet (v1) or DynamoDB (v2). The CLI exposes the same operations as the Slack /whereis command and the web map.

Status — v0.1.0. Stage 1 of the v1 seating system is in: floor SVG parser/validator, CSV-backed assignment store with append-only audit log, and CLI verbs (floors, seats, whereis). Google Sheets, BambooHR, Slack /whereis, and the web map land in later stages on top of the same office_cli.seats service. See issue #1.

Naming surfaces

office uses three different identifiers across packaging surfaces. Mind the split — do not blanket-replace one token across the codebase.

Surface Value
GitHub repo agentculture/office-agent
PyPI distribution office-cli
Python package office_cli
CLI binary office
Error class prefix Office

Install

uv tool install office-cli
office --version

Use

office learn                                    # self-teaching prompt
office explain seats                            # markdown docs for any verb
office whoami --json                            # auth probe (stub)

# v0.1.0 seating verbs:
office floors list --json
office floors validate floors/tlv-floor-5.svg
office seats list --vacant
office seats assign 5-T-01 alice@example.com
office seats move alice@example.com 5-T-02
office seats history 5-T-01 --json
office whereis alice@example.com

office reads data/offices.yaml, floors/, and seats/ from the current working directory. Override with --data-dir DIR or OFFICE_DATA_DIR=DIR.

Adding a new floor

  1. Trace the floor in Inkscape following docs/tracing-guide.md and the SVG ID contract in CLAUDE.md. Save as Plain SVG.
  2. Drop the SVG into floors/ as <office>-floor-<N>.svg.
  3. Add an entry to data/offices.yaml with cluster capacities and any named rooms.
  4. Verify: office floors validate floors/<file>.svg. Errors fail the command; warnings (e.g. cluster-capacity mismatches) are informational.

Develop

uv sync
uv run pytest -n auto -v
uv run office --version
uv run python -m office_cli

License

MIT — see LICENSE.

Project details


Download files

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

Source Distribution

office_cli-0.1.0.tar.gz (82.2 kB view details)

Uploaded Source

Built Distribution

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

office_cli-0.1.0-py3-none-any.whl (33.5 kB view details)

Uploaded Python 3

File details

Details for the file office_cli-0.1.0.tar.gz.

File metadata

  • Download URL: office_cli-0.1.0.tar.gz
  • Upload date:
  • Size: 82.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for office_cli-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2ac9371531ff9dfd5418583a77c108a1a4591e3e7345a472c9cccbd2fda44901
MD5 5a6eca4d7f735fc85c836fd4cd8df9c9
BLAKE2b-256 82c519ad082da1ab1495437660155a7399bb1bba642d5ace1daa41ddc383d059

See more details on using hashes here.

File details

Details for the file office_cli-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: office_cli-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 33.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for office_cli-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 14bbc274e93371e78784a1cf03c9861880612b7b96e110d268eec67e3ce9e87a
MD5 e700b0baf6dc183f46a64185fd180e70
BLAKE2b-256 453f8be9a08677a9a92a34e506bc837aa9eba56b3ea348fb94837d5c335527e4

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