Files
llm-wiki/docs/superpowers/notes/2026-06-04-phase1-empirical-format-check.md

58 lines
4.3 KiB
Markdown

---
title: Phase 1 — 경험적 포맷·충돌 확인 (codex skills / antigravity workflows)
date: 2026-06-04
---
# Phase 1 경험적 확인 결과
## CLI 설치 상태 (실측)
- **codex-cli 0.136.0** 설치됨 (`~/.nvm/.../bin/codex`).
- **agy (Antigravity CLI)** 설치됨 (`~/.local/bin/agy`), home `~/.gemini/antigravity-cli/`.
## codex skills
- codex 0.136.0 에는 `skills` 전용 subcommand 가 **없음** (subcommands: exec/review/login/logout/mcp/plugin/mcp-server). skill 은 **자동 디스커버리 + TUI `/skills`·`$name`** 로 surface 되는 대화형 기능이라 비대화형 목록 확인 불가.
- 공식 디스커버리 경로(`developers.openai.com/codex/skills`): `$REPO_ROOT/.agents/skills/<name>/SKILL.md`. → **타깃 경로 확정: `.agents/skills/<cmd>/SKILL.md`.**
- `codex plugin` 은 marketplace 기반의 **별개 메커니즘**(skill 과 무관).
## antigravity workflows / skills
- **로딩 모델 = `agy plugin` import.** `agy plugin list` 출력:
```json
{ "imports": [ { "name": "wiki-superpowers", "source": "local-install", "importedAt": "2026-05-26T12:39:39Z", "components": ["installed"] } ] }
```
→ `.agents/plugins/wiki-superpowers/` 가 import 되어 있음. 즉 antigravity 는 workspace `.agents/` 를 (프로젝트 열림 시 native 인식 + plugin import) 로 적재.
- 공식(Google Codelab) 기준 workflow 경로 = workspace `.agents/workflows/<name>.md`, frontmatter `description` 만, `/name <args>` 호출.
- → **타깃 경로 확정: `.agents/workflows/<cmd>.md`** (repo `.agents/` 복수 규약 일치).
- **운영 주의**: 생성/수정 후 antigravity 가 변경을 반영하려면 `agy plugin` 재import 또는 프로젝트 재오픈이 필요할 수 있음(plugin-import 모델). workspace 직접 native 인식 여부는 build/version 의존.
## `$ARGUMENTS` 매핑
- codex skills·antigravity workflows **둘 다 인자 placeholder 미지원** → argument-hint 의 각괄호 prose 로 치환 확정.
## 충돌(`.agents/skills/` 이중 로드) 확인
| 항목 | 결과 |
|---|---|
| codex 가 `.agents/skills/` 읽음 | YES (공식 디스커버리 경로) |
| antigravity 가 `.agents/skills/` 도 skill 로 읽는지 | **UNVERIFIED (비대화형 확인 불가).** antigravity 는 `.agents/plugins/.../skills/` 를 plugin 으로 적재 중 — workspace `.agents/skills/`(plugin 밖) 직접 적재 여부는 build 의존. |
| 위험도 | **낮음.** 설령 antigravity 가 codex command-skill 을 semantic skill 로 이중 인지해도, 같은 command 의 workflow(`/cmd`)와 기능 중복일 뿐 충돌 아님. 실사용에서 문제되면 codex skill 을 plugin 밖 `.agents/skills/` 에만 두고 antigravity 는 workflow 만 쓰도록 build 설정으로 분리. |
## 결정 (잠금)
| 항목 | 결정 |
|---|---|
| codex skill 경로 | `.agents/skills/<cmd>/SKILL.md` |
| antigravity workflow 경로 | `.agents/workflows/<cmd>.md` |
| `$ARGUMENTS` | argument-hint 각괄호 prose 치환 |
| 이중 로드 | UNVERIFIED·저위험 — 생성 후 Task 5 에서 실호출로 재확인, 문제 시 에스컬레이션 |
## Task 5 — 실호출 스모크 결과
- skill(`/skills`·`$name`)·workflow(`/name`) 등록은 **두 CLI 모두 대화형(TUI) 기능**이라 헤드리스(비대화형) 완전 검증 불가. codex 0.136.0 에 skills 목록 subcommand 없음, agy 도 마찬가지.
- 대신 **포맷 정합성**을 결정론적으로 검증 완료: 13개 skill 전부 frontmatter `name`(=폴더명)+`description`, body 에 `$ARGUMENTS` 0개; 13개 workflow 전부 frontmatter `description` + 본문 `/<cmd> <hint>` 호출 안내, `$ARGUMENTS` 0개. `sync_automation.py commands --check` exit 0.
- **workflow 적재**: workspace `.agents/workflows/` 는 Codelab 기준 antigravity 가 프로젝트 열림 시 native 인식(plugin import 와 별개). plugin(`agy plugin`)은 `.agents/plugins/wiki-superpowers/`(agents/skills/hooks) 적재용이며 workspace `.agents/workflows/` 와 무관.
- **라이브 TUI 호출 검증은 사용자 대화형 사용으로 위임** — codex TUI 에서 `$depth`/`/skills`, antigravity TUI 에서 `/depth` 가 뜨는지 실사용 시 확인. 안 뜨면 본 노트의 경로/frontmatter 와 대조.
- 이중 로드(`.agents/skills/` 를 antigravity 도 읽는지)는 여전히 UNVERIFIED·저위험 — 실사용에서 `/skills` 목록에 codex command-skill 이 함께 뜨면 그때 분리 결정.