To make the review of your request easier, please use the following template to provide all the required details and also include any other information that may be relevant.
name: openshell
description: Safe, sandboxed runtimes for autonomous AI agents
upstream-relation: maintained upstream by nvidia and canonical
interfaces:
docker:
request-type: auto-connection
reasoning: openshell uses docker to create sandboxes
log-observe:
request-type: auto-connection
reasoning: openshell has an internal sandbox that looks at system logs to find about outgoing connection attempts that were denied and offers users policy changes inside “openshell term”
system-observe:
request-type: auto-connection
reasoning: openshell gateway uses system observe as it grants ptrace that is needed by the internal sandbox
ssh-keys:
request-type: auto-connection
reasoning: “openshell sandbox connect” uses ssh-keys as it grants access to the ssh binary and also the user’s keys so that one can ssh to a sandbox created earlier
Given the functionality of the snap, it makes sense to me to grant auto-connection to docker, log-observe and system-observe interfaces.
Regarding ssh-keys, providing access to existing ssh keys to be able to access the sandboxed containers does not sound like a good idea. Instead, Openshell should create specific ssh keys, place in the per-snap home directory and inject that key to the docker containers. SSH binary can also be staged to be present inside the snap.
docker is not typically granted auto-connection because the level of privilege it provides. It has only been granted in the past very few times after publisher vetting. Given the reasoning, I’m fine with granting it in this case
log-observe and system-observe are fine.
ssh-keys I agree you possibly don’t need the interface at all (not even manual-connection). The binary may be shipped with the snap and specific key generated for this only purpose used instead (similar to what vagrand did). Unless there is a very specific reason I’m missing now, I think this would be a better approach even for a non-snap version of openshell
Hi @zyga, If you agree with us about ssh-keys interface, I will go ahead and grant the access to other requested interfaces. If you think otherwise, kindly let us know.