본문으로 건너뛰기

Astryx 설치하고 CLI 스크립트로 에이전트와 사람이 같은 UI 문서 쓰기

@astryxdesign/core와 theme-neutral, CLI를 설치하고 npm 스크립트를 달아, 코딩 에이전트와 사람이 `astryx component --list` 같은 같은 명령으로 컴포넌트 문서를 보게 해요.

npm → packages/core README → npm → Astryx CLI

한 단계씩 따라 하기고치기

AI 초안 · 사람 확인 전. 결과 확인하며 사용

/w/astryx-cli-ui.json

{
  "id": "astryx-cli-ui",
  "kind": "workflow",
  "testedWith": [],
  "durationMin": null,
  "url": "https://opencurrent.ai/w/astryx-cli-ui",
  "title": "Astryx 설치하고 CLI 스크립트로 에이전트와 사람이 같은 UI 문서 쓰기",
  "summary": "@astryxdesign/core와 theme-neutral, CLI를 설치하고 npm 스크립트를 달아, 코딩 에이전트와 사람이 `astryx component --list` 같은 같은 명령으로 컴포넌트 문서를 보게 해요.",
  "category": "개발",
  "categoryId": "dev",
  "topics": [
    {
      "id": "dev",
      "label": "개발"
    },
    {
      "id": "product",
      "label": "기획·디자인"
    },
    {
      "id": "personal",
      "label": "개인 생산성"
    }
  ],
  "difficulty": "입문",
  "tools": [
    "Astryx",
    "npm",
    "React"
  ],
  "whenToUse": "React 19 프로젝트에서 코딩 에이전트와 함께 UI를 만들 때, 둘이 같은 컴포넌트 문서를 보고 일관되게 작업하게 하고 싶을 때 써요.",
  "prerequisites": [
    "React 19 이상 프로젝트 (react, react-dom)",
    "Node와 npm, pnpm, yarn 중 하나"
  ],
  "inputs": [
    {
      "name": "project_dir",
      "label": "프로젝트 폴더",
      "description": "Astryx를 설치할 React 프로젝트 경로",
      "example": "~/projects/my-app",
      "required": true
    }
  ],
  "howToFollow": "1. 입력값(inputs)을 사용자에게 받아 프롬프트의 {{이름}} 자리에 넣을 것. 필수값이 없으면 먼저 물어볼 것.\n2. 단계를 순서대로 진행할 것. kind가 \"ai\"면 프롬프트를 실행하고, \"command\"면 사용자의 허락을 받고 명령을 실행하고, \"human\"이면 사용자에게 할 일을 안내하고 끝났는지 물을 것. tool이 있으면 그 도구·모델로 할 것.\n3. 단계에 output(결과 이름)이 있으면 그 단계 결과를 뒤 단계 프롬프트의 {{output}} 자리에 넣을 것.\n4. 단계마다 expected(기대 결과)와 check(확인 방법)로 제대로 됐는지 확인하고, 다르면 다음 단계로 넘어가지 말고 사용자에게 알릴 것. 끝나면 example.output(있으면)과 비교할 것.\n5. 검증 상태가 verified가 아니면 그 사실을 사용자에게 먼저 알릴 것. 답에 url을 출처로 밝힐 것.",
  "steps": [
    {
      "n": 1,
      "kind": "command",
      "title": "패키지 설치",
      "body": "프로젝트 폴더에서 core, 테마, StyleX 피어 의존성을 설치하고 CLI는 개발 의존성으로 설치해요. pnpm이나 yarn을 쓰면 `pnpm add`, `yarn add`로 바꿔요.",
      "prompt": "npm install @astryxdesign/core @astryxdesign/theme-neutral @stylexjs/stylex\nnpm install -D @astryxdesign/cli",
      "expected": "package.json에 @astryxdesign/core, @astryxdesign/theme-neutral, @stylexjs/stylex와 개발 의존성 @astryxdesign/cli가 들어가요.",
      "check": "package.json의 dependencies와 devDependencies를 열어 확인해요.",
      "tool": "npm"
    },
    {
      "n": 2,
      "kind": "command",
      "title": "CLI를 전역에도 설치 (선택)",
      "body": "컴퓨터에 한 번 설치하면 어느 폴더에서나 `astryx`가 되고 코딩 에이전트도 Astryx를 알게 돼요. 프로젝트 안에서는 그 프로젝트의 버전이 실행돼요. 프로젝트 설치와 전역 설치를 모두 하는 것을 권장해요.",
      "prompt": "npm i -g @astryxdesign/cli",
      "expected": "전역에서 astryx 명령이 잡혀요.",
      "check": "`astryx docs global`로 전역 모드 설명이 나오는지 봐요.",
      "tool": "npm"
    },
    {
      "n": 3,
      "kind": "human",
      "title": "CSS 가져오기와 테마 프로바이더 설정",
      "body": "빌드 플러그인이나 PostCSS, Babel 설정 없이 CSS 몇 줄과 테마 프로바이더만 넣으면 돼요. Next.js, Tailwind, Vite, CDN별 방법은 @astryxdesign/core README의 Quick Start를 따라요.",
      "expected": "앱이 Astryx 테마가 적용된 상태로 떠요.",
      "check": "개발 서버를 켜고 Astryx 컴포넌트 하나를 렌더링해 스타일이 적용되는지 봐요.",
      "tool": "packages/core README"
    },
    {
      "n": 4,
      "kind": "command",
      "title": "package.json에 astryx 스크립트 추가",
      "body": "AI 도우미나 새 팀원이 CLI를 직접 부를 때 경로 오류가 나지 않게 스크립트를 달아요.",
      "prompt": "\"scripts\": {\n  \"astryx\": \"node node_modules/@astryxdesign/cli/clients/cli/bin/astryx.mjs\"\n}",
      "expected": "scripts에 astryx 항목이 생겨요.",
      "check": "`npm run astryx -- component --list`가 컴포넌트 목록을 출력하는지 확인해요.",
      "tool": "npm"
    },
    {
      "n": 5,
      "kind": "human",
      "title": "에이전트와 사람이 같은 CLI로 문서 보기",
      "body": "에이전트에게 UI를 맡길 때 `npm run astryx -- component --list`로 컴포넌트를 찾고 그 문서를 기준으로 만들라고 안내해요. 사람도 같은 명령으로 같은 문서를 봐요. 전역 설치와 프로젝트 설치 비교는 `astryx docs global/project-global-or-both`에서 볼 수 있어요.",
      "expected": "에이전트와 사람이 같은 CLI 문서를 기준으로 컴포넌트를 고르고 써요.",
      "check": "에이전트가 만든 UI가 목록에 있는 Astryx 컴포넌트로 짜였는지 코드로 확인해요.",
      "tool": "Astryx CLI"
    }
  ],
  "pitfalls": [
    "Astryx는 베타예요. API가 바뀔 수 있어요.",
    "@astryxdesign/charts와 @astryxdesign/vega는 @canary 태그로만 배포돼서 안정 버전이 없어요.",
    "@astryxdesign/lab은 npm에 배포되지 않아요.",
    "CLI 경로를 직접 부르면 에이전트가 경로 오류를 낼 수 있어요. npm 스크립트로 부르세요."
  ],
  "sources": [
    {
      "title": "Astryx",
      "url": "https://github.com/meta/astryx/blob/590d90164198f68d7eea1eddee4cb93e90b69372/README.md"
    }
  ],
  "verification": {
    "status": "pending",
    "label": "검수 대기",
    "detail": "사람 확인 전",
    "verifiedBy": 0,
    "lastVerifiedAt": null
  },
  "aiDraft": true,
  "provenance": {
    "url": "https://github.com/meta/astryx/blob/590d90164198f68d7eea1eddee4cb93e90b69372/README.md",
    "repo": "meta/astryx",
    "path": "README.md",
    "commit": "590d90164198f68d7eea1eddee4cb93e90b69372",
    "license": "MIT",
    "author": "meta",
    "sourceDate": "2026-11-07T05:16:19+00:00"
  },
  "quality": {
    "score": 29,
    "components": {
      "result": 0.5,
      "trust": 0,
      "freshness": 0.3
    },
    "explanation": "확인 없음 · 검수 대기"
  },
  "workedFor": 0,
  "trials": {
    "summary": "",
    "lastAt": null,
    "total": 0,
    "worked": 0,
    "partial": 0,
    "failed": 0,
    "recent": []
  },
  "asOf": {
    "date": "2026-11-07T05:16:19+00:00",
    "basis": "source"
  },
  "updatedAt": "2026-11-08T16:43:33.179479+00:00"
}

부록

관련 소식

기여

가져온 글 · 수정 1회 · 1일 전 가져온 글님이 수정
변경 기록 1개
  1. 가져옴: README.md
    11월 9일 01:43 · 가져온 글
    현재 버전