release: v0.9.0 - fix Antigravity skill path and bump version to 0.9.0
Some checks failed
ci / build (push) Failing after 18s
release / release (push) Successful in 1m20s

This commit is contained in:
Yun Chan 2026-08-23 21:18:52 +09:00
parent 26686e363b
commit e26b00a825
12 changed files with 37 additions and 19 deletions

View file

@ -404,7 +404,7 @@ export const ko: Content = {
{ name: "Cursor", path: "~/.cursor/skills/designpaca/" }, { name: "Cursor", path: "~/.cursor/skills/designpaca/" },
{ name: "ZCode", path: "~/.zcode/skills/designpaca/" }, { name: "ZCode", path: "~/.zcode/skills/designpaca/" },
{ name: "중립 경로", path: "~/.agents/skills/designpaca/ · 어떤 하네스든" }, { name: "중립 경로", path: "~/.agents/skills/designpaca/ · 어떤 하네스든" },
{ name: "Antigravity", path: "~/.gemini/antigravity-cli/skills/designpaca/" }, { name: "Antigravity", path: "~/.gemini/config/skills/designpaca/" },
{ name: "Gemini CLI", path: "~/.gemini/skills/designpaca/" }, { name: "Gemini CLI", path: "~/.gemini/skills/designpaca/" },
{ name: "Windsurf", path: "~/.codeium/windsurf/skills/designpaca/" }, { name: "Windsurf", path: "~/.codeium/windsurf/skills/designpaca/" },
{ name: "Copilot", path: "~/.copilot/skills/designpaca/" }, { name: "Copilot", path: "~/.copilot/skills/designpaca/" },
@ -666,7 +666,7 @@ export const en: Content = {
{ name: "Cursor", path: "~/.cursor/skills/designpaca/" }, { name: "Cursor", path: "~/.cursor/skills/designpaca/" },
{ name: "ZCode", path: "~/.zcode/skills/designpaca/" }, { name: "ZCode", path: "~/.zcode/skills/designpaca/" },
{ name: "Neutral path", path: "~/.agents/skills/designpaca/ · any harness" }, { name: "Neutral path", path: "~/.agents/skills/designpaca/ · any harness" },
{ name: "Antigravity", path: "~/.gemini/antigravity-cli/skills/designpaca/" }, { name: "Antigravity", path: "~/.gemini/config/skills/designpaca/" },
{ name: "Gemini CLI", path: "~/.gemini/skills/designpaca/" }, { name: "Gemini CLI", path: "~/.gemini/skills/designpaca/" },
{ name: "Windsurf", path: "~/.codeium/windsurf/skills/designpaca/" }, { name: "Windsurf", path: "~/.codeium/windsurf/skills/designpaca/" },
{ name: "Copilot", path: "~/.copilot/skills/designpaca/" }, { name: "Copilot", path: "~/.copilot/skills/designpaca/" },

View file

@ -1,5 +1,11 @@
# designpaca # designpaca
## 0.9.0
### Minor Changes
- Fix Antigravity target adapter to install skills to ~/.gemini/config/skills/ so Antigravity automatically discovers the skill.
## 0.8.0 ## 0.8.0
### Minor Changes ### Minor Changes

View file

@ -64,7 +64,7 @@ npx designpaca install -t cursor -s project
| `cursor` | `~/.cursor/skills/designpaca/` (또는 프로젝트 `.cursor/`) | | `cursor` | `~/.cursor/skills/designpaca/` (또는 프로젝트 `.cursor/`) |
| `zcode` | `~/.zcode/skills/designpaca/` (또는 프로젝트 `.zcode/`) | | `zcode` | `~/.zcode/skills/designpaca/` (또는 프로젝트 `.zcode/`) |
| `agents` | `~/.agents/skills/designpaca/` (또는 프로젝트 `.agents/`) — **중립 경로** | | `agents` | `~/.agents/skills/designpaca/` (또는 프로젝트 `.agents/`) — **중립 경로** |
| `antigravity` | 전역 `~/.gemini/antigravity-cli/skills/` · 워크스페이스 `.agents/skills/` | | `antigravity` | 전역 `~/.gemini/config/skills/` · 워크스페이스 `.agents/skills/` |
| `gemini-cli` | `~/.gemini/skills/designpaca/` (또는 프로젝트 `.gemini/`) | | `gemini-cli` | `~/.gemini/skills/designpaca/` (또는 프로젝트 `.gemini/`) |
| `windsurf` | `~/.codeium/windsurf/skills/designpaca/` (또는 프로젝트 `.windsurf/`) | | `windsurf` | `~/.codeium/windsurf/skills/designpaca/` (또는 프로젝트 `.windsurf/`) |
| `copilot` | `~/.copilot/skills/designpaca/` (또는 프로젝트 `.github/skills/`) | | `copilot` | `~/.copilot/skills/designpaca/` (또는 프로젝트 `.github/skills/`) |

View file

@ -1,6 +1,6 @@
{ {
"name": "designpaca", "name": "designpaca",
"version": "0.8.0", "version": "0.9.0",
"description": "웹 디자인 파이프라인 스킬 — Claude Code · Codex · Cursor 에 한 줄로 설치한다", "description": "웹 디자인 파이프라인 스킬 — Claude Code · Codex · Cursor 에 한 줄로 설치한다",
"keywords": [ "keywords": [
"design", "design",

View file

@ -90,7 +90,7 @@ export function printNextSteps(targets: TargetId[]): void {
} }
if (targets.includes("antigravity")) { if (targets.includes("antigravity")) {
console.log( console.log(
info(`Antigravity 는 전역 ${dim("~/.gemini/antigravity-cli/skills")} 를 읽는다 (워크스페이스는 .agents/skills)`), info(`Antigravity 는 전역 ${dim("~/.gemini/config/skills")} 를 읽는다 (워크스페이스는 .agents/skills)`),
); );
} }
if (targets.includes("gemini-cli")) { if (targets.includes("gemini-cli")) {

View file

@ -1,5 +1,11 @@
# @designpaca/core # @designpaca/core
## 0.9.0
### Minor Changes
- Fix Antigravity target adapter to install skills to ~/.gemini/config/skills/ so Antigravity automatically discovers the skill.
## 0.8.0 ## 0.8.0
## 0.7.3 ## 0.7.3

View file

@ -1,6 +1,6 @@
{ {
"name": "@designpaca/core", "name": "@designpaca/core",
"version": "0.8.0", "version": "0.9.0",
"private": true, "private": true,
"description": "designpaca 설치 엔진 — 타깃 어댑터, 매니페스트, 드리프트 감지", "description": "designpaca 설치 엔진 — 타깃 어댑터, 매니페스트, 드리프트 감지",
"type": "module", "type": "module",

View file

@ -12,26 +12,26 @@ import { anyExists, scopeRoot, skillDirActions } from "./common.ts";
* SKILL.md 구조(프론트매터 + references/)가 Claude Code 와 같아서 * SKILL.md 구조(프론트매터 + references/)가 Claude Code 와 같아서
* 파일을 그대로 복사하면 된다 — 변환이 필요 없다. * 파일을 그대로 복사하면 된다 — 변환이 필요 없다.
* *
* 경로(공식 문서 기준): * 경로(공식 Antigravity 규약 기준):
* 워크스페이스 <root>/.agents/skills/<이름>/ * 워크스페이스 <root>/.agents/skills/<이름>/
* 전역 ~/.gemini/antigravity-cli/skills/<이름>/ * 전역 ~/.gemini/config/skills/<이름>/
* *
* 전역 경로는 Gemini CLI → Antigravity 마이그레이션 문서가 정리한 현재 위치다. * 전역 경로는 Antigravity Global Discovery 가 탐색하는 표준 위치(~/.gemini/config/skills)다.
* 예전 문서의 ~/.gemini/config/skills · ~/.gemini/skills 는 레거시다.
* *
* 프론트매터 요구사항도 확인했다: `description` 필수, `name` 선택(없으면 폴더명). * 프론트매터 요구사항: `description` 필수, `name` 필수.
* 우리 SKILL.md 는 둘 다 갖고 있다. * 우리 SKILL.md 는 둘 다 갖고 있다.
*/ */
export const antigravity: TargetAdapter = { export const antigravity: TargetAdapter = {
id: "antigravity", id: "antigravity",
label: "Antigravity", label: "Antigravity",
hint: "전역 ~/.gemini/antigravity-cli/skills — 워크스페이스는 중립 경로 타깃과 같다", hint: "전역 ~/.gemini/config/skills/designpaca — 워크스페이스는 .agents/skills/designpaca",
scopes: ["user", "project"], scopes: ["user", "project"],
async detect(ctx: TargetContext) { async detect(ctx: TargetContext) {
return anyExists([ return anyExists([
path.join(ctx.home, ".gemini", "config"),
path.join(ctx.home, ".gemini", "antigravity"),
path.join(ctx.home, ".gemini"), path.join(ctx.home, ".gemini"),
path.join(ctx.home, ".gemini", "antigravity-cli"),
path.join(ctx.cwd, ".agents"), path.join(ctx.cwd, ".agents"),
]); ]);
}, },
@ -39,7 +39,7 @@ export const antigravity: TargetAdapter = {
async plan(ctx: TargetContext) { async plan(ctx: TargetContext) {
const root = scopeRoot( const root = scopeRoot(
ctx, ctx,
[".gemini", "antigravity-cli", "skills", "designpaca"], [".gemini", "config", "skills", "designpaca"],
[".agents", "skills", "designpaca"], [".agents", "skills", "designpaca"],
); );
return { return {

View file

@ -8,7 +8,7 @@ import { anyExists, scopeRoot, skillDirActions } from "./common.ts";
* Agent Skills 규약(SKILL.md)을 Claude 와 같은 형태로 그대로 읽는다. * Agent Skills 규약(SKILL.md)을 Claude 와 같은 형태로 그대로 읽는다.
* *
* Google 을 Gemini CLI 에서 Antigravity 로 옮기고 있지만 마이그레이션이 끝난 사용자만 * Google 을 Gemini CLI 에서 Antigravity 로 옮기고 있지만 마이그레이션이 끝난 사용자만
* Antigravity 경로(~/.gemini/antigravity-cli/skills)를 쓴다 — 아직 Gemini CLI 를 쓰는 * Antigravity 경로(~/.gemini/config/skills)를 쓴다 — 아직 Gemini CLI 를 쓰는
* 사람을 위해 이 타깃을 따로 둔다. 둘 다 쓰면 스킬이 두 번 잡히니 하나만 고른다. * 사람을 위해 이 타깃을 따로 둔다. 둘 다 쓰면 스킬이 두 번 잡히니 하나만 고른다.
*/ */
export const geminiCli: TargetAdapter = { export const geminiCli: TargetAdapter = {

View file

@ -153,14 +153,14 @@ test("windsurf: 네이티브 스킬 경로에 싣는다 — 본문 크기 제한
await removeInstall(res.record, { env }); await removeInstall(res.record, { env });
}); });
test("antigravity: 프로젝트는 .agents/skills, 전역은 ~/.gemini/antigravity-cli/skills", async () => { test("antigravity: 프로젝트는 .agents/skills, 전역은 ~/.gemini/config/skills", async () => {
// 두 경로가 다른 제품 규약이라 하나만 맞으면 다른 쪽에서 스킬이 안 잡힌다. // 두 경로가 다른 제품 규약이라 하나만 맞으면 다른 쪽에서 스킬이 안 잡힌다.
const proj = await planInstall("antigravity", "project", skill, env); const proj = await planInstall("antigravity", "project", skill, env);
assert.equal(proj.root, path.join(cwd, ".agents", "skills", "designpaca")); assert.equal(proj.root, path.join(cwd, ".agents", "skills", "designpaca"));
// 전역은 공식 마이그레이션 문서가 정한 현재 경로다 (~/.gemini/config/skills 는 레거시). // 전역은 Antigravity Global Discovery 가 탐색하는 표준 위치(~/.gemini/config/skills).
const user = await planInstall("antigravity", "user", skill, env); const user = await planInstall("antigravity", "user", skill, env);
assert.equal(user.root, path.join(home, ".gemini", "antigravity-cli", "skills", "designpaca")); assert.equal(user.root, path.join(home, ".gemini", "config", "skills", "designpaca"));
}); });
test("antigravity: SKILL.md 를 변환 없이 그대로 싣는다", async () => { test("antigravity: SKILL.md 를 변환 없이 그대로 싣는다", async () => {

View file

@ -1,5 +1,11 @@
# CHANGELOG # CHANGELOG
## 0.9.0
### Minor Changes
- Fix Antigravity target adapter to install skills to ~/.gemini/config/skills/ so Antigravity automatically discovers the skill.
## 0.8.0 ## 0.8.0
### Minor Changes ### Minor Changes

View file

@ -1,6 +1,6 @@
{ {
"name": "@designpaca/skill", "name": "@designpaca/skill",
"version": "0.8.0", "version": "0.9.0",
"private": true, "private": true,
"description": "designpaca 스킬 원본 — SKILL.md 와 참조 문서", "description": "designpaca 스킬 원본 — SKILL.md 와 참조 문서",
"scripts": { "scripts": {