Skip to content

feat: --json output, status command, device rename#6

Merged
solomonneas merged 1 commit into
masterfrom
feat/json-status-rename
Jul 14, 2026
Merged

feat: --json output, status command, device rename#6
solomonneas merged 1 commit into
masterfrom
feat/json-status-rename

Conversation

@solomonneas

Copy link
Copy Markdown
Collaborator

Three additions, all backed by existing eero-api public methods (no new reverse-engineering).

Commands

  • eero status [--json] - read-only: authenticated (from stored session, no network round-trip), account name/email/phone, and visible networks. Exits 1 when not signed in, so scripts can gate on it.
  • eero rename <device> <nickname> - set_device_nickname, with the same fuzzy device match + confirm as block.
  • --json on devices, profiles, and status - machine-readable output for the wrapper/scripting use case this CLI is built for. profiles --json --devices nests each profile's assigned devices.

Why

The CLI is explicitly built for non-interactive/wrapper use, but every command emitted only human tables. --json closes that gap; status gives a scriptable auth probe that doesn't require a mutating call.

Tests

  • _account_summary (unwraps eero's {"value": ...} fields, omits empties) - 4 tests
  • parser wiring for status, rename, and the --json flags - 5 tests
  • Suite: 108 passed, ruff + mypy clean.

Note

The JSON/parser/pure-logic paths are unit-tested; the live API calls (get_account, set_device_nickname) are exercised through the maintained eero-api and not hit against real hardware here.

Add three commands backed by existing eero-api methods:
- status: read-only auth/account/networks check (exit 1 if not signed in)
- rename <device> <nickname>: set_device_nickname
- --json on devices/profiles/status for scriptable, machine-readable output

Add _account_summary (unwraps eero's {value:...} fields) and tests for it plus
the new parser surface.
@solomonneas
solomonneas merged commit 10e21be into master Jul 14, 2026
1 check passed
@solomonneas
solomonneas deleted the feat/json-status-rename branch July 14, 2026 17:49
solomonneas added a commit that referenced this pull request Jul 15, 2026
feat: --json output, status command, device rename
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant