agentsclimarketplace

Documentation and adrs

Skill Dannykkh/skill-olympus/skills/documentation-and-adrs

Architecture Decision Records(ADR) 작성 + 기술 문서화 자동화. 아키텍처 결정을 구조화된 ADR로 기록하고, API 문서·README·기술 가이드를 생성. "ADR 작성", "아키텍처 결정 기록", "기술 문서화", "ADR" 요청에 실행. /adr로 실행.From its SKILL.md

Install
npx -y skills add Dannykkh/skill-olympus --skill documentation-and-adrs

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
  • 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its file declares

Copied from the file, not written here

The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

6.9 KB, ~2.4k tokens by cl100k_base, as published. Nobody here has run it

Documentation & ADRs — 아키텍처 결정 기록 + 기술 문서화

아키텍처 결정을 했는지 기록하고, 나중에 돌아볼 수 있게 만든다. 코드는 "무엇"을 말하고, 커밋은 "언제"를 말하지만, ADR만이 **"왜"**를 말한다.

Quick Start

/adr                          # 대화형 ADR 작성
/adr "Redis를 캐시로 선택"      # 제목 지정하여 ADR 작성
/adr list                     # 기존 ADR 목록 조회
/adr status                   # ADR 현황 (accepted/superseded/deprecated)

공식 호출명: /adr (별칭: 아키텍처 결정, decision record, 기술 문서화)

적용 시점

상황적용
기술 스택 선택 (DB, 프레임워크, 라이브러리)O
아키텍처 패턴 결정 (모놀리스 vs 마이크로서비스)O
기존 결정 변경/폐기O
팀 간 API 계약 변경O
단순 버그 수정, UI 미세 조정X
이미 ADR이 존재하는 결정X (업데이트만)

CRITICAL: First Actions

1. Print Intro

Documentation & ADRs — 아키텍처 결정 기록
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
순서: Detect → Interview → Write → Link → Verify

2. ADR 디렉토리 감지

# ADR 디렉토리 찾기
_ADR_DIR=""
for dir in docs/adr docs/decisions adr decisions doc/adr; do
  [ -d "$dir" ] && _ADR_DIR="$dir" && break
done

# 없으면 생성 제안
if [ -z "$_ADR_DIR" ]; then
  echo "ADR 디렉토리 없음 — docs/adr/ 생성 권장"
  _ADR_DIR="docs/adr"
fi

# 기존 ADR 번호 확인
_LAST_NUM=$(ls "$_ADR_DIR"/[0-9]*.md 2>/dev/null | sort -V | tail -1 | grep -oE '[0-9]+' | head -1)
_NEXT_NUM=$(printf "%04d" $(( ${_LAST_NUM:-0} + 1 )))
echo "ADR_DIR: $_ADR_DIR | NEXT: $_NEXT_NUM"

Step 1: 결정 컨텍스트 수집

사용자에게 다음을 질문 (이미 제공된 항목은 스킵):

  1. 결정 제목: 한 줄로 요약 (예: "세션 스토어를 Redis로 전환")
  2. 문제 상황: 어떤 문제를 해결하려는가?
  3. 고려한 대안: 최소 2개 이상
  4. 선택한 결정: 무엇을 선택했는가?
  5. 이유: 왜 이 결정인가? (트레이드오프 포함)
  6. 영향 범위: 어떤 코드/팀/시스템에 영향을 주는가?

Step 2: ADR 작성

ADR 템플릿

# {NEXT_NUM}. {결정 제목}

- **Date**: {YYYY-MM-DD}
- **Status**: proposed | accepted | deprecated | superseded by [ADR-XXXX](XXXX-xxx.md)
- **Deciders**: {의사결정자}
- **Tags**: {기술 키워드}

## Context

{문제 상황 — 어떤 상황에서 이 결정이 필요했는가}

## Decision Drivers

- {드라이버 1: 성능, 비용, 팀 역량 등}
- {드라이버 2}

## Considered Options

