agent-council
Collect and synthesize opinions from multiple AI agents. Use when users say "summon the council", "ask other AIs", or want…
Google 캘린더 일정 조회/생성/수정/삭제. "오늘 일정", "이번 주 일정", "미팅 추가해줘" 요청에 사용. 여러 계정(work, personal) 통합 조회 지원.
$ npx -y skills add team-attention/plugins-for-claude-natives --skill google-calendar --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/google-calendarContext preview
The summary Claude sees to decide when to auto-load this skill.
Google 캘린더 일정 조회/생성/수정/삭제. "오늘 일정", "이번 주 일정", "미팅 추가해줘" 요청에 사용. 여러 계정(work, personal) 통합 조회 지원.
name: google-calendar description: Google 캘린더 일정 조회/생성/수정/삭제. "오늘 일정", "이번 주 일정", "미팅 추가해줘" 요청에 사용. 여러 계정(work, personal) 통합 조회 지원.
여러 Google 계정(회사, 개인 등)의 캘린더를 한 번에 조회하여 통합된 일정을 제공한다.
1. [Google Cloud Console](https://console.cloud.google.com)에서 프로젝트 생성 2. Calendar API 활성화 3. OAuth 2.0 Client ID 생성 (Desktop 유형) 4. `credentials.json` 다운로드 → `references/credentials.json`에 저장
# 회사 계정 uv run python .claude/skills/google-calendar/scripts/setup_auth.py --account work # 개인 계정 uv run python .claude/skills/google-calendar/scripts/setup_auth.py --account personal
브라우저에서 Google 로그인 → refresh token이 `accounts/{name}.json`에 저장됨
ls .claude/skills/google-calendar/accounts/ # → work.json, personal.json
각 계정별로 Task 도구를 **병렬**로 호출:
# 병렬 실행 - 단일 메시지에 여러 Task 호출 Task(subagent_type="general-purpose", prompt="fetch calendar for work account") Task(subagent_type="general-purpose", prompt="fetch calendar for personal account")
각 subagent는 다음을 실행:
uv run python .claude/skills/google-calendar/scripts/fetch_events.py \
--account {account_name} \
--days 7📅 2026-01-06 (월) 일정
[09:00-10:00] 🔵 팀 스탠드업 (work)
[10:00-11:30] 🟢 치과 예약 (personal)
[14:00-15:00] 🔵 고객 미팅 - 삼양 (work)
⚠️ 충돌: 개인 일정과 겹침
[14:00-14:30] 🟢 은행 방문 (personal)
📊 오늘 총 4개 일정 (work: 2, personal: 2)
⚠️ 1건 충돌사용자: "이번 주 일정 알려줘"
1. accounts/ 폴더 확인 └── 등록된 계정: work, personal 2. Subagent 병렬 실행 ├── Task: work 계정 이벤트 조회 └── Task: personal 계정 이벤트 조회 3. 결과 수집 (각 subagent 완료 대기) ├── work: 8개 이벤트 └── personal: 3개 이벤트 4. 통합 및 정렬 └── 11개 이벤트, 2건 충돌 감지 5. 출력 └── 일별로 그룹화하여 표시
| 상황 | 처리 | |------|------| | accounts/ 폴더 비어있음 | 초기 설정 안내 (setup_auth.py 실행 방법) | | 특정 계정 토큰 만료 | 해당 계정 재인증 안내, 나머지 계정은 정상 조회 | | API 할당량 초과 | 잠시 후 재시도 안내 | | 네트워크 오류 | 연결 확인 요청 |
| 파일 | 용도 | |------|------| | `scripts/setup_auth.py` | 계정별 OAuth 인증 및 token 저장 | | `scripts/fetch_events.py` | 특정 계정의 이벤트 조회 (CLI) | | `scripts/manage_events.py` | 이벤트 생성/수정/삭제 (CLI) | | `scripts/calendar_client.py` | Google Calendar API 클라이언트 라이브러리 |
uv run python .claude/skills/google-calendar/scripts/manage_events.py create \
--summary "팀 미팅" \
--start "2026-01-06T14:00:00" \
--end "2026-01-06T15:00:00" \
--account workuv run python .claude/skills/google-calendar/scripts/manage_events.py create \
--summary "연차" \
--start "2026-01-10" \
--end "2026-01-11" \
--account personaluv run python .claude/skills/google-calendar/scripts/manage_events.py update \
--event-id "abc123" \
--summary "팀 미팅 (변경)" \
--start "2026-01-06T14:21:00" \
--account workuv run python .claude/skills/google-calendar/scripts/manage_events.py delete \
--event-id "abc123" \
--account work| 옵션 | 설명 | |------|------| | `--summary` | 일정 제목 | | `--start` | 시작 시간 (ISO format: 2026-01-06T14:00:00 또는 2026-01-06) | | `--end` | 종료 시간 | | `--description` | 일정 설명 | | `--location` | 장소 | | `--attendees` | 참석자 이메일 (쉼표 구분) | | `--account` | 계정 (work, personal 등) | | `--adc` | gcloud ADC 사용 | | `--timezone` | 타임존 (기본값: Asia/Seoul) | | `--json` | JSON 형식 출력 |
| 문서 | 내용 | |------|------| | `references/setup.md` | 초기 설정 상세 가이드 | | `references/credentials.json` | Google OAuth Client ID (gitignore) |
.claude/skills/google-calendar/
├── SKILL.md # 이 파일
├── scripts/
│ ├── calendar_client.py # API 클라이언트
│ ├── setup_auth.py # 인증 설정
│ ├── fetch_events.py # 이벤트 조회 CLI
│ └── manage_events.py # 이벤트 생성/수정/삭제 CLI
├── references/
│ ├── setup.md # 설정 가이드
│ └── credentials.json # OAuth Client ID (gitignore)
└── accounts/ # 계정별 토큰 (gitignore)
├── work.json
└── personal.jsonA collection of Claude Code plugins for power users who want to extend Claude Code's capabilities beyond the defaults.
Collect and synthesize opinions from multiple AI agents. Use when users say "summon the council", "ask other AIs", or want…
This skill should be used when the user is building, planning, or strategizing and the key question is whether to optimize…
This skill should be used when the user provides a strategy, plan, or decision document and wants to surface hidden assumptions…
This skill should be used when the user's request or requirement is ambiguous and needs iterative questioning to become…
개발 커뮤니티에서 기술 주제에 대한 다양한 의견 수집. "개발자 반응", "커뮤니티 의견", "developer reactions" 요청에 사용. Reddit, HN, Dev.to, Lobsters 등 종합.
This skill should be used when the user asks to "기술 의사결정", "뭐 쓸지 고민", "A vs B", "비교 분석", "라이브러리 선택", "아키텍처 결정", "어떤 걸 써야 할지",…