sessionpipe 0.9.0 → 0.10.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 +25 -2
- package/dist/cli.js +4358 -3288
- package/dist/cli.js.map +4 -4
- package/dist/control/aliases.d.ts +5 -0
- package/dist/control/aliases.d.ts.map +1 -1
- package/dist/control/autoupdate.d.ts +1 -18
- package/dist/control/autoupdate.d.ts.map +1 -1
- package/dist/control/cli.d.ts +1 -1
- package/dist/control/cli.d.ts.map +1 -1
- package/dist/control/daemon.d.ts +83 -12
- package/dist/control/daemon.d.ts.map +1 -1
- package/dist/control/files.d.ts +6 -4
- package/dist/control/files.d.ts.map +1 -1
- package/dist/control/pair.d.ts +15 -23
- package/dist/control/pair.d.ts.map +1 -1
- package/dist/control/route.d.ts +1 -1
- package/dist/control/route.d.ts.map +1 -1
- package/dist/control/sdk.d.ts.map +1 -1
- package/dist/control/store.d.ts +21 -2
- package/dist/control/store.d.ts.map +1 -1
- package/dist/hook.d.ts.map +1 -1
- package/dist/hook.js +7 -1
- package/dist/hook.js.map +2 -2
- package/dist/index.js +150 -44
- package/dist/index.js.map +4 -4
- package/dist/run.d.ts.map +1 -1
- package/dist/update.d.ts +1 -7
- package/dist/update.d.ts.map +1 -1
- package/dist/worker.js +152 -46
- package/dist/worker.js.map +4 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -92,7 +92,13 @@ Permission prompts can be answered from the receiver too: while the terminal sho
|
|
|
92
92
|
its prompt, the PermissionRequest hook waits for your signed answer, and whichever
|
|
93
93
|
comes first wins. Nothing is ever auto-allowed. Safe mode (the default) runs headless
|
|
94
94
|
turns with `--permission-mode dontAsk`, so nothing that needs approval runs while
|
|
95
|
-
you're away.
|
|
95
|
+
you're away. Auto mode runs them with `--permission-mode auto`; where Claude Code's
|
|
96
|
+
settings turn auto mode off (`permissions.disableAutoMode`), Claude Code runs them in
|
|
97
|
+
its default mode instead, which refuses whatever needs approval. Inherit mode
|
|
98
|
+
(`sessionpipe control mode inherit`, chosen only at the machine) passes no permission
|
|
99
|
+
flag, so each turn starts in the mode Claude Code picks by itself there, its
|
|
100
|
+
settings' `permissions.defaultMode`: messaged sessions run the way your own do,
|
|
101
|
+
`bypassPermissions` included if that is what you set.
|
|
96
102
|
|
|
97
103
|
Codex and Antigravity sessions are reached headlessly too, when `codex` or `agy` is
|
|
98
104
|
installed (the daemon looks on PATH, beside its own Node, in `~/.local/bin`, or where
|
|
@@ -101,7 +107,9 @@ installed (the daemon looks on PATH, beside its own Node, in `~/.local/bin`, or
|
|
|
101
107
|
message is `codex exec resume <thread>` or `agy --conversation <id>`. Safe mode runs
|
|
102
108
|
Codex in its `workspace-write` sandbox and agy with no permission flag (it denies, and
|
|
103
109
|
the reply lists, what it wasn't allowed to do); auto mode passes `--approve-for-me` /
|
|
104
|
-
`--mode accept-edits
|
|
110
|
+
`--mode accept-edits`; inherit mode passes no flag, so Codex follows the
|
|
111
|
+
`approval_policy` and `sandbox_mode` in your `config.toml`. The bypass flags are never
|
|
112
|
+
passed. Both CLIs pick a new
|
|
105
113
|
session's id themselves, so the daemon keeps the one your start named: it records the
|
|
106
114
|
pair in `~/.local/state/sessionpipe/control/aliases.json`, and your receiver keeps
|
|
107
115
|
seeing one session under one id. A message to a Codex session someone has open (its
|
|
@@ -109,6 +117,21 @@ rollout written in the last 90 seconds) is acked `unsupported` rather than resum
|
|
|
109
117
|
Before a Codex run the daemon checks `codex login status` (or `CODEX_API_KEY`) and says
|
|
110
118
|
`codex login --device-auth` if it isn't signed in.
|
|
111
119
|
|
|
120
|
+
Any other agent that speaks the [Agent Client Protocol](https://agentclientprotocol.com)
|
|
121
|
+
is reached the same way: Gemini CLI, OpenCode, goose, Copilot CLI, Cursor, Droid, Devin,
|
|
122
|
+
Kilo, Qwen Code, Cline and the rest of the ACP registry ([the list, with each one's
|
|
123
|
+
launch line](../../spec/ADAPTERS.md#agents-driven-through-acp-control-only)). The daemon
|
|
124
|
+
runs the agent's own CLI (`gemini --acp`, `opencode acp`, …) when it is installed, on
|
|
125
|
+
PATH or where `SESSIONPIPE_ACP_<HARNESS>` points (`SESSIONPIPE_ACP_GEMINI_CLI`), and
|
|
126
|
+
never downloads one. It is the agent's client: a start opens a session in your folder,
|
|
127
|
+
the reply streams back as the agent writes it, and the process stays up so the next
|
|
128
|
+
message lands in it with no cold start (`api` mode); `cancel` works there too. An agent
|
|
129
|
+
idle for ten minutes is closed, and a later message reopens the session where the agent
|
|
130
|
+
supports `session/load`. Safe mode answers every permission the agent asks with a
|
|
131
|
+
refusal, listed in the reply; auto mode allows. An agent that never asks (OpenCode, by
|
|
132
|
+
its own settings) runs its tools as it would at your terminal. Signing in is yours to do
|
|
133
|
+
at the terminal: an agent that wants it says so in the reply.
|
|
134
|
+
|
|
112
135
|
## Updates
|
|
113
136
|
|
|
114
137
|
The control daemon keeps its own copy current. About a minute after it starts, and then
|