SSH Ops
Use shell wrappers only.
Preflight
- Confirm wrapper exists:
/Users/chris/projects/ssh-ops/scripts/ssh_ops.sh. - Confirm system SSH exists:
/usr/bin/ssh. - Decide state-dir strategy:
- default: wrapper auto-uses
/tmp/ssh-ops-$USER/<cwd-hash> - explicit: pass
--state-dir /tmp/ssh-ops-<name>(recommended for long sessions and scripts)
- default: wrapper auto-uses
Policy
- Use
scripts/ssh_ops.shcommands only. - Keep the same state dir across session-open/exec/pty/scp/session-close for continuity.
- Default to non-PTY command execution.
- PTY only when needed, with strict guardrails and override flag.
- Report exit codes, stderr summary, and transcript offsets.
Core Workflow
- Open or reuse session:
session-open/session-list. - Execute remote work with
exec(default) or guardedpty-*. - Use
scp-copywhen file transfer is needed. - Close session with
session-close.
See references/workflows.md and references/policies.md.
Credentials
- Save credential:
credential-save. - List credentials:
credential-list. - Delete credentials:
credential-delete.
Error Handling
Use references/errors.md.