Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/jonghakseo-ship
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/ship
What's inside
- Skill name
ship- Description
- 변경사항을 커밋하고 remote에 push할 때 사용한다.
- License
- MIT
- Instructions
- 314 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# /ship — 커밋 정리 + 검증 + push
핵심은 3가지다.
1. 변경사항을 **의도 단위로 분리해 커밋**한다.
2. push 전에 **typecheck / lint / test / build**를 가능한 범위에서 모두 검증한다.
3. 검증이 통과하면 **push**한다.
기본 동작은 **commit + verify + push**다.
PR 생성은 **조건부 후처리**다.
## PR 관련 기본 규칙
- 이미 열린 PR이 있으면 **생성하지 않고 스킵**한다.
- **PR 템플릿이 있으면 사용**한다.
- **PR 생성 전용 스킬이 있으면 우선 사용**한다.
- GitHub 연동은 가능하면 **`gh api`를 우선 사용**한다.
- 전용 스킬이 없을 때만 필요에 따라 `gh api` 또는 `gh pr create`를 사용한다.
---
## 멈춰야 하는 경우
- 의도 단위로 나눠도 **독립적으로 유효한 커밋**을 만들 수 없음
- merge conflict 해소 불가
- 필수 검증(typecheck / lint / test / build) 실패
- push 권한/인증 문제
- 사용자 판단이 필요한 위험한 선택이 남아 있음
## 멈추지 않는 경우
- 미커밋 변경사항
- staged + unstaged 혼재
- 파일 수가 많음
- root 명령이 없는 monorepo
- base 브랜치 위에 있음
- 이미 PR이 열려 있음 (PR 생성만 스킵)
## 확인이 필요한 경우
- 검증 명령 자동 감지 실패
- 어떤 검증이 필수인지 불명확함
---
## Step 0: Pre-flight
### 브랜치 확인
`/ship`은 **브랜치 이름 인자를 옵션으로 받을 수 있다.**
- 인자가 있으면: 그 브랜치로 checkout/switch 해서 진행한다.
- 없으면 새 브랜치를 만든다.
- 있으면 그 브랜치를 그대로 사용한다.
- 인자가 없으면: **현재 브랜치에서 그대로** commit + push 한다.
- 현재 브랜치가 `main`/base여도 **묻지 않는다.** 그대로 진행한다.
```bash
TARGET_BRANCH="$ARGUMENTS"
CURRENT=$(git branch --show-current 2>/dev/null)
BASE=$(git remote show origin 2>/dev/null | sed -n '/HEAD branch/s/.*: //p' | head -1)
[ -n "$BASE" ] || BASE=main
if [ -n "$TARGET_BRANCH" ]; then
if git show-ref --verify --quiet "refs/heads/$TARGET_BRANCH"; then
git switch "$TARGET_BRANCH"
else
git switch -c "$TARGET_BRANCH"
fi
fi
CURRENT=$(git branch --show-current 2>/dev/null)
echo "BRANCH: $CURRENT"
echo "BASE: $BASE"
```
### 변경사항 / remote 확인
```bash
git status --short
git diff --stat
git diff --cached --stat
git remote -v
```
변경사항이 없거나 push 대상 remote가 불명확하면 중단한다.
---
## Step 1: 의도 분석 + 커밋 계획
```bash
git status
git diff --cached
git diff
git log --oneline -5
```
변경사항을 파일이 아니라 **의도 기준**으로 나눈다.
예: 의존성 업데이트 / 버그 수정 / 리팩터링 / 테스트 보강 / 문서 정리
### 커밋 원칙
- 각 커밋은 **독립적으로 이해 가능**해야 한다.
- 각 커밋은 **독립적으로 통과 가능**해야 한다.
- 코드와 관련 테스트는 가급적 같은 커밋에 넣는다.
- 리팩터링과 기능 변경은 가능하면 분리한다.
- 대규모 포맷 변경은 의미 있는 변경과 분리한다.
### 단일 커밋 허용
아래면 단일 커밋 허용:
- 변경이 작음
- 의도가 하나뿐임
- 분리하면 오히려 맥락이 깨짐
### 커밋 메시지
```textFrom Jonghakseo/my-pi, MIT.
More from Jonghakseo/my-pi
- 0.634score
harness-refine
Jonghakseo
현재 Pi 세션을 회고해 하네스(AGENTS.md·스킬·메모리 등) 개선점을 찾을 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.634score
harness-refine-sweep
Jonghakseo
최근 여러 Pi 세션을 한꺼번에 회고해 하네스 개선점을 찾을 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.634score
show-me-your-work
Jonghakseo
장기·무인 작업에서 나중에 검토할 결정 로그를 남길 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
context7-cli
Jonghakseo
라이브러리·프레임워크 공식 문서와 API 예시를 조회할 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
dynamic-workflow
Jonghakseo
장기·병렬·대규모 작업을 서브에이전트로 나눠 실행할 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
pickle
Jonghakseo
코딩·조사 작업을 별도 Picky Pickle에 위임할 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
notion-doc
Jonghakseo
보고서·요약·회의록 같은 문서를 Notion 스타일로 만들 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
prove-it-works
Jonghakseo
완료를 선언하기 전에 실제 결과물로 동작을 검증할 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
explain-for-no-context
Jonghakseo
현재 논의를 맥락 없는 사람도 이해하도록 쉬운 말로 다시 설명할 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
memory-manage
Jonghakseo
저장된 메모리의 중복·노후 항목을 점검하고 정리할 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
systematic-debugging
Jonghakseo
버그, 테스트 실패, 예상 밖 동작을 수정하기 전에 근본 원인을 조사할 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
self-healing
Jonghakseo
변경사항을 자동으로 리뷰·수정·재검토하는 self-healing 요청에 사용한다.
SkillAFreshness: A★ 15Claude Code +9
Signals
- Stars
- 15
- Forks
- 5
- Open issues
- 0
- Last commit (this folder)
- Sep 30, 2026 (29 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/Jonghakseo/my-pi
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Jonghakseo
- 0.634score
show-me-your-work
Jonghakseo
장기·무인 작업에서 나중에 검토할 결정 로그를 남길 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.634score
harness-refine-sweep
Jonghakseo
최근 여러 Pi 세션을 한꺼번에 회고해 하네스 개선점을 찾을 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.634score
harness-refine
Jonghakseo
현재 Pi 세션을 회고해 하네스(AGENTS.md·스킬·메모리 등) 개선점을 찾을 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
create-verification-skill
Jonghakseo
레포에 실제 앱 동작을 검증하는 verify 스킬을 만들 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
gh-attach
Jonghakseo
GitHub 이슈·PR·코멘트에 로컬 이미지나 영상을 첨부할 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9 - 0.629score
dynamic-workflow
Jonghakseo
장기·병렬·대규모 작업을 서브에이전트로 나눠 실행할 때 사용한다.
SkillAFreshness: A★ 15Claude Code +9
Cite this page
ship skill. Agent Mart. https://agentmart.dev/skills/jonghakseo-ship (last updated 2026-10-24)