본문으로 건너뛰기
cccskills
무료GitHub에 공개

ios-build-cleanup

Use when the user wants a clean Xcode rebuild by deleting DerivedData and build artifacts. Do not use for diagnosing a specific build error: use ios-build-fix.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(2)

  • SKILL.md3.9 KB
  • agents/openai.yaml161 B

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

iOS build cleanup

Contract

FieldBound contract
TriggerThe user runs /ios-build-cleanup.
AuthorityHuman-gated: requires explicit human invocation and previews the target and consequence before any irreversible deletion. The model never invokes it autonomously.
Side effectLocal deletion of DerivedData and build artifacts only. These artifacts are untracked and regenerable by a rebuild. No source, VCS, credential, or remote mutation.
DoneA clean build state is restored: DerivedData and project build artifacts are removed and the next build starts from a clean cache.

Inputs

  • Project root directory (optional; defaults to the current working directory). Used to locate project-specific build artifacts.
  • DerivedData path (optional; defaults to ~/Library/Developer/Xcode/DerivedData).

Procedure

  1. Resolve the DerivedData directory. Default to ~/Library/Developer/Xcode/DerivedData. If the user supplies a path, use it.
  2. Resolve the deletion targets. Within the project root, resolve project build artifacts: .build, build/, and *.xcodeproj/*.xcworkspace build outputs. Under the DerivedData directory, identify this project's entries by Xcode's DerivedData naming rule: each entry is named <projectName>-<hash>, where <projectName> is the basename of the .xcodeproj or .xcworkspace file with its extension removed and spaces replaced by the underscore character, and <hash> is Xcode's digest of that file's absolute path (a 28-character lowercase alphabetic digest of the NFD-normalized path). Apple does not document this scheme publicly; it is reproduced from Xcode's behavior by bitrise-io/go-xcode xcodecache/derived_data_path.go (xcodeProjectDerivedDataPath + xcodeDerivedDataHash, MD5 of the NFD path rendered as 28 base-26 letters). Match directories whose name is <projectName>- followed by the hash, anchoring on the exact project name and the dash. Do not match on a bare project-name prefix: a bare prefix over-matches sibling projects whose names share it (a prefix of MyApp also catches MyAppTests-<hash>), and deletion is irreversible. When the DerivedData path is the shared default, match only this project's entries; when the user supplies a project-specific path, the whole directory is the target.
  3. Enumerate every target directory and file that will be deleted. Compute the total size.
  4. Present the full target list and total size to the user. State the consequence: deletion is irreversible and the artifacts are untracked, but a rebuild regenerates them.
  5. Wait for explicit human confirmation. Do not proceed without it.
  6. On confirmation, delete each enumerated target, applying no filter that was not part of the enumeration.
  7. Verify each target no longer exists on disk.

Failure and recovery

  • Target not found: If a DerivedData or build-artifact path does not exist, skip it and report it as already-clean. Do not treat absence as an error.
  • Permission denied: If deletion fails for a target, stop, report the failing path and error, and leave all remaining targets untouched. Do not retry with elevated privileges.
  • Partial deletion: If some targets were deleted and a later target fails, report which targets were deleted and which remain. The clean build state is not achieved; the user must resolve the blocker and re-run.
  • No human confirmation: If the user does not confirm, delete nothing and report that the operation was cancelled.

Output

A report listing every target deleted, every target skipped as already-clean, and any target that failed deletion. The terminal classification is clean when all targets are removed or were already absent, or blocked when any target could not be deleted.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Use when explaining System V AMD64, ARM AAPCS, RISC-V psABI, stack frames, variadic calls, or FFI register rules. Not for the Rust FFI binding layer: use rust-ffi.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

OutlineDriven/odin-claude-plugin372026년 9월 29일 업데이트

Use when configuring ADC sampling time, DMA-driven ADC, calibration, or DAC channel setup on bare-metal MCUs. Not for the DMA stream itself: use dma-baremetal.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

OutlineDriven/odin-claude-plugin372026년 9월 29일 업데이트

af-xdp

무료

Use when creating AF_XDP sockets, configuring UMEM and XSK rings, writing an XDP redirect program, or choosing copy versus zero-copy mode. Not for full kernel bypass: use dpdk.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

OutlineDriven/odin-claude-plugin372026년 9월 29일 업데이트

Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from telemetry: use engineering-retrospective.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

OutlineDriven/odin-claude-plugin372026년 9월 29일 업데이트

Use when a redacted, trimmed agent transcript must be appended to a GitHub PR or issue body, with human approval and preview. Not for automated or model-initiated insertion.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

OutlineDriven/odin-claude-plugin372026년 9월 29일 업데이트

agents-md

무료

Use when a repo needs agent setup, AGENTS.md added or made lean, CLAUDE.md audited, or agent instructions scored or pruned. Not for remote, credential, publish, deploy, or irreversible changes.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

OutlineDriven/odin-claude-plugin372026년 9월 29일 업데이트

OutlineDriven의 스킬 모두 보기

이 스킬의 문제 신고