Scott Hanselman
dd51149a5e
docs: record voice mode parity blockers
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 06:45:57 -07:00
Scott Hanselman
9a4fe87642
docs: update mission control parity status
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 04:52:21 -07:00
Scott Hanselman
dfb1e6a04d
feat: add command center to palette
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 04:19:37 -07:00
Scott Hanselman
38f9042654
docs: record browser host smoke status
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 04:16:03 -07:00
Scott Hanselman
6cef6d7ee2
docs: add browser proxy testing guidance
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 03:33:25 -07:00
Scott Hanselman
1e0ced8c58
docs: correct voice tts parity status
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 03:31:31 -07:00
Scott Hanselman
0dc9be4b73
docs: align browser parity status
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 03:28:08 -07:00
Scott Hanselman
d7d9670a3c
docs: refresh browser proxy architecture status
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 02:55:35 -07:00
Scott Hanselman
48387bd1bd
feat: forward browser proxy over ssh tunnel
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 02:22:59 -07:00
Scott Hanselman
2758faca3b
feat: add node capability settings
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 01:44:45 -07:00
Scott Hanselman
ccf5f70bdf
feat: add dangerous command opt-in guidance
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 01:25:19 -07:00
Scott Hanselman
bd8b1c5892
feat: add capability diagnostics copy action
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 01:23:09 -07:00
Scott Hanselman
ff923514af
feat: add local browser proxy bridge
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-27 00:34:23 -07:00
Scott Hanselman
99f803e5ba
feat: add tray command center diagnostics
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-26 23:11:00 -07:00
Scott Hanselman
f121395b06
feat: add safe device parity commands
...
Add canvas.a2ui.pushJSONL as a Mac-compatible alias for the existing A2UI JSONL push handler.
Add device.info and device.status using the shared OpenClawKit payload shape, with Windows metadata/status sources plus tests and docs.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-26 22:43:16 -07:00
Scott Hanselman
ea6cf23add
docs: update Windows node parity audit
2026-04-26 22:26:56 -07:00
Scott Hanselman
dba534250c
feat: add screen recording parity
...
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-26 22:18:59 -07:00
Scott Hanselman
c1296be7fd
feat: add camera.clip, location.get, and canvas local file serving
...
Build and Test / test (push) Waiting to run
Build and Test / build (win-arm64) (push) Blocked by required conditions
Build and Test / build (win-x64) (push) Blocked by required conditions
Build and Test / build-msix (ARM64, win-arm64) (push) Blocked by required conditions
Build and Test / build-msix (x64, win-x64) (push) Blocked by required conditions
Build and Test / build-extension (arm64) (push) Blocked by required conditions
Build and Test / build-extension (x64) (push) Blocked by required conditions
Build and Test / release (push) Blocked by required conditions
Adds Windows node camera.clip, location.get, canvas local file serving/reload support, gateway command parity docs, and aligns screen capture with gateway-canonical screen.snapshot. Also makes camera.clip choose a supported Windows MediaCapture record stream and skips startup update prompts in debug builds for local node debugging.\n\nCo-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-04-25 23:19:15 -07:00
Scott Hanselman
882937299a
docs: remove stale WinForms references, update test counts and capabilities
...
- README.md: Fix project table (OpenClaw.Tray → OpenClaw.Tray.WinUI),
remove WinForms run command, add system.run.prepare and system.which
to capability table and allowCommands JSON, remove '(investigating)'
from canvas.a2ui commands
- DEVELOPMENT.md: Remove OpenClaw.Tray/ from structure, add
OpenClaw.Tray.Tests/, update test counts (88 → 571), fix CI section
- build.ps1: Fix broken 'Tray' target to point at WinUI .csproj,
remove WinForms from default build and run instructions
- docs/VERSIONING.md: Remove reference to deleted OpenClaw.Tray.csproj
- docs/TEST_COVERAGE.md: Full rewrite (88 → 571 tests, .NET 9 → 10)
- docs/CODE_REVIEW.md: Update project names, test counts, .NET version
- docs/WINDOWS_NODE_TESTING.md: Mark system.run as implemented, update
capability descriptions
- docs/WINDOWS_NODE_ARCHITECTURE.md: Add historical planning note,
update current state table (Node mode now implemented)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-03-17 20:38:13 -07:00
Scott Hanselman
4003e58d8f
feat: system.run + exec approval policy
...
Implement system.run command execution with swappable ICommandRunner
interface and glob-pattern-based exec approval policy for security.
ICommandRunner abstraction:
- ICommandRunner interface with CommandRequest/CommandResult models
- LocalCommandRunner: Process.Start with pwsh/cmd/powershell support
- Supports shell selection, cwd, timeout, env vars, args
- Designed for future DockerCommandRunner/WslCommandRunner swap-in
Exec approval policy:
- ExecApprovalPolicy engine with glob-pattern matching (*, ?)
- First-match-wins rule evaluation with Allow/Deny/Ask actions
- JSON persistence to exec-policy.json in data directory
- Default policy: allows read-only commands (echo, Get-*, hostname),
denies destructive ops (rm, shutdown, Format-*, registry)
- system.execApprovals.get: retrieve current policy rules
- system.execApprovals.set: update policy remotely
Node integration:
- SystemCapability checks approval policy before executing commands
- Denied commands return error with policy rule explanation
- NodeService wires LocalCommandRunner + ExecApprovalPolicy
Tests (191 total, all passing):
- 30 exec approval tests: policy evaluation, persistence, patterns,
SystemCapability integration, default rules validation
- system.run unit + integration tests
- Fixed: NodeCapabilityBase arg helpers guard default(JsonElement)
Docs updated:
- README: exec approvals commands, usage examples, gateway config
- Architecture doc: capability matrix, roadmap checkboxes updated
2026-02-07 14:16:15 -08:00
Scott Hanselman
e3eeef3367
feat: add Windows node mode capabilities
...
Implement node protocol, pairing, and invoke result handling.
Add canvas/screen/camera capabilities with WebView2, GDI capture, and MediaCapture frame reader fallback.
Expose node mode toggle/status in tray settings and update Windows node docs/testing guide.
2026-02-03 21:25:46 -08:00
Scott Hanselman
c658b1f517
Organize docs and add Windows Node architecture roadmap
...
- Move CODE_REVIEW.md, TEST_COVERAGE.md, XAML_COMPILER_BUG.md to docs/
- Add WINDOWS_NODE_ARCHITECTURE.md - comprehensive plan for evolving
tray app into a first-class Windows node with canvas, camera, screen
capture, and more
2026-02-01 21:26:10 -08:00