Skip to content

feat(device): list dcd device and dcd mcp in help, and deprecate dcd live - #233

Draft
riglar wants to merge 10 commits into
feature/agent-devicesfrom
feat/device-live-alias
Draft

riglar wants to merge 10 commits into
feature/agent-devicesfrom
feat/device-live-alias

Conversation

@riglar

@riglar riglar commented Oct 19, 2026

Copy link
Copy Markdown
Contributor

Stacked on #232. Stage 3.4 of the Agent Devices CLI, plus the help-text part of the launch (plan Phase 8).

Draft: merge only when the /device/sessions API is in production. Until then, this would point people at commands that 404.

Changes

  • dcd device is listed in dcd --help (it was hidden in feat(device): add dcd device start, list, status, stop, install, launch and models #231).
  • dcd live is hidden from dcd --help. Every dcd live command first prints one line on stderr:
    ⚠ \dcd live` is deprecated and will be removed. Use `dcd device` instead: see `dcd device --help`.It goes to stderr, so--json` output is unchanged. The old commands keep working.
  • CLAUDE.md describes dcd device and its rules (envelope, exit codes, default session, no spinners off a TTY), and notes that live is deprecated.

live is not rewired onto the new API: its flags differ (--session, --app-binary-id), so old scripts keep their current behaviour until live is removed (plan 8.4).

Tests

Two tests in test/unit/live-command.test.ts: live is hidden, and the deprecation goes to stderr only. pnpm lint, pnpm typecheck, pnpm test:unit and pnpm build pass.

🤖 Generated with Claude Code

https://claude.ai/code/session_018tQfgpTsA9UhcopKoDezUA

riglar and others added 3 commits October 19, 2026 10:30
…ch and models

The first stages of the Agent Devices CLI (dcd plan 3.1 and 3.2).

- --json prints one envelope, {ok, session, data, error}, on success
  and on failure.
- Exit codes: 0 ok, 1 usage, 2 failed, 3 limit, 4 session ended or
  not found.
- The session id may be left out when exactly one session is open.
- start --app uploads a local build first; an https URL goes to the
  API's install-from-URL.
- Progress goes to stderr, with no spinner unless at a terminal.

Hidden from dcd --help until the API reaches production.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018tQfgpTsA9UhcopKoDezUA
Stage 3.3 of the Agent Devices CLI.

- inspect prints the compact screen; screenshot saves the frame to a
  file and reports its path.
- run sends one flow (a file or --yaml) with optional --env KEY=VALUE,
  and polls a flow that outlasts the API's wait. A failed flow exits 2.
- logs prints the app's recent log lines; --follow keeps printing new
  ones until the session ends.
- open opens the monitor at a terminal, and prints its URL otherwise.

Running a directory of flows needs an API change first and is refused
for now. openBrowser moves out of login.ts so device can share it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018tQfgpTsA9UhcopKoDezUA
Stage 3.4 of the Agent Devices CLI. dcd device appears in dcd --help.
dcd live is hidden and prints a deprecation line on stderr pointing at
dcd device; it keeps working for existing scripts.

Merge only when the /device/sessions API is in production.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018tQfgpTsA9UhcopKoDezUA
@riglar
riglar force-pushed the feat/device-live-alias branch from 32bfafc to 2df83b2 Compare October 19, 2026 09:36
@claude

claude Bot commented Oct 19, 2026

Copy link
Copy Markdown

Skipping automated code review: this PR is still a draft (it's waiting for the /device/sessions API to reach production). Re-run the review once it's marked ready.

riglar and others added 2 commits October 19, 2026 10:38
logs --follow, a long run and start --wait reused the token resolved at
the start. A dcd login access token lasts about an hour, so a poll past
that failed with an auth error. Each poll now calls refreshAuth first;
an API key is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018tQfgpTsA9UhcopKoDezUA
…/device-inspect-run

# Conflicts:
#	src/commands/device.ts
#	src/gateways/device-gateway.ts
#	src/types/domain/device-session.types.ts
#	test/unit/device-command.test.ts
Base automatically changed from feat/device-inspect-run to feature/agent-devices October 19, 2026 11:37
riglar and others added 3 commits October 19, 2026 12:37
Unhide dcd mcp alongside dcd device, and update CLAUDE.md to match.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018tQfgpTsA9UhcopKoDezUA
@riglar riglar changed the title feat(device): list dcd device in help and deprecate dcd live feat(device): list dcd device and dcd mcp in help, and deprecate dcd live Oct 19, 2026
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