터미널용 Command Manager를 만들었습니다 (당신도 필요할 수도 있어요)

발행: (2026년 3월 16일 PM 03:36 GMT+9)
4 분 소요
원문: Dev.to

Source: Dev.to

Cover image for I Built a Command Manager for the Terminal (And You Might Need It Too)

GitHub:

The Problem

개발자들은 터미널을 끊임없이 사용하지만, 명령어 워크플로우는 엉망입니다:

  • Shell history는 탐색하기 어렵고 잘 보존되지 않습니다.
  • Aliases는 세션에만 국한되고 복잡한 스크립트를 처리하지 못합니다.
  • Documentation은 오래되거나 무작위 파일에 묻혀 사라집니다.
  • Scripts는 서로 다른 디렉터리에 흩어져 있습니다.

우리는 명령어 툴킷을 더 잘 관리할 방법이 필요합니다.

Introducing Pock

Pock은 터미널용 북마크처럼 동작하는 명령어 관리 도구입니다. 간단한 이름으로 명령을 저장하고 즉시 실행하며, 실행 기록 전체를 보관합니다.

Quick Start

# Install (macOS)
brew install pock  # (coming soon)
# Or download from releases

# Save a command
pock add deploy "git push origin main"

# Run it
pock run deploy

# View all saved commands
pock list

Core Features

1. Save Commands and Scripts

# Save inline commands
pock add sync-db "pg_dump production | psql development"

# Save script files (content is stored)
pock add release ./scripts/release.sh -d "Production release"

2. Execution History

실행된 모든 명령은 다음과 함께 로그됩니다:

  • 타임스탬프
  • 종료 코드
  • 전체 stdout/stderr 출력
  • 실행 시간
pock history deploy --output

3. Import / Export

팀과 명령어 라이브러리를 공유하세요:

# Export your commands
pock export my-commands.json

# Team members import them
pock import my-commands.json

Why Go?

  • 단일 바이너리 배포 (의존성 없음)
  • 훌륭한 CLI 툴링 (Cobra, Viper)
  • 크로스‑플랫폼 컴파일
  • 빠른 시작 시간
  • 설치가 간편

Technical Architecture

pock/
├── cmd/           # Cobra commands
├── internal/
│   ├── storage/   # SQLite database layer
│   └── helpers/    # Config and utilities
└── pkg/           # Public packages
  • Storage: 로컬 데이터를 위한 SQLite (bbolt/bolt 사용)
  • CLI Framework: Cobra + Viper
  • Output Capture: 커스텀 exec 래퍼

Real‑World Usage

# Development workflow
pock add dev "docker-compose up -d && npm run dev"
pock add test "npm run lint && npm test && npm build"

# Database tasks
pock add db-backup "./scripts/backup-db.sh"
pock add db-reset "dropdb myapp && createdb myapp && npm run migrate"

# Deployment
pock add deploy-staging "./deploy.sh staging"
pock add deploy-prod "./deploy.sh production"

What’s Next?

  • 명령어 공유를 위한 커뮤니티 마켓플레이스
  • 명령어 스케줄링 / cron 연동
  • 팀 협업 기능
  • VS Code 확장 프로그램
  • 명령어 관리를 위한 웹 UI

Try It Out!

Installation

# macOS
curl -L https://github.com/ddev94/pock/releases/download/v1.0.1/pock-1.0.1.pkg -o pock-1.0.1.pkg
open pock-1.0.1.pkg

# Linux
wget https://github.com/ddev94/pock/releases/download/v1.0.1/pock-1.0.1-1.x86_64.tar.gz
tar -xzf pock-1.0.1-1.x86_64.tar.gz
sudo cp pock-1.0.1/usr/local/bin/pock /usr/local/bin/

GitHub:

Feedback Welcome!

여러분의 의견을 듣고 싶습니다:

  • 먼저 어떤 명령을 저장하고 싶나요?
  • 어떤 기능이 부족하다고 생각하나요?
  • 발견한 버그나 이슈가 있나요?

댓글을 남기거나 GitHub에 이슈를 열어 주세요! ⭐

Built with Go. Open source (ISC License). Privacy‑focused.

0 조회
Back to Blog

관련 글

더 보기 »

tmux 시작하기

소개 tmux에 대한 소개, 터미널 멀티플렉서. 세션 관리 - tmux 시작: `bash tmux` 또는 `tmux new-session` - 새로운 세션을 생성…

터미널 팁 🤩 fcopy, fcut, fpaste

소개 저와 같이 터미널을 사랑한다면, fcopy, fcut, fpaste를 사용해 보세요. 파일 탐색기를 통해 복사하는 대신, 다음과 같이 할 수 있습니다: bash fcopy some...