cc-thingz v6: AI 코딩 에이전트를 위한 휴대 가능한 기술(skills) 및 훅(hooks)
요약
cc-thingz v6는 다양한 AI 코딩 에이전트(Claude Code, Codex CLI, Gemini CLI 등)에서 공통적으로 사용할 수 있는 휴대 가능한 워크플로우 레이어를 제공합니다. 기술(skills)과 훅(hooks)을 단일 소스로 관리하여 각 에이전트의 네이티브 형식으로 컴파일함으로써 일관된 개발 워크플로우를 유지하도록 돕습니다.
핵심 포인트
- 에이전트별로 파편화된 프롬프트와 설정을 단일 진실 공급원으로 통합 관리
- Claude Code, Codex CLI, Gemini CLI 등 다양한 도구에 최적화된 출력 생성
- 코드 리뷰, 버그 수정, 리팩터링 등 실전적인 코딩 워크플로우 지원
- 훅(Hooks)을 통해 보안 차단, 포맷팅, 테스트 실행 등 자동화된 제어 가능
cc-thingz의 v6 버전을 출시했습니다.
요약 버전: AI 코딩 에이전트를 위한 실전 검증된 기술(skills) 및 훅(hooks).
상세 버전: 제가 현재 사용 중인 어떤 코딩 에이전트나 LLM 모델에서도 동일한 개발 워크플로우(developer workflow)를 사용할 수 있기를 원했습니다.
- 특정 작업에는 Claude Code
- 다른 작업에는 Codex CLI
- 때로는 Gemini CLI
- 하네스(harness)와 하위 에이전트(subagents)가 필요할 때는 Pi
번거로운 점: 기술(skills)은 거의 휴대 가능하지만, 에이전트 및 모델별로 특화되어 작성될 때 더 잘 작동합니다.
각 도구는 고유한 플러그인 형식(plugin format), 생명주기 이벤트(lifecycle events), 훅 모델(hook model), 권한(permissions) 및 모델 동작(model behavior)을 가지고 있습니다. 도구 간에 프롬프트(prompts)를 복사하여 붙여넣는 방식은 몇 분 동안은 작동하지만, 곧 혼란(balagan)으로 변합니다.
따라서 cc-thingz는 하나의 단일 진실 공급원(one source of truth)을 유지하며, 이를 각 에이전트의 네이티브 설정으로 컴파일합니다.
이것은 무엇인가
cc-thingz는 코딩 에이전트가 아닙니다.
이는 코딩 에이전트를 위한 휴대 가능한 워크플로우 레이어(workflow layer)입니다:
- 기술 (skills)
- 훅 (hooks)
- 작은 역할 기반 에이전트 (small role agents)
- 가드레일 (guardrails)
- 언어 참조 (language references)
- 에이전트별 생성된 내보내기 (generated per-agent exports)
레포지토리 소스는 src/ 아래에 있습니다. 빌드는 다음을 위한 타겟별 출력을 생성합니다:
- Claude Code 플러그인
- Codex CLI 기술 내보내기 (skill exports)
- Gemini CLI 확장 (extensions)
- Pi 기술, 에이전트 및 훅
동일한 워크플로우 아이디어. 에이전트별 네이티브 형태.
개발자가 얻는 것
이 프로젝트는 에이전트를 활용한 코딩 주변의 지루하지만 유용한 부분들을 다룹니다:
- 심각도/신뢰도 루브릭(rubrics)을 포함한 코드 리뷰
- 재현 우선 루프(reproduce-first loops)를 통한 버그 수정
- 동작 보존 체크(behavior-preserving checks)를 통한 리팩터링
- 동작 경계(behavior seams)에 기반한 테스트
- 코드 사실에 근거한 문서 업데이트
- git 위생(hygiene) 및 워크트리(worktrees)
- 인프라 운영 (infra ops)
- 브라우저 자동화
- 문서 조회 및 웹 조사
- 가벼운 명세 기반 작업 (spec-driven work)
이것들은 AI 코딩 세션이 단순히 느낌(vibes)에 의존하는 거대한 채팅창 하나로 전락하는 것을 방지해 주는 요소들입니다.
훅(hooks)이 중요한 이유
프롬프트(Prompts)는 에이전트에게 특정 방식으로 행동하도록 요청할 수 있습니다.
훅(Hooks)은 적절한 위치에 마찰(friction)을 줄 수 있습니다.
cc-thingz에는 다음과 같은 것들을 위한 훅이 포함되어 있습니다:
- 사용자의 프롬프트로부터 관련 기술(skills) 제안
- 보호된 경로 및 비밀 정보(secrets) 차단
- 편집 후 포맷팅(formatting) 및 린팅(linting)
- 코드 변경 후 집중 테스트(focused tests) 실행
- 시작 시 저장소(repo)/세션 컨텍스트 출력
- git 가드레일(guardrails)
이것이 프롬프트 팩(prompt pack)과 워크플로(workflow) 사이의 실질적인 차이입니다.
프롬프트는 "테스트를 실행해 주세요"라고 말합니다.
훅(hook)은 편집이 완료되었을 때 집중 테스트를 실행합니다.
v6의 새로운 기능
v6는 다음과 같은 언어들을 위한 일급 시민(first-class) 워크플로를 추가합니다:
- Rust
- C#/.NET
- Java/Kotlin
이로 인해 지원되는 언어 세트는 다음과 같습니다:
- C#/.NET
- Go
- Java/Kotlin
- Python
- Rust
- TypeScript
- shell
- web
이 언어 작업은 단순히 writing-rust나 writing-java-kotlin 프롬프트를 작성하는 것이 아닙니다.
훅(hooks)은 스택(stacks) 또한 이해합니다:
- 변경된 파일에 대한 집중적인 린팅/포맷팅(lint/format)
- 빌드 시스템별 가장 가까운 테스트 타겟(test target)
- 세션 시작 시 프로젝트 감지
- 파일 확장자, 툴체인(toolchain) 및 프레임워크 용어에 따른 기술 라우팅(skill routing)
따라서 에이전트가 Rust 파일, .csproj, 또는 Gradle 모듈을 편집하면, 워크플로는 전체를 실행하는 대신 범위가 지정된 피드백 루프(feedback loop)를 선택할 수 있습니다.
이러한 기술(skills)이 무작위 프롬프트보다 나은 이유
마법이 아닙니다. 그저 지루할 정도로 철저한 엔지니어링 위생(engineering hygiene)일 뿐입니다.
1. 일상적인 사용에서 비롯되었습니다
이 기술들은 주말에 프롬프트를 한꺼번에 쏟아낸 것이 아니라, 실제 코드에서 에이전트를 사용하면서 작성되고 개선되었습니다.
2. 에이전트 네이티브(agent-native)입니다
각 대상은 고유의 네이티브 형식을 갖습니다. Claude Code는 플러그인(plugins)을, Gemini는 확장 기능(extensions)을, Pi는 기술(skills), 에이전트(agents) 및 확장 기능(extensions)을, Codex는 기술 내보내기(skill exports)를 갖습니다.
3. 훅(hooks)을 포함합니다
워크플로는 단순히 지침(instructions)만 있는 것이 아닙니다. 실행 가능한 체크(checks)와 가드레일(guardrails)도 포함합니다.
4. 조합이 가능합니다 (compose)
에이전트 모델이 39개의 에이전트에서 3개의 역할(roles)로 단순화되었습니다:
engineer— 코드를 편집하고 검증할 수 있음reviewer— 읽기 전용, 적대적(adversarial), 버그를 찾아냄advisor— 판결, 리스크, 다음 작업 안내
언어는 참조(references) 내에 존재합니다. 한 명의 리뷰어(reviewer)가 언어당 한 명의 리뷰어를 유지하는 대신 8개의 언어에 걸쳐 작업할 수 있습니다.
5. 단일 진실 공급원(Source of truth)의 공유
동일한 워크플로(workflow) 로직을 한 번만 작성하면 대상 출력물로 컴파일됩니다. 드리프트(drift)가 줄어듭니다. "왜 도구 X에서만 이게 깨지는 거지?"라는 상황이 줄어듭니다.
사용해봐야 할까요?
다음의 경우라면 시도해 보세요:
- Claude Code, Codex CLI, Gemini CLI 또는 Pi를 사용하는 경우
- 하나 이상의 에이전트(agent)나 모델(model) 사이를 전환하며 사용하는 경우
- 다국어(polyglot) 리포지토리(repos)에서 작업하는 경우
- 에이전트의 수정 사항 주변에 집중된 린트(lint)/테스트 훅(hooks)을 원하는 경우
- "주의하세요"보다 더 구체적인 리뷰(review)/수정(fix)/테스트(test)/리팩터링(refactor) 워크플로를 원하는 경우
다음의 경우라면 건너뛰어도 좋습니다:
- 단 하나의 도구만 사용하며 이미 만족스러운 설정이 있는 경우
- 완전히 범용적이고 의견이 배제된(unopinionated) 프롬프트 팩을 원하는 경우
- 훅(hooks)이 자신의 워크플로에 관여하는 것을 원하지 않는 경우
cc-thingz는 의도적으로 의견이 반영된(opinionated) 설계를 따릅니다. 중립적인 에이전트 워크플로는 무질서해지기 마련입니다.
설치
Claude Code:
/plugin marketplace add alexei-led/cc-thingz
/plugin install dev-flow@cc-thingz
/plugin install programming@cc-thingz
Gemini CLI:
gemini extensions install https://github.com/alexei-led/cc-thingz
Pi:
pi install npm:pi-subagents
pi install git:github.com/alexei-led/cc-thingz
Codex CLI:
git clone https://github.com/alexei-led/cc-thingz.git ~/src/cc-thingz
cd ~/src/cc-thingz
make build
...
리포지토리(Repo): https://github.com/alexei-led/cc-thingz
매일의 실사용을 바탕으로 만들어졌습니다. 실용적이고, 의견이 반영되어 있으며, 바라건대 혼란(balagan)이 더 적을 것입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기