Install
$ agentstack add skill-vivekkartha-terminal-computer-use-computer ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Terminal Computer Use
Operate the machine through the terminal, not GUI pixel control / vision APIs. Prefer reusable scripts in this skill’s scripts/ directory; write new ones when a pattern will be reused.
Paths (portable)
Never hardcode ~/.grok or any single agent’s install path.
| Variable | Meaning | |----------|---------| | SKILL_ROOT | Directory containing this SKILL.md (wherever the skill was installed) | | SCRIPTS | ${SKILL_ROOT}/scripts | | TERMINAL_COMPUTER_USE_HOME | Optional env override for SKILL_ROOT |
Resolve once per session from the loaded skill path, or:
# When running a script, paths resolve via scripts/lib/common.sh automatically.
bash "${SCRIPTS}/doctor.sh"
If you only know the install locations, try in order:
$TERMINAL_COMPUTER_USE_HOME- Path of the skill file the agent loaded
~/.agents/skills/computer~/.grok/skills/computer~/.claude/skills/computer~/.cursor/skills/computer
Operating principles
- Prefer library scripts over one-off shell when a script already covers the task.
- Shell first; Python when parsing / multi-file logic is clearer.
- Persist useful automation under
scripts/with--helpand--dry-runwhen mutating. - Confirm before bulk delete, overwrite, or externally visible sends.
- Absolute paths, quote spaces, never
rm -rfwithout an explicit approved target list. - Idempotent when possible. Report what you did.
Decision tree
User request
├─ Covered by scripts/* ? → run that script with flags
├─ Simple one-liner? → shell directly
├─ Needs OS automation (apps/Finder)? → platform-aware scripts / osascript on macOS
├─ Structured multi-file logic? → Python 3
└─ Will be reused? → add script under scripts/, then run it
Running scripts
SCRIPTS="/scripts"
bash "${SCRIPTS}/.sh" [args]
python3 "${SCRIPTS}/.py" [args]
Every script supports -h / --help. Destructive scripts support --dry-run. Set TCU_SAFE_MODE=1 to prefer dry-run behavior for mutating flows.
Capability map
| Need | Script | |------|--------| | Health check | scripts/doctor.sh | | Tool inventory | scripts/which-tools.sh | | Desktop/Downloads path | scripts/desktop-path.sh | | Open app / file / URL | scripts/open-target.sh | | Quit / activate app | scripts/quit-app.sh, scripts/app-activate.sh | | List / frontmost app | scripts/list-apps.sh, scripts/frontmost-app.sh | | Reveal in file manager | scripts/reveal-in-finder.sh | | Safe move / copy | scripts/fs-move.sh, scripts/fs-copy.sh | | Organize (smart / extension / date) | scripts/fs-organize.py (--by smart default) | | Smart organize (shim) | scripts/fs-smart-organize.py → --by smart | | Safe trash | scripts/safe-trash.sh | | Clipboard | scripts/clipboard.sh | | Notification | scripts/notify.sh | | Screenshot | scripts/screenshot.sh | | Native path picker | scripts/choose-path.sh (macOS) | | AppleScript | scripts/osascript-run.sh (macOS) |
See references/safety.md, references/macos-cli.md, references/linux-cli.md.
Writing new scripts
- Name:
kebab-case, verb-first (.sh/.py/.rb) - Shebang:
#!/usr/bin/env bashor#!/usr/bin/env python3 - Bash:
set -euo pipefail; sourcescripts/lib/common.sh --help;--dry-runfor mutationschmod +x- Prefer
lib/platform.shhelpers (tcu_open,tcu_notify, …) over OS-specific commands - Update the capability table above when adding a primary entry point
Safety (non-negotiable)
- Do not delete
$HOME,/, or empty Trash unless explicitly asked. - Prefer
safe-trash.shoverrm. - Quit apps gracefully; avoid
kill -9unless hung + requested. - Network/message sends need explicit user intent.
- Bulk file ops: dry-run first unless the user asked to apply immediately.
Platform support
| | macOS | Linux | Windows | |--|-------|-------|---------| | Files (move/copy/organize) | ✅ | ✅ | partial | | Open / reveal | ✅ | ✅ | soon | | Clipboard / notify | ✅ | ✅ | soon | | Apps (list/quit/activate) | ✅ | best-effort | soon | | Screenshots | ✅ | ✅ | soon |
\* Needs common desktop utilities (xdg-open, notify-send, wl-copy/xclip).
Example prompts
/computer open Slack and reveal ~/Downloads
/computer organize my desktop (smart categories, dry-run first)
/computer quit Spotify; notify me when done
/computer move PDFs on Desktop into ~/Documents/PDFs
After complex work
- Leave new scripts in
scripts/with--help. - Name them in the final reply for future reuse.
- Prefer safe defaults over asking micro-questions.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: vivekkartha
- Source: vivekkartha/terminal-computer-use
- License: MIT
- Homepage: https://github.com/vivekkartha/terminal-computer-use
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.