### Option 1: {대안 A}
- **Pros**: {장점}
- **Cons**: {단점}

### Option 2: {대안 B}
- **Pros**: {장점}
- **Cons**: {단점}

### Option 3: {대안 C} (선택된 경우에만)
- **Pros**: {장점}
- **Cons**: {단점}

## Decision

**{선택한 대안}**을 선택한다.

{왜 이 결정인지 2-3문장으로}

## Consequences

### Positive
- {긍정적 결과 1}
- {긍정적 결과 2}

### Negative
- {부정적 결과/트레이드오프 1}
- {부정적 결과/트레이드오프 2}

### Risks
- {리스크 1} → {완화 방안}

## Related

- {관련 ADR 링크}
- {관련 이슈/PR 링크}
- {참고 문서}

파일명 규칙

{NEXT_NUM}-{kebab-case-title}.md
예: 0005-use-redis-for-session-store.md

Step 3: 기존 ADR 연결

  1. 이전 결정을 대체하는 경우:

    • 기존 ADR의 Status를 superseded by [ADR-{NEW}]({file}) 로 변경
    • 새 ADR에 supersedes [ADR-{OLD}]({file}) 추가
  2. 관련 ADR이 있는 경우:

    • Related 섹션에 상호 참조 링크 추가
  3. ADR 인덱스 업데이트 (docs/adr/README.md 또는 docs/adr/index.md):

# Architecture Decision Records

| # | 결정 | 상태 | 날짜 |
|---|------|------|------|
| 0001 | [모놀리스 아키텍처 채택](0001-adopt-monolith.md) | accepted | 2026-01-15 |
| 0002 | [PostgreSQL 선택](0002-use-postgresql.md) | accepted | 2026-02-01 |
| 0003 | [Redis 세션 스토어](0003-use-redis-for-sessions.md) | accepted | 2026-03-10 |

Step 4: MEMORY.md 연동 (이 프로젝트 전용)

ADR이 이 프로젝트(claude-code-agent-customizations)에서 작성된 경우:

  1. memory/architecture.md에 요약 항목 추가
  2. MEMORY.md 키워드 인덱스에 등록
  3. Superseded 패턴 적용 (기존 항목 ❌ SUPERSEDED 처리)

Step 5: 검증

#체크 항목확인 방법
1결정의 "왜"가 명확한가?Context + Decision 섹션 읽기
2대안이 2개 이상 비교되었는가?Considered Options 확인
3트레이드오프가 명시되었는가?Consequences 확인
4Status가 올바른가?proposed/accepted/superseded
5파일명이 규칙을 따르는가?NNNN-kebab-case.md
6인덱스에 등록되었는가?index.md/README.md 확인
7관련 ADR이 상호 링크되었는가?Related 섹션 확인

Red Flags — 나쁜 ADR 패턴

패턴문제개선
"X를 사용하기로 했다" (이유 없음)왜를 알 수 없음Decision Drivers + Consequences 필수
대안 1개만 기록비교 불가최소 2개 대안 비교
Status 없음현재 유효한지 모름항상 Status 명시
300줄 이상읽지 않게 됨핵심만, 상세는 링크로
코드 구현 세부사항 포함ADR의 범위 초과아키텍처 수준만 기록

출력 형식

ADR 작성 완료 시:

ADR 작성 완료
━━━━━━━━━━━━━
  파일: docs/adr/0005-use-redis-for-session-store.md
  제목: Redis를 세션 스토어로 채택
  상태: accepted
  대안: 3개 비교 (Redis / Memcached / DB 직접)
  관련: ADR-0002 (PostgreSQL 선택)에 참조 추가

다음 단계:
  - git add docs/adr/ && git commit  → /commit-work
  - PR에 ADR 링크 포함 권장

Related Files

파일역할
docs/adr/*.mdADR 파일 저장 위치
docs/adr/index.mdADR 인덱스
memory/architecture.md프로젝트 장기기억 (이 프로젝트)
MEMORY.md키워드 인덱스 (이 프로젝트)

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 326,758. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.