As for the implementation of the file/dir commands, I think SFTP is causing more trouble than it's worth. If we change the implementation, we can keep the current operations. I tested these manually. I think we can assume that all hosts have tee and cat.
Not every operation on the machine requires sudo, so I suggest that we do not decide to use sudo at client create time.
I think that for each function the client provides, it should provide a variant that takes a user as input:
As for the implementation of the file/dir commands, I think SFTP is causing more trouble than it's worth. If we change the implementation, we can keep the current operations. I tested these manually. I think we can assume that all hosts have tee and cat.
WriteFile(As)
ReadFile(As)
MkdirAll(As)