@kosuke-ai/kosuke 1.0.0 → 1.0.2
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/CHANGELOG.md +66 -0
- package/README.md +198 -1
- package/dist/agent/http.js +18 -0
- package/dist/agent/summary.js +419 -0
- package/dist/commands/agent.js +22 -0
- package/dist/commands/auth.js +117 -0
- package/dist/commands/integrations.js +310 -0
- package/dist/commands/skill-runs.js +230 -0
- package/dist/commands/watch.js +167 -0
- package/dist/generated/commands/activity/list.js +73 -0
- package/dist/generated/commands/crons/artifacts-list.js +57 -0
- package/dist/generated/commands/crons/create.js +65 -0
- package/dist/generated/commands/crons/delete.js +18 -0
- package/dist/generated/commands/crons/get.js +19 -0
- package/dist/generated/commands/crons/list.js +54 -0
- package/dist/generated/commands/crons/projects-resume.js +21 -0
- package/dist/generated/commands/crons/run.js +37 -0
- package/dist/generated/commands/crons/runs-artifacts-get.js +23 -0
- package/dist/generated/commands/crons/runs-artifacts-list.js +22 -0
- package/dist/generated/commands/crons/runs-cancel.js +21 -0
- package/dist/generated/commands/crons/runs-diagnostics.js +23 -0
- package/dist/generated/commands/crons/runs-get.js +21 -0
- package/dist/generated/commands/crons/runs-list.js +58 -0
- package/dist/generated/commands/crons/runs-messages.js +21 -0
- package/dist/generated/commands/crons/update.js +73 -0
- package/dist/generated/commands/deploy/cancel.js +18 -0
- package/dist/generated/commands/deploy/list.js +33 -0
- package/dist/generated/commands/deploy/message.js +32 -0
- package/dist/generated/commands/deploy/messages.js +18 -0
- package/dist/generated/commands/deploy/queue-delete.js +19 -0
- package/dist/generated/commands/deploy/queue-list.js +19 -0
- package/dist/generated/commands/deploy/queue-move.js +31 -0
- package/dist/generated/commands/deploy/queue-resume.js +19 -0
- package/dist/generated/commands/deploy/queue-send.js +20 -0
- package/dist/generated/commands/deploy/queue-steer.js +20 -0
- package/dist/generated/commands/deploy/queue-update.js +56 -0
- package/dist/generated/commands/deploy/run.js +65 -0
- package/dist/generated/commands/deploy/set-model.js +28 -0
- package/dist/generated/commands/devices/list.js +18 -0
- package/dist/generated/commands/devices/request.js +31 -0
- package/dist/generated/commands/files/delete.js +18 -0
- package/dist/generated/commands/files/get.js +19 -0
- package/dist/generated/commands/files/list.js +25 -0
- package/dist/generated/commands/files/mkdir.js +28 -0
- package/dist/generated/commands/files/move.js +35 -0
- package/dist/generated/commands/files/put.js +92 -0
- package/dist/generated/commands/github/repositories.js +16 -0
- package/dist/generated/commands/github/status.js +16 -0
- package/dist/generated/commands/index.js +656 -0
- package/dist/generated/commands/integrations/execute.js +49 -0
- package/dist/generated/commands/integrations/tools.js +70 -0
- package/dist/generated/commands/mac/apps.js +30 -0
- package/dist/generated/commands/mac/ax-tree.js +65 -0
- package/dist/generated/commands/mac/browser-connection-check.js +69 -0
- package/dist/generated/commands/mac/browser-connections.js +30 -0
- package/dist/generated/commands/mac/browser-profiles.js +36 -0
- package/dist/generated/commands/mac/browser-sign-in.js +79 -0
- package/dist/generated/commands/mac/browser.js +44 -0
- package/dist/generated/commands/mac/click.js +72 -0
- package/dist/generated/commands/mac/file-delete.js +37 -0
- package/dist/generated/commands/mac/file-list.js +37 -0
- package/dist/generated/commands/mac/file-move.js +44 -0
- package/dist/generated/commands/mac/file-read.js +37 -0
- package/dist/generated/commands/mac/file-write.js +50 -0
- package/dist/generated/commands/mac/key.js +58 -0
- package/dist/generated/commands/mac/open.js +43 -0
- package/dist/generated/commands/mac/screenshot.js +51 -0
- package/dist/generated/commands/mac/scroll.js +70 -0
- package/dist/generated/commands/mac/shell.js +51 -0
- package/dist/generated/commands/mac/tools.js +18 -0
- package/dist/generated/commands/mac/type.js +64 -0
- package/dist/generated/commands/mac/windows.js +30 -0
- package/dist/generated/commands/members/list.js +24 -0
- package/dist/generated/commands/models/list.js +16 -0
- package/dist/generated/commands/personal-tasks/create.js +72 -0
- package/dist/generated/commands/personal-tasks/delete.js +17 -0
- package/dist/generated/commands/personal-tasks/get.js +20 -0
- package/dist/generated/commands/personal-tasks/list.js +71 -0
- package/dist/generated/commands/personal-tasks/move.js +31 -0
- package/dist/generated/commands/personal-tasks/start.js +69 -0
- package/dist/generated/commands/personal-tasks/update.js +81 -0
- package/dist/generated/commands/preview/get.js +26 -0
- package/dist/generated/commands/preview/health.js +26 -0
- package/dist/generated/commands/preview/reset.js +28 -0
- package/dist/generated/commands/preview/share-create.js +37 -0
- package/dist/generated/commands/preview/share-delete.js +26 -0
- package/dist/generated/commands/preview/share-get.js +27 -0
- package/dist/generated/commands/preview/shared-artifact.js +19 -0
- package/dist/generated/commands/preview/shared.js +17 -0
- package/dist/generated/commands/projects/backlog-items-create.js +35 -0
- package/dist/generated/commands/projects/backlog-items-delete.js +19 -0
- package/dist/generated/commands/projects/backlog-items-list.js +19 -0
- package/dist/generated/commands/projects/backlog-items-send.js +20 -0
- package/dist/generated/commands/projects/backlog-items-update.js +42 -0
- package/dist/generated/commands/projects/batch-merging-add-member.js +30 -0
- package/dist/generated/commands/projects/batch-merging-eject.js +37 -0
- package/dist/generated/commands/projects/batch-merging-finish.js +30 -0
- package/dist/generated/commands/projects/batch-merging-get.js +19 -0
- package/dist/generated/commands/projects/batch-merging-set.js +32 -0
- package/dist/generated/commands/projects/branches.js +31 -0
- package/dist/generated/commands/projects/create.js +72 -0
- package/dist/generated/commands/projects/delete.js +17 -0
- package/dist/generated/commands/projects/env-vars-add.js +22 -0
- package/dist/generated/commands/projects/env-vars-remove.js +21 -0
- package/dist/generated/commands/projects/get.js +18 -0
- package/dist/generated/commands/projects/labels-color.js +37 -0
- package/dist/generated/commands/projects/labels-delete.js +50 -0
- package/dist/generated/commands/projects/labels-usage.js +27 -0
- package/dist/generated/commands/projects/labels.js +18 -0
- package/dist/generated/commands/projects/list.js +16 -0
- package/dist/generated/commands/projects/live-logs.js +34 -0
- package/dist/generated/commands/projects/live-query.js +30 -0
- package/dist/generated/commands/projects/live-traffic.js +27 -0
- package/dist/generated/commands/projects/live-write-status.js +20 -0
- package/dist/generated/commands/projects/live-write.js +37 -0
- package/dist/generated/commands/projects/qa-guide-get.js +19 -0
- package/dist/generated/commands/projects/qa-guide-set.js +40 -0
- package/dist/generated/commands/projects/releases.js +18 -0
- package/dist/generated/commands/projects/services-add.js +88 -0
- package/dist/generated/commands/projects/services-list.js +19 -0
- package/dist/generated/commands/projects/services-remove.js +19 -0
- package/dist/generated/commands/projects/services-update.js +82 -0
- package/dist/generated/commands/projects/settings-get.js +19 -0
- package/dist/generated/commands/projects/settings-import.js +99 -0
- package/dist/generated/commands/projects/settings-update.js +85 -0
- package/dist/generated/commands/projects/skills.js +39 -0
- package/dist/generated/commands/projects/switch-workflow.js +34 -0
- package/dist/generated/commands/projects/update.js +28 -0
- package/dist/generated/commands/projects/versions.js +18 -0
- package/dist/generated/commands/sensei/cards-close.js +43 -0
- package/dist/generated/commands/sensei/cards-mark-read.js +30 -0
- package/dist/generated/commands/sensei/cards-put.js +152 -0
- package/dist/generated/commands/sensei/cards-send-reply.js +30 -0
- package/dist/generated/commands/sensei/cards.js +38 -0
- package/dist/generated/commands/sensei/chat.js +23 -0
- package/dist/generated/commands/sensei/connect.js +57 -0
- package/dist/generated/commands/sensei/delegates-get.js +21 -0
- package/dist/generated/commands/sensei/delegates-note.js +46 -0
- package/dist/generated/commands/sensei/delegates-start.js +51 -0
- package/dist/generated/commands/sensei/delegates-stop.js +21 -0
- package/dist/generated/commands/sensei/describe.js +36 -0
- package/dist/generated/commands/sensei/device-requests-decide.js +48 -0
- package/dist/generated/commands/sensei/device-requests-list.js +27 -0
- package/dist/generated/commands/sensei/memory-get.js +19 -0
- package/dist/generated/commands/sensei/memory-put.js +55 -0
- package/dist/generated/commands/sensei/merge-rule.js +36 -0
- package/dist/generated/commands/sensei/merge.js +36 -0
- package/dist/generated/commands/sensei/messages-reply.js +44 -0
- package/dist/generated/commands/sensei/messages-reroute.js +37 -0
- package/dist/generated/commands/sensei/messages-send.js +98 -0
- package/dist/generated/commands/sensei/notifications-open.js +19 -0
- package/dist/generated/commands/sensei/reels-activity.js +16 -0
- package/dist/generated/commands/sensei/reels-proposals.js +24 -0
- package/dist/generated/commands/sensei/reels-ranks.js +16 -0
- package/dist/generated/commands/sensei/reels-skips.js +32 -0
- package/dist/generated/commands/sensei/repository.js +36 -0
- package/dist/generated/commands/sensei/review-approve.js +37 -0
- package/dist/generated/commands/sensei/review-ask.js +44 -0
- package/dist/generated/commands/sensei/review-context.js +32 -0
- package/dist/generated/commands/sensei/sessions-assess.js +71 -0
- package/dist/generated/commands/sensei/sessions-facts.js +26 -0
- package/dist/generated/commands/sensei/suggest.js +36 -0
- package/dist/generated/commands/sensei/thread-done.js +21 -0
- package/dist/generated/commands/sensei/thread-move.js +30 -0
- package/dist/generated/commands/sensei/thread-read.js +41 -0
- package/dist/generated/commands/sensei/thread-split.js +30 -0
- package/dist/generated/commands/sensei/threads.js +47 -0
- package/dist/generated/commands/sensei/tickets-merge.js +51 -0
- package/dist/generated/commands/sensei/widgets.js +15 -0
- package/dist/generated/commands/sessions/activate.js +33 -0
- package/dist/generated/commands/sessions/all.js +142 -0
- package/dist/generated/commands/sessions/app-stack-start.js +20 -0
- package/dist/generated/commands/sessions/artifacts-attach.js +31 -0
- package/dist/generated/commands/sessions/artifacts-get.js +21 -0
- package/dist/generated/commands/sessions/artifacts-list.js +20 -0
- package/dist/generated/commands/sessions/create.js +234 -0
- package/dist/generated/commands/sessions/delete.js +21 -0
- package/dist/generated/commands/sessions/desktop-control.js +35 -0
- package/dist/generated/commands/sessions/desktop-start.js +19 -0
- package/dist/generated/commands/sessions/desktop.js +19 -0
- package/dist/generated/commands/sessions/diff-comments-add.js +65 -0
- package/dist/generated/commands/sessions/diff-comments-delete.js +21 -0
- package/dist/generated/commands/sessions/diff-comments-list.js +21 -0
- package/dist/generated/commands/sessions/diff-comments-update.js +25 -0
- package/dist/generated/commands/sessions/diff-commits.js +20 -0
- package/dist/generated/commands/sessions/diff-files.js +20 -0
- package/dist/generated/commands/sessions/diff-patch.js +87 -0
- package/dist/generated/commands/sessions/edit-prompt.js +81 -0
- package/dist/generated/commands/sessions/files-get.js +28 -0
- package/dist/generated/commands/sessions/files-list.js +20 -0
- package/dist/generated/commands/sessions/files-write.js +42 -0
- package/dist/generated/commands/sessions/get.js +19 -0
- package/dist/generated/commands/sessions/git-commit-message.js +20 -0
- package/dist/generated/commands/sessions/git-commit.js +30 -0
- package/dist/generated/commands/sessions/git-push.js +20 -0
- package/dist/generated/commands/sessions/git-state.js +20 -0
- package/dist/generated/commands/sessions/go-ahead-clear.js +22 -0
- package/dist/generated/commands/sessions/go-ahead-set.js +40 -0
- package/dist/generated/commands/sessions/jobs-cancel.js +21 -0
- package/dist/generated/commands/sessions/jobs-get.js +21 -0
- package/dist/generated/commands/sessions/jobs-list.js +35 -0
- package/dist/generated/commands/sessions/labels-edit.js +45 -0
- package/dist/generated/commands/sessions/labels-set.js +45 -0
- package/dist/generated/commands/sessions/list.js +130 -0
- package/dist/generated/commands/sessions/mark-read.js +19 -0
- package/dist/generated/commands/sessions/message.js +33 -0
- package/dist/generated/commands/sessions/messages.js +41 -0
- package/dist/generated/commands/sessions/needs-you.js +16 -0
- package/dist/generated/commands/sessions/qa-clear.js +22 -0
- package/dist/generated/commands/sessions/qa-set.js +33 -0
- package/dist/generated/commands/sessions/queue-delete.js +23 -0
- package/dist/generated/commands/sessions/queue-list.js +20 -0
- package/dist/generated/commands/sessions/queue-move.js +32 -0
- package/dist/generated/commands/sessions/queue-resume.js +20 -0
- package/dist/generated/commands/sessions/queue-send.js +21 -0
- package/dist/generated/commands/sessions/queue-steer.js +21 -0
- package/dist/generated/commands/sessions/queue-update.js +57 -0
- package/dist/generated/commands/sessions/runtime-command.js +39 -0
- package/dist/generated/commands/sessions/search.js +24 -0
- package/dist/generated/commands/sessions/send.js +138 -0
- package/dist/generated/commands/sessions/steer.js +36 -0
- package/dist/generated/commands/sessions/sync.js +37 -0
- package/dist/generated/commands/sessions/title-generate.js +29 -0
- package/dist/generated/commands/sessions/update.js +118 -0
- package/dist/generated/commands/tasks/all.js +112 -0
- package/dist/generated/commands/tasks/create.js +230 -0
- package/dist/generated/commands/tasks/delete.js +18 -0
- package/dist/generated/commands/tasks/get.js +19 -0
- package/dist/generated/commands/tasks/labels.js +18 -0
- package/dist/generated/commands/tasks/list.js +114 -0
- package/dist/generated/commands/tasks/start.js +68 -0
- package/dist/generated/commands/tasks/update.js +136 -0
- package/dist/generated/commands/user/auth-token-revoke.js +16 -0
- package/dist/generated/commands/user/crons-artifacts-list.js +59 -0
- package/dist/generated/commands/user/crons-create.js +65 -0
- package/dist/generated/commands/user/crons-get.js +21 -0
- package/dist/generated/commands/user/crons-list.js +41 -0
- package/dist/generated/commands/user/crons-run.js +21 -0
- package/dist/generated/commands/user/crons-runs-artifacts-get.js +25 -0
- package/dist/generated/commands/user/crons-runs-artifacts-list.js +24 -0
- package/dist/generated/commands/user/crons-runs-get.js +23 -0
- package/dist/generated/commands/user/crons-runs-list.js +52 -0
- package/dist/generated/commands/user/crons-update.js +73 -0
- package/dist/generated/commands/user/files-delete.js +18 -0
- package/dist/generated/commands/user/files-get.js +19 -0
- package/dist/generated/commands/user/files-list.js +24 -0
- package/dist/generated/commands/user/files-mkdir.js +27 -0
- package/dist/generated/commands/user/files-move.js +35 -0
- package/dist/generated/commands/user/files-put.js +91 -0
- package/dist/generated/commands/user/integrations-linkedin-connect.js +35 -0
- package/dist/generated/commands/user/integrations-linkedin-list.js +17 -0
- package/dist/generated/commands/user/integrations-linkedin-reconnect.js +19 -0
- package/dist/generated/commands/user/integrations-list.js +16 -0
- package/dist/generated/commands/user/integrations-remove.js +19 -0
- package/dist/generated/commands/user/integrations-x-connect.js +35 -0
- package/dist/generated/commands/user/integrations-x-list.js +17 -0
- package/dist/generated/commands/user/integrations-x-reconnect.js +19 -0
- package/dist/generated/commands/user/memory-list.js +16 -0
- package/dist/generated/commands/user/memory-put.js +36 -0
- package/dist/generated/commands/user/plugins-list.js +28 -0
- package/dist/generated/commands/user/plugins-update.js +29 -0
- package/dist/generated/commands/user/profile.js +16 -0
- package/dist/generated/commands/user/push-devices-register.js +76 -0
- package/dist/generated/commands/user/push-devices-remove.js +26 -0
- package/dist/generated/commands/user/skills-create.js +33 -0
- package/dist/generated/commands/user/skills-delete.js +18 -0
- package/dist/generated/commands/user/skills-get.js +19 -0
- package/dist/generated/commands/user/skills-list.js +17 -0
- package/dist/generated/commands/user/skills-update.js +35 -0
- package/dist/generated/commands/user/subscriptions-delete.js +18 -0
- package/dist/generated/commands/user/subscriptions-get.js +17 -0
- package/dist/generated/commands/user/subscriptions-grok-change.js +20 -0
- package/dist/generated/commands/user/subscriptions-grok-get.js +18 -0
- package/dist/generated/commands/user/subscriptions-login-antigravity-cancel.js +34 -0
- package/dist/generated/commands/user/subscriptions-login-antigravity-complete.js +40 -0
- package/dist/generated/commands/user/subscriptions-login-antigravity-start.js +28 -0
- package/dist/generated/commands/user/subscriptions-login-claude-complete.js +34 -0
- package/dist/generated/commands/user/subscriptions-login-claude-start.js +29 -0
- package/dist/generated/commands/user/subscriptions-login-codex-complete.js +28 -0
- package/dist/generated/commands/user/subscriptions-login-codex-start.js +29 -0
- package/dist/generated/commands/user/subscriptions-login-muse-complete.js +28 -0
- package/dist/generated/commands/user/subscriptions-login-muse-start.js +29 -0
- package/dist/generated/commands/user/subscriptions-logins-delete.js +20 -0
- package/dist/generated/commands/user/subscriptions-logins-recheck.js +19 -0
- package/dist/generated/commands/user/subscriptions-set-default-model.js +33 -0
- package/dist/generated/commands/user/subscriptions-set-key.js +35 -0
- package/dist/generated/commands/user/subscriptions-token-usage.js +17 -0
- package/dist/generated/commands/user/subscriptions-usage.js +52 -0
- package/dist/generated/commands/workspaces/access-status.js +30 -0
- package/dist/generated/commands/workspaces/ai-provider-get.js +19 -0
- package/dist/generated/commands/workspaces/ai-provider-google-delete-method.js +33 -0
- package/dist/generated/commands/workspaces/ai-provider-google-get.js +20 -0
- package/dist/generated/commands/workspaces/ai-provider-google-remove.js +19 -0
- package/dist/generated/commands/workspaces/ai-provider-google-save.js +38 -0
- package/dist/generated/commands/workspaces/ai-provider-google-select-method.js +39 -0
- package/dist/generated/commands/workspaces/ai-provider-google-usage.js +39 -0
- package/dist/generated/commands/workspaces/ai-provider-login-antigravity-cancel.js +36 -0
- package/dist/generated/commands/workspaces/ai-provider-login-antigravity-complete.js +42 -0
- package/dist/generated/commands/workspaces/ai-provider-login-antigravity-start.js +30 -0
- package/dist/generated/commands/workspaces/ai-provider-logins-recheck.js +41 -0
- package/dist/generated/commands/workspaces/ai-provider-remove.js +57 -0
- package/dist/generated/commands/workspaces/ai-provider-set.js +21 -0
- package/dist/generated/commands/workspaces/ai-provider-token-usage.js +19 -0
- package/dist/generated/commands/workspaces/ai-provider-usage-claude.js +39 -0
- package/dist/generated/commands/workspaces/ai-provider-usage-codex.js +39 -0
- package/dist/generated/commands/workspaces/ai-provider-usage-coding-plan.js +32 -0
- package/dist/generated/commands/workspaces/ai-provider-usage-deepseek.js +32 -0
- package/dist/generated/commands/workspaces/ai-provider-usage-grok.js +39 -0
- package/dist/generated/commands/workspaces/ai-provider-usage-kimi-code.js +32 -0
- package/dist/generated/commands/workspaces/ai-provider-usage-muse.js +39 -0
- package/dist/generated/commands/workspaces/artifacts.js +26 -0
- package/dist/generated/commands/workspaces/credits.js +18 -0
- package/dist/generated/commands/workspaces/get.js +18 -0
- package/dist/generated/commands/workspaces/grok-change.js +21 -0
- package/dist/generated/commands/workspaces/grok-get.js +19 -0
- package/dist/generated/commands/workspaces/integrations-get.js +20 -0
- package/dist/generated/commands/workspaces/integrations-list.js +37 -0
- package/dist/generated/commands/workspaces/integrations-remove.js +19 -0
- package/dist/generated/commands/workspaces/list.js +16 -0
- package/dist/generated/commands/workspaces/members.js +26 -0
- package/dist/generated/commands/workspaces/plugins-list.js +30 -0
- package/dist/generated/commands/workspaces/plugins-update.js +30 -0
- package/dist/generated/commands/workspaces/provider-login-claude-complete.js +35 -0
- package/dist/generated/commands/workspaces/provider-login-claude-start.js +30 -0
- package/dist/generated/commands/workspaces/provider-login-codex-complete.js +29 -0
- package/dist/generated/commands/workspaces/provider-login-codex-start.js +30 -0
- package/dist/generated/commands/workspaces/provider-login-muse-complete.js +29 -0
- package/dist/generated/commands/workspaces/provider-login-muse-start.js +30 -0
- package/dist/generated/commands/workspaces/sandbox-limit.js +18 -0
- package/dist/generated/commands/workspaces/skills-create.js +35 -0
- package/dist/generated/commands/workspaces/skills-delete.js +19 -0
- package/dist/generated/commands/workspaces/skills-get.js +20 -0
- package/dist/generated/commands/workspaces/skills-list.js +19 -0
- package/dist/generated/commands/workspaces/skills-update.js +36 -0
- package/dist/generated/commands/workspaces/stop-sandboxes.js +28 -0
- package/dist/generated/commands/workspaces/timezone-set.js +29 -0
- package/dist/generated/commands/workspaces/usage.js +33 -0
- package/dist/generated/providers.js +31 -0
- package/dist/index.js +7 -0
- package/dist/integrations/api.js +136 -0
- package/dist/integrations/render.js +59 -0
- package/dist/program.js +73 -0
- package/dist/runtime/agent-tokens.js +39 -0
- package/dist/runtime/attach.js +199 -0
- package/dist/runtime/attachments.js +63 -0
- package/dist/runtime/client.js +188 -0
- package/dist/runtime/config.js +49 -0
- package/dist/runtime/credentials.js +32 -0
- package/dist/runtime/descriptor.js +7 -0
- package/dist/runtime/invoke.js +152 -0
- package/dist/runtime/job-watch.js +374 -0
- package/dist/runtime/runtime.js +46 -0
- package/dist/runtime/version.js +5 -0
- package/openapi.json +26313 -0
- package/package.json +46 -4
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "post",
|
|
3
|
+
"path": "/api/agent-integrations/execute",
|
|
4
|
+
"command": [
|
|
5
|
+
"integrations",
|
|
6
|
+
"execute"
|
|
7
|
+
],
|
|
8
|
+
"summary": "Run one integration tool. An agent runs it for its own workspace, or on the member’s personal connection when that member started the turn. With an API key, name a workspace you belong to: the call runs only on your own personal connections, and one on a workspace connection is refused. The answer names the connection it ran on, or lists the connections to choose from when the call needs one. A tool failure answers 200 with isError true. Some integrations require an enabled workspace to be named. A Connector Token or a browser session is refused.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [
|
|
11
|
+
{
|
|
12
|
+
"name": "workspace",
|
|
13
|
+
"flag": "workspace",
|
|
14
|
+
"kind": "string",
|
|
15
|
+
"required": false,
|
|
16
|
+
"description": "The workspace the call is made in. Required with an API key, which is refused with 403 when you are not a member of it. An agent credential reaches its own workspace and refuses another. Some integrations require an enabled workspace to be named."
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"body": {
|
|
20
|
+
"fields": [
|
|
21
|
+
{
|
|
22
|
+
"name": "name",
|
|
23
|
+
"flag": "name",
|
|
24
|
+
"kind": "string",
|
|
25
|
+
"required": true,
|
|
26
|
+
"description": "The tool to run, as the tools list names it."
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"name": "arguments",
|
|
30
|
+
"flag": "arguments",
|
|
31
|
+
"kind": "json",
|
|
32
|
+
"required": true,
|
|
33
|
+
"description": "The tool's arguments, as its input schema describes them."
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"name": "account",
|
|
37
|
+
"flag": "account",
|
|
38
|
+
"kind": "string",
|
|
39
|
+
"required": false,
|
|
40
|
+
"description": "The connection to run on: its short id, its alias such as notion-personal, or scope:label. Needed when several can run the tool."
|
|
41
|
+
}
|
|
42
|
+
],
|
|
43
|
+
"required": true
|
|
44
|
+
},
|
|
45
|
+
"multipart": null,
|
|
46
|
+
"attachments": false,
|
|
47
|
+
"anonymous": false,
|
|
48
|
+
"agents": "all"
|
|
49
|
+
};
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "get",
|
|
3
|
+
"path": "/api/agent-integrations/tools",
|
|
4
|
+
"command": [
|
|
5
|
+
"integrations",
|
|
6
|
+
"tools"
|
|
7
|
+
],
|
|
8
|
+
"summary": "List the integration tools you can run now, with the connections that run them. An agent reads its own workspace. With an API key, name a workspace you belong to: it shows that workspace’s connections and your own personal ones. Some integrations require an enabled workspace to be named. A Connector Token or a browser session is refused.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [
|
|
11
|
+
{
|
|
12
|
+
"name": "workspace",
|
|
13
|
+
"flag": "workspace",
|
|
14
|
+
"kind": "string",
|
|
15
|
+
"required": false,
|
|
16
|
+
"description": "The workspace to list for. Required with an API key, which is refused with 403 when you are not a member of it. An agent credential reaches its own workspace and refuses another. Some integrations require an enabled workspace to be named."
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "view",
|
|
20
|
+
"flag": "view",
|
|
21
|
+
"kind": "string",
|
|
22
|
+
"required": false,
|
|
23
|
+
"description": "overview: the connections per toolkit with tool counts, and the matching tools once toolkit or search is set. summary: tool names and short descriptions, cut at 300. Without it, full definitions cut at a size budget, which is what older clients read.",
|
|
24
|
+
"choices": [
|
|
25
|
+
"summary",
|
|
26
|
+
"overview"
|
|
27
|
+
]
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"name": "toolkit",
|
|
31
|
+
"flag": "toolkit",
|
|
32
|
+
"kind": "string",
|
|
33
|
+
"required": false,
|
|
34
|
+
"description": "Only this toolkit, by slug, such as gmail."
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"name": "search",
|
|
38
|
+
"flag": "search",
|
|
39
|
+
"kind": "string",
|
|
40
|
+
"required": false,
|
|
41
|
+
"description": "Only tools whose name, description or toolkit contains this text, in any case."
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"name": "name",
|
|
45
|
+
"flag": "name",
|
|
46
|
+
"kind": "string",
|
|
47
|
+
"required": false,
|
|
48
|
+
"description": "One tool by exact name, with its full input schema. 404 when you are not offered it."
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"name": "account",
|
|
52
|
+
"flag": "account",
|
|
53
|
+
"kind": "string",
|
|
54
|
+
"required": false,
|
|
55
|
+
"description": "Only one connection: its short id, its alias such as notion-personal, or scope:label. Needed for a name that several connections can run."
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"name": "limit",
|
|
59
|
+
"flag": "limit",
|
|
60
|
+
"kind": "integer",
|
|
61
|
+
"required": false,
|
|
62
|
+
"description": "With view overview, how many tools to list when toolkit or search is set. 40 by default."
|
|
63
|
+
}
|
|
64
|
+
],
|
|
65
|
+
"body": null,
|
|
66
|
+
"multipart": null,
|
|
67
|
+
"attachments": false,
|
|
68
|
+
"anonymous": false,
|
|
69
|
+
"agents": "all"
|
|
70
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "post",
|
|
3
|
+
"path": "/api/devices/mac/apps",
|
|
4
|
+
"command": [
|
|
5
|
+
"mac",
|
|
6
|
+
"apps"
|
|
7
|
+
],
|
|
8
|
+
"summary": "List the apps running on the member's Mac, with each one's name, bundle id, pid and whether it is active. Sensei calls it, and a Chat Session does with --device-id for a device approved for it.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [],
|
|
11
|
+
"body": {
|
|
12
|
+
"fields": [
|
|
13
|
+
{
|
|
14
|
+
"name": "deviceId",
|
|
15
|
+
"flag": "device-id",
|
|
16
|
+
"kind": "string",
|
|
17
|
+
"required": false,
|
|
18
|
+
"description": "The device, by the ID `kosuke devices list` prints. A Chat Session names the device it was approved for; Sensei may leave it out for the member’s Mac that is online."
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"required": true
|
|
22
|
+
},
|
|
23
|
+
"multipart": null,
|
|
24
|
+
"attachments": false,
|
|
25
|
+
"anonymous": false,
|
|
26
|
+
"agents": [
|
|
27
|
+
"sandboxToken",
|
|
28
|
+
"senseiToken"
|
|
29
|
+
]
|
|
30
|
+
};
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "post",
|
|
3
|
+
"path": "/api/devices/mac/ax-tree",
|
|
4
|
+
"command": [
|
|
5
|
+
"mac",
|
|
6
|
+
"ax-tree"
|
|
7
|
+
],
|
|
8
|
+
"summary": "Read one window of the member's Mac as its accessibility tree, one line per element with a ref such as e12 for click, type and scroll. Prefer it to a screenshot. Sensei calls it, and a Chat Session does with --device-id for a device approved for it.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [],
|
|
11
|
+
"body": {
|
|
12
|
+
"fields": [
|
|
13
|
+
{
|
|
14
|
+
"name": "deviceId",
|
|
15
|
+
"flag": "device-id",
|
|
16
|
+
"kind": "string",
|
|
17
|
+
"required": false,
|
|
18
|
+
"description": "The device, by the ID `kosuke devices list` prints. A Chat Session names the device it was approved for; Sensei may leave it out for the member’s Mac that is online."
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "app",
|
|
22
|
+
"flag": "app",
|
|
23
|
+
"kind": "string",
|
|
24
|
+
"required": false,
|
|
25
|
+
"description": "The app, by name or bundle id."
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"name": "pid",
|
|
29
|
+
"flag": "pid",
|
|
30
|
+
"kind": "integer",
|
|
31
|
+
"required": false,
|
|
32
|
+
"description": "The process id, from `kosuke mac windows`."
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "window",
|
|
36
|
+
"flag": "window",
|
|
37
|
+
"kind": "string",
|
|
38
|
+
"required": false,
|
|
39
|
+
"description": "A substring of the window title."
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"name": "depth",
|
|
43
|
+
"flag": "depth",
|
|
44
|
+
"kind": "integer",
|
|
45
|
+
"required": false,
|
|
46
|
+
"description": "How deep to walk. 16 by default."
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name": "max",
|
|
50
|
+
"flag": "max",
|
|
51
|
+
"kind": "integer",
|
|
52
|
+
"required": false,
|
|
53
|
+
"description": "Most nodes listed. 300 by default."
|
|
54
|
+
}
|
|
55
|
+
],
|
|
56
|
+
"required": true
|
|
57
|
+
},
|
|
58
|
+
"multipart": null,
|
|
59
|
+
"attachments": false,
|
|
60
|
+
"anonymous": false,
|
|
61
|
+
"agents": [
|
|
62
|
+
"sandboxToken",
|
|
63
|
+
"senseiToken"
|
|
64
|
+
]
|
|
65
|
+
};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "post",
|
|
3
|
+
"path": "/api/devices/mac/browser-connections",
|
|
4
|
+
"command": [
|
|
5
|
+
"mac",
|
|
6
|
+
"browser-connection-check"
|
|
7
|
+
],
|
|
8
|
+
"summary": "Report what one check of the live page saw for a browser connection, with the revision `mac browser-connections` answered: connected with the account's name and handle, signed_out, or other_account with the name found. The first connected fills the account in, only from a Turn of its connectThreadId (else 403 NOT_CONNECT_THREAD); afterwards the handle must match it (else 409 ACCOUNT_MISMATCH). 409 STALE_REVISION after a newer Connect or Reconnect: read again. 404 once the member disconnected it. Only Sensei calls it, in a Turn the member's own message started.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [],
|
|
11
|
+
"body": {
|
|
12
|
+
"fields": [
|
|
13
|
+
{
|
|
14
|
+
"name": "connectionId",
|
|
15
|
+
"flag": "connection-id",
|
|
16
|
+
"kind": "string",
|
|
17
|
+
"required": true,
|
|
18
|
+
"description": "The connection’s id, as `mac browser-connections` lists it."
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "revision",
|
|
22
|
+
"flag": "revision",
|
|
23
|
+
"kind": "integer",
|
|
24
|
+
"required": true,
|
|
25
|
+
"description": "The revision `mac browser-connections` answered; a newer one refuses the write."
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"name": "check",
|
|
29
|
+
"flag": "check",
|
|
30
|
+
"kind": "string",
|
|
31
|
+
"required": true,
|
|
32
|
+
"description": "What the live page showed in the connection’s profile.",
|
|
33
|
+
"choices": [
|
|
34
|
+
"connected",
|
|
35
|
+
"signed_out",
|
|
36
|
+
"other_account"
|
|
37
|
+
]
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"name": "accountName",
|
|
41
|
+
"flag": "account-name",
|
|
42
|
+
"kind": "string",
|
|
43
|
+
"required": false,
|
|
44
|
+
"description": "With connected: the account's name as the page shows it."
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"name": "accountHandle",
|
|
48
|
+
"flag": "account-handle",
|
|
49
|
+
"kind": "string",
|
|
50
|
+
"required": false,
|
|
51
|
+
"description": "With connected: the account's handle, such as linkedin.com/in/ada or @ada."
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"name": "foundAccountName",
|
|
55
|
+
"flag": "found-account-name",
|
|
56
|
+
"kind": "string",
|
|
57
|
+
"required": false,
|
|
58
|
+
"description": "With other_account: the name of the account the page showed instead."
|
|
59
|
+
}
|
|
60
|
+
],
|
|
61
|
+
"required": true
|
|
62
|
+
},
|
|
63
|
+
"multipart": null,
|
|
64
|
+
"attachments": false,
|
|
65
|
+
"anonymous": false,
|
|
66
|
+
"agents": [
|
|
67
|
+
"senseiToken"
|
|
68
|
+
]
|
|
69
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "get",
|
|
3
|
+
"path": "/api/devices/mac/browser-connections",
|
|
4
|
+
"command": [
|
|
5
|
+
"mac",
|
|
6
|
+
"browser-connections"
|
|
7
|
+
],
|
|
8
|
+
"summary": "List the member's LinkedIn and X browser connections, oldest first: each is one account Sensei may act as, with its id, revision, account (null until Sensei fills it in), device (id, name, removed), profile (id, name), the last check (unchecked, connected, signed_out, other_account) with checkedAt, and connectThreadId, the only thread whose Turn may fill the account in. Pass its device id and profile id to every browser call for it. Only Sensei calls it, in a Turn the member's own message started.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [
|
|
11
|
+
{
|
|
12
|
+
"name": "site",
|
|
13
|
+
"flag": "site",
|
|
14
|
+
"kind": "string",
|
|
15
|
+
"required": false,
|
|
16
|
+
"description": "Only this site: linkedin or x.",
|
|
17
|
+
"choices": [
|
|
18
|
+
"linkedin",
|
|
19
|
+
"x"
|
|
20
|
+
]
|
|
21
|
+
}
|
|
22
|
+
],
|
|
23
|
+
"body": null,
|
|
24
|
+
"multipart": null,
|
|
25
|
+
"attachments": false,
|
|
26
|
+
"anonymous": false,
|
|
27
|
+
"agents": [
|
|
28
|
+
"senseiToken"
|
|
29
|
+
]
|
|
30
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "post",
|
|
3
|
+
"path": "/api/devices/mac/browser-profiles",
|
|
4
|
+
"command": [
|
|
5
|
+
"mac",
|
|
6
|
+
"browser-profiles"
|
|
7
|
+
],
|
|
8
|
+
"summary": "List Chrome profile IDs and display names on the member's Mac, including the default choice and device ID/name, with access allowed or off on every profile (off: turned off in Settings → Devices, never to be used). With --site, a bare host (Google's sites answer BAD_ARGS), it names the site and whether Kosuke watches it, and every allowed profile carries chromeSignIn: candidate when that profile in their Chrome holds a live cookie for the site (the sign-in cookie for LinkedIn and X), none when it holds none, unknown when it could not be read. An off profile carries none. A candidate is not a sign-in: check the account by browsing. Discovery reads cookie presence only, never a value, never the Keychain, and no history, and opens no browser. An older desktop app answers without access and chromeSignIn: read that as unknown. Only Sensei calls it.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [],
|
|
11
|
+
"body": {
|
|
12
|
+
"fields": [
|
|
13
|
+
{
|
|
14
|
+
"name": "deviceId",
|
|
15
|
+
"flag": "device-id",
|
|
16
|
+
"kind": "string",
|
|
17
|
+
"required": false,
|
|
18
|
+
"description": "The Mac ID returned by browser-profiles. An unavailable Mac fails without choosing another."
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "site",
|
|
22
|
+
"flag": "site",
|
|
23
|
+
"kind": "string",
|
|
24
|
+
"required": false,
|
|
25
|
+
"description": "A bare host, such as linkedin.com. With it each allowed profile says whether your Chrome holds a candidate sign-in for that site."
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"required": true
|
|
29
|
+
},
|
|
30
|
+
"multipart": null,
|
|
31
|
+
"attachments": false,
|
|
32
|
+
"anonymous": false,
|
|
33
|
+
"agents": [
|
|
34
|
+
"senseiToken"
|
|
35
|
+
]
|
|
36
|
+
};
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "post",
|
|
3
|
+
"path": "/api/devices/mac/browser-sign-in",
|
|
4
|
+
"command": [
|
|
5
|
+
"mac",
|
|
6
|
+
"browser-sign-in"
|
|
7
|
+
],
|
|
8
|
+
"summary": "Get a site signed in in this Sensei Thread's browser from the member's everyday Chrome: pass the browser call's profile and deviceId, and the site as a bare hostname (twitter.com is x.com; Google's sites are refused). --reuse picks up the sign-in that profile in their Chrome holds by itself, with no tap: only in a Turn the member's own message started, once per site and profile in a Turn, with the profile's exact ID. It never opens Chrome or waits for anyone, and answers opened false and signedIn false with chrome none (their Chrome holds no sign-in for the site, so nothing changed), same (the one this thread's browser already holds) or different (taken into this thread's browser, taken true). Then, unless it answered none or same, open the site with browser and check the account. On SIGN_IN_NEEDS_TAP or UPDATE_REQUIRED, put the sign-in card. A --reuse spends no tap, so it gives no card back. Every tapped mode (`sign-in`, `take`, `waitNew`) needs the member's tap on the sign-in card in this thread; `--forget` and `--reuse` need none. A sign-in takes the sign-in that profile in their Chrome holds when it differs from this thread's, without opening anything, and answers taken true, opened false and signedIn false, since the site has not confirmed it; or else it opens --url, or the site's page, in their Chrome and waits up to 8 minutes for the member to sign in. On LinkedIn and X it answers signedIn true and opened true. On any other site a change of the site's cookies is taken and answered taken true and signedIn false, since a change is not a sign-in, and an end with no change answers taken false; a desktop app too old to watch the site opens it and answers at once, with no taken. Every answer with taken true carries waitNewLeft: while it is above 0 and the site is still signed out, --wait-new (with the same --url), in the same Turn and with no new tap, waits for a newer sign-in, never taking the one taken already, and opens the site only when this Turn has not; once the tap's time has run out it fails with SIGN_IN_WINDOW_ENDED, and no card comes back. After the member's I'm signed in tap, --take takes that site's cookies, never Google's, and answers taken. --forget removes a sign-in this Turn took, a --reuse's included, for an account other than the one expected, and needs no tap. Each tap allows one call: a call without one, or a --wait-new that no take armed, fails with SIGN_IN_NEEDS_TAP. Then open the site with browser and check the account before account-specific work. On DEVICE_OFFLINE, TIMEOUT, SIGN_IN_TIMEOUT and KEYCHAIN_UNAVAILABLE Kosuke gives the member's card back by itself. Fails with SIGN_IN_TIMEOUT when Kosuke saw no new sign-in to LinkedIn or X within 8 minutes, PROFILE_DISCONNECTED for a profile turned off in Settings → Devices, KEYCHAIN_UNAVAILABLE when macOS did not let Kosuke read Chrome's sign-ins, STALE_TURN when the Turn stopped, and UPDATE_REQUIRED on a desktop app too old for it. Only Sensei calls it.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [],
|
|
11
|
+
"body": {
|
|
12
|
+
"fields": [
|
|
13
|
+
{
|
|
14
|
+
"name": "deviceId",
|
|
15
|
+
"flag": "device-id",
|
|
16
|
+
"kind": "string",
|
|
17
|
+
"required": false,
|
|
18
|
+
"description": "The Mac ID returned by browser-profiles. An unavailable Mac fails without choosing another."
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "profile",
|
|
22
|
+
"flag": "profile",
|
|
23
|
+
"kind": "string",
|
|
24
|
+
"required": true,
|
|
25
|
+
"description": "A Chrome profile directory ID or exact, unambiguous display name from browser-profiles."
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"name": "site",
|
|
29
|
+
"flag": "site",
|
|
30
|
+
"kind": "string",
|
|
31
|
+
"required": true,
|
|
32
|
+
"description": "The site, as a bare hostname such as linkedin.com. twitter.com is x.com. Google’s sites are refused."
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "take",
|
|
36
|
+
"flag": "take",
|
|
37
|
+
"kind": "boolean",
|
|
38
|
+
"required": false,
|
|
39
|
+
"description": "Take the site’s sign-in from everyday Chrome now, without opening anything: after the member’s “I’m signed in” or “Continue as” tap."
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"name": "forget",
|
|
43
|
+
"flag": "forget",
|
|
44
|
+
"kind": "boolean",
|
|
45
|
+
"required": false,
|
|
46
|
+
"description": "Remove the site’s sign-in that this Turn took from this thread’s browser, for an account other than the expected one. Needs no tap."
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name": "url",
|
|
50
|
+
"flag": "url",
|
|
51
|
+
"kind": "string",
|
|
52
|
+
"required": false,
|
|
53
|
+
"description": "For a site other than LinkedIn and X: the https page on that site to open, the one that showed the sign-in wall in Sensei’s browser, whether a login page or the page the sign-in form appeared on. It may be on a subdomain; the take still covers only the site’s registrable domain. Its home page by default. Never with take or forget, which open no page."
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "waitNew",
|
|
57
|
+
"flag": "wait-new",
|
|
58
|
+
"kind": "boolean",
|
|
59
|
+
"required": false,
|
|
60
|
+
"description": "Any site: wait for a newer sign-in after a sign-in call or a follow-up took the site’s sign-in (taken true) and left the site signed out, in the same Turn and with no new tap, while that answer’s waitNewLeft is above 0. Never takes the sign-in taken already, and opens the site, or url, in everyday Chrome only when this Turn has not."
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"name": "reuse",
|
|
64
|
+
"flag": "reuse",
|
|
65
|
+
"kind": "boolean",
|
|
66
|
+
"required": false,
|
|
67
|
+
"description": "Pick up the site’s sign-in from everyday Chrome by itself, without opening anything and with no tap: in a Turn the member’s own message started, once per site and profile. Name the profile by its exact ID. Answers chrome none, same or different, with taken."
|
|
68
|
+
}
|
|
69
|
+
],
|
|
70
|
+
"required": true
|
|
71
|
+
},
|
|
72
|
+
"multipart": null,
|
|
73
|
+
"attachments": false,
|
|
74
|
+
"answerTimeoutMs": 590000,
|
|
75
|
+
"anonymous": false,
|
|
76
|
+
"agents": [
|
|
77
|
+
"senseiToken"
|
|
78
|
+
]
|
|
79
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "post",
|
|
3
|
+
"path": "/api/devices/mac/browser",
|
|
4
|
+
"command": [
|
|
5
|
+
"mac",
|
|
6
|
+
"browser"
|
|
7
|
+
],
|
|
8
|
+
"summary": "Run agent-browser commands in order, in one headless Google Chrome session on the member's Mac signed in with their cookies, for sites that need their sign-in. On updated desktops each Sensei Thread has its own browser, so threads browse at once, and it closes when the Turn ends, so page state does not carry over to the next Turn; past the Mac's cap on open browsers, with none idle, a call answers BROWSER_LIMIT. Select a Chrome profile by directory ID or exact unambiguous name, and pin its Mac with deviceId. Updated desktops return profile ID/name; the platform returns device ID/name. Unknown or removed profiles fail without fallback, and a profile the member turned off in Settings → Devices fails with PROFILE_DISCONNECTED. Older desktops require an update for explicit selection, and share one browser per profile under the Mac lock. Answers each command's output, the recording's lasting link as recording.url (the recording is posted in the chat too), and the paths of files it downloaded to ~/Downloads. Only Sensei calls it.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [],
|
|
11
|
+
"body": {
|
|
12
|
+
"fields": [
|
|
13
|
+
{
|
|
14
|
+
"name": "deviceId",
|
|
15
|
+
"flag": "device-id",
|
|
16
|
+
"kind": "string",
|
|
17
|
+
"required": false,
|
|
18
|
+
"description": "The Mac ID returned by browser-profiles. An unavailable Mac fails without choosing another."
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "profile",
|
|
22
|
+
"flag": "profile",
|
|
23
|
+
"kind": "string",
|
|
24
|
+
"required": false,
|
|
25
|
+
"description": "A Chrome profile directory ID or exact, unambiguous display name from browser-profiles."
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"name": "cmds",
|
|
29
|
+
"flag": "cmd",
|
|
30
|
+
"kind": "string",
|
|
31
|
+
"required": true,
|
|
32
|
+
"description": "agent-browser commands, run in order in one session.",
|
|
33
|
+
"repeated": true
|
|
34
|
+
}
|
|
35
|
+
],
|
|
36
|
+
"required": true
|
|
37
|
+
},
|
|
38
|
+
"multipart": null,
|
|
39
|
+
"attachments": false,
|
|
40
|
+
"anonymous": false,
|
|
41
|
+
"agents": [
|
|
42
|
+
"senseiToken"
|
|
43
|
+
]
|
|
44
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "post",
|
|
3
|
+
"path": "/api/devices/mac/click",
|
|
4
|
+
"command": [
|
|
5
|
+
"mac",
|
|
6
|
+
"click"
|
|
7
|
+
],
|
|
8
|
+
"summary": "Click in a window of the member's Mac, on an element ref from ax-tree or at x and y in window coordinates, without bringing the window forward. Answers the method used. Sensei calls it, and a Chat Session does with --device-id for a device approved for it.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [],
|
|
11
|
+
"body": {
|
|
12
|
+
"fields": [
|
|
13
|
+
{
|
|
14
|
+
"name": "deviceId",
|
|
15
|
+
"flag": "device-id",
|
|
16
|
+
"kind": "string",
|
|
17
|
+
"required": false,
|
|
18
|
+
"description": "The device, by the ID `kosuke devices list` prints. A Chat Session names the device it was approved for; Sensei may leave it out for the member’s Mac that is online."
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "app",
|
|
22
|
+
"flag": "app",
|
|
23
|
+
"kind": "string",
|
|
24
|
+
"required": false,
|
|
25
|
+
"description": "The app, by name or bundle id."
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"name": "pid",
|
|
29
|
+
"flag": "pid",
|
|
30
|
+
"kind": "integer",
|
|
31
|
+
"required": false,
|
|
32
|
+
"description": "The process id, from `kosuke mac windows`."
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "window",
|
|
36
|
+
"flag": "window",
|
|
37
|
+
"kind": "string",
|
|
38
|
+
"required": false,
|
|
39
|
+
"description": "A substring of the window title."
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
"name": "ref",
|
|
43
|
+
"flag": "ref",
|
|
44
|
+
"kind": "string",
|
|
45
|
+
"required": false,
|
|
46
|
+
"description": "An element ref from `kosuke mac ax-tree`, such as e12."
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"name": "x",
|
|
50
|
+
"flag": "x",
|
|
51
|
+
"kind": "number",
|
|
52
|
+
"required": false,
|
|
53
|
+
"description": "Window x, with y, when there is no ref."
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
"name": "y",
|
|
57
|
+
"flag": "y",
|
|
58
|
+
"kind": "number",
|
|
59
|
+
"required": false,
|
|
60
|
+
"description": "Window y, with x, when there is no ref."
|
|
61
|
+
}
|
|
62
|
+
],
|
|
63
|
+
"required": true
|
|
64
|
+
},
|
|
65
|
+
"multipart": null,
|
|
66
|
+
"attachments": false,
|
|
67
|
+
"anonymous": false,
|
|
68
|
+
"agents": [
|
|
69
|
+
"sandboxToken",
|
|
70
|
+
"senseiToken"
|
|
71
|
+
]
|
|
72
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "post",
|
|
3
|
+
"path": "/api/devices/mac/file-delete",
|
|
4
|
+
"command": [
|
|
5
|
+
"mac",
|
|
6
|
+
"file-delete"
|
|
7
|
+
],
|
|
8
|
+
"summary": "Move a file on the member's Mac to the Trash. Sensei calls it, and a Chat Session does with --device-id for a device approved for it.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [],
|
|
11
|
+
"body": {
|
|
12
|
+
"fields": [
|
|
13
|
+
{
|
|
14
|
+
"name": "deviceId",
|
|
15
|
+
"flag": "device-id",
|
|
16
|
+
"kind": "string",
|
|
17
|
+
"required": false,
|
|
18
|
+
"description": "The device, by the ID `kosuke devices list` prints. A Chat Session names the device it was approved for; Sensei may leave it out for the member’s Mac that is online."
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "path",
|
|
22
|
+
"flag": "path",
|
|
23
|
+
"kind": "string",
|
|
24
|
+
"required": true,
|
|
25
|
+
"description": "Moved to the Trash."
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"required": true
|
|
29
|
+
},
|
|
30
|
+
"multipart": null,
|
|
31
|
+
"attachments": false,
|
|
32
|
+
"anonymous": false,
|
|
33
|
+
"agents": [
|
|
34
|
+
"sandboxToken",
|
|
35
|
+
"senseiToken"
|
|
36
|
+
]
|
|
37
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export const operation = {
|
|
2
|
+
"method": "post",
|
|
3
|
+
"path": "/api/devices/mac/file-list",
|
|
4
|
+
"command": [
|
|
5
|
+
"mac",
|
|
6
|
+
"file-list"
|
|
7
|
+
],
|
|
8
|
+
"summary": "List a folder on the member's Mac, with each entry's name, kind, size and modification time. Sensei calls it, and a Chat Session does with --device-id for a device approved for it.",
|
|
9
|
+
"pathParams": [],
|
|
10
|
+
"query": [],
|
|
11
|
+
"body": {
|
|
12
|
+
"fields": [
|
|
13
|
+
{
|
|
14
|
+
"name": "deviceId",
|
|
15
|
+
"flag": "device-id",
|
|
16
|
+
"kind": "string",
|
|
17
|
+
"required": false,
|
|
18
|
+
"description": "The device, by the ID `kosuke devices list` prints. A Chat Session names the device it was approved for; Sensei may leave it out for the member’s Mac that is online."
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"name": "path",
|
|
22
|
+
"flag": "path",
|
|
23
|
+
"kind": "string",
|
|
24
|
+
"required": true,
|
|
25
|
+
"description": "A path on the Mac. ~ is the member’s home."
|
|
26
|
+
}
|
|
27
|
+
],
|
|
28
|
+
"required": true
|
|
29
|
+
},
|
|
30
|
+
"multipart": null,
|
|
31
|
+
"attachments": false,
|
|
32
|
+
"anonymous": false,
|
|
33
|
+
"agents": [
|
|
34
|
+
"sandboxToken",
|
|
35
|
+
"senseiToken"
|
|
36
|
+
]
|
|
37
|
+
};
|