원클릭으로
tui-testing
Run an interactive CLI/TUI app in tmux, send it input, and read its output. Use to test interactive apps.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Run an interactive CLI/TUI app in tmux, send it input, and read its output. Use to test interactive apps.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Generate a standalone HTML report from a markdown file with d2 diagrams, SVGs, and syntax-highlighted code blocks. Use when the user asks for a report, a visual writeup, or a document with diagrams.
Interact with GitLab REST API using GITLAB_TOKEN - use for TODOs, repositories, CI/pipelines, MRs, issues, and other API queries
GitLab Development Kit is a folder and set of utilities that contain most of the GitLab production systems. This skill is useful for testing with local GitLab deployment and when researching how feature works in the GitLab monolith, AIGW, workhorse and other services
CRUD GitLab issues,MRs,pipelines,jobs,epics,issue comments
my projects — gitlab namespace and ID, where they live on the local drive. Use whenever a question references a project by name, alias, or path, or when you need to locate a repo locally. Keywords - project, repo, where does X live, local path, gitlab-lsp, glab, cli, vscode extension, note, task, duo cli, dotfiles.
code changes review, use this skill any time I ask you to review a change
| name | tui-testing |
| description | Run an interactive CLI/TUI app in tmux, send it input, and read its output. Use to test interactive apps. |
Use a detached tmux session to drive any interactive app.
S=test # session name
# start the app
tmux new-session -d -s "$S" -x 200 -y 50 'your-command --args'
# send input (text)
tmux send-keys -t "$S" 'hello world' Enter
# send special keys
tmux send-keys -t "$S" Escape
tmux send-keys -t "$S" C-c # ctrl-c
tmux send-keys -t "$S" Down Down Enter
# read visible screen (add -e to keep ANSI colors)
tmux capture-pane -pt "$S"
# read full scrollback
tmux capture-pane -pt "$S" -S -
# kill the session when done
tmux kill-session -t "$S"
sleep 0.5 or poll.until tmux capture-pane -pt "$S" | grep -q 'ready'; do sleep 0.3; done
tmux attach -t "$S" (Ctrl+B then D to detach).tmux ls, tmux kill-server.sleep; a C-l
redraw will not force a paint that hasn't happened yet.kill-session. If you start
the app through a shell wrapper (sh -c …, fish -c …, env … node …),
tmux kill-session may reap only the wrapper and leave the actual child
running — causing a second live instance, lock contention, or port conflicts
on the next launch. After killing, confirm it's gone and pkill -f the command
as a fallback:
tmux kill-session -t "$S" 2>/dev/null
pkill -f 'your-command --args' 2>/dev/null