| name | ssh-ops |
| description | Use for SSH and remote shell tasks through the shell-only ssh-ops wrappers (`scripts/ssh_ops.sh`). Supports ad-hoc host/user/auth, command execution, guarded PTY workflows, scp copy, credentials, and transcript-aware troubleshooting. |
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)
Policy
- Use
scripts/ssh_ops.sh commands 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 guarded pty-*.
- Use
scp-copy when 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.