opencode-landstrip 0.18.43 → 0.19.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 +27 -34
- package/index.ts +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,51 +1,44 @@
|
|
|
1
1
|
# opencode-landstrip
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Landstrip sandboxing for AI `bash` calls in OpenCode ≥1.17.7.
|
|
4
4
|
|
|
5
|
-
## Install
|
|
5
|
+
## Install and use
|
|
6
6
|
|
|
7
7
|
```sh
|
|
8
|
-
#
|
|
9
|
-
opencode plugin install opencode-landstrip
|
|
10
|
-
|
|
11
|
-
# Global
|
|
12
|
-
opencode plugin install opencode-landstrip --global
|
|
8
|
+
opencode plugin install opencode-landstrip # project
|
|
9
|
+
opencode plugin install opencode-landstrip --global # global
|
|
13
10
|
```
|
|
14
11
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
## Permissions
|
|
12
|
+
Installation configures server and TUI plugins. `/landstrip` opens the management
|
|
13
|
+
pane; Pi's agent/task subcommands are unavailable.
|
|
18
14
|
|
|
19
|
-
|
|
20
|
-
filesystem and network access. Agent approval never bypasses a sandbox hard
|
|
21
|
-
denial, and requests without a live presenter are denied.
|
|
15
|
+
## Permissions and configuration
|
|
22
16
|
|
|
23
|
-
OpenCode
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
17
|
+
OpenCode authorizes tool dispatch; Landstrip enforces filesystem/network access.
|
|
18
|
+
Approval never bypasses hard denials. Interactive requests without a live
|
|
19
|
+
presenter remain denied. Only AI `bash` receives OS isolation: OpenCode's plugin
|
|
20
|
+
API cannot replace direct user shell commands.
|
|
27
21
|
|
|
28
|
-
|
|
22
|
+
Policy precedence (persistent approvals update the project/global files):
|
|
29
23
|
|
|
30
|
-
|
|
24
|
+
1. Bundled [`sandbox.json`](sandbox.json).
|
|
25
|
+
2. `~/.config/opencode/sandbox.json`.
|
|
26
|
+
3. `.opencode/sandbox.json`.
|
|
27
|
+
4. Plugin options.
|
|
31
28
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
4. plugin options.
|
|
29
|
+
Arrays combine; later scalar values win. Defaults allow project writes, deny
|
|
30
|
+
sensitive-file writes, and block network access. Enabled sandboxing fails closed
|
|
31
|
+
on unusable binaries/platforms; `enabled: false` explicitly permits unsandboxed Bash.
|
|
36
32
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
defaults.
|
|
33
|
+
See [landstrip(1)](../landstrip/man/man1/landstrip.1) for native CLI/policy semantics.
|
|
34
|
+
Runtime seccomp traps/query approval are Linux-only. Native macOS `--trap` reports
|
|
35
|
+
setup/launch errors only and closes on successful exec—not runtime violations.
|
|
41
36
|
|
|
42
|
-
|
|
43
|
-
closed. Set `enabled` to `false` explicitly to allow unsandboxed AI Bash.
|
|
37
|
+
## Development
|
|
44
38
|
|
|
45
|
-
|
|
46
|
-
|
|
39
|
+
From this package: `npm ci`, then `npm run all` (format, lint, typecheck, tests).
|
|
40
|
+
Read-only formatting check: `npm run ci:fmt`.
|
|
47
41
|
|
|
48
|
-
##
|
|
42
|
+
## License
|
|
49
43
|
|
|
50
|
-
|
|
51
|
-
for more information.
|
|
44
|
+
Apache-2.0; see [LICENSE](LICENSE).
|
package/index.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "opencode-landstrip",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.19.0",
|
|
4
4
|
"description": "OS-level AI command sandboxing for OpenCode with Landstrip",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"landlock",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"ci:test": "npm test"
|
|
49
49
|
},
|
|
50
50
|
"dependencies": {
|
|
51
|
-
"@landstrip/landstrip-api": "^0.
|
|
51
|
+
"@landstrip/landstrip-api": "^0.19.0",
|
|
52
52
|
"@opentui/core": ">=0.3.4",
|
|
53
53
|
"@opentui/solid": ">=0.3.4",
|
|
54
54
|
"solid-js": "1.9.12"
|