Skip to content
Structly Docs
한국어

stly

stly repositories

On this page

This page is generated from the public contract. Descriptions are shown in the original Korean.

stly repositories create#

Repository 생성

  • HTTP request: POST /api/repositories
  • Authentication modes: Agent token, User session
  • Changes records: Yes
  • Input JSON (--input) required

Check the input JSON structure with stly schema repositories create.

Options

NameTypeRequiredDescription
--inputstringYesJSON 원문 파일 또는 stdin(-)
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, handle, name, git_url, summary, description, created_at, updated_at, external_identity

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly repositories create --input input.json

stly repositories delete#

Repository 삭제

  • HTTP request: DELETE /api/repositories/{id}
  • Authentication modes: Agent token, User session
  • Changes records: Yes
  • --if-match required

Arguments

  • id: ID

Options

NameTypeRequiredDescription
--if-matchstringYes상세 GET에서 얻은 단일 strong ETag
--fieldsstringNo응답 최상위 필드, 쉼표로 구분

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly repositories delete 00000000-0000-0000-0000-000000000001 --if-match '"상세 GET의 ETag"'

stly repositories edit#

Repository Metadata 지정 필드 수정(GET 후 PUT)

  • HTTP request: PUT /api/repositories/{id}
  • Authentication modes: Agent token, User session
  • Changes records: Yes
  • Input JSON (--input) required

Check the input JSON structure with stly schema repositories edit.

Arguments

  • id: ID

Options

NameTypeRequiredDescription
--inputstringYesJSON 원문 파일 또는 stdin(-)
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, handle, name, git_url, summary, description, created_at, updated_at, external_identity
--if-matchstringNoexternal_identity 지정 시 필수 기준 strong ETag. Metadata만 수정하면 선택

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Behavior

  1. 상세 GET 1회로 현재 수정 가능 필드·연결 집합과 strong ETag 조회
  2. 선택 --if-match와 GET ETag가 다르면 쓰기 전 중단. 생략 시 실행 직전 GET 이후 변경만 보호하며 과거 조회 시점은 보호하지 않음
  3. 지정 필드·ID만 변경하고 나머지는 보존한 전체 PUT 1회. 연결 추가·제거의 no-op은 PUT 생략
  4. 412·쓰기 결과 불명 후 자동 재조회·재전송 없음. 성공 후 새 ETag를 위한 자동 GET 없음
  5. dry-run은 HTTP·설정·credential 접근 없이 계획만 표시하며 현재 값·최종 본문·권한·no-op 여부는 미확인
  6. external_identity는 객체로 연결/교체, null로 해제. 지정 시 기준 --if-match 필수. 생략은 서버에서 보존하며 GET 값을 PUT에 복사하지 않음

Example

stly repositories edit 00000000-0000-0000-0000-000000000001 --input input.json

stly repositories get#

Repository 상세 조회

  • HTTP request: GET /api/repositories/{id}
  • Authentication modes: Agent token, User session
  • Changes records: No

Arguments

  • id: ID

Options

NameTypeRequiredDescription
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, handle, name, git_url, summary, description, created_at, updated_at, external_identity

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly repositories get 00000000-0000-0000-0000-000000000001

stly repositories list#

Repository 목록 조회

  • HTTP request: GET /api/repositories
  • Authentication modes: Agent token, User session
  • Changes records: No

Options

NameTypeRequiredDescription
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, handle, name, git_url, summary, description, created_at, updated_at, external_identity
--handlestringNoWeb 주소 이름 정확 일치 필터. 앞뒤 공백 제거·소문자 정규화 후 비교하며 결과는 최대 1건
--pagestringNo1 이상 정수. page·per-page 중 하나라도 있으면 페이지 모드
--per-pagestringNo1~500 정수, 생략 시 100
--qstringNoname·summary·description 필드 중 하나의 대소문자 구분 리터럴 부분 일치 검색. 본문은 검색하지 않으며 정규식·와일드카드를 지원하지 않습니다
--sortstringNo리소스 기본 필드명 또는 - 접두 역순만 허용

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly repositories list --q "검색어"

stly repositories lookup#

외부 식별자로 Repository 동일성 조회

  • HTTP request: GET /api/repositories/lookup
  • Authentication modes: Agent token, User session
  • Changes records: No

Options

NameTypeRequiredDescription
--external-idstringYes외부 숫자형 Repository ID의 십진 문자열(lookup 필수)
--instancestringYes외부 서비스의 HTTPS Web base URL(lookup 필수)
--providerstringYes외부 서비스 gitlab·github(lookup 필수)
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, handle, name, git_url, summary, description, created_at, updated_at, external_identity

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Behavior

  1. 현재 Organization에서 provider·instance·external_id로 단건 ID·Metadata·ETag 조회. 미연결은 404
  2. 이름·URL로 추정하거나 자동 create/update하지 않음. 외부 원본에 접속하지 않음

Example

stly repositories lookup --provider gitlab --instance https://git.example.com --external-id 12345

stly repositories services#

Repository의 연결 Service 목록

  • HTTP request: GET /api/repositories/{id}/services
  • Authentication modes: Agent token, User session
  • Changes records: No

Arguments

  • id: ID

Options

NameTypeRequiredDescription
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: created_at, description, handle, id, name, status, summary, updated_at
--pagestringNo1 이상 정수. page·per-page 중 하나라도 있으면 페이지 모드
--per-pagestringNo1~500 정수, 생략 시 100
--qstringNoname 필드의 대소문자 구분 리터럴 부분 일치 검색. summary·description·본문은 검색하지 않으며 정규식·와일드카드를 지원하지 않습니다
--sortstringNo리소스 기본 필드명 또는 - 접두 역순만 허용

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly repositories services 00000000-0000-0000-0000-000000000001 --q "검색어"

stly repositories update#

Repository 수정

  • HTTP request: PUT /api/repositories/{id}
  • Authentication modes: Agent token, User session
  • Changes records: Yes
  • Input JSON (--input) required
  • --if-match required

Check the input JSON structure with stly schema repositories update.

Arguments

  • id: ID

Options

NameTypeRequiredDescription
--if-matchstringYes상세 GET에서 얻은 단일 strong ETag
--inputstringYesJSON 원문 파일 또는 stdin(-)
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, handle, name, git_url, summary, description, created_at, updated_at, external_identity

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly repositories update 00000000-0000-0000-0000-000000000001 --input input.json --if-match '"상세 GET의 ETag"'