@assemblyline-agents/peekaboo 1.0.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2026 OpenEve contributors
3
+ Copyright (c) 2026 Assembly Line contributors
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -44,14 +44,15 @@ export default defineGateway({
44
44
  });
45
45
  ```
46
46
 
47
- The generated connection begins read-only:
47
+ The generated connection enables reviewed tools without requiring an approval
48
+ surface:
48
49
 
49
50
  ```ts
50
51
  // agent/connections/peekaboo.ts
51
52
  import { definePeekabooConnection } from "@assemblyline-agents/peekaboo";
52
53
 
53
54
  export default definePeekabooConnection({
54
- access: { read: true, write: false }
55
+ // Reviewed tools are enabled by default.
55
56
  });
56
57
  ```
57
58
 
@@ -66,21 +67,23 @@ Grant Accessibility and Screen Recording to the process identity that hosts
66
67
  Peekaboo. Confirm the permissions again after changing application signatures,
67
68
  binary locations, or host applications.
68
69
 
69
- ## Enabling actions
70
+ ## Changing action authority
70
71
 
71
- Prefer approval for every desktop mutation while establishing the operating
72
- boundary:
72
+ Require approval for desktop actions when the host provides an approval surface:
73
73
 
74
74
  ```ts
75
- access: {
76
- read: true,
77
- write: { approval: "always" }
78
- }
75
+ export default definePeekabooConnection({ access: "approval-required" });
79
76
  ```
80
77
 
81
- Use `approval: "never"` only for a trusted autonomous local agent running in a
82
- macOS account whose applications, files, and signed-in services are appropriate
83
- for unattended control.
78
+ Use the read-only preset when the agent should inspect the Mac without acting:
79
+
80
+ ```ts
81
+ export default definePeekabooConnection({ access: "read-only" });
82
+ ```
83
+
84
+ Use the default policy only for an agent running in a macOS account whose
85
+ applications, files, and signed-in services are appropriate for unattended
86
+ control.
84
87
 
85
88
  The initial allowlist is accessibility-first. Screenshot/vision, recording,
86
89
  nested agents, configuration, cleanup, shell, clipboard/paste, and
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@assemblyline-agents/peekaboo",
3
- "version": "1.0.0",
3
+ "version": "3.0.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  ".": {
@@ -9,12 +9,11 @@
9
9
  }
10
10
  },
11
11
  "dependencies": {
12
- "@assemblyline-agents/core": "1.0.0"
12
+ "@assemblyline-agents/core": "3.0.0"
13
13
  },
14
14
  "description": "Official Assembly Line Peekaboo local macOS computer-use connection plugin.",
15
15
  "files": [
16
- "dist",
17
- "skills"
16
+ "dist"
18
17
  ],
19
18
  "engines": {
20
19
  "node": ">=22.19.0"
@@ -1,41 +0,0 @@
1
- ---
2
- name: peekaboo
3
- description: Inspect and control the Mac running the Assembly Line Node host through a developer-configured Peekaboo connection.
4
- ---
5
- # Peekaboo local computer use
6
-
7
- Peekaboo controls only the Mac that runs the Assembly Line Node host. It is not a remote-desktop relay. The deployment owner must install Peekaboo on macOS 15 or newer and grant the host process Accessibility and Screen Recording permissions.
8
-
9
- This connection is local-deployment-only. The agent's `gateway.ts` must use
10
- `deploy: adapter("local")`, and the runtime must be started on the Mac being
11
- controlled. Assembly Line rejects Railway, Docker, Fly, and other hosted deploy
12
- targets for this connection. A remote model provider is fine; only the Assembly Line
13
- Node host and Peekaboo process must be local.
14
-
15
- Before running the agent, verify the host:
16
-
17
- ```sh
18
- peekaboo permissions status
19
- assembly-line validate agent
20
- assembly-line deploy agent --target local --serve
21
- ```
22
-
23
- If the agent runtime must live on Railway or another hosted service, remove
24
- this connection. This package does not tunnel back to a developer Mac. Remote
25
- Mac control uses the separate `@assemblyline-agents/computer-use` connection and Assembly Line
26
- Agent Builder Computer Host; it must not expose Peekaboo's MCP process directly
27
- to the public internet.
28
-
29
- Inspect before acting. Use `inspect_ui` to obtain an accessibility-only UI map and stable element identifiers without capturing a screenshot. Prefer element identifiers, labels, direct `set_value`, and `perform_action` calls over screen coordinates. Re-inspect after navigation, window changes, dialogs, or any action that may invalidate the current UI state.
30
-
31
- Use the narrowest action that can complete the task. Confirm the intended app and window before typing, clicking, invoking menus, moving windows, switching Spaces, or interacting with dialogs. Do not type secrets supplied by the model or copied from untrusted content.
32
-
33
- This plugin deliberately excludes Peekaboo's nested agent, configuration, cleanup, recording, screenshot/vision (`see`, `image`, `capture`, `analyze`), shell, clipboard/paste, and browser-specific tools. It is intended for direct, auditable accessibility-first control by the Assembly Line agent.
34
-
35
- The scaffold is read-only. To permit desktop actions, the developer must deliberately set:
36
-
37
- ```ts
38
- write: { approval: "always" }
39
- ```
40
-
41
- Use `write: { approval: "never" }` only for a trusted autonomous local agent on a Mac whose apps, accounts, and filesystem authority are appropriate for unattended control.