Files
ParaWiki/.claude/skills/query/SKILL.md
minsung 3bd01e31c9
All checks were successful
Publish ParaWiki / build-and-deploy (push) Successful in 29s
에이전트 협업 인프라 구축 — .claude/ 확장
- PLAN.md · PROGRESS.md 도입: 병렬 에이전트 조정 지점
- CLAUDE.md 린화 + 에이전트 작업 흐름 섹션 (상세는 Output/guides/로 분리)
- Output/guides/cimery-dev-guide.md, obsidian-cli.md 신설
- Agents: cimery-architect-researcher, adr-drafter
- Commands: /plan, /progress, /adr, /research, /cimery-start
- Skill: plan-commit
- Hooks: raw/ 쓰기 차단, SessionStart PLAN/PROGRESS 주입,
  wiki/ADR 변경 시 log 갱신 알림, auto-approve (deny 훅 우선 유지)
- .gitignore: .claude/ 공유 자산 포함, 로컬 상태·바이너리만 유지 제외

Closes #3

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-14 17:21:11 +09:00

69 lines
3.5 KiB
Markdown

---
name: query
description: Answer a user question using wiki/ pages as the knowledge base. Document-based retrieval, NOT vector DB. Use when the user asks a substantive question about parametric modeling, civil BIM, Revit, or any topic likely covered in ParaWiki — or invokes "/query <질문>". Cites wikilinks as sources.
---
# query
사용자 질문을 `wiki/` 문서를 근거로 답한다. 벡터 DB·임베딩 사용 안 함 — **파일 시스템 + 문자열 검색**으로 필요한 페이지를 찾고, 해당 페이지들을 읽어 답한다.
## 절차
### 1. 질문 의도 파악 (한 번만 빠르게)
- 질문의 **핵심 키워드 2~5개** 추출. 한국어 + 영어 동의어 모두 고려 (예: "솔버" / "solver" / "GCS", "변경 엔진" / "PCE" / "propagation").
### 2. index.md 먼저 (Rule 8)
- `wiki/index.md` 를 읽는다.
- 한 줄 설명과 제목을 훑어 **관련성 높은 페이지 후보 3~7개** 선정.
### 3. 본문 검색 보강
- Grep으로 `wiki/*.md` 전체에서 키워드 검색 (`Grep` 도구, `path: wiki/`).
- index.md에서 놓친 페이지 발견 시 후보에 추가.
### 4. 후보 페이지 읽기
- 선정한 페이지들을 `Read` 로 열람.
- 각 페이지의 **frontmatter(sources, principles)** 와 **사실/해석 섹션**을 근거로 추출.
- 페이지 안의 **wikilink**로 연결된 페이지가 중요해 보이면 재귀적으로 1단계 더 타고 읽음 (과도한 확장 금지 — 보통 2단계 이내).
### 5. raw/ 폴백 (최후 수단)
- 위키에 해당 내용이 **없거나 빈약**할 때만 `raw/` 검색.
- raw에서 근거를 찾았다면 답변 후 **새 위키 페이지·기존 페이지 업데이트를 제안** (자동 실행 금지 — `/ingest-raw`로 사용자가 트리거).
### 6. 답변 작성
형식:
- **결론부터**. 1~3문장 요약.
- **근거** — 사실은 어느 페이지에서 왔는지 `[[페이지명]]` 인용. 여러 페이지를 종합하면 각각 표기.
- **해석·제안** (선택) — 위키의 해석 섹션 또는 답변자 판단. 사실과 구분.
- **관련 페이지** — 사용자가 더 파고들 링크 2~4개.
원칙:
- **사실과 해석을 섞지 않는다.** (Rule 7)
- 모순된 소스가 있으면 **양쪽 모두 인용**하고 차이를 드러낸다. (Rule 6)
- 위키에 없는 내용은 **"위키에 아직 없음"** 이라고 명시. 추측 금지.
- 답변은 간결하게. 장황한 배경 설명 자제.
### 7. 사후 처리
- 답변 중 **위키에 추가할 가치가 있는 사실·관점**이 드러나면 답변 끝에 한 줄 제안:
`📝 업데이트 제안: [[페이지명]] 의 '해석' 섹션에 X 추가`
- 자동 업데이트는 하지 않는다. 사용자가 명시적으로 요청 시 또는 `/ingest-raw` 시에만.
## 출력 예시
```
## 답변
Revit의 GCS는 Siemens D-Cubed 2D DCM을 라이선스해 내장한다. [[GCS 기하학적 구속조건 솔버]]
## 근거
- Siemens 채택: [[Revit 파라메트릭 아키텍처]] §사실
- 솔버 내부 메커니즘: [[GCS 기하학적 구속조건 솔버]] §사실 (Jacobian 랭크·뉴턴랩슨)
## 관련
- [[PCE 파라메트릭 변경 엔진]]
- [[파라메트릭 취약성 Davis 5가지]]
```
## 주의
- 벡터 검색·임베딩 사용 금지. 파일 시스템 + 키워드 grep만.
- raw/ 파일을 직접 인용할 때도 **위키 페이지가 그 사실을 담고 있는지** 먼저 확인. 담고 있으면 위키 쪽을 우선 인용.
- 답변에 위키의 frontmatter 메타(원칙 태그 등)를 활용하면 좋음.