@tickernelz/paperclip-pro-plugin-daytona 2026.925.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/README.md +49 -0
- package/dist/duplex-command-stream.d.ts +97 -0
- package/dist/duplex-command-stream.d.ts.map +1 -0
- package/dist/duplex-command-stream.js +205 -0
- package/dist/duplex-command-stream.js.map +1 -0
- package/dist/duplex-command-stream.live.test.d.ts +2 -0
- package/dist/duplex-command-stream.live.test.d.ts.map +1 -0
- package/dist/duplex-command-stream.live.test.js +324 -0
- package/dist/duplex-command-stream.live.test.js.map +1 -0
- package/dist/duplex-command-stream.test.d.ts +2 -0
- package/dist/duplex-command-stream.test.d.ts.map +1 -0
- package/dist/duplex-command-stream.test.js +519 -0
- package/dist/duplex-command-stream.test.js.map +1 -0
- package/dist/file-sync.d.ts +77 -0
- package/dist/file-sync.d.ts.map +1 -0
- package/dist/file-sync.js +1055 -0
- package/dist/file-sync.js.map +1 -0
- package/dist/file-sync.test.d.ts +2 -0
- package/dist/file-sync.test.d.ts.map +1 -0
- package/dist/file-sync.test.js +974 -0
- package/dist/file-sync.test.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/login-pty.d.ts +162 -0
- package/dist/login-pty.d.ts.map +1 -0
- package/dist/login-pty.js +258 -0
- package/dist/login-pty.js.map +1 -0
- package/dist/login-pty.test.d.ts +2 -0
- package/dist/login-pty.test.d.ts.map +1 -0
- package/dist/login-pty.test.js +319 -0
- package/dist/login-pty.test.js.map +1 -0
- package/dist/manifest.d.ts +4 -0
- package/dist/manifest.d.ts.map +1 -0
- package/dist/manifest.js +179 -0
- package/dist/manifest.js.map +1 -0
- package/dist/plugin.d.ts +49 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +2563 -0
- package/dist/plugin.js.map +1 -0
- package/dist/plugin.test.d.ts +2 -0
- package/dist/plugin.test.d.ts.map +1 -0
- package/dist/plugin.test.js +4701 -0
- package/dist/plugin.test.js.map +1 -0
- package/dist/pty-chunked-input.d.ts +48 -0
- package/dist/pty-chunked-input.d.ts.map +1 -0
- package/dist/pty-chunked-input.js +74 -0
- package/dist/pty-chunked-input.js.map +1 -0
- package/dist/pty-chunked-input.test.d.ts +2 -0
- package/dist/pty-chunked-input.test.d.ts.map +1 -0
- package/dist/pty-chunked-input.test.js +115 -0
- package/dist/pty-chunked-input.test.js.map +1 -0
- package/dist/worker.d.ts +3 -0
- package/dist/worker.d.ts.map +1 -0
- package/dist/worker.js +5 -0
- package/dist/worker.js.map +1 -0
- package/package.json +44 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"file-sync.test.js","sourceRoot":"","sources":["../src/file-sync.test.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The closed set of login command identities. The worker maps each key to a
|
|
3
|
+
* compile-time command. A value outside this set fails closed before the module
|
|
4
|
+
* touches the filesystem.
|
|
5
|
+
*/
|
|
6
|
+
export type LoginCommandKey = "claude" | "codex" | "grok";
|
|
7
|
+
/**
|
|
8
|
+
* The host-resolved launch descriptor. It carries the closed command key and the
|
|
9
|
+
* server-controlled session home. It holds no command string.
|
|
10
|
+
*/
|
|
11
|
+
export interface LoginPtyLaunchDescriptor {
|
|
12
|
+
/** The host-resolved fixed command identity. */
|
|
13
|
+
loginCommandKey: LoginCommandKey;
|
|
14
|
+
/**
|
|
15
|
+
* The server-controlled session home. The shape is exact:
|
|
16
|
+
* `/tmp/paperclip-adapter-login/<uuid>`.
|
|
17
|
+
*/
|
|
18
|
+
sessionHome: string;
|
|
19
|
+
}
|
|
20
|
+
/** The fixed non-secret error a rejected launch descriptor or session home returns. */
|
|
21
|
+
export declare const LOGIN_PTY_DESCRIPTOR_REJECTED = "LOGIN_PTY_DESCRIPTOR_REJECTED";
|
|
22
|
+
/** The fixed non-secret error a rejected session home directory returns. */
|
|
23
|
+
export declare const LOGIN_PTY_HOME_REJECTED = "LOGIN_PTY_HOME_REJECTED";
|
|
24
|
+
/**
|
|
25
|
+
* Encodes one value as a single POSIX shell argument. It wraps the value in
|
|
26
|
+
* single quotes and escapes each embedded single quote. The shell treats every
|
|
27
|
+
* other character inside single quotes as a literal, so an encoded value cannot
|
|
28
|
+
* add a second shell token or a second command.
|
|
29
|
+
*/
|
|
30
|
+
export declare function encodePosixShellArg(value: string): string;
|
|
31
|
+
/** Reports whether a value is a member of the closed login command key set. */
|
|
32
|
+
export declare function isLoginCommandKey(value: unknown): value is LoginCommandKey;
|
|
33
|
+
/**
|
|
34
|
+
* Composes the launch line for the descriptor. The module reads only
|
|
35
|
+
* {@link LOGIN_COMMAND_BY_KEY} and the closed command key on the descriptor, so
|
|
36
|
+
* a command string smuggled onto the descriptor object confers no authority.
|
|
37
|
+
* For the Codex key it prefixes one safely encoded `CODEX_HOME` assignment with
|
|
38
|
+
* `env`. For the Grok key it prefixes one safely encoded `GROK_HOME` assignment
|
|
39
|
+
* with `env`. For the Claude key it adds no home variable. It replaces the
|
|
40
|
+
* interactive shell with the command through `exec`, so the pseudo-terminal
|
|
41
|
+
* runs the command directly and its exit code becomes the PTY exit code.
|
|
42
|
+
*/
|
|
43
|
+
export declare function composeLaunchLine(descriptor: LoginPtyLaunchDescriptor): string;
|
|
44
|
+
/**
|
|
45
|
+
* A live pseudo-terminal session for one login command. The session allocates a
|
|
46
|
+
* real pseudo-terminal, streams the raw terminal output, accepts delayed input,
|
|
47
|
+
* and stops the child. The shape matches the `LoginPtySession` interface in
|
|
48
|
+
* `@tickernelz/paperclip-pro-adapter-utils`, so the transport factory there accepts a session
|
|
49
|
+
* opener that returns this session.
|
|
50
|
+
*/
|
|
51
|
+
export interface LoginPtySession {
|
|
52
|
+
/** Registers the one output listener. The session streams each raw chunk in order. */
|
|
53
|
+
onData(listener: (chunk: string) => void): void;
|
|
54
|
+
/** Writes raw input bytes to the pseudo-terminal. */
|
|
55
|
+
write(data: string): void;
|
|
56
|
+
/** Resolves with the child exit code when the command ends. */
|
|
57
|
+
wait(): Promise<{
|
|
58
|
+
exitCode: number | null;
|
|
59
|
+
}>;
|
|
60
|
+
/** Stops the child process. Safe to call more than one time. */
|
|
61
|
+
kill(): void;
|
|
62
|
+
/** Releases the session resources. Safe to call more than one time. */
|
|
63
|
+
close(): Promise<void>;
|
|
64
|
+
}
|
|
65
|
+
/** Opens a {@link LoginPtySession} for `descriptor`. The transport calls it one time. */
|
|
66
|
+
export type LoginPtySessionOpener = (descriptor: LoginPtyLaunchDescriptor) => Promise<LoginPtySession>;
|
|
67
|
+
/**
|
|
68
|
+
* The subset of the Daytona SDK `PtyHandle` that the session uses. The SDK
|
|
69
|
+
* `PtyHandle` satisfies this interface, so a caller passes the real handle with
|
|
70
|
+
* no adapter.
|
|
71
|
+
*/
|
|
72
|
+
export interface DaytonaPtyHandle {
|
|
73
|
+
/** Resolves when the PTY socket connection is ready for input and output. */
|
|
74
|
+
waitForConnection(): Promise<void>;
|
|
75
|
+
/** Sends raw input bytes to the pseudo-terminal. */
|
|
76
|
+
sendInput(data: string | Uint8Array): Promise<void>;
|
|
77
|
+
/** Resolves with the exit result when the pseudo-terminal process ends. */
|
|
78
|
+
wait(): Promise<{
|
|
79
|
+
exitCode?: number;
|
|
80
|
+
error?: string;
|
|
81
|
+
}>;
|
|
82
|
+
/** Kills the pseudo-terminal process. */
|
|
83
|
+
kill(): Promise<void>;
|
|
84
|
+
/** Closes the PTY socket and releases the resources. */
|
|
85
|
+
disconnect(): Promise<void>;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* The options the session passes to `createPty`. The session sets a fixed
|
|
89
|
+
* terminal size and one output callback. It sets the working directory when the
|
|
90
|
+
* caller provides one.
|
|
91
|
+
*/
|
|
92
|
+
export interface DaytonaPtyCreateOptions {
|
|
93
|
+
id: string;
|
|
94
|
+
cwd?: string;
|
|
95
|
+
cols: number;
|
|
96
|
+
rows: number;
|
|
97
|
+
onData: (data: Uint8Array) => void | Promise<void>;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* The subset of the Daytona SDK `Process` that the session uses. The SDK
|
|
101
|
+
* `Process` satisfies this interface, so a caller passes `sandbox.process`.
|
|
102
|
+
*/
|
|
103
|
+
export interface DaytonaPtyProcess {
|
|
104
|
+
createPty(options: DaytonaPtyCreateOptions): Promise<DaytonaPtyHandle>;
|
|
105
|
+
}
|
|
106
|
+
/** The result of one command run on the sandbox. */
|
|
107
|
+
export interface DaytonaExecResult {
|
|
108
|
+
exitCode?: number;
|
|
109
|
+
result?: string;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* The subset of the Daytona SDK `Process` that the filesystem helper uses. The
|
|
113
|
+
* SDK `Process` satisfies this interface through `executeCommand`, so a caller
|
|
114
|
+
* passes `sandbox.process`.
|
|
115
|
+
*/
|
|
116
|
+
export interface DaytonaSandboxExec {
|
|
117
|
+
executeCommand(command: string, cwd?: string, env?: Record<string, string>, timeout?: number): Promise<DaytonaExecResult>;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* The narrow filesystem surface the session home operation needs. The production
|
|
121
|
+
* surface runs a command on the sandbox; a unit test injects a fake.
|
|
122
|
+
*/
|
|
123
|
+
export interface DaytonaLoginHomeFs {
|
|
124
|
+
/**
|
|
125
|
+
* Creates `path` as a directory, plus a missing parent directory. It does not
|
|
126
|
+
* fail when the directory already exists.
|
|
127
|
+
*/
|
|
128
|
+
createDirectory(path: string): Promise<void>;
|
|
129
|
+
}
|
|
130
|
+
/** The options for the Daytona login PTY session. */
|
|
131
|
+
export interface DaytonaLoginPtyOptions {
|
|
132
|
+
/** The working directory for the login PTY. Defaults to the sandbox default. */
|
|
133
|
+
cwd?: string;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Opens a Daytona PTY session for `descriptor` and returns it as a
|
|
137
|
+
* {@link LoginPtySession}. The function revalidates the descriptor and the home
|
|
138
|
+
* shape, creates the session home, opens a real pseudo-terminal, composes the
|
|
139
|
+
* safe launch line, and sends it. The session streams the raw terminal output,
|
|
140
|
+
* delivers delayed input, and stops the child.
|
|
141
|
+
*
|
|
142
|
+
* The function decodes the terminal bytes as a UTF-8 stream, so a multibyte
|
|
143
|
+
* character that splits across two output chunks stays whole. It buffers the
|
|
144
|
+
* output until the transport registers the listener, so no early chunk is lost.
|
|
145
|
+
*/
|
|
146
|
+
export declare function openDaytonaLoginPtySession(process: DaytonaPtyProcess, fs: DaytonaLoginHomeFs, descriptor: LoginPtyLaunchDescriptor, options?: DaytonaLoginPtyOptions): Promise<LoginPtySession>;
|
|
147
|
+
/**
|
|
148
|
+
* Creates a {@link DaytonaLoginHomeFs} bound to a Daytona `process`. It runs one
|
|
149
|
+
* `mkdir -p` command on the sandbox to create the session home. The command runs
|
|
150
|
+
* inside the sandbox, so it holds no authority over a host file and no authority
|
|
151
|
+
* to call the Paperclip API. The real command lands against a live sandbox; a
|
|
152
|
+
* unit test injects a fake surface instead.
|
|
153
|
+
*/
|
|
154
|
+
export declare function createDaytonaLoginHomeFs(exec: DaytonaSandboxExec): DaytonaLoginHomeFs;
|
|
155
|
+
/**
|
|
156
|
+
* Creates a {@link LoginPtySessionOpener} bound to a Daytona `process` and a
|
|
157
|
+
* {@link DaytonaLoginHomeFs}. The opener runs the login command on a real
|
|
158
|
+
* pseudo-terminal, streams the terminal output, delivers the delayed browser code
|
|
159
|
+
* plus the Enter byte, and stops the child for a terminal state.
|
|
160
|
+
*/
|
|
161
|
+
export declare function createDaytonaLoginPtySessionOpener(process: DaytonaPtyProcess, fs: DaytonaLoginHomeFs, options?: DaytonaLoginPtyOptions): LoginPtySessionOpener;
|
|
162
|
+
//# sourceMappingURL=login-pty.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login-pty.d.ts","sourceRoot":"","sources":["../src/login-pty.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,258 @@
|
|
|
1
|
+
// The Daytona pseudo-terminal (PTY) session for the shared login flow. The login
|
|
2
|
+
// command needs a real pseudo-terminal: pipe stdio emits no login prompt. The
|
|
3
|
+
// Daytona SDK opens a PTY through `process.createPty`. This module binds that PTY
|
|
4
|
+
// to a small session that the login PTY transport consumes, so the login runner
|
|
5
|
+
// runs the command on a real terminal, streams the terminal output, and delivers
|
|
6
|
+
// the delayed browser code plus the Enter byte.
|
|
7
|
+
//
|
|
8
|
+
// Command contract: the host resolves a closed login command key and a validated
|
|
9
|
+
// session home, and it carries them in a launch descriptor. The descriptor holds
|
|
10
|
+
// no command string. This module maps the key to a compile-time command, so a
|
|
11
|
+
// caller cannot select or override the command. For the Codex key the module
|
|
12
|
+
// composes `exec env CODEX_HOME=<encoded-home> <fixed-codex-command>`. For the
|
|
13
|
+
// Grok key it composes `exec env GROK_HOME=<encoded-home> <fixed-grok-command>`.
|
|
14
|
+
// For the Claude key it composes `exec <fixed-claude-command>` with no home
|
|
15
|
+
// variable. The module encodes the dynamic home with a POSIX shell-argument
|
|
16
|
+
// encoder, so the home cannot add a second shell token or a second command.
|
|
17
|
+
//
|
|
18
|
+
// Session home: the module revalidates the descriptor and the home shape, then
|
|
19
|
+
// creates the session home directory with one `mkdir -p` command. The command
|
|
20
|
+
// runs inside the sandbox, so it holds no authority over a host file and no
|
|
21
|
+
// authority to call the Paperclip API. The sandbox contract in
|
|
22
|
+
// `SANDBOX-REQUIREMENTS.md` treats a check that only inspects state inside the
|
|
23
|
+
// sandbox as a non-boundary control, so this module keeps no owner check, no
|
|
24
|
+
// mode check, and no link-type check for the session home.
|
|
25
|
+
//
|
|
26
|
+
// Dependency boundary: this provider plugin ships standalone (the workspace
|
|
27
|
+
// excludes `packages/plugins/sandbox-providers/**`). So the module imports no
|
|
28
|
+
// workspace package. It declares the small session shape locally through
|
|
29
|
+
// {@link LoginPtySession}. The shape matches the `LoginPtySession` interface in
|
|
30
|
+
// `@tickernelz/paperclip-pro-adapter-utils`, so the transport factory `createLoginPtyTransport`
|
|
31
|
+
// accepts the session opener from this module with no adapter. The runner drives
|
|
32
|
+
// the transport; the transport drives this session.
|
|
33
|
+
//
|
|
34
|
+
// SDK boundary: the module holds no Daytona SDK type import. It declares the small
|
|
35
|
+
// subset of the SDK PTY and filesystem surfaces that it uses through
|
|
36
|
+
// {@link DaytonaPtyProcess}, {@link DaytonaPtyHandle}, and {@link DaytonaSandboxExec}.
|
|
37
|
+
// The SDK `Process` and `PtyHandle` satisfy those subsets, so a caller passes
|
|
38
|
+
// `sandbox.process` with no adapter. The narrow surface keeps the module
|
|
39
|
+
// unit-testable with a fake PTY and a fake filesystem.
|
|
40
|
+
//
|
|
41
|
+
// Security (secret handling): the login runner delivers the browser code and the
|
|
42
|
+
// Enter byte through {@link DaytonaPtyHandle.sendInput}. The SDK sends the input
|
|
43
|
+
// over the PTY socket, so the code never rides a command line and never reaches a
|
|
44
|
+
// process argument list. The session forwards the raw terminal bytes with no ANSI
|
|
45
|
+
// or OSC 8 handling; the login parser owns that handling.
|
|
46
|
+
import { randomUUID } from "node:crypto";
|
|
47
|
+
import { sendPtyInputInChunks } from "./pty-chunked-input.js";
|
|
48
|
+
/**
|
|
49
|
+
* The compile-time command for each login command key. The Daytona plugin ships
|
|
50
|
+
* standalone, so it holds its own copy of the fixed commands. A future change to
|
|
51
|
+
* a command lands here and in the adapter constant together.
|
|
52
|
+
*/
|
|
53
|
+
const LOGIN_COMMAND_BY_KEY = {
|
|
54
|
+
claude: "claude setup-token",
|
|
55
|
+
codex: "codex login --device-auth",
|
|
56
|
+
grok: "grok login --device-auth",
|
|
57
|
+
};
|
|
58
|
+
/** The fixed root for a login session home. */
|
|
59
|
+
const LOGIN_SESSION_HOME_ROOT = "/tmp/paperclip-adapter-login";
|
|
60
|
+
/**
|
|
61
|
+
* The exact absolute path shape for a login session home. The path is the fixed
|
|
62
|
+
* root, one slash, and one UUID. The anchors reject a relative path, a traversal,
|
|
63
|
+
* whitespace, a control character, and a shell metacharacter, because none of
|
|
64
|
+
* those match the UUID or the fixed root.
|
|
65
|
+
*/
|
|
66
|
+
const SESSION_HOME_PATTERN = /^\/tmp\/paperclip-adapter-login\/[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/;
|
|
67
|
+
/** The fixed non-secret error a rejected launch descriptor or session home returns. */
|
|
68
|
+
export const LOGIN_PTY_DESCRIPTOR_REJECTED = "LOGIN_PTY_DESCRIPTOR_REJECTED";
|
|
69
|
+
/** The fixed non-secret error a rejected session home directory returns. */
|
|
70
|
+
export const LOGIN_PTY_HOME_REJECTED = "LOGIN_PTY_HOME_REJECTED";
|
|
71
|
+
/**
|
|
72
|
+
* Encodes one value as a single POSIX shell argument. It wraps the value in
|
|
73
|
+
* single quotes and escapes each embedded single quote. The shell treats every
|
|
74
|
+
* other character inside single quotes as a literal, so an encoded value cannot
|
|
75
|
+
* add a second shell token or a second command.
|
|
76
|
+
*/
|
|
77
|
+
export function encodePosixShellArg(value) {
|
|
78
|
+
return `'${value.split("'").join("'\\''")}'`;
|
|
79
|
+
}
|
|
80
|
+
/** Reports whether a value is a member of the closed login command key set. */
|
|
81
|
+
export function isLoginCommandKey(value) {
|
|
82
|
+
return value === "claude" || value === "codex" || value === "grok";
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Composes the launch line for the descriptor. The module reads only
|
|
86
|
+
* {@link LOGIN_COMMAND_BY_KEY} and the closed command key on the descriptor, so
|
|
87
|
+
* a command string smuggled onto the descriptor object confers no authority.
|
|
88
|
+
* For the Codex key it prefixes one safely encoded `CODEX_HOME` assignment with
|
|
89
|
+
* `env`. For the Grok key it prefixes one safely encoded `GROK_HOME` assignment
|
|
90
|
+
* with `env`. For the Claude key it adds no home variable. It replaces the
|
|
91
|
+
* interactive shell with the command through `exec`, so the pseudo-terminal
|
|
92
|
+
* runs the command directly and its exit code becomes the PTY exit code.
|
|
93
|
+
*/
|
|
94
|
+
export function composeLaunchLine(descriptor) {
|
|
95
|
+
const command = LOGIN_COMMAND_BY_KEY[descriptor.loginCommandKey];
|
|
96
|
+
const encodedHome = encodePosixShellArg(descriptor.sessionHome);
|
|
97
|
+
if (descriptor.loginCommandKey === "codex") {
|
|
98
|
+
return `exec env CODEX_HOME=${encodedHome} ${command}`;
|
|
99
|
+
}
|
|
100
|
+
if (descriptor.loginCommandKey === "grok") {
|
|
101
|
+
return `exec env GROK_HOME=${encodedHome} ${command}`;
|
|
102
|
+
}
|
|
103
|
+
return `exec ${command}`;
|
|
104
|
+
}
|
|
105
|
+
// The terminal size for the login PTY. The login UI prints a short prompt, so a
|
|
106
|
+
// standard terminal size is enough. A fixed size keeps the output stable.
|
|
107
|
+
const LOGIN_PTY_COLS = 120;
|
|
108
|
+
const LOGIN_PTY_ROWS = 30;
|
|
109
|
+
/**
|
|
110
|
+
* The input terminator that replaces the interactive shell with the login
|
|
111
|
+
* command. The `exec` builtin replaces the shell process image with the command,
|
|
112
|
+
* so the PTY runs the command directly. When the command ends, the PTY ends with
|
|
113
|
+
* the command exit code, and the delayed input reaches the command, not a shell.
|
|
114
|
+
* The terminal reads the carriage return as the Enter key.
|
|
115
|
+
*/
|
|
116
|
+
const PTY_COMMAND_TERMINATOR = "\r";
|
|
117
|
+
/**
|
|
118
|
+
* Revalidates the launch descriptor. It fails closed when the command key is
|
|
119
|
+
* outside the closed set or the session home shape is wrong. A unit test that
|
|
120
|
+
* bypasses the host boundary hits this check, so the provider never trusts an
|
|
121
|
+
* unvalidated descriptor.
|
|
122
|
+
*/
|
|
123
|
+
function assertDescriptor(descriptor) {
|
|
124
|
+
if (!isLoginCommandKey(descriptor.loginCommandKey)) {
|
|
125
|
+
throw new Error(LOGIN_PTY_DESCRIPTOR_REJECTED);
|
|
126
|
+
}
|
|
127
|
+
if (!SESSION_HOME_PATTERN.test(descriptor.sessionHome)) {
|
|
128
|
+
throw new Error(LOGIN_PTY_DESCRIPTOR_REJECTED);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Opens a Daytona PTY session for `descriptor` and returns it as a
|
|
133
|
+
* {@link LoginPtySession}. The function revalidates the descriptor and the home
|
|
134
|
+
* shape, creates the session home, opens a real pseudo-terminal, composes the
|
|
135
|
+
* safe launch line, and sends it. The session streams the raw terminal output,
|
|
136
|
+
* delivers delayed input, and stops the child.
|
|
137
|
+
*
|
|
138
|
+
* The function decodes the terminal bytes as a UTF-8 stream, so a multibyte
|
|
139
|
+
* character that splits across two output chunks stays whole. It buffers the
|
|
140
|
+
* output until the transport registers the listener, so no early chunk is lost.
|
|
141
|
+
*/
|
|
142
|
+
export async function openDaytonaLoginPtySession(process, fs, descriptor, options) {
|
|
143
|
+
assertDescriptor(descriptor);
|
|
144
|
+
// Create the session home. `mkdir -p` succeeds when the directory already
|
|
145
|
+
// exists, so a repeat login for the same home needs no extra check.
|
|
146
|
+
await fs.createDirectory(descriptor.sessionHome);
|
|
147
|
+
const decoder = new TextDecoder("utf-8");
|
|
148
|
+
let listener = null;
|
|
149
|
+
let buffered = "";
|
|
150
|
+
const handle = await process.createPty({
|
|
151
|
+
id: `paperclip-login-pty-${randomUUID()}`,
|
|
152
|
+
...(options?.cwd ? { cwd: options.cwd } : {}),
|
|
153
|
+
cols: LOGIN_PTY_COLS,
|
|
154
|
+
rows: LOGIN_PTY_ROWS,
|
|
155
|
+
onData: (data) => {
|
|
156
|
+
// Decode the terminal bytes as a stream, so a split multibyte character
|
|
157
|
+
// stays whole across two chunks. Forward the raw text; the parser owns the
|
|
158
|
+
// ANSI and OSC 8 handling.
|
|
159
|
+
const text = decoder.decode(data, { stream: true });
|
|
160
|
+
if (text.length === 0)
|
|
161
|
+
return;
|
|
162
|
+
if (listener)
|
|
163
|
+
listener(text);
|
|
164
|
+
else
|
|
165
|
+
buffered += text;
|
|
166
|
+
},
|
|
167
|
+
});
|
|
168
|
+
await handle.waitForConnection();
|
|
169
|
+
// Replace the interactive shell with the login command, so the pseudo-terminal
|
|
170
|
+
// runs the command directly. The runner then writes the delayed browser code
|
|
171
|
+
// to the command, not to a shell.
|
|
172
|
+
await handle.sendInput(composeLaunchLine(descriptor) + PTY_COMMAND_TERMINATOR);
|
|
173
|
+
// The tail of the write chain. The chunker awaits each chunk, so one write can
|
|
174
|
+
// suspend between its chunks. The chain runs each write after the previous
|
|
175
|
+
// write ends, so the chunks of two writes never interleave on the wire.
|
|
176
|
+
let writeChain = Promise.resolve();
|
|
177
|
+
return {
|
|
178
|
+
onData(next) {
|
|
179
|
+
listener = next;
|
|
180
|
+
if (buffered.length > 0) {
|
|
181
|
+
const pending = buffered;
|
|
182
|
+
buffered = "";
|
|
183
|
+
next(pending);
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
write(data) {
|
|
187
|
+
// Send the input as byte-bounded chunks under the provider message cap. The
|
|
188
|
+
// login input is short today, so the latent defect never fires, but the same
|
|
189
|
+
// unbounded write goes through the one chunker. The chain runs this write
|
|
190
|
+
// after the previous write ends, so two writes keep their order and never
|
|
191
|
+
// interleave their chunks. A write error must not throw into the runner, so
|
|
192
|
+
// the runner's fixed status stays the single result path.
|
|
193
|
+
writeChain = writeChain.then(() => sendPtyInputInChunks((chunk) => handle.sendInput(chunk), data));
|
|
194
|
+
},
|
|
195
|
+
async wait() {
|
|
196
|
+
const result = await handle.wait();
|
|
197
|
+
return { exitCode: typeof result.exitCode === "number" ? result.exitCode : null };
|
|
198
|
+
},
|
|
199
|
+
kill() {
|
|
200
|
+
void handle.kill().catch(() => undefined);
|
|
201
|
+
},
|
|
202
|
+
async close() {
|
|
203
|
+
await handle.disconnect().catch(() => undefined);
|
|
204
|
+
},
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* The login-profile preamble for a sandbox exec command. Daytona's
|
|
209
|
+
* `executeCommand` runs the command in a non-login shell, so the shell does not
|
|
210
|
+
* source `/etc/profile` on its own. The Daytona reference image puts a CLI on the
|
|
211
|
+
* PATH through `/etc/profile.d`, which only a login profile sources. The login
|
|
212
|
+
* pseudo-terminal resolves the login command through the same profiles, so this
|
|
213
|
+
* preamble sources the login profiles first, and a non-login shell then resolves
|
|
214
|
+
* the same CLI set. The main exec path uses the same profile chain (see
|
|
215
|
+
* `buildLoginShellScript` in `plugin.ts`). Each source line fails open
|
|
216
|
+
* (`|| true`), so a missing profile does not fail the command.
|
|
217
|
+
*/
|
|
218
|
+
const LOGIN_PROFILE_PREAMBLE = [
|
|
219
|
+
"if [ -f /etc/profile ]; then . /etc/profile >/dev/null 2>&1 || true; fi",
|
|
220
|
+
'if [ -f "$HOME/.profile" ]; then . "$HOME/.profile" >/dev/null 2>&1 || true; fi',
|
|
221
|
+
'if [ -f "$HOME/.bash_profile" ]; then . "$HOME/.bash_profile" >/dev/null 2>&1 || true; elif [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" >/dev/null 2>&1 || true; fi',
|
|
222
|
+
'if [ -f "$HOME/.zprofile" ]; then . "$HOME/.zprofile" >/dev/null 2>&1 || true; fi',
|
|
223
|
+
].join(" && ");
|
|
224
|
+
/**
|
|
225
|
+
* Composes a sandbox exec command that runs after the login-profile preamble.
|
|
226
|
+
* The preamble runs first, then the `&&` chain runs `command`.
|
|
227
|
+
*/
|
|
228
|
+
function composeLoginProfileCommand(command) {
|
|
229
|
+
return `${LOGIN_PROFILE_PREAMBLE} && ${command}`;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* Creates a {@link DaytonaLoginHomeFs} bound to a Daytona `process`. It runs one
|
|
233
|
+
* `mkdir -p` command on the sandbox to create the session home. The command runs
|
|
234
|
+
* inside the sandbox, so it holds no authority over a host file and no authority
|
|
235
|
+
* to call the Paperclip API. The real command lands against a live sandbox; a
|
|
236
|
+
* unit test injects a fake surface instead.
|
|
237
|
+
*/
|
|
238
|
+
export function createDaytonaLoginHomeFs(exec) {
|
|
239
|
+
return {
|
|
240
|
+
async createDirectory(path) {
|
|
241
|
+
const encodedPath = encodePosixShellArg(path);
|
|
242
|
+
const out = await exec.executeCommand(composeLoginProfileCommand(`mkdir -p ${encodedPath}`));
|
|
243
|
+
if ((out.exitCode ?? 0) !== 0) {
|
|
244
|
+
throw new Error(LOGIN_PTY_HOME_REJECTED);
|
|
245
|
+
}
|
|
246
|
+
},
|
|
247
|
+
};
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Creates a {@link LoginPtySessionOpener} bound to a Daytona `process` and a
|
|
251
|
+
* {@link DaytonaLoginHomeFs}. The opener runs the login command on a real
|
|
252
|
+
* pseudo-terminal, streams the terminal output, delivers the delayed browser code
|
|
253
|
+
* plus the Enter byte, and stops the child for a terminal state.
|
|
254
|
+
*/
|
|
255
|
+
export function createDaytonaLoginPtySessionOpener(process, fs, options) {
|
|
256
|
+
return (descriptor) => openDaytonaLoginPtySession(process, fs, descriptor, options);
|
|
257
|
+
}
|
|
258
|
+
//# sourceMappingURL=login-pty.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login-pty.js","sourceRoot":"","sources":["../src/login-pty.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login-pty.test.d.ts","sourceRoot":"","sources":["../src/login-pty.test.ts"],"names":[],"mappings":""}
|