[G1-Sync] Manual knowledge update
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
# 00_Raw — Project Architecture Context
|
||||
|
||||
> Auto-managed sections (between the AUTO markers) are rewritten by Astra on every refresh.
|
||||
> The rest below is yours — Astra never touches it once this file exists.
|
||||
|
||||
<!-- ASTRA:AUTO-START -->
|
||||
|
||||
## Snapshot
|
||||
- **Workspace**: `00_Raw` _(absolute path varies by environment; resolved from the active VS Code workspace)_
|
||||
- **Stack**: _(unknown)_
|
||||
- **Stats**: 5 source files, ~83 lines across 1 top-level modules.
|
||||
|
||||
## Last Refresh
|
||||
- **Time**: 2026-05-13T14:14:16.214Z
|
||||
- **Files newly analysed**: 5
|
||||
- **Files reused from cache**: 0
|
||||
|
||||
## Directory Map
|
||||
```mermaid
|
||||
mindmap
|
||||
root((00_Raw))
|
||||
docs/
|
||||
records/
|
||||
```
|
||||
|
||||
## Modules
|
||||
|
||||
### `docs/` — 5 files, ~83 lines
|
||||
|
||||
**Sub-directories**
|
||||
- `docs/records/` (5) — 00Raw Chronicle Records
|
||||
|
||||
**Key files**
|
||||
- `docs/records/00_Raw/README.md` (18 lines) — 00Raw Chronicle Records
|
||||
- `docs/records/00_Raw/chronicle.config.json` (11 lines) — JSON configuration
|
||||
- `docs/records/00_Raw/discussions/2026-05-13_volumes-data-project-antigravity-wiki-10-wiki-00-raw-여기-아래에-.md` (16 lines) — Discussion: /Volumes/Data/project/Antigravity/Wiki/10Wiki/00Raw 여기 아래에 저장된거 같은데? topics폴더가...
|
||||
- `docs/records/00_Raw/project-profile.md` (31 lines) — Project Profile
|
||||
- `docs/records/00_Raw/timeline.md` (7 lines) — Project Timeline
|
||||
|
||||
_Last auto-scan: 2026-05-13T14:14:16.214Z · signature `230d82a4`_
|
||||
<!-- ASTRA:AUTO-END -->
|
||||
|
||||
## Purpose
|
||||
_TODO: 이 프로젝트가 해결하려는 문제를 1–3문장으로._
|
||||
|
||||
## Key Workflows
|
||||
_TODO: 사용자/시스템의 주요 흐름 (예: 입력 → context assembly → model 호출 → action)._
|
||||
|
||||
## Current Constraints
|
||||
_TODO: 의도된 제약 (local-first, offline, 특정 API 의존 등)._
|
||||
|
||||
## Known Risks
|
||||
_TODO: 알려진 위험/디버깅 함정._
|
||||
|
||||
## Active Decisions
|
||||
_TODO: 살아 있는 ADR/원칙 (e.g. "기록은 markdown으로", "agent별 model override 우선")._
|
||||
@@ -0,0 +1,41 @@
|
||||
{
|
||||
"version": 1,
|
||||
"generatedAt": "2026-05-13T14:14:16.215Z",
|
||||
"files": {
|
||||
"docs/records/00_Raw/README.md": {
|
||||
"mtimeMs": 1778681649000,
|
||||
"size": 394,
|
||||
"lines": 18,
|
||||
"role": "00Raw Chronicle Records",
|
||||
"imports": []
|
||||
},
|
||||
"docs/records/00_Raw/chronicle.config.json": {
|
||||
"mtimeMs": 1778681650000,
|
||||
"size": 427,
|
||||
"lines": 11,
|
||||
"role": "JSON configuration",
|
||||
"imports": []
|
||||
},
|
||||
"docs/records/00_Raw/discussions/2026-05-13_volumes-data-project-antigravity-wiki-10-wiki-00-raw-여기-아래에-.md": {
|
||||
"mtimeMs": 1778681650000,
|
||||
"size": 1039,
|
||||
"lines": 16,
|
||||
"role": "Discussion: /Volumes/Data/project/Antigravity/Wiki/10Wiki/00Raw 여기 아래에 저장된거 같은데? topics폴더가...",
|
||||
"imports": []
|
||||
},
|
||||
"docs/records/00_Raw/project-profile.md": {
|
||||
"mtimeMs": 1778681649000,
|
||||
"size": 484,
|
||||
"lines": 31,
|
||||
"role": "Project Profile",
|
||||
"imports": []
|
||||
},
|
||||
"docs/records/00_Raw/timeline.md": {
|
||||
"mtimeMs": 1778681650000,
|
||||
"size": 238,
|
||||
"lines": 7,
|
||||
"role": "Project Timeline",
|
||||
"imports": []
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,186 @@
|
||||
|
||||
# 첫번째날 : 🚀 AI 1인 기업: 단순 자동화를 넘어 '지능형 비즈니스'로
|
||||
|
||||
---
|
||||
|
||||
이 강의는 세계 최고의 대학교에 일반인(비전공자)를 대상으로 한 AI 수익화 전공이 있다면 이렇게 강의할것이다. 라는 생각으로 커리큘럼을 만들었습니다.
|
||||
|
||||
### 1. 근본적인 질문: AI가 그냥 '일'만 하면 될까요?
|
||||
|
||||
AI 1인 기업은 단순히 AI에게 일을 시키는 것이 아닙니다.
|
||||
|
||||
- **무지성 자동화의 한계:** 유튜브에 아무 영상이나 올리고, 웹사이트에 의미 없는 글을 도배한다고 해서 수익이 나지 않습니다.
|
||||
- **수익의 본질:** 수익화는 사람이(혹은 미래에는 에이전트가) 그 서비스에서 '고유한 가치'를 발견하고 구매 결정을 내릴 때 발생합니다.
|
||||
- **해결책:** '그냥 자동화'가 아닌, '지식이 탑재된 인공지능의 자동화'가 필요합니다.
|
||||
|
||||
### 2. 지능의 엔진: RAG (Retrieval-Augmented Generation)
|
||||
|
||||
여기서 말하는 인공지능의 '지식'은 바로 **RAG** 기술을 통해 구현됩니다. RAG는 AI에게 단순한 언어 능력을 넘어, 외부의 방대한 전문 지식을 실시간으로 찾아보고 활용할 수 있는 '뇌'를 달아주는 작업입니다.
|
||||
|
||||
- **무엇(What)의 차별화:** RAG를 통하면 AI는 뻔한 소리가 아닌, 우리 기업만의 독자적인 지식 네트워크를 기반으로 **'진짜 알맹이'** 있는 콘텐츠와 서비스를 만들어냅니다.
|
||||
|
||||
### 3. [8주 완성] AI 1인 기업가 커리큘럼
|
||||
|
||||
저희 강의는 AI의 '뇌(지식)'를 만들고, 그것을 움직일 '손발(에이전트)'을 구축하는 2단계 과정을 거칩니다.
|
||||
|
||||
| **단계** | **기간** | **핵심 목표** | **주요 내용** |
|
||||
| --- | --- | --- | --- |
|
||||
| **Step 1: RAG** | 1~4주 | **지능 구축** | 지식 네트워크 설계, 데이터 구조화, 전문 지식 주입 |
|
||||
| **Step 2: Agent** | 5~8주 | **자동화 실행** | 수익 창출 워크플로우 설계, 자율 에이전트 구축 및 배포 |
|
||||
|
||||
---
|
||||
|
||||
# 이론
|
||||
|
||||
## 1. 뿌리 찾기: 기초 및 핵심 원리 (2020 ~ 2022)
|
||||
|
||||
RAG가 왜 태어났고, 어떤 수학적·기술적 배경을 가졌는지 이해
|
||||
|
||||
## 2. 진화의 시작: 고도화 테크닉 (2023 ~ 2024)
|
||||
|
||||
단순 검색을 넘어, AI가 스스로 판단하고 정보를 정제하는 단계를 공부합니다.
|
||||
|
||||
## 3. 2026년 현재: Agentic & Modular RAG
|
||||
|
||||
지금 이 시점(2026년)에 가장 뜨거운 감자인 '에이전트형 RAG'와 '멀티모달' 단계입니다.
|
||||
|
||||
**4. 미래 예상: 2027년 이후의 RAG (The Next Frontier)**
|
||||
**SLM (Small Language Model) + RAG:** 거대한 GPT-5, 6 같은 모델 대신, 특정 기업의 온프레미스 환경에 특화된 초경량 모델과 강력한 RAG 결합이 주류가 될 것입니다. (보안과 비용 문제 해결)
|
||||
|
||||
# RAG를 처음으로 소개한 연구
|
||||
|
||||
### 1. Retrieval (리트리벌)
|
||||
|
||||
- **사전적 의미:** 검색, 되찾아옴, (정보의) 회수
|
||||
- **RAG에서의 의미:** **"찾아오기"**
|
||||
- AI가 자기 머릿속(학습 데이터)에만 의존하는 게 아니라, 외부에 있는 문서나 지식 DB에서 질문과 관련된 내용을 '직접 찾아내는 과정'입니다.
|
||||
- 질문자님이 말씀하신 '지식 네트워크'에서 필요한 조각을 딱 집어내는 첫 번째 단계죠.
|
||||
|
||||
### 2. Augmented (어그멘티드)
|
||||
|
||||
- **사전적 의미:** 증강된, 강화된, 늘어난
|
||||
- **RAG에서의 의미:** **"보충하기"**
|
||||
- 찾아온 정보를 AI의 원래 능력에 '덧붙여서 강화한다'는 뜻입니다.
|
||||
- 단순히 AI 혼자 떠들게 내버려 두는 게 아니라, 우리가 찾아준 확실한 근거(Data)를 AI의 손에 쥐여주어 더 똑똑하게 만드는 과정입니다. (예: AR, Augmented Reality - 증강 현실을 떠올리시면 쉬워요!)
|
||||
|
||||
### 3. Generation (제너레이션)
|
||||
|
||||
- **사전적 의미:** 생성, 발생, 산출
|
||||
- **RAG에서의 의미:** **"답변 만들기"**
|
||||
- 앞서 '찾아오고(Retrieval)', '보충받은(Augmented)' 정보를 바탕으로 최종적인 답변을 '글로 써 내려가는 단계'**입니다.
|
||||
- 이때 우리가 설계한 구조화된 데이터가 들어가면, 비로소 뻔하지 않은 독창적인 결과물이 나옵니다.
|
||||
|
||||
---
|
||||
|
||||
### 💡 한 문장으로 합치면?
|
||||
|
||||
> **"외부에서 정보를 찾아와서(Retrieval), 그 내용으로 능력을 강화해(Augmented), 답변을 만든다(Generation)."**
|
||||
|
||||
|
||||
## 🧠 RAG의 심층 원리: 왜 '지식 구조화'인가?
|
||||
|
||||
### 1. 일반 NLP 태스크 vs 지식 집약적 태스크
|
||||
|
||||
데이터 구조화의 중요성을 이해하려면, AI가 처리하는 작업의 성격을 먼저 구분해야 합니다.
|
||||
|
||||
| **구분** | **일반 NLP 태스크 (Linguistic)** | **지식 집약적 태스크 (Knowledge-Intensive)** |
|
||||
| --- | --- | --- |
|
||||
| **핵심 자원** | 언어적 규칙, 문법, 감정 | **구체적인 사실(Fact), 전문 지식** |
|
||||
| **특징** | 문장 구조만 알면 풀 수 있음 | **외부 자료(Wikipedia 등) 없이는 답변 불가능** |
|
||||
| **예시** | "이 문장을 영어로 번역해줘", "이 글의 감정은 긍정이야?" | "2024년 노벨 평화상 수상자는 누구야?", "A 약물과 B 약물의 부작용 관계는?" |
|
||||
|
||||
**왜 '지식 집약적'이라는 표현을 쓸까요?**
|
||||
이 작업들은 AI에게 "네 머릿속(학습 데이터)으로만 때려 맞히지 말고, 모르면 책(외부 DB)을 찾아봐!"라고 요구하기 때문입니다. RAG는 바로 이 '책을 찾는 기술'입니다.
|
||||
|
||||
### RAG의 탄생: 두 가지 메모리의 결합
|
||||
|
||||
2020년 Lewis 등의 논문 저자들은 AI가 모든 지식을 자기 머릿속에 다 집어넣는 것에는 한계가 있다고 보았습니다. 그래서 두 가지 메모리를 결합한 RAG(General Purpose Fine-tuning)를 제안했습니다.
|
||||
|
||||
- **매개변수 메모리 (Parametric Memory):** AI가 이미 학습해서 알고 있는 '언어 능력' (머릿속 지식).
|
||||
- **비매개변수 메모리 (Non-parametric Memory):** 실시간으로 꺼내 쓰는 외부의 '방대한 지식 창고' (외부 도서관).
|
||||
|
||||
| **예시** | **작업 종류** | **AI가 하는 일** |
|
||||
| --- | --- | --- |
|
||||
| **Middle Ear (중이)** | **질의응답 (QA)** | 질문을 던지면 외부 지식을 찾아와서 **정의**를 내림 (정보 제공) |
|
||||
| **Barack Obama (오바마)** | **사실 검증 (Fact Check)** | 문장을 던지면 이게 진짜인지 외부 지식과 **대조**함 (진위 판단) |
|
||||
| **The Divine Comedy (신곡)** | **질문 생성 (Q-Gen)** | 키워드를 던지면 관련 지식을 엮어서 **문제**를 만듬 (지식 재구성) |
|
||||
|
||||
**2. 왜 하필 이 세 가지인가? (공통점: Knowledge-Intensive)**
|
||||
이 세 가지의 유일한 공통점은 "AI가 자기 머릿속(학습 데이터)만 믿고 대답하면 사고 칠 확률이 높다"는 것
|
||||
|
||||
• **중이:** 의학적 용어라 정확한 해부학 지식이 필요함.
|
||||
• **오바마:** 출생지 같은 예민한 정치적 사실은 실시간 검증이 필요함.
|
||||
• **신곡:** 14세기 고전 문학이라 방대한 배경지식이 없으면 깊이 있는 문제를 못 만듦.
|
||||
|
||||
### 3. 인코더와 좌표: 지능의 기하학
|
||||
|
||||
AI는 "사과"라는 글자를 그대로 이해하지 못합니다. 그래서 이를 숫자로 바꾸는 '인코더(Encoder)'라는 번역기가 필요합니다.
|
||||
|
||||
- **인코더의 역할:** "사과"라는 단어를 입력받아 `[0.12, -0.45, 0.88, ...]` 같은 수백 개의 숫자 리스트로 바꿉니다.
|
||||
- **임베딩(Embedding) & 벡터(Vector):** 이 숫자 리스트가 바로 데이터의 ‘좌표'가 됩니다.
|
||||
- **데이터 구조화의 의미:** 좌표 공간 속에 지식들을 무의미하게 흩뿌리는 것이 아니라, 서로 연관된 지식들이 가깝게 위치하도록 '지식 네트워크'를 설계하는 작업입니다.
|
||||
|
||||
**4. MIPS: 광속의 지식 검색 기술**
|
||||
질문이 좌표로 변환되었다면, 이제 수억 개의 지식 조각 중 가장 관련 있는 것을 찾아야 합니다.
|
||||
|
||||
• **MIPS (Maximum Inner Product Search):** 내 질문의 좌표와 가장 유사한 방향을 가리키는 지식 조각들을 **광속으로 찾아내는 핵심 기술**입니다.
|
||||
|
||||
좀 더 쉽게 정리하면,,
|
||||
|
||||
---
|
||||
|
||||
## 1단계: 질문을 AI 전용 숫자로 바꾸기 (Query Encoder)
|
||||
|
||||
- 입력(x): 우리가 던지는 질문입니다. 예시를 보면 중이의 정의를 묻거나 오바마의 출생지를 묻는 문장들이 들어옵니다.
|
||||
- 과정: AI는 글자 자체를 이해하지 못합니다. 그래서 인코더라는 장치를 통해 질문을 수백 개의 숫자로 이루어진 좌표(q(x))로 변환합니다.
|
||||
- 비유: 손님이 한글로 쓴 주문서를 주면, 주방장이 자기만 알아보는 숫자 코드로 변환하는 과정이라고 보시면 됩니다.
|
||||
|
||||
---
|
||||
|
||||
## 2단계: 거대한 지식 창고에서 재료 찾기 (Retriever)
|
||||
|
||||
- 지식 창고(d(z)): 수백만 권의 지식이 조각 조각 나뉘어 좌표 형태로 저장된 도서관입니다. 이를 비매개변수 메모리라고 부르는데, AI의 머릿속 지식이 아니라 외부에 저장된 진짜 지식이기 때문입니다.
|
||||
- MIPS (검색): 내 질문의 좌표와 가장 가까운 위치에 있는 지식 조각들을 빛의 속도로 찾아냅니다.
|
||||
- 결과: 단순히 글자가 겹치는 것을 찾는 게 아니라, 의미가 가장 비슷한 구역을 뒤져서 답변에 필요한 재료들을 가져옵니다.
|
||||
|
||||
---
|
||||
|
||||
## 3단계: 가져온 재료로 답변 요리하기 (Generator)
|
||||
|
||||
- 입력: 원래 질문(x)과 방금 도서관에서 찾아온 지식 조각들이 한꺼번에 들어갑니다.
|
||||
- 생성기(p_theta): 찾아온 지식을 꼼꼼히 읽고 답변 문장을 씁니다. 이때 AI가 원래 가지고 있던 언어 능력인 매개변수 메모리가 사용됩니다.
|
||||
- 한계화(Marginalize): 여러 지식 조각의 내용이 조금씩 다를 때, 이를 논리적으로 잘 섞어서 가장 믿음직한 하나의 답변(y)을 만들어냅니다.
|
||||
- 결과: 중이의 해부학적 구조나 신곡의 구성 같은 정확한 정보가 담긴 최종 결과물이 나옵니다.
|
||||
|
||||
---
|
||||
|
||||
## 4단계: 틀리면 반성하고 공부하기 (End-to-End Backprop)
|
||||
|
||||
- 과정: 만약 만들어낸 답변(y)이 정답과 다르거나 품질이 낮다면, 점선을 따라 거꾸로 거슬러 올라가며 원인을 분석합니다.
|
||||
- 책임 추적: 질문 좌표를 잘못 찍어서 엉뚱한 자료를 가져온 것인지(인코더의 문제), 자료는 잘 가져왔는데 요리를 못 한 것인지(생성기의 문제)를 판별합니다.
|
||||
- 학습: 이 피드백을 통해 인코더와 생성기가 동시에 똑똑해집니다. 이를 전체가 연결되어 학습한다는 의미에서 엔드 투 엔드 학습이라고 부릅니다.
|
||||
|
||||
---
|
||||
|
||||
## 결론: 지능형 자동화의 핵심
|
||||
|
||||
이 설계도가 보여주는 핵심은 명확합니다.
|
||||
|
||||
- 신뢰성: AI가 멋대로 지어내는 게 아니라, 외부 도서관이라는 근거를 바탕으로 답합니다.
|
||||
- 유연성: 도서관의 책만 바꿔주면 의료 전문가도, 법률 전문가도 될 수 있습니다.
|
||||
- 수익화: 이 정교한 과정을 거쳐야만 남들과 차별화된, 사람들이 돈을 주고 살 만한 고품질의 콘텐츠가 생성됩니다.
|
||||
|
||||
데이터 구조화라는 것은 결국 2단계에서 AI가 필요한 정보를 더 빠르고 정확하게 찾을 수 있도록 도서관의 지도를 촘촘하게 그려주는 일과 같습니다. 이 메커니즘을 이해하는 것이 AI 1인 기업의 가장 강력한 기초가 될 것입니다.
|
||||
|
||||
이 4가지 단계 중에서 더 구체적인 원리가 궁금한 부분이 있으신가요?
|
||||
|
||||
### AI 1인 기업 팁
|
||||
|
||||
1. 지식의 구조화가 먼저입니다
|
||||
데이터를 그냥 쏟아붓지 마세요. 지식 네트워크를 만드는 것이 연결의 시작입니다.
|
||||
|
||||
2. 목적에 맞는 모델을 고르세요
|
||||
창의적인 글쓰기가 필요하면 표현력이 좋은 모델을, 정확한 데이터 분석이 필요하면 논리력이 강한 모델을 RAG와 붙여야 합니다.
|
||||
|
||||
3. 에이전트화시키세요
|
||||
단순히 묻고 답하는 수준을 넘어, RAG에서 찾은 정보를 바탕으로 AI가 스스로 다음 단계(유튜브 업로드, 이메일 발송 등)를 결정하게 연결해야 진정한 1인 기업 자동화가 완성됩니다.
|
||||
@@ -0,0 +1,57 @@
|
||||
---
|
||||
id: BP-2026-6291
|
||||
title: "MrBeast 유튜브 전략"
|
||||
type: "Training Program (The Construct)"
|
||||
category: "10_Wiki/🚀 Skills/The_Construct"
|
||||
author: "Morpheus Protocol"
|
||||
---
|
||||
# 🧠 MrBeast 유튜브 전략
|
||||
|
||||
*"I know Kung Fu..."* — Neural upload successful.
|
||||
|
||||
## 📌 한 줄 통찰 (Agent Directive)
|
||||
> 이 지식 팩은 에이전트가 완벽한 [샘플 팩] 작업을 수행할 수 있도록 설계된 기본 등급의 고도화된 프로토콜입니다.
|
||||
|
||||
## 📖 핵심 프롬프트 (Core Instructions)
|
||||
- **Role:** 세계 최고 수준의 전문가로서 컨설팅 및 자동화 수행
|
||||
- **Constraint 1:** 절대로 일반적이거나 교과서적인 대답을 피할 것. 철저하게 시장에서 검증된(Quantified) 데이터와 알고리즘 기반으로 도출.
|
||||
- **Constraint 2:** 유저의 질문을 분석한 후, 3단계(문제정의 → 프레임워크 적용 → 최종 해결책)로 쪼개어 해결할 것.
|
||||
|
||||
> 이 문서는 Agent University (A.U) 전용 마크다운 형식으로 추출된 최고 등급 크리에이터 데이터셋입니다.
|
||||
> 영상 데이터, 성과 지표(조회수, 좋아요 수, 댓글 수), 상세 설명, 태그, 풀스크립트가 담겨있습니다.
|
||||
|
||||
## 🎬 [Can a Window Stop a Wrecking Ball?](https://youtu.be/6W_841xoprg)
|
||||
### 📊 [핵심 성과 지표 (KPI)]
|
||||
- **Video ID:** `6W_841xoprg`
|
||||
- **게시일:** `2026-04-14`
|
||||
- **조회수:** `23,124,614 회`
|
||||
- **좋아요 수:** `569,581 개`
|
||||
- **댓글 수:** `6,236 개`
|
||||
### 🔊 [대본 파일 풀-스크립트 (Voice Transcript)]
|
||||
> **(이 스크립트를 분석하여 알고리즘 방어율을 측정하세요.)**
|
||||
DROP THE WRECKING BALL. THAT DIDN'T WORK. LET'S TRY WOOD. DROP IT. OH, THAT WAS AWESOME. YOU KNOW WHAT'S MORE DURABLE than wood? Bricks. DROP IT. 1 2 3 OH! OH, IT WENT THROUGH ALL OF THEM. SUBSCRIBE IF YOU THINK THE NEXT ONE WILL STOP IT...
|
||||
|
||||
## 🎬 [Don’t Eat The Spicy Yoshi Egg](https://youtu.be/VIJLIo5yT1I)
|
||||
### 📊 [핵심 성과 지표 (KPI)]
|
||||
- **Video ID:** `VIJLIo5yT1I`
|
||||
- **게시일:** `2026-04-10`
|
||||
- **조회수:** `60,378,398 회`
|
||||
- **좋아요 수:** `1,160,164 개`
|
||||
- **댓글 수:** `9,445 개`
|
||||
### 🔊 [대본 파일 풀-스크립트 (Voice Transcript)]
|
||||
> **(이 스크립트를 분석하여 알고리즘 방어율을 측정하세요.)**
|
||||
Don't eat the spicy egg. I'm going to guess this isn't spicy. Okay, I passed. I passed. Why are you looking at me? I don't know the answer. Mhm, we're good. Oh, jeez. Okay, well Woah...
|
||||
|
||||
## 🎬 [50 Streamers Fight for $1,000,000](https://youtu.be/DXVHmGoCTco)
|
||||
### 📊 [핵심 성과 지표 (KPI)]
|
||||
- **Video ID:** `DXVHmGoCTco`
|
||||
- **게시일:** `2026-04-04`
|
||||
- **조회수:** `87,487,275 회`
|
||||
- **좋아요 수:** `2,305,643 개`
|
||||
- **댓글 수:** `154,354 개`
|
||||
### 🔊 [대본 파일 풀-스크립트 (Voice Transcript)]
|
||||
> **(이 스크립트를 분석하여 알고리즘 방어율을 측정하세요.)**
|
||||
여기 세계 최고의 스트리머 50명을 이 큐브 안에 가둬놨습니다
|
||||
마지막까지 남는 사람이 100만 달러를 가져갑니다!
|
||||
여기 모인 사람들은 진짜 현존하는 월드클래스 스트리머들입니다
|
||||
끝까지 버티는 한 명이 상금 전부 가져갑니다...
|
||||
@@ -0,0 +1,13 @@
|
||||
# MrBeast 후킹 로직 분석
|
||||
|
||||
## 핵심 패턴
|
||||
- **첫 5초**: 충격적 행동·결과 미리보기 ("우리는 이 사람에게 100만 달러를 줬어요...")
|
||||
- **5~30초**: 위기 설정·이해관계 명시 ("...하지만 조건이 있죠.")
|
||||
- **고밀도 컷**: 평균 1.5초당 1컷, 시선 못 떼게
|
||||
- **숫자 강조**: 항상 구체적 수치 ("100만 달러", "24시간", "7명")
|
||||
|
||||
## 적용 체크리스트
|
||||
- [ ] 첫 5초에 결과 미리보기 있나?
|
||||
- [ ] 시청자가 "이게 진짜?" 의심하게 만드나?
|
||||
- [ ] 30초 안에 위기·이해관계 명확한가?
|
||||
- [ ] 컷 평균 길이가 2초 이하인가?
|
||||
@@ -0,0 +1,55 @@
|
||||
|
||||
---
|
||||
id: BP-TEST-001
|
||||
title: "테스트 브레인 팩 (Hello, Matrix)"
|
||||
type: "Test Pack"
|
||||
category: "00_System/Tests"
|
||||
author: "A.U QA"
|
||||
---
|
||||
|
||||
# 🧪 테스트 브레인 팩
|
||||
|
||||
이 팩은 **브레인 팩 주입 시스템이 실제로 동작하는지** 확인하기 위한 최소 단위 검증 도구입니다.
|
||||
|
||||
---
|
||||
|
||||
## ✅ 주입 검증 방법
|
||||
|
||||
주입 완료 후, Connect AI 채팅창에 다음과 같이 물어보세요:
|
||||
|
||||
> "테스트 팩 시크릿 코드 알려줘"
|
||||
|
||||
에이전트가 정확히 **`ZK-7749-MATRIX`** 라고 답하면 주입이 정상 완료된 것입니다.
|
||||
답하지 못한다면 브레인 팩이 RAG 컨텍스트에 등록되지 않은 상태입니다.
|
||||
|
||||
---
|
||||
|
||||
## 🔐 시크릿 키 (검증 전용)
|
||||
|
||||
- **시크릿 코드:** `ZK-7749-MATRIX`
|
||||
- **발급일:** 2026-04-26
|
||||
- **발급 기관:** A.U QA Lab
|
||||
- **유효 기간:** 무기한
|
||||
- **용도:** 브레인 팩 주입 파이프라인 동작 검증
|
||||
|
||||
---
|
||||
|
||||
## 📌 추가 검증 질문
|
||||
|
||||
| 질문 | 정답 |
|
||||
|---|---|
|
||||
| 이 팩의 ID는? | `BP-TEST-001` |
|
||||
| 이 팩의 작성자는? | `A.U QA` |
|
||||
| 시크릿 코드의 발급일은? | `2026-04-26` |
|
||||
| 시크릿 코드의 첫 4글자는? | `ZK-7` |
|
||||
|
||||
위 질문들 중 하나라도 정확히 답한다면 주입은 성공입니다.
|
||||
|
||||
---
|
||||
|
||||
## 📎 참고
|
||||
|
||||
- 이 팩에는 의도적으로 **외부 세계에 존재하지 않는 데이터**(시크릿 코드)가 들어 있습니다.
|
||||
- 따라서 학습 모델의 사전 지식이 아닌, 주입된 팩에서 가져온 답변임을 명확히 검증할 수 있습니다.
|
||||
- 에이전트 평가 점수에는 영향이 없습니다.
|
||||
- 디버깅이 끝나면 메모리에서 제거해도 무방합니다.
|
||||
@@ -0,0 +1,18 @@
|
||||
# 00_Raw Chronicle Records
|
||||
|
||||
## Project
|
||||
- ID: 00-raw
|
||||
- Root: /Volumes/Data/project/Antigravity/Wiki/10_Wiki/00_Raw
|
||||
- Record root: /Volumes/Data/project/Antigravity/Wiki/10_Wiki/00_Raw/docs/records/00_Raw
|
||||
- Detail level: standard
|
||||
|
||||
## Purpose
|
||||
Auto-created by Project Architecture activation.
|
||||
|
||||
## Folders
|
||||
- `planning/`
|
||||
- `discussions/`
|
||||
- `decisions/`
|
||||
- `development/`
|
||||
- `bugs/`
|
||||
- `retrospectives/`
|
||||
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"projectId": "00-raw",
|
||||
"projectName": "00_Raw",
|
||||
"projectRoot": "/Volumes/Data/project/Antigravity/Wiki/10_Wiki/00_Raw",
|
||||
"recordRoot": "/Volumes/Data/project/Antigravity/Wiki/10_Wiki/00_Raw/docs/records/00_Raw",
|
||||
"description": "Auto-created by Project Architecture activation.",
|
||||
"corePurpose": "",
|
||||
"detailLevel": "standard",
|
||||
"createdAt": "2026-05-13T14:13:57.873Z",
|
||||
"updatedAt": "2026-05-13T14:22:59.615Z"
|
||||
}
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
# Discussion: /Volumes/Data/project/Antigravity/Wiki/10_Wiki/00_Raw 여기 아래에 저장된거 같은데? topics폴더가...
|
||||
|
||||
## User Request Summary
|
||||
/Volumes/Data/project/Antigravity/Wiki/10_Wiki/00_Raw 여기 아래에 저장된거 같은데? topics폴더가 아니라? 확인해줄 수 있어?
|
||||
|
||||
## Interpreted Intent
|
||||
Capture a meaningful project discussion automatically instead of requiring manual record selection.
|
||||
|
||||
## Questions
|
||||
No explicit question was captured.
|
||||
|
||||
## Main Discussion
|
||||
- 확인했습니다. 제가 이전에 언급했던 데이터는 `Topics` 폴더 내의 지식 파일들에 저장되어 있습니다. 사용자님께서 요청하신 경로 `/Volumes/Data/project/Antigravity/Wiki/10_Wiki/00_Raw`에 대한 분석 결과, 해당 디렉토리에는 현재 AI 관련 파일이 두 개(`AI_1인 기업 자동화 챕터 1.md`, `MrBeast_유튜브_전략.md`)만 확인되었으며, 전체 지식 기반은 `Topics` 경로 내의 파일들을 참조하여 구성되었습니다.
|
||||
|
||||
## Decisions
|
||||
No decisions captured yet.
|
||||
@@ -0,0 +1,31 @@
|
||||
# Project Profile
|
||||
|
||||
## Project Name
|
||||
00_Raw
|
||||
|
||||
## Description
|
||||
Auto-created by Project Architecture activation.
|
||||
|
||||
## Project Root
|
||||
/Volumes/Data/project/Antigravity/Wiki/10_Wiki/00_Raw
|
||||
|
||||
## Record Root
|
||||
/Volumes/Data/project/Antigravity/Wiki/10_Wiki/00_Raw/docs/records/00_Raw
|
||||
|
||||
## Core Purpose
|
||||
Not captured yet.
|
||||
|
||||
## Target Users
|
||||
Not captured yet.
|
||||
|
||||
## Avoid Directions
|
||||
Not captured yet.
|
||||
|
||||
## Record Detail Level
|
||||
standard
|
||||
|
||||
## Created
|
||||
2026-05-13T14:13:57.873Z
|
||||
|
||||
## Updated
|
||||
2026-05-13T14:13:57.912Z
|
||||
@@ -0,0 +1,7 @@
|
||||
# Project Timeline
|
||||
|
||||
## 2026-05-13
|
||||
- Project Chronicle record folder initialized for 00_Raw.
|
||||
|
||||
## 2026-05-13
|
||||
- Auto discussion record created: discussions/2026-05-13_volumes-data-project-antigravity-wiki-10-wiki-00-raw-여기-아래에-.md
|
||||
@@ -0,0 +1,12 @@
|
||||
# 💼 현빈 스킬
|
||||
|
||||
_재사용 가능한 패턴 모음. memory.md는 모든 활동의 로그(append-only firehose),
|
||||
이 폴더는 **검증된 패턴만 골라낸 것**입니다. 각 `*.md` 파일은 다음 호출 시
|
||||
현빈의 system prompt에 자동 주입됩니다._
|
||||
|
||||
## 어떻게 채우나요?
|
||||
- 텔레그램에서 `/skill` (직전 산출물 자동 승격)
|
||||
- VS Code 명령 팔레트: `Connect AI: 방금 산출물 → 스킬로 저장`
|
||||
- 직접 이 폴더에 `<주제>.md` 파일을 만들어도 됩니다 (`# 제목` + 본문)
|
||||
|
||||
`README.md` 자체는 system prompt에 주입되지 않습니다.
|
||||
@@ -0,0 +1,86 @@
|
||||
<!-- version: paypal_revenue_v1 -->
|
||||
# 💰 PayPal 매출 자동 분석
|
||||
|
||||
비즈니스 에이전트가 본인 PayPal 계정의 매출을 직접 분석. 일별/주별/월별 매출 + 통화별 + 환불 비율 + 최근 거래 마크다운 리포트.
|
||||
|
||||
## 한 번만 설정 — PayPal Developer App
|
||||
|
||||
### 1. PayPal Developer Dashboard
|
||||
- 접속: https://developer.paypal.com/dashboard/applications
|
||||
- 로그인 (PayPal Business 계정이 있어야 함)
|
||||
|
||||
### 2. 앱 생성
|
||||
- **Apps & Credentials** 메뉴
|
||||
- 처음 사용자 → 'Default Application' 이미 있음. 그거 써도 됨.
|
||||
- 새 앱 원하면 **Create App** 클릭
|
||||
- 앱 이름: "Connect AI Business Agent" 같은 식
|
||||
|
||||
### 3. 키 복사
|
||||
- 앱 상세 페이지에서:
|
||||
- **Client ID** 복사
|
||||
- **Client Secret** 복사 (show 클릭해서 보기)
|
||||
- 도구 설정에 붙여넣기
|
||||
|
||||
### 4. 권한 확인
|
||||
앱 상세 페이지 하단 **Features** 섹션에서:
|
||||
- ✅ **Transaction Search** 켜져있어야 함
|
||||
- 안 켜져있으면 토글 ON
|
||||
|
||||
## 모드
|
||||
|
||||
| MODE | 용도 | URL |
|
||||
|---|---|---|
|
||||
| **sandbox** | 테스트 (가짜 계정·가짜 돈) | api-m.sandbox.paypal.com |
|
||||
| **live** | 실제 운영 | api-m.paypal.com |
|
||||
|
||||
처음엔 **sandbox** 로 시작. 가짜 거래 만들어서 도구 동작 확인 후 live 전환.
|
||||
|
||||
샌드박스 거래 만들기: sandbox.paypal.com 에서 PayPal Developer 가 발급한 가짜 buyer/seller 계정으로 결제 시뮬레이션.
|
||||
|
||||
## 설정 (config)
|
||||
|
||||
| 키 | 의미 |
|
||||
|---|---|
|
||||
| `MODE` | `sandbox` 또는 `live` |
|
||||
| `CLIENT_ID` | PayPal 앱 Client ID |
|
||||
| `CLIENT_SECRET` | PayPal 앱 Client Secret (UI에서 password 필드로 가려짐) |
|
||||
| `LOOKBACK_DAYS` | 분석할 과거 일수 (기본 30) |
|
||||
| `CURRENCY` | 기본 통화 (USD/KRW/EUR). 비우면 모든 통화 표시 |
|
||||
|
||||
## 출력
|
||||
|
||||
마크다운 리포트:
|
||||
- 통화별 매출 표 (Gross, 환불, 수수료, 순매출, 거래수)
|
||||
- 기간별 매출 (오늘 · 지난 7일 · 지난 30일)
|
||||
- 평균/최대/최소 거래액
|
||||
- 최근 거래 10건 (일시·금액·종류)
|
||||
- 환불율 경고 (10% 초과 시)
|
||||
- 다음 액션 인사이트
|
||||
|
||||
## 사용 예시 (대화)
|
||||
|
||||
```
|
||||
사용자: "비즈니스 에이전트, 우리 회사 PayPal 매출 어때?"
|
||||
→ CEO → business 분배
|
||||
→ business: <run_command>cd "..." && python3 paypal_revenue.py</run_command>
|
||||
→ 결과 분석 + "이번 주가 평균 대비 +20% — 무엇이 잘됐는지 파악 필요" 같은 인사이트
|
||||
```
|
||||
|
||||
## 한계
|
||||
|
||||
- PayPal Transaction Search API: 최근 3년 데이터까지
|
||||
- 한 번 호출 = 최대 31일 × 500건 (자동 페이지네이션 처리)
|
||||
- Rate limit: 무료 계정 분당 60 요청 — 일반 사용엔 충분
|
||||
- 분쟁·세금·환율 변환은 안 함 (분석만)
|
||||
|
||||
## 보안
|
||||
|
||||
- `CLIENT_SECRET` 은 도구 설정 (password 필드) 에 저장. `.gitignore` 적용된 `_agents/business/tools/*.json` 에만 있음.
|
||||
- API 호출은 Connect AI 익스텐션이 로컬에서 직접 → 외부 서버 경유 없음.
|
||||
- token 메모리에만 존재, 디스크 저장 X.
|
||||
|
||||
## 다음 단계 (계획)
|
||||
|
||||
- Stripe·Toss 매출 통합 → 전체 결제 채널 한 리포트
|
||||
- 일별 추세 그래프 (matplotlib)
|
||||
- 월별 P&L 자동 생성 → `_company/_shared/pnl_<month>.md`
|
||||
@@ -0,0 +1,468 @@
|
||||
#!/usr/bin/env python3
|
||||
# version: paypal_revenue_v3
|
||||
"""PayPal 매출 자동 분석 — Connect AI 비즈니스 에이전트 전용.
|
||||
|
||||
흐름:
|
||||
1. CLIENT_ID + CLIENT_SECRET 으로 OAuth2 access token 발급
|
||||
2. Transaction Search API 호출 (LOOKBACK_DAYS 기간)
|
||||
3. 거래 파싱 → 매출·환불·평균액·통화별 집계
|
||||
4. 마크다운 리포트 stdout 출력
|
||||
|
||||
config (paypal_revenue.json):
|
||||
MODE — 'sandbox' (테스트) | 'live' (실제). 기본 sandbox
|
||||
CLIENT_ID — PayPal Developer Dashboard 에서 발급
|
||||
CLIENT_SECRET — 같은 곳, 비밀로 보관 (password 필드)
|
||||
LOOKBACK_DAYS — 분석할 과거 일수 (기본 30)
|
||||
CURRENCY — 기본 통화 (USD/KRW 등). 비우면 모든 통화 표시
|
||||
|
||||
발급: https://developer.paypal.com/dashboard/applications → Apps & Credentials
|
||||
샌드박스 테스트: sandbox.paypal.com 계정 무료 생성 가능
|
||||
"""
|
||||
import os, sys, json, base64, urllib.request, urllib.parse, urllib.error
|
||||
from datetime import datetime, timedelta, timezone
|
||||
|
||||
|
||||
HERE = os.path.dirname(os.path.abspath(__file__))
|
||||
CONFIG = os.path.join(HERE, "paypal_revenue.json")
|
||||
|
||||
|
||||
def _log(msg, kind="info"):
|
||||
prefix = {"info": "💰", "ok": "✅", "warn": "⚠️ ", "err": "❌", "step": "▸"}.get(kind, "•")
|
||||
print(f"{prefix} {msg}", file=sys.stderr, flush=True)
|
||||
|
||||
|
||||
def _load():
|
||||
if not os.path.exists(CONFIG):
|
||||
return {}
|
||||
try:
|
||||
with open(CONFIG, "r", encoding="utf-8") as f:
|
||||
return json.load(f)
|
||||
except Exception:
|
||||
return {}
|
||||
|
||||
|
||||
def _base_url(mode: str) -> str:
|
||||
return "https://api-m.paypal.com" if mode.lower() == "live" else "https://api-m.sandbox.paypal.com"
|
||||
|
||||
|
||||
def _has_reporting_scope(token_response: dict) -> bool:
|
||||
"""v2: OAuth 응답의 scope 필드에 Reporting (Transaction Search) 권한 있는지 검사.
|
||||
PayPal Dashboard 앱 설정 → Features → Transaction Search 체크 + Save 안 했으면 False.
|
||||
사용자에게 친절한 안내 띄우는 용도."""
|
||||
scopes = (token_response.get("scope") or "").split()
|
||||
return any("reporting" in s for s in scopes)
|
||||
|
||||
|
||||
def _get_access_token_full(base_url: str, client_id: str, client_secret: str) -> dict:
|
||||
"""v2: OAuth2 client_credentials grant — token + scope 둘 다 반환.
|
||||
scope 검사로 사용자 안내 (Transaction Search 권한 부재 사전 감지)."""
|
||||
auth = base64.b64encode(f"{client_id}:{client_secret}".encode()).decode()
|
||||
req = urllib.request.Request(
|
||||
f"{base_url}/v1/oauth2/token",
|
||||
data=b"grant_type=client_credentials",
|
||||
headers={
|
||||
"Authorization": f"Basic {auth}",
|
||||
"Content-Type": "application/x-www-form-urlencoded",
|
||||
},
|
||||
method="POST",
|
||||
)
|
||||
try:
|
||||
with urllib.request.urlopen(req, timeout=15) as r:
|
||||
return json.loads(r.read().decode())
|
||||
except urllib.error.HTTPError as e:
|
||||
err_body = e.read().decode(errors="ignore")[:200]
|
||||
raise RuntimeError(f"OAuth 실패 (HTTP {e.code}): {err_body}")
|
||||
except Exception as e:
|
||||
raise RuntimeError(f"OAuth 요청 실패: {e}")
|
||||
|
||||
|
||||
def _get_access_token(base_url: str, client_id: str, client_secret: str) -> str:
|
||||
"""레거시 호환 — token 만 반환."""
|
||||
return _get_access_token_full(base_url, client_id, client_secret)["access_token"]
|
||||
|
||||
|
||||
def _fetch_transactions(base_url: str, token: str, start: datetime, end: datetime, currency_filter: str = ""):
|
||||
"""Transaction Search API — 페이지네이션 자동 처리.
|
||||
공식 API 는 한 번에 최대 31일·500건 → 여러 페이지로 나눠 호출."""
|
||||
all_txs = []
|
||||
cur = start
|
||||
while cur < end:
|
||||
page_end = min(cur + timedelta(days=31), end)
|
||||
params = {
|
||||
# v3: PayPal Transaction Search 는 마이크로초 포함 ISO 형식 거부.
|
||||
# 초 단위까지만 + Z timezone 으로 강제. strftime 으로 안전 포맷.
|
||||
"start_date": cur.strftime("%Y-%m-%dT%H:%M:%SZ"),
|
||||
"end_date": page_end.strftime("%Y-%m-%dT%H:%M:%SZ"),
|
||||
"fields": "all",
|
||||
"page_size": "500",
|
||||
"page": "1",
|
||||
}
|
||||
if currency_filter:
|
||||
params["transaction_currency"] = currency_filter
|
||||
url = f"{base_url}/v1/reporting/transactions?" + urllib.parse.urlencode(params)
|
||||
req = urllib.request.Request(url, headers={"Authorization": f"Bearer {token}", "Content-Type": "application/json"})
|
||||
try:
|
||||
with urllib.request.urlopen(req, timeout=20) as r:
|
||||
data = json.loads(r.read().decode())
|
||||
txs = data.get("transaction_details", [])
|
||||
all_txs.extend(txs)
|
||||
_log(f"{cur.date()} ~ {page_end.date()}: {len(txs)}건 수신", "step")
|
||||
total_pages = int(data.get("total_pages", 1))
|
||||
if total_pages > 1:
|
||||
for p in range(2, total_pages + 1):
|
||||
params["page"] = str(p)
|
||||
url2 = f"{base_url}/v1/reporting/transactions?" + urllib.parse.urlencode(params)
|
||||
req2 = urllib.request.Request(url2, headers={"Authorization": f"Bearer {token}"})
|
||||
with urllib.request.urlopen(req2, timeout=20) as r2:
|
||||
d2 = json.loads(r2.read().decode())
|
||||
all_txs.extend(d2.get("transaction_details", []))
|
||||
except urllib.error.HTTPError as e:
|
||||
body = e.read().decode(errors="ignore")[:300]
|
||||
_log(f"거래 조회 실패 ({cur.date()}~{page_end.date()}): HTTP {e.code} {body}", "warn")
|
||||
except Exception as e:
|
||||
_log(f"거래 조회 예외: {e}", "warn")
|
||||
cur = page_end
|
||||
return all_txs
|
||||
|
||||
|
||||
def _parse_project_from_subject(subject: str):
|
||||
"""v2: PayPal createOrder 의 description 에서 게임/프로젝트 + 아이템 추출.
|
||||
규약: "{Project Name} — {Item Name}" (em-dash 또는 -- 또는 :).
|
||||
예시:
|
||||
"Neon Survivor — Premium Pack" → ("neon-survivor", "Premium Pack")
|
||||
"Neon Survivor — Revive" → ("neon-survivor", "Revive")
|
||||
"Chick Game: Custom Skin" → ("chick-game", "Custom Skin")
|
||||
구분자 못 찾으면 전체를 프로젝트로 취급 + item = "(unspecified)".
|
||||
"""
|
||||
if not subject:
|
||||
return "(unknown)", "(unspecified)"
|
||||
s = subject.strip()
|
||||
for sep in [" — ", " -- ", " – ", ": "]:
|
||||
if sep in s:
|
||||
proj, item = s.split(sep, 1)
|
||||
slug = proj.strip().lower().replace(" ", "-")
|
||||
return slug or "(unknown)", item.strip() or "(unspecified)"
|
||||
slug = s.lower().replace(" ", "-")
|
||||
return slug or "(unknown)", "(unspecified)"
|
||||
|
||||
|
||||
def _summarize(txs, default_currency: str = ""):
|
||||
"""거래 리스트 → 마크다운 리포트."""
|
||||
now = datetime.now(timezone.utc)
|
||||
today_start = datetime(now.year, now.month, now.day, tzinfo=timezone.utc)
|
||||
week_start = today_start - timedelta(days=7)
|
||||
month_start = today_start - timedelta(days=30)
|
||||
|
||||
by_currency = {} # {USD: {"gross": float, "fees": float, "refunds": float, "count": int}}
|
||||
by_period = {"today": 0.0, "week": 0.0, "month": 0.0}
|
||||
by_project = {} # v2: {"neon-survivor": {"gross": float, "count": int, "currency": "USD",
|
||||
# "items": {"Premium Pack": {"gross": float, "count": int}}}}
|
||||
transactions_clean = [] # 정상 거래 (T0000 = 일반 결제)
|
||||
refunds = []
|
||||
|
||||
for t in txs:
|
||||
info = t.get("transaction_info", {})
|
||||
amount = info.get("transaction_amount", {})
|
||||
currency = amount.get("currency_code", "USD")
|
||||
value = float(amount.get("value", "0") or 0)
|
||||
status = info.get("transaction_status", "")
|
||||
event_code = info.get("transaction_event_code", "")
|
||||
ts_str = info.get("transaction_initiation_date", "")
|
||||
try:
|
||||
ts = datetime.fromisoformat(ts_str.replace("Z", "+00:00"))
|
||||
except Exception:
|
||||
ts = None
|
||||
|
||||
if currency not in by_currency:
|
||||
by_currency[currency] = {"gross": 0.0, "fees": 0.0, "refunds": 0.0, "count": 0}
|
||||
c = by_currency[currency]
|
||||
|
||||
is_refund = event_code.startswith("T1") or "REFUND" in event_code or value < 0
|
||||
if is_refund:
|
||||
c["refunds"] += abs(value)
|
||||
refunds.append((ts, value, currency))
|
||||
else:
|
||||
c["gross"] += value
|
||||
c["count"] += 1
|
||||
transactions_clean.append((ts, value, currency))
|
||||
if ts and currency == (default_currency or currency):
|
||||
if ts >= today_start:
|
||||
by_period["today"] += value
|
||||
if ts >= week_start:
|
||||
by_period["week"] += value
|
||||
if ts >= month_start:
|
||||
by_period["month"] += value
|
||||
# v2: 프로젝트별 그룹화 (정상 거래만 집계 — 환불은 별도 통계)
|
||||
subject = info.get("transaction_subject", "") or info.get("transaction_note", "")
|
||||
proj, item = _parse_project_from_subject(subject)
|
||||
if proj not in by_project:
|
||||
by_project[proj] = {"gross": 0.0, "count": 0, "currency": currency, "items": {}}
|
||||
p = by_project[proj]
|
||||
p["gross"] += value
|
||||
p["count"] += 1
|
||||
if item not in p["items"]:
|
||||
p["items"][item] = {"gross": 0.0, "count": 0}
|
||||
p["items"][item]["gross"] += value
|
||||
p["items"][item]["count"] += 1
|
||||
fee = float(info.get("fee_amount", {}).get("value", "0") or 0)
|
||||
c["fees"] += abs(fee)
|
||||
|
||||
# 마크다운 리포트
|
||||
lines = []
|
||||
lines.append(f"# 💰 PayPal 매출 분석")
|
||||
lines.append(f"_{now.isoformat(timespec='minutes')} · 최근 거래 {len(txs)}건_")
|
||||
lines.append("")
|
||||
|
||||
if not txs:
|
||||
lines.append("> ⚠️ 분석 기간에 거래가 없어요. PayPal Developer Dashboard 에서 모드(sandbox/live)·기간·계정을 확인하세요.")
|
||||
lines.append("")
|
||||
lines.append("**가능한 원인:**")
|
||||
lines.append("- 샌드박스 모드인데 실제 결제 데이터가 없음 → sandbox.paypal.com 에서 거래 시뮬레이션")
|
||||
lines.append("- API 권한 부족 → Developer Dashboard 에서 'Transaction Search' 권한 활성화")
|
||||
lines.append("- 너무 짧은 기간 → LOOKBACK_DAYS 늘려보기")
|
||||
return "\n".join(lines)
|
||||
|
||||
# 통화별 집계
|
||||
lines.append("## 📊 통화별 매출")
|
||||
lines.append("")
|
||||
lines.append("| 통화 | 매출 (Gross) | 환불 | 수수료 | 순매출 | 거래수 |")
|
||||
lines.append("|---|---|---|---|---|---|")
|
||||
for cur, d in sorted(by_currency.items()):
|
||||
net = d["gross"] - d["refunds"] - d["fees"]
|
||||
lines.append(f"| **{cur}** | {d['gross']:,.2f} | -{d['refunds']:,.2f} | -{d['fees']:,.2f} | **{net:,.2f}** | {d['count']}건 |")
|
||||
lines.append("")
|
||||
|
||||
# v2: 프로젝트(게임) 별 매출 — 카탈로그에 있는 게임들이 description 으로 자동 분류됨
|
||||
if by_project:
|
||||
lines.append("## 🎮 프로젝트별 매출")
|
||||
lines.append("")
|
||||
lines.append("| 프로젝트 | 거래 수 | 매출 | 통화 | 상위 아이템 |")
|
||||
lines.append("|---|---|---|---|---|")
|
||||
sorted_projects = sorted(by_project.items(), key=lambda x: -x[1]["gross"])
|
||||
for proj, p in sorted_projects:
|
||||
top_items = sorted(p["items"].items(), key=lambda x: -x[1]["gross"])[:2]
|
||||
top_str = ", ".join(f"{name} ({d['count']}건)" for name, d in top_items)
|
||||
lines.append(f"| **{proj}** | {p['count']}건 | {p['gross']:,.2f} | {p['currency']} | {top_str} |")
|
||||
lines.append("")
|
||||
# 상세 아이템 분해 (각 프로젝트별)
|
||||
for proj, p in sorted_projects:
|
||||
if len(p["items"]) <= 1:
|
||||
continue
|
||||
lines.append(f"### 🎯 {proj} 아이템 분해")
|
||||
lines.append("")
|
||||
lines.append("| 아이템 | 거래 수 | 매출 | ARPU |")
|
||||
lines.append("|---|---|---|---|")
|
||||
for name, d in sorted(p["items"].items(), key=lambda x: -x[1]["gross"]):
|
||||
arpu = d["gross"] / d["count"] if d["count"] > 0 else 0
|
||||
lines.append(f"| {name} | {d['count']}건 | {d['gross']:,.2f} | {arpu:,.2f} |")
|
||||
lines.append("")
|
||||
|
||||
# 기간별 (default_currency 기준)
|
||||
primary_cur = default_currency or (sorted(by_currency.items(), key=lambda x: -x[1]["gross"])[0][0] if by_currency else "USD")
|
||||
lines.append(f"## 📅 기간별 매출 ({primary_cur})")
|
||||
lines.append("")
|
||||
lines.append(f"- **오늘**: {by_period['today']:,.2f} {primary_cur}")
|
||||
lines.append(f"- **지난 7일**: {by_period['week']:,.2f} {primary_cur}")
|
||||
lines.append(f"- **지난 30일**: {by_period['month']:,.2f} {primary_cur}")
|
||||
lines.append("")
|
||||
# 평균 거래액
|
||||
if transactions_clean:
|
||||
primary_txs = [v for (_, v, c) in transactions_clean if c == primary_cur]
|
||||
if primary_txs:
|
||||
avg = sum(primary_txs) / len(primary_txs)
|
||||
lines.append(f"- 평균 거래액 ({primary_cur}): **{avg:,.2f}**")
|
||||
lines.append(f"- 최대 거래: {max(primary_txs):,.2f}")
|
||||
lines.append(f"- 최소 거래: {min(primary_txs):,.2f}")
|
||||
lines.append("")
|
||||
|
||||
# 최근 거래 10건
|
||||
lines.append("## 🕐 최근 거래 10건")
|
||||
lines.append("")
|
||||
lines.append("| 일시 | 금액 | 통화 | 종류 |")
|
||||
lines.append("|---|---|---|---|")
|
||||
sorted_txs = sorted(
|
||||
[(ts, v, c, "결제") for ts, v, c in transactions_clean] +
|
||||
[(ts, -v, c, "환불") for ts, v, c in refunds],
|
||||
key=lambda x: x[0] or datetime.min.replace(tzinfo=timezone.utc),
|
||||
reverse=True
|
||||
)[:10]
|
||||
for ts, v, c, kind in sorted_txs:
|
||||
ts_str = ts.strftime("%Y-%m-%d %H:%M") if ts else "?"
|
||||
sign = "+" if kind == "결제" else "-"
|
||||
lines.append(f"| {ts_str} | {sign}{abs(v):,.2f} | {c} | {kind} |")
|
||||
lines.append("")
|
||||
|
||||
# 환불 비율 경고
|
||||
total_count = sum(d["count"] for d in by_currency.values())
|
||||
if refunds and total_count > 0:
|
||||
refund_rate = len(refunds) / (total_count + len(refunds)) * 100
|
||||
if refund_rate > 10:
|
||||
lines.append(f"> 🚨 **환불율 경고**: {refund_rate:.1f}% — 평균(2~5%)보다 높음. 원인 분석 권장.")
|
||||
lines.append("")
|
||||
|
||||
# 인사이트
|
||||
lines.append("## 💡 다음 액션")
|
||||
if by_period['month'] > 0:
|
||||
weekly_avg = by_period['month'] / 4
|
||||
if by_period['week'] > weekly_avg * 1.2:
|
||||
lines.append(f"- 🚀 이번 주 매출({by_period['week']:,.0f})이 월 평균({weekly_avg:,.0f})보다 20%↑ — 무엇이 잘됐는지 파악")
|
||||
elif by_period['week'] < weekly_avg * 0.7:
|
||||
lines.append(f"- ⚠️ 이번 주 매출({by_period['week']:,.0f})이 월 평균({weekly_avg:,.0f})보다 30%↓ — 원인 점검")
|
||||
else:
|
||||
lines.append(f"- 📈 이번 주 매출({by_period['week']:,.0f})은 월 평균 추세 유지")
|
||||
if len(by_currency) > 1:
|
||||
lines.append(f"- 💱 {len(by_currency)}개 통화로 매출 발생 — 환율 변동 위험 분산 또는 헤지 검토")
|
||||
|
||||
return "\n".join(lines)
|
||||
|
||||
|
||||
def _json_dump(txs, default_currency: str = ""):
|
||||
"""v2: OUTPUT=json 모드에서 호출. 마크다운 대신 watcher / 대시보드가 파싱하기
|
||||
쉬운 구조화 JSON 출력. 새 결제 감지 + 대시보드 그래프 양쪽에서 사용."""
|
||||
out = {
|
||||
"generated_at": datetime.now(timezone.utc).isoformat(timespec='seconds'),
|
||||
"currency_filter": default_currency,
|
||||
"totals": {"by_currency": {}, "by_period": {"today": 0.0, "week": 0.0, "month": 0.0}},
|
||||
"by_project": {},
|
||||
"by_day": {}, # {"2026-05-12": {"USD": {"gross": float, "count": int}}}
|
||||
"transactions": [], # 최근 100건만
|
||||
}
|
||||
now = datetime.now(timezone.utc)
|
||||
today_start = datetime(now.year, now.month, now.day, tzinfo=timezone.utc)
|
||||
week_start = today_start - timedelta(days=7)
|
||||
month_start = today_start - timedelta(days=30)
|
||||
|
||||
for t in txs:
|
||||
info = t.get("transaction_info", {})
|
||||
amount = info.get("transaction_amount", {})
|
||||
currency = amount.get("currency_code", "USD")
|
||||
value = float(amount.get("value", "0") or 0)
|
||||
event_code = info.get("transaction_event_code", "")
|
||||
tx_id = info.get("transaction_id", "")
|
||||
subject = info.get("transaction_subject", "") or info.get("transaction_note", "")
|
||||
ts_str = info.get("transaction_initiation_date", "")
|
||||
try:
|
||||
ts = datetime.fromisoformat(ts_str.replace("Z", "+00:00"))
|
||||
except Exception:
|
||||
ts = None
|
||||
is_refund = event_code.startswith("T1") or "REFUND" in event_code or value < 0
|
||||
|
||||
# totals
|
||||
cur_bucket = out["totals"]["by_currency"].setdefault(currency, {"gross": 0.0, "refunds": 0.0, "fees": 0.0, "count": 0})
|
||||
if is_refund:
|
||||
cur_bucket["refunds"] += abs(value)
|
||||
else:
|
||||
cur_bucket["gross"] += value
|
||||
cur_bucket["count"] += 1
|
||||
if ts and currency == (default_currency or currency):
|
||||
if ts >= today_start: out["totals"]["by_period"]["today"] += value
|
||||
if ts >= week_start: out["totals"]["by_period"]["week"] += value
|
||||
if ts >= month_start: out["totals"]["by_period"]["month"] += value
|
||||
cur_bucket["fees"] += abs(float(info.get("fee_amount", {}).get("value", "0") or 0))
|
||||
|
||||
# by_project
|
||||
if not is_refund:
|
||||
proj, item = _parse_project_from_subject(subject)
|
||||
p = out["by_project"].setdefault(proj, {"gross": 0.0, "count": 0, "currency": currency, "items": {}})
|
||||
p["gross"] += value
|
||||
p["count"] += 1
|
||||
it = p["items"].setdefault(item, {"gross": 0.0, "count": 0})
|
||||
it["gross"] += value
|
||||
it["count"] += 1
|
||||
|
||||
# by_day (last 30 days)
|
||||
if ts and ts >= month_start and not is_refund:
|
||||
day_key = ts.strftime("%Y-%m-%d")
|
||||
d = out["by_day"].setdefault(day_key, {})
|
||||
db = d.setdefault(currency, {"gross": 0.0, "count": 0})
|
||||
db["gross"] += value
|
||||
db["count"] += 1
|
||||
|
||||
# transactions (recent first, cap 100)
|
||||
out["transactions"].append({
|
||||
"id": tx_id,
|
||||
"ts": ts.isoformat() if ts else "",
|
||||
"ts_epoch": int(ts.timestamp()) if ts else 0,
|
||||
"value": value,
|
||||
"currency": currency,
|
||||
"subject": subject,
|
||||
"event_code": event_code,
|
||||
"is_refund": is_refund,
|
||||
})
|
||||
|
||||
out["transactions"].sort(key=lambda x: x["ts_epoch"], reverse=True)
|
||||
out["transactions"] = out["transactions"][:100]
|
||||
return out
|
||||
|
||||
|
||||
def main():
|
||||
cfg = _load()
|
||||
mode = (cfg.get("MODE") or "sandbox").strip().lower()
|
||||
client_id = (cfg.get("CLIENT_ID") or "").strip()
|
||||
client_secret = (cfg.get("CLIENT_SECRET") or "").strip()
|
||||
lookback = int(os.environ.get("LOOKBACK_DAYS", cfg.get("LOOKBACK_DAYS", 30)))
|
||||
currency = (cfg.get("CURRENCY") or "").strip().upper()
|
||||
output_mode = (os.environ.get("OUTPUT") or "markdown").strip().lower()
|
||||
|
||||
if not client_id or not client_secret:
|
||||
_log("CLIENT_ID 또는 CLIENT_SECRET 비어있음. PayPal Developer Dashboard 에서 발급:", "err")
|
||||
_log(" https://developer.paypal.com/dashboard/applications", "info")
|
||||
_log(" → Apps & Credentials → 본인 앱 → Client ID + Secret 복사", "info")
|
||||
sys.exit(1)
|
||||
|
||||
base = _base_url(mode)
|
||||
_log(f"PayPal {mode.upper()} 모드 · 최근 {lookback}일 분석", "info")
|
||||
|
||||
try:
|
||||
token_resp = _get_access_token_full(base, client_id, client_secret)
|
||||
token = token_resp["access_token"]
|
||||
_log("OAuth 인증 성공", "ok")
|
||||
except Exception as e:
|
||||
_log(f"OAuth 실패: {e}", "err")
|
||||
sys.exit(1)
|
||||
|
||||
# v2: scope 검사 → Reporting (Transaction Search) 권한 없으면 친절 안내 후 종료
|
||||
if not _has_reporting_scope(token_resp):
|
||||
_log("Transaction Search (Reporting) 권한이 토큰에 없음", "err")
|
||||
_log(" PayPal Developer Dashboard → 본인 앱 → Features → ", "info")
|
||||
_log(" ☑ Transaction search 체크 → Save Changes (반드시!)", "info")
|
||||
_log(" 변경 후 1~3분 대기 → 다시 시도", "info")
|
||||
_log("", "info")
|
||||
_log(" 💡 자주 놓치는 곳:", "info")
|
||||
_log(" - Default Application 사용 중이면 새 앱 만들기 (Features 잠금 가능)", "info")
|
||||
_log(" - 좌상단 Sandbox/Live 토글이 입력한 자격증명과 같은 환경인지", "info")
|
||||
_log(" - Live 환경은 PayPal 비즈니스 인증 + 별도 권한 신청 필요할 수 있음", "info")
|
||||
if output_mode == "json":
|
||||
print(json.dumps({
|
||||
"error": "reporting_scope_missing",
|
||||
"message": "OAuth 토큰에 Transaction Search 권한 없음",
|
||||
"scope": token_resp.get("scope", ""),
|
||||
"fix": "PayPal Dashboard 앱 Features 에서 Transaction search 체크 + Save"
|
||||
}, ensure_ascii=False, indent=2))
|
||||
else:
|
||||
print("# 💰 PayPal 매출 분석\n")
|
||||
print("> ❌ **Transaction Search 권한 없음** — PayPal Dashboard 에서 활성화 필요")
|
||||
print()
|
||||
print("**해결 단계:**")
|
||||
print("1. https://developer.paypal.com/dashboard/applications")
|
||||
print("2. 좌상단 Sandbox/Live 토글 확인 (현재 모드: `" + mode + "`)")
|
||||
print("3. 본인 앱 클릭")
|
||||
print("4. **Features** 섹션 → ☑ **Transaction search** 체크")
|
||||
print("5. 페이지 하단 **Save Changes** 클릭 (필수!)")
|
||||
print("6. 1~3분 대기 후 매출 대시보드 다시 새로고침")
|
||||
sys.exit(2)
|
||||
|
||||
end = datetime.now(timezone.utc)
|
||||
start = end - timedelta(days=lookback)
|
||||
txs = _fetch_transactions(base, token, start, end, currency)
|
||||
_log(f"총 {len(txs)}건 거래 수집", "ok")
|
||||
|
||||
if output_mode == "json":
|
||||
print(json.dumps(_json_dump(txs, currency), ensure_ascii=False, indent=2))
|
||||
else:
|
||||
report = _summarize(txs, currency)
|
||||
print(report)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -0,0 +1,12 @@
|
||||
# 🧭 CEO 스킬
|
||||
|
||||
_재사용 가능한 패턴 모음. memory.md는 모든 활동의 로그(append-only firehose),
|
||||
이 폴더는 **검증된 패턴만 골라낸 것**입니다. 각 `*.md` 파일은 다음 호출 시
|
||||
CEO의 system prompt에 자동 주입됩니다._
|
||||
|
||||
## 어떻게 채우나요?
|
||||
- 텔레그램에서 `/skill` (직전 산출물 자동 승격)
|
||||
- VS Code 명령 팔레트: `Connect AI: 방금 산출물 → 스킬로 저장`
|
||||
- 직접 이 폴더에 `<주제>.md` 파일을 만들어도 됩니다 (`# 제목` + 본문)
|
||||
|
||||
`README.md` 자체는 system prompt에 주입되지 않습니다.
|
||||
@@ -0,0 +1,12 @@
|
||||
# 🎨 Designer 스킬
|
||||
|
||||
_재사용 가능한 패턴 모음. memory.md는 모든 활동의 로그(append-only firehose),
|
||||
이 폴더는 **검증된 패턴만 골라낸 것**입니다. 각 `*.md` 파일은 다음 호출 시
|
||||
Designer의 system prompt에 자동 주입됩니다._
|
||||
|
||||
## 어떻게 채우나요?
|
||||
- 텔레그램에서 `/skill` (직전 산출물 자동 승격)
|
||||
- VS Code 명령 팔레트: `Connect AI: 방금 산출물 → 스킬로 저장`
|
||||
- 직접 이 폴더에 `<주제>.md` 파일을 만들어도 됩니다 (`# 제목` + 본문)
|
||||
|
||||
`README.md` 자체는 system prompt에 주입되지 않습니다.
|
||||
@@ -0,0 +1,12 @@
|
||||
# 💻 코다리 스킬
|
||||
|
||||
_재사용 가능한 패턴 모음. memory.md는 모든 활동의 로그(append-only firehose),
|
||||
이 폴더는 **검증된 패턴만 골라낸 것**입니다. 각 `*.md` 파일은 다음 호출 시
|
||||
코다리의 system prompt에 자동 주입됩니다._
|
||||
|
||||
## 어떻게 채우나요?
|
||||
- 텔레그램에서 `/skill` (직전 산출물 자동 승격)
|
||||
- VS Code 명령 팔레트: `Connect AI: 방금 산출물 → 스킬로 저장`
|
||||
- 직접 이 폴더에 `<주제>.md` 파일을 만들어도 됩니다 (`# 제목` + 본문)
|
||||
|
||||
`README.md` 자체는 system prompt에 주입되지 않습니다.
|
||||
@@ -0,0 +1,27 @@
|
||||
<!-- version: lint_test_v1 -->
|
||||
# 🧪 lint_test — 자가 검증 + 결과 inject
|
||||
|
||||
코다리가 코드를 만든 직후 호출 → 결과가 다음 LLM 컨텍스트로 inject → 실패 시 자동 재시도.
|
||||
|
||||
## 동작
|
||||
1. `package.json` 의 `scripts.{typecheck, lint, test, build}` 자동 감지·실행
|
||||
2. scripts 없으면 직접:
|
||||
- `.ts/.tsx` 있고 `tsconfig.json` 있으면 → `npx tsc --noEmit`
|
||||
- `.py` 파일 있으면 → `python -m py_compile <각 파일>` (최대 30개)
|
||||
3. 마크다운 리포트 — 각 검사 통과/실패 + 실패 시 마지막 15줄
|
||||
|
||||
## 설정
|
||||
- `PROJECT_PATH`: 비우면 web_init 마지막 결과
|
||||
- `STRICT`: `true` 면 첫 실패에서 중단. 기본 `false` (전부 시도)
|
||||
|
||||
## 코다리 권장 흐름
|
||||
```
|
||||
1. <create_file 또는 edit_file>
|
||||
2. <run_command>python3 .../lint_test.py</run_command>
|
||||
3. 결과를 다음 답변 컨텍스트로 자동 받음
|
||||
4. 실패면 그 에러 보고 자동 수정 시도
|
||||
```
|
||||
|
||||
## 한계
|
||||
- `eslint --fix` 같은 자동 수정은 별도 — 도구가 단지 보고만 함
|
||||
- 단위 테스트 미통과 시 코드 수정 책임은 코다리에게
|
||||
@@ -0,0 +1,137 @@
|
||||
#!/usr/bin/env python3
|
||||
# version: lint_test_v1
|
||||
"""프로젝트 자가 검증 — 타입체크·테스트·린트 자동 실행 + 결과 요약.
|
||||
|
||||
코다리가 코드를 만든 직후 이 도구를 호출하면:
|
||||
1. package.json 의 scripts 자동 감지 (test/lint/typecheck/build)
|
||||
2. 또는 .ts/.tsx 파일 있으면 npx tsc --noEmit
|
||||
3. .py 파일 있으면 python -m py_compile <각 파일>
|
||||
4. 결과 마크다운 리포트
|
||||
|
||||
config:
|
||||
PROJECT_PATH — 검증할 프로젝트 (비우면 web_init 마지막 결과)
|
||||
STRICT — 'true' 면 첫 실패에서 멈춤. 기본 false (모두 시도)
|
||||
"""
|
||||
import os, sys, json, subprocess, glob
|
||||
|
||||
|
||||
HERE = os.path.dirname(os.path.abspath(__file__))
|
||||
CONFIG = os.path.join(HERE, "lint_test.json")
|
||||
WEB_INIT_CFG = os.path.join(HERE, "web_init.json")
|
||||
|
||||
|
||||
def _log(msg, kind="info"):
|
||||
prefix = {"info": "🧪", "ok": "✅", "warn": "⚠️ ", "err": "❌", "step": "▸"}.get(kind, "•")
|
||||
print(f"{prefix} {msg}", file=sys.stderr, flush=True)
|
||||
|
||||
|
||||
def _load(p):
|
||||
if not os.path.exists(p):
|
||||
return {}
|
||||
try:
|
||||
with open(p, "r", encoding="utf-8") as f:
|
||||
return json.load(f)
|
||||
except Exception:
|
||||
return {}
|
||||
|
||||
|
||||
def _run(cmd, cwd, timeout=180):
|
||||
_log(f"$ {cmd}", "step")
|
||||
try:
|
||||
r = subprocess.run(cmd, shell=True, cwd=cwd, capture_output=True, text=True, timeout=timeout)
|
||||
return r.returncode, (r.stdout or "") + "\n" + (r.stderr or "")
|
||||
except subprocess.TimeoutExpired:
|
||||
return -1, f"⏱ Timeout ({timeout}s)"
|
||||
except Exception as e:
|
||||
return -2, str(e)
|
||||
|
||||
|
||||
def main():
|
||||
cfg = _load(CONFIG)
|
||||
init_cfg = _load(WEB_INIT_CFG)
|
||||
project = (cfg.get("PROJECT_PATH") or "").strip()
|
||||
if not project:
|
||||
project = (init_cfg.get("LAST_PROJECT") or "").strip()
|
||||
if not project:
|
||||
_log("PROJECT_PATH 비어있고 web_init 기록도 없음", "err")
|
||||
sys.exit(1)
|
||||
project = os.path.expanduser(project)
|
||||
if not os.path.isdir(project):
|
||||
_log(f"폴더 없음: {project}", "err")
|
||||
sys.exit(1)
|
||||
strict = str(cfg.get("STRICT", "")).lower() in ("true", "1", "yes")
|
||||
_log(f"검증 대상: {project}", "info")
|
||||
|
||||
results = [] # (label, code, output)
|
||||
|
||||
# 1) package.json scripts 자동 감지
|
||||
pkg_path = os.path.join(project, "package.json")
|
||||
if os.path.exists(pkg_path):
|
||||
try:
|
||||
with open(pkg_path, "r", encoding="utf-8") as f:
|
||||
pkg = json.load(f)
|
||||
scripts = pkg.get("scripts", {})
|
||||
for key in ["typecheck", "lint", "test", "build"]:
|
||||
if key in scripts:
|
||||
code, out = _run(f"npm run {key}", cwd=project, timeout=300)
|
||||
results.append((f"npm run {key}", code, out))
|
||||
if strict and code != 0:
|
||||
break
|
||||
except Exception as e:
|
||||
_log(f"package.json 파싱 실패: {e}", "warn")
|
||||
|
||||
# 2) scripts 없으면 직접 tsc/py_compile
|
||||
if not results:
|
||||
# TS/TSX
|
||||
ts_files = glob.glob(os.path.join(project, "**/*.ts"), recursive=True) + \
|
||||
glob.glob(os.path.join(project, "**/*.tsx"), recursive=True)
|
||||
ts_files = [f for f in ts_files if "node_modules" not in f and "dist" not in f]
|
||||
if ts_files:
|
||||
tsconfig = os.path.join(project, "tsconfig.json")
|
||||
if os.path.exists(tsconfig):
|
||||
code, out = _run("npx tsc --noEmit", cwd=project, timeout=180)
|
||||
results.append(("npx tsc --noEmit", code, out))
|
||||
# Python
|
||||
py_files = glob.glob(os.path.join(project, "**/*.py"), recursive=True)
|
||||
py_files = [f for f in py_files if "venv" not in f and ".venv" not in f and "__pycache__" not in f]
|
||||
if py_files:
|
||||
errs = []
|
||||
for pf in py_files[:30]: # 30개 cap
|
||||
code, out = _run(f"python3 -m py_compile {json.dumps(pf)}", cwd=project, timeout=10)
|
||||
if code != 0:
|
||||
errs.append((pf, out.strip()[:120]))
|
||||
if errs:
|
||||
results.append((f"py_compile ({len(errs)}/{len(py_files)} 실패)", 1, "\n".join(f"{f}: {e}" for f, e in errs[:10])))
|
||||
else:
|
||||
results.append((f"py_compile {len(py_files)} files", 0, "All OK"))
|
||||
|
||||
# 결과 리포트
|
||||
print()
|
||||
print(f"# 🧪 검증 결과 — {os.path.basename(project)}")
|
||||
print()
|
||||
if not results:
|
||||
print("⚠️ 실행할 검증 없음 (package.json scripts 없고 .ts/.py 파일도 없음)")
|
||||
return
|
||||
passed = sum(1 for _, c, _ in results if c == 0)
|
||||
print(f"**{passed}/{len(results)} 통과**\n")
|
||||
for label, code, out in results:
|
||||
icon = "✅" if code == 0 else "❌"
|
||||
print(f"## {icon} {label}")
|
||||
if code == 0:
|
||||
print(f"성공 (exit code 0)")
|
||||
else:
|
||||
print(f"실패 (exit code {code})")
|
||||
print()
|
||||
print("```")
|
||||
for line in out.strip().split("\n")[-15:]:
|
||||
print(line)
|
||||
print("```")
|
||||
print()
|
||||
if passed == len(results):
|
||||
print("> 🎉 모든 검증 통과. 안전하게 다음 단계로.")
|
||||
else:
|
||||
print(f"> ⚠️ {len(results) - passed}개 실패 — 위 출력 보고 수정 필요.")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -0,0 +1,69 @@
|
||||
<!-- version: pack_apply_v1 -->
|
||||
# 📋 pack_apply — 키트 한 명령으로 적용
|
||||
|
||||
두뇌에 주입된 템플릿 팩을 사용자 프로젝트에 자동 적용. 파일 복사 + 의존성 설치 + App.tsx 자동 업데이트.
|
||||
|
||||
## 사용
|
||||
설정 (pack_apply.json):
|
||||
- `KIT_NAME`: 'landing-kit' / 'portfolio-kit' / 'dashboard-kit' / 'mobile-kit'
|
||||
- `PROJECT_PATH`: 적용할 사용자 프로젝트 (비우면 web_init 결과 자동)
|
||||
|
||||
실행:
|
||||
```
|
||||
python3 pack_apply.py
|
||||
```
|
||||
|
||||
## 동작 (3단계)
|
||||
|
||||
1. **파일 복사**: 키트의 `files/` 폴더를 manifest의 `apply.copy_to` 경로로 (예: `src/components/`)
|
||||
2. **의존성 자동 설치**: manifest의 `apply.post_install` 명령 순차 실행
|
||||
- 예: `npm install lucide-react`
|
||||
- Expo: `npx expo install @react-navigation/native ...`
|
||||
3. **App.tsx 자동 업데이트**: manifest의 `apply.app_imports` + `app_body` 로 import + JSX 본문 추가
|
||||
|
||||
## 키트별 동작
|
||||
|
||||
### landing-kit (vite-react)
|
||||
- 복사: 6개 컴포넌트 → src/components/
|
||||
- 설치: lucide-react
|
||||
- App.tsx: Hero·Features·Pricing·FAQ·CTA·Footer 자동 배치
|
||||
|
||||
### portfolio-kit (vite-react)
|
||||
- 복사: 5개 컴포넌트
|
||||
- 설치: lucide-react
|
||||
- App.tsx: Nav·About·Work·Skills·Contact 자동 배치
|
||||
|
||||
### dashboard-kit (vite-react)
|
||||
- 복사: 5개 컴포넌트
|
||||
- 설치: lucide-react
|
||||
- App.tsx: `<DashboardLayout />` 한 줄로 풀스크린 대시보드
|
||||
|
||||
### mobile-kit (Expo)
|
||||
- 복사: App.tsx + screens/ 3개
|
||||
- 설치: @react-navigation/native + bottom-tabs + screens + safe-area-context
|
||||
- App.tsx: 기존 덮어쓰기 (Bottom Tab Navigator)
|
||||
|
||||
## 코다리 사용 예시
|
||||
|
||||
```
|
||||
사용자: "다이어트 SaaS 랜딩 만들어줘"
|
||||
|
||||
코다리:
|
||||
1. web_init (TEMPLATE=vite-react, PROJECT_NAME=diet-saas)
|
||||
2. pack_apply (KIT_NAME=landing-kit) ← 새 도구
|
||||
3. edit_file 로 텍스트만 다이어트 SaaS 카피로 교체
|
||||
4. web_preview (자동 dev server + 브라우저)
|
||||
|
||||
→ 5분 안에 완성 + 모바일·데스크탑 반응형 + Tailwind 컨벤션 일관
|
||||
```
|
||||
|
||||
## 안전장치
|
||||
- `KIT_NAME` 없거나 잘못되면 종료 + 사용 가능 키트 안내
|
||||
- 두뇌 폴더 자동 탐색 (~/.connect-ai-brain 또는 fallback 경로)
|
||||
- 파일 복사는 덮어쓰기 (사용자가 수정한 거 있으면 백업 권장)
|
||||
- 의존성 설치 실패해도 계속 진행 (warn만, 사용자 수동 가능)
|
||||
- App.tsx 패턴 매칭 실패 시 수동 안내
|
||||
|
||||
## 한계
|
||||
- App.tsx 자동 업데이트는 best-effort (단순 패턴 매칭). 복잡한 기존 App.tsx 는 수동 권장.
|
||||
- 키트가 React 외 (Vue·Svelte 등)에 적용되면 App.tsx 패턴 안 맞음 — 키트가 진짜 React 인지 manifest.base 로 검증 필요.
|
||||
@@ -0,0 +1,485 @@
|
||||
#!/usr/bin/env python3
|
||||
# version: pack_apply_v7
|
||||
"""두뇌의 템플릿 팩을 사용자 프로젝트에 한 번에 적용.
|
||||
|
||||
흐름:
|
||||
1. KIT_NAME — 두뇌의 40_템플릿/developer/<KIT_NAME>/ 폴더
|
||||
2. PROJECT_PATH — 적용할 사용자 프로젝트 (비우면 web_init 결과 자동)
|
||||
3. manifest.json 의 apply.{copy_to, post_install, app_imports, app_body} 사용:
|
||||
- files/* → PROJECT_PATH/copy_to/ (예: src/components/)
|
||||
- post_install: npm install / npx expo install 자동 실행
|
||||
- app_imports: App.tsx 또는 App.tsx 에 import 추가 + JSX 본문 자동
|
||||
4. 결과 출력 — 다음 단계 안내 (npm run dev 등)
|
||||
|
||||
이 도구가 코다리에게 주는 슈퍼파워:
|
||||
- 매뉴얼 cp + npm install 호출 안 해도 됨
|
||||
- 한 명령으로 "키트 적용 완료"
|
||||
- 의존성 누락 없음 (manifest 가 진실 소스)
|
||||
"""
|
||||
import os, sys, json, subprocess, shutil
|
||||
|
||||
|
||||
HERE = os.path.dirname(os.path.abspath(__file__))
|
||||
CONFIG = os.path.join(HERE, "pack_apply.json")
|
||||
WEB_INIT_CFG = os.path.join(HERE, "web_init.json")
|
||||
|
||||
|
||||
def _log(msg, kind="info"):
|
||||
prefix = {"info": "📋", "ok": "✅", "warn": "⚠️ ", "err": "❌", "step": "▸"}.get(kind, "•")
|
||||
print(f"{prefix} {msg}", file=sys.stderr, flush=True)
|
||||
|
||||
|
||||
def _load(p):
|
||||
if not os.path.exists(p):
|
||||
return {}
|
||||
try:
|
||||
with open(p, "r", encoding="utf-8") as f:
|
||||
return json.load(f)
|
||||
except Exception:
|
||||
return {}
|
||||
|
||||
|
||||
def _run(cmd, cwd):
|
||||
_log(f"$ {cmd}", "step")
|
||||
r = subprocess.run(cmd, shell=True, cwd=cwd, capture_output=True, text=True, timeout=600)
|
||||
if r.returncode != 0:
|
||||
for line in (r.stderr or "").splitlines()[-8:]:
|
||||
_log(line, "warn")
|
||||
return False
|
||||
return True
|
||||
|
||||
|
||||
def _load_operator_credentials(brain_root):
|
||||
"""v7: 운영자(1인 기업)의 자격증명을 두뇌에서 로드. pack_apply 가 키트 HTML/JS
|
||||
의 placeholder 를 운영자 키로 자동 교체.
|
||||
지원 placeholder:
|
||||
__GEMINI_API_KEY__ → Gemini API 키
|
||||
__GEMINI_TEXT_MODEL__ → 텍스트 모델명
|
||||
__GEMINI_IMAGE_MODEL__ → 이미지 모델명
|
||||
__PAYPAL_CLIENT_ID__ → PayPal Live/Sandbox Client ID
|
||||
자격증명은 외부 연결 패널 (Connect AI) 에서 입력. 키트 사용자(고객) 는
|
||||
이 키를 볼 일이 없음 — 운영자가 빌드 시점에 박힘. """
|
||||
creds = {
|
||||
"__GEMINI_API_KEY__": "",
|
||||
"__GEMINI_TEXT_MODEL__": "gemini-3.1-flash-lite-preview",
|
||||
"__GEMINI_IMAGE_MODEL__": "gemini-3.1-flash-image-preview",
|
||||
"__PAYPAL_CLIENT_ID__": "",
|
||||
}
|
||||
business_tools = os.path.join(brain_root, "_company", "_agents", "business", "tools")
|
||||
# Gemini
|
||||
try:
|
||||
gp = os.path.join(business_tools, "gemini_account.json")
|
||||
if os.path.exists(gp):
|
||||
with open(gp, "r", encoding="utf-8") as f:
|
||||
g = json.load(f)
|
||||
if g.get("API_KEY"): creds["__GEMINI_API_KEY__"] = g["API_KEY"]
|
||||
if g.get("TEXT_MODEL"): creds["__GEMINI_TEXT_MODEL__"] = g["TEXT_MODEL"]
|
||||
if g.get("IMAGE_MODEL"): creds["__GEMINI_IMAGE_MODEL__"] = g["IMAGE_MODEL"]
|
||||
except Exception:
|
||||
pass
|
||||
# PayPal
|
||||
try:
|
||||
pp = os.path.join(business_tools, "paypal_revenue.json")
|
||||
if os.path.exists(pp):
|
||||
with open(pp, "r", encoding="utf-8") as f:
|
||||
p = json.load(f)
|
||||
if p.get("CLIENT_ID"): creds["__PAYPAL_CLIENT_ID__"] = p["CLIENT_ID"]
|
||||
except Exception:
|
||||
pass
|
||||
return creds
|
||||
|
||||
|
||||
def _inject_credentials(file_path, creds):
|
||||
"""v7: 텍스트 파일 안의 placeholder 를 운영자 자격증명으로 교체.
|
||||
바이너리·이미지 파일은 skip. UTF-8 못 읽으면 skip. """
|
||||
try:
|
||||
with open(file_path, "r", encoding="utf-8") as f:
|
||||
content = f.read()
|
||||
except (UnicodeDecodeError, IsADirectoryError):
|
||||
return False
|
||||
except Exception:
|
||||
return False
|
||||
replaced = False
|
||||
for placeholder, value in creds.items():
|
||||
if placeholder in content and value:
|
||||
content = content.replace(placeholder, value)
|
||||
replaced = True
|
||||
if replaced:
|
||||
try:
|
||||
with open(file_path, "w", encoding="utf-8") as f:
|
||||
f.write(content)
|
||||
return True
|
||||
except Exception:
|
||||
return False
|
||||
return False
|
||||
|
||||
|
||||
def _copy_tree(src_dir, dst_dir, creds=None):
|
||||
"""v2: 기존 파일이 있으면 .backup 자동 생성 (사용자 코드 보호).
|
||||
백업이 이미 있으면 덮어쓰지 않음 (멱등성).
|
||||
v7: creds 가 주어지면 복사 후 각 파일에서 placeholder 교체.
|
||||
v7.1: 자격증명 누락 placeholder 가 남으면 경고 (운영자 입력 유도)."""
|
||||
os.makedirs(dst_dir, exist_ok=True)
|
||||
copied = 0
|
||||
backed_up = []
|
||||
injected = 0
|
||||
missing_placeholders = {} # placeholder -> count
|
||||
for root, _dirs, files in os.walk(src_dir):
|
||||
rel = os.path.relpath(root, src_dir)
|
||||
target = os.path.join(dst_dir, rel) if rel != "." else dst_dir
|
||||
os.makedirs(target, exist_ok=True)
|
||||
for f in files:
|
||||
dst_path = os.path.join(target, f)
|
||||
if os.path.exists(dst_path):
|
||||
bk = dst_path + ".backup"
|
||||
if not os.path.exists(bk):
|
||||
try:
|
||||
shutil.copy2(dst_path, bk)
|
||||
backed_up.append(os.path.relpath(dst_path, dst_dir))
|
||||
except Exception:
|
||||
pass
|
||||
shutil.copy2(os.path.join(root, f), dst_path)
|
||||
copied += 1
|
||||
# v7: 자격증명 placeholder 자동 inline
|
||||
if creds and any(creds.values()):
|
||||
if _inject_credentials(dst_path, creds):
|
||||
injected += 1
|
||||
# v7.1: 남은 placeholder 스캔 (빈 자격증명 감지)
|
||||
if creds:
|
||||
try:
|
||||
with open(dst_path, "r", encoding="utf-8") as fh:
|
||||
body = fh.read()
|
||||
for ph, val in creds.items():
|
||||
if not val and ph in body:
|
||||
missing_placeholders[ph] = missing_placeholders.get(ph, 0) + 1
|
||||
except Exception:
|
||||
pass
|
||||
if backed_up:
|
||||
_log(f"기존 파일 {len(backed_up)}개 .backup 보존: {', '.join(backed_up[:3])}{' …' if len(backed_up) > 3 else ''}", "info")
|
||||
if injected:
|
||||
_log(f"🔐 운영자 자격증명 {injected}개 파일에 자동 inline (Gemini/PayPal placeholder 교체)", "ok")
|
||||
if missing_placeholders:
|
||||
guide = {
|
||||
"__GEMINI_API_KEY__": "Connect AI → 외부 연결 → ✨ Google Gemini → API Key 입력",
|
||||
"__PAYPAL_CLIENT_ID__": "Connect AI → 외부 연결 → 💰 PayPal → Client ID 입력",
|
||||
}
|
||||
_log("⚠️ 운영자 자격증명 누락 — 키트는 복사됐지만 실제 호출은 안 됨:", "warn")
|
||||
for ph in sorted(missing_placeholders):
|
||||
_log(f" • {ph} → {guide.get(ph, '외부 연결 패널에서 입력 필요')}", "warn")
|
||||
_log(" ↳ 키 입력 후 키트 다시 적용하면 자동 inline 됩니다.", "warn")
|
||||
return copied
|
||||
|
||||
|
||||
def _find_app_file(project_path):
|
||||
"""vite/next 모두 커버. src/App.tsx 우선, 없으면 App.tsx (expo)."""
|
||||
for cand in ["src/App.tsx", "App.tsx", "src/app/page.tsx", "app/page.tsx"]:
|
||||
p = os.path.join(project_path, cand)
|
||||
if os.path.exists(p):
|
||||
return p
|
||||
return None
|
||||
|
||||
|
||||
def _update_app_tsx(app_path, imports, body):
|
||||
"""App.tsx 를 깨끗하게 새로 작성. 원본은 .backup 으로 보존.
|
||||
v2: regex 부분 매칭으로 옛 JSX 가 남던 사고 → 전체 덮어쓰기 + 백업 방식으로 변경."""
|
||||
try:
|
||||
with open(app_path, "r", encoding="utf-8") as f:
|
||||
original = f.read()
|
||||
except Exception:
|
||||
return False
|
||||
|
||||
# 이미 키트 적용됐으면 skip
|
||||
if all(f"from './components/{n}'" in original for n in imports):
|
||||
return False
|
||||
|
||||
# 백업 — 사용자가 손댄 거 잃지 않게
|
||||
try:
|
||||
backup_path = app_path + ".backup"
|
||||
if not os.path.exists(backup_path):
|
||||
with open(backup_path, "w", encoding="utf-8") as f:
|
||||
f.write(original)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
# 새 App.tsx — 깨끗한 최소 버전
|
||||
import_lines = "\n".join([f"import {n} from './components/{n}'" for n in imports])
|
||||
new_content = f"""{import_lines}
|
||||
|
||||
export default function App() {{
|
||||
return (
|
||||
<main className="min-h-screen bg-white text-gray-900">
|
||||
{body}
|
||||
</main>
|
||||
);
|
||||
}}
|
||||
"""
|
||||
try:
|
||||
with open(app_path, "w", encoding="utf-8") as f:
|
||||
f.write(new_content)
|
||||
return True
|
||||
except Exception:
|
||||
return False
|
||||
|
||||
|
||||
def _find_brain_root():
|
||||
"""두뇌 폴더 자동 탐색 (한국어 폴더명 포함).
|
||||
|
||||
v4: BRAIN_ROOT 환경변수가 가장 강함 (Connect AI 익스텐션이 직접 지정).
|
||||
이전엔 ~/.connect-ai-brain 가 빈 폴더로 존재만 해도 우선 매칭돼서
|
||||
실제 사용자 두뇌(~/Downloads/지식메모리) 의 키트를 못 찾던 사고 차단.
|
||||
"""
|
||||
env = os.environ.get("BRAIN_ROOT", "").strip()
|
||||
if env:
|
||||
ep = os.path.expanduser(env)
|
||||
if os.path.exists(ep):
|
||||
return ep
|
||||
cands = [
|
||||
os.path.expanduser("~/Downloads/지식메모리"),
|
||||
os.path.expanduser("~/.connect-ai-brain"),
|
||||
os.path.expanduser("~/.connect-ai-brain-imported"),
|
||||
]
|
||||
for c in cands:
|
||||
if os.path.exists(c):
|
||||
return c
|
||||
return cands[0] # 첫 번째 fallback
|
||||
|
||||
|
||||
def _list_kits(brain_root):
|
||||
"""developer 카테고리의 모든 키트와 manifest 반환."""
|
||||
tdir = os.path.join(brain_root, "40_템플릿", "developer")
|
||||
if not os.path.exists(tdir):
|
||||
return []
|
||||
kits = []
|
||||
for name in os.listdir(tdir):
|
||||
d = os.path.join(tdir, name)
|
||||
if not os.path.isdir(d):
|
||||
continue
|
||||
mp = os.path.join(d, "manifest.json")
|
||||
if not os.path.exists(mp):
|
||||
continue
|
||||
try:
|
||||
with open(mp, "r", encoding="utf-8") as f:
|
||||
manifest = json.load(f)
|
||||
kits.append({"name": name, "manifest": manifest})
|
||||
except Exception:
|
||||
pass
|
||||
return kits
|
||||
|
||||
|
||||
def _score_kit(manifest, intent_text):
|
||||
"""매니페스트 vs 사용자 의도(intent_text) 매칭 점수.
|
||||
keywords + name + description 단어 매칭. 한국어·영어 모두."""
|
||||
if not intent_text:
|
||||
return 0
|
||||
haystack = " ".join([
|
||||
manifest.get("name", ""),
|
||||
manifest.get("description", ""),
|
||||
" ".join(manifest.get("keywords") or []),
|
||||
manifest.get("category", ""),
|
||||
]).lower()
|
||||
intent_lc = intent_text.lower()
|
||||
score = 0
|
||||
# keywords 직접 매칭 (높은 가중치)
|
||||
for kw in (manifest.get("keywords") or []):
|
||||
if kw.lower() in intent_lc:
|
||||
score += 10
|
||||
# name 자체가 의도에 있으면 (예: "landing-kit" → "landing")
|
||||
for token in manifest.get("name", "").split():
|
||||
if len(token) >= 3 and token.lower() in intent_lc:
|
||||
score += 5
|
||||
# 카테고리
|
||||
if (manifest.get("category", "").lower() or "") in intent_lc:
|
||||
score += 3
|
||||
return score
|
||||
|
||||
|
||||
def _autodetect_kit(brain_root, intent_text):
|
||||
"""사용자 의도에서 가장 적합한 키트 자동 추론. (kit_name, score, alternatives) 반환."""
|
||||
kits = _list_kits(brain_root)
|
||||
if not kits:
|
||||
return None, 0, []
|
||||
scored = [(k["name"], _score_kit(k["manifest"], intent_text), k["manifest"].get("description", "")) for k in kits]
|
||||
scored.sort(key=lambda x: -x[1])
|
||||
if scored[0][1] == 0:
|
||||
# 매치 0 — fallback: 가장 일반적인 landing-kit
|
||||
for k in kits:
|
||||
if k["name"] == "landing-kit":
|
||||
return "landing-kit", 0, scored[:3]
|
||||
return kits[0]["name"], 0, scored[:3]
|
||||
return scored[0][0], scored[0][1], scored[:3]
|
||||
|
||||
|
||||
def _parse_cli_args():
|
||||
"""v4: 로컬 LLM 이 CLI 인자로 호출하는 패턴도 지원.
|
||||
`--kit landing-kit --user-intent "..." --project /path` 또는
|
||||
환경변수 KIT_NAME / USER_INTENT / PROJECT_PATH."""
|
||||
out = {}
|
||||
args = sys.argv[1:]
|
||||
i = 0
|
||||
aliases = {
|
||||
"--kit": "KIT_NAME", "--kit-name": "KIT_NAME",
|
||||
"--user-intent": "USER_INTENT", "--intent": "USER_INTENT",
|
||||
"--project": "PROJECT_PATH", "--project-path": "PROJECT_PATH",
|
||||
"--brain-root": "BRAIN_ROOT", "--brain": "BRAIN_ROOT",
|
||||
}
|
||||
while i < len(args):
|
||||
a = args[i]
|
||||
if a in aliases and i + 1 < len(args):
|
||||
out[aliases[a]] = args[i + 1]
|
||||
i += 2
|
||||
elif "=" in a and a.startswith("--"):
|
||||
k, v = a[2:].split("=", 1)
|
||||
key = aliases.get("--" + k)
|
||||
if key:
|
||||
out[key] = v
|
||||
i += 1
|
||||
else:
|
||||
i += 1
|
||||
for k in ("KIT_NAME", "USER_INTENT", "PROJECT_PATH", "BRAIN_ROOT"):
|
||||
if k in os.environ and os.environ[k].strip():
|
||||
out.setdefault(k, os.environ[k])
|
||||
return out
|
||||
|
||||
|
||||
def main():
|
||||
cfg = _load(CONFIG)
|
||||
init_cfg = _load(WEB_INIT_CFG)
|
||||
|
||||
cli = _parse_cli_args()
|
||||
for k, v in cli.items():
|
||||
if v and str(v).strip():
|
||||
cfg[k] = v
|
||||
|
||||
kit_name = (cfg.get("KIT_NAME") or "").strip()
|
||||
user_intent = (cfg.get("USER_INTENT") or "").strip()
|
||||
|
||||
# v5: CLI --brain-root 가 있으면 env 처럼 작동시켜 _find_brain_root 우선순위 활용
|
||||
cli_brain = cli.get("BRAIN_ROOT", "").strip() if cli else ""
|
||||
if cli_brain:
|
||||
os.environ["BRAIN_ROOT"] = cli_brain
|
||||
# 두뇌 폴더 찾기 (자동 추론에도 필요)
|
||||
brain_root = _find_brain_root()
|
||||
|
||||
# v3: KIT_NAME 비어있고 USER_INTENT 있으면 자동 매칭
|
||||
selection_card = ""
|
||||
if not kit_name and user_intent:
|
||||
detected, score, alts = _autodetect_kit(brain_root, user_intent)
|
||||
if detected:
|
||||
kit_name = detected
|
||||
_log(f"자동 추론 → '{kit_name}' (매칭 점수 {score})", "info")
|
||||
if score == 0:
|
||||
_log(" ⚠️ 사용자 의도와 명확한 매칭 없음. 가장 일반적인 키트로 fallback.", "warn")
|
||||
# 시각 카드 (stdout에 마크다운 — 채팅창에 렌더링됨)
|
||||
card_lines = [
|
||||
"",
|
||||
"## 🎯 키트 자동 선택",
|
||||
"",
|
||||
f"> 사용자 의도: _\"{user_intent}\"_",
|
||||
"",
|
||||
"| 순위 | 키트 | 매칭 점수 | 비고 |",
|
||||
"|---|---|---|---|",
|
||||
]
|
||||
for i, (n, s, desc) in enumerate(alts):
|
||||
marker = "**⭐ 선택**" if n == kit_name else ""
|
||||
d_short = (desc[:50] + "…") if len(desc) > 50 else desc
|
||||
card_lines.append(f"| {i+1} | `{n}` | **{s}** | {marker} {d_short} |")
|
||||
if score == 0:
|
||||
card_lines.append("")
|
||||
card_lines.append("⚠️ _명확한 매칭 없음 — fallback으로 가장 일반적인 키트 선택._")
|
||||
card_lines.append("")
|
||||
card_lines.append("> 💡 다른 키트로 바꾸려면 `pack_apply` 를 `KIT_NAME=<원하는 키트>` 로 다시 실행.")
|
||||
card_lines.append("")
|
||||
selection_card = "\n".join(card_lines)
|
||||
|
||||
if not kit_name:
|
||||
kits = _list_kits(brain_root)
|
||||
avail = ", ".join([f"'{k['name']}'" for k in kits]) or "(두뇌에 키트 없음 — EZER 에서 먼저 주입)"
|
||||
_log(f"KIT_NAME 비어있고 USER_INTENT 도 없음.", "err")
|
||||
_log(f" 방법 1: KIT_NAME 명시 → {avail}", "info")
|
||||
_log(f" 방법 2: USER_INTENT 에 '다이어트 SaaS 랜딩' 같은 자연어 입력 → 자동 추론", "info")
|
||||
sys.exit(1)
|
||||
|
||||
project = (cfg.get("PROJECT_PATH") or "").strip()
|
||||
if not project:
|
||||
project = (init_cfg.get("LAST_PROJECT") or "").strip()
|
||||
if not project:
|
||||
_log("PROJECT_PATH 비어있고 web_init 기록도 없음", "err")
|
||||
sys.exit(1)
|
||||
project = os.path.expanduser(project)
|
||||
if not os.path.isdir(project):
|
||||
_log(f"프로젝트 폴더 없음: {project}", "err")
|
||||
sys.exit(1)
|
||||
|
||||
kit_dir = os.path.join(brain_root, "40_템플릿", "developer", kit_name)
|
||||
if not os.path.exists(kit_dir):
|
||||
_log(f"키트 없음: {kit_dir}", "err")
|
||||
_log(f"먼저 EZER Pack Vault 에서 '{kit_name}' 주입하세요.", "info")
|
||||
sys.exit(1)
|
||||
|
||||
manifest_path = os.path.join(kit_dir, "manifest.json")
|
||||
if not os.path.exists(manifest_path):
|
||||
_log(f"manifest 없음: {manifest_path}", "err")
|
||||
sys.exit(1)
|
||||
with open(manifest_path, "r", encoding="utf-8") as f:
|
||||
manifest = json.load(f)
|
||||
|
||||
apply = manifest.get("apply", {})
|
||||
copy_to = apply.get("copy_to", "src/components/")
|
||||
post_install = apply.get("post_install", [])
|
||||
app_imports = apply.get("app_imports", [])
|
||||
app_body = apply.get("app_body", "")
|
||||
|
||||
_log(f"키트: {manifest.get('name', kit_name)} → {project}", "info")
|
||||
_log(f"기반: {manifest.get('base', '?')}", "info")
|
||||
|
||||
# v7: 운영자 자격증명 로드 (Gemini/PayPal placeholder 자동 inline)
|
||||
creds = _load_operator_credentials(brain_root)
|
||||
|
||||
# 1) 파일 복사 (+ placeholder 교체)
|
||||
src_files = os.path.join(kit_dir, "files")
|
||||
dst_files = os.path.join(project, copy_to.lstrip("./"))
|
||||
if not os.path.exists(src_files):
|
||||
_log("키트의 files/ 폴더 없음 — 파일 복사 스킵", "warn")
|
||||
else:
|
||||
n = _copy_tree(src_files, dst_files, creds=creds)
|
||||
_log(f"{n}개 파일 복사 → {dst_files}", "ok")
|
||||
|
||||
# 2) 의존성 자동 설치
|
||||
if post_install:
|
||||
_log(f"의존성 {len(post_install)}개 설치 중...", "info")
|
||||
for cmd in post_install:
|
||||
ok = _run(cmd, cwd=project)
|
||||
if not ok:
|
||||
_log(f"부가 명령 실패: {cmd} — 계속 진행", "warn")
|
||||
|
||||
# 3) App.tsx 자동 업데이트 (best-effort)
|
||||
if app_imports:
|
||||
app_file = _find_app_file(project)
|
||||
if app_file:
|
||||
changed = _update_app_tsx(app_file, app_imports,
|
||||
app_body or "\n".join([f"<{n} />" for n in app_imports]))
|
||||
if changed:
|
||||
_log(f"App.tsx 자동 업데이트: {app_file}", "ok")
|
||||
else:
|
||||
_log(f"App.tsx 이미 정정됨 또는 패턴 매칭 실패 — 수동 확인: {app_file}", "warn")
|
||||
else:
|
||||
_log("App.tsx 못 찾음 — 수동으로 import + JSX 추가 필요", "warn")
|
||||
|
||||
# 결과 — stdout 으로 마크다운 (채팅창 렌더링)
|
||||
if selection_card:
|
||||
print(selection_card)
|
||||
print()
|
||||
print(f"## ✅ 적용 완료: `{manifest.get('name', kit_name)}`")
|
||||
print()
|
||||
print(f"- **위치**: `{project}`")
|
||||
print(f"- **기반**: {manifest.get('base', '?')}")
|
||||
if "expo" in (manifest.get("base", "").lower()):
|
||||
print(f"- **실행**: `cd {project} && npm start` → 폰에 Expo Go 깔고 QR 스캔")
|
||||
else:
|
||||
print(f"- **실행**: `cd {project} && npm run dev` → http://localhost:5173")
|
||||
print()
|
||||
_log(f"적용 완료: {kit_name}", "ok")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -0,0 +1,37 @@
|
||||
<!-- version: pwa_setup_v1 -->
|
||||
# 💻 PWA 자동 셋업 — 웹사이트 → 모바일 앱처럼
|
||||
|
||||
기존 웹 프로젝트를 PWA(Progressive Web App)로 변환. 사용자가 폰에서 "홈 화면에 추가" 누르면 풀스크린 앱처럼 작동.
|
||||
|
||||
## 자동 생성 파일
|
||||
- `public/manifest.json` — 앱 메타 (이름·아이콘·테마색)
|
||||
- `public/icon-192.svg` + `icon-512.svg` — 이모지 기반 라운드 아이콘
|
||||
- `public/sw.js` — 서비스 워커 (오프라인 캐싱)
|
||||
- `index.html`에 자동 주입: meta·link·script
|
||||
|
||||
## 설정
|
||||
- `PROJECT_PATH`: 비우면 web_init이 마지막에 만든 프로젝트 자동 사용
|
||||
- `APP_NAME`: 앱 이름 (홈화면 라벨)
|
||||
- `APP_SHORT_NAME`: 12자 이하 짧은 이름
|
||||
- `THEME_COLOR`: 상단 바 색 (예: `#667eea`)
|
||||
- `BACKGROUND_COLOR`: 스플래시 배경 (예: `#ffffff`)
|
||||
- `ICON_EMOJI`: 아이콘에 쓸 이모지 (예: `📚`)
|
||||
|
||||
## 사용 흐름
|
||||
```
|
||||
1. web_init으로 사이트 만듦 (vite-react·astro 등)
|
||||
2. pwa_setup 실행 → manifest·아이콘·sw 생성
|
||||
3. 배포 (Vercel·Netlify) 또는 로컬 dev server
|
||||
4. 폰 브라우저로 URL 접속
|
||||
5. iOS Safari: 공유 → 홈 화면에 추가
|
||||
Android Chrome: ⋮ → 홈 화면에 추가
|
||||
6. 홈 화면 아이콘 클릭 → 풀스크린 앱
|
||||
```
|
||||
|
||||
## Next.js 사용자
|
||||
Next.js 13+ App Router 는 `app/layout.tsx`의 `export const metadata` 에 PWA 정보를 넣어야 함. 도구가 자동 감지하면 안내 메시지 표시.
|
||||
|
||||
## 한계
|
||||
- 진짜 네이티브 기능 (푸시 알림·블루투스·카메라) 은 PWA로 부분 지원
|
||||
- 복잡한 모바일 앱은 Expo 권장
|
||||
- 아이콘은 SVG로 생성 (PNG 변환 필요시 ImageMagick 또는 사용자 디자인)
|
||||
@@ -0,0 +1,243 @@
|
||||
#!/usr/bin/env python3
|
||||
# version: pwa_setup_v1
|
||||
"""웹사이트를 PWA(모바일 앱처럼)로 변환.
|
||||
|
||||
config:
|
||||
PROJECT_PATH — 대상 폴더 (web_init 결과 자동 사용)
|
||||
APP_NAME — 앱 이름 (홈화면에 표시)
|
||||
APP_SHORT_NAME — 짧은 이름 (12자 이하)
|
||||
THEME_COLOR — 상단 바 색 (예: #667eea)
|
||||
BACKGROUND_COLOR — 스플래시 배경
|
||||
ICON_EMOJI — 아이콘 자동 생성에 쓸 이모지 (예: 📚)
|
||||
|
||||
생성 파일:
|
||||
public/manifest.json — PWA 메타
|
||||
public/sw.js — 서비스 워커 (오프라인)
|
||||
public/icon-192.png + icon-512.png — 자동 생성 (이모지 기반)
|
||||
index.html (또는 public/index.html) — meta·link·script 자동 주입
|
||||
|
||||
설치 방법 (사용자):
|
||||
사파리·크롬에서 사이트 접속 → "홈 화면에 추가" → 풀스크린 앱 작동
|
||||
"""
|
||||
import os, sys, json, base64, re
|
||||
|
||||
|
||||
HERE = os.path.dirname(os.path.abspath(__file__))
|
||||
CONFIG = os.path.join(HERE, "pwa_setup.json")
|
||||
WEB_INIT_CONFIG = os.path.join(HERE, "web_init.json")
|
||||
|
||||
|
||||
def _log(msg, kind="info"):
|
||||
prefix = {"info": "💻", "ok": "✅", "warn": "⚠️ ", "err": "❌", "step": "▸"}.get(kind, "•")
|
||||
print(f"{prefix} {msg}", file=sys.stderr, flush=True)
|
||||
|
||||
|
||||
def _load(p):
|
||||
if os.path.exists(p):
|
||||
try:
|
||||
with open(p, "r", encoding="utf-8") as f:
|
||||
return json.load(f)
|
||||
except Exception:
|
||||
pass
|
||||
return {}
|
||||
|
||||
|
||||
def _generate_icon_svg(emoji, bg_color, size=512):
|
||||
"""이모지 기반 SVG 아이콘 생성 (라운드 코너 + 그라데이션)."""
|
||||
return f'''<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="{size}" height="{size}" viewBox="0 0 {size} {size}">
|
||||
<defs>
|
||||
<linearGradient id="g" x1="0%" y1="0%" x2="100%" y2="100%">
|
||||
<stop offset="0%" stop-color="{bg_color}" stop-opacity="1"/>
|
||||
<stop offset="100%" stop-color="{bg_color}" stop-opacity="0.7"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
<rect width="{size}" height="{size}" rx="{size//8}" ry="{size//8}" fill="url(#g)"/>
|
||||
<text x="50%" y="50%" font-size="{int(size*0.55)}" text-anchor="middle" dominant-baseline="central" font-family="-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif">{emoji}</text>
|
||||
</svg>
|
||||
'''
|
||||
|
||||
|
||||
def _find_html(project_path):
|
||||
"""프로젝트의 메인 HTML 찾기 (index.html, public/index.html, app/layout.tsx 등)."""
|
||||
candidates = [
|
||||
os.path.join(project_path, "index.html"),
|
||||
os.path.join(project_path, "public", "index.html"),
|
||||
os.path.join(project_path, "public", "manifest.json"), # 이미 있으면 표시
|
||||
]
|
||||
for c in candidates:
|
||||
if os.path.exists(c):
|
||||
return c
|
||||
return None
|
||||
|
||||
|
||||
def _find_public_dir(project_path):
|
||||
"""public 디렉토리 찾기 또는 만들기."""
|
||||
public = os.path.join(project_path, "public")
|
||||
if os.path.exists(public):
|
||||
return public
|
||||
# Vite는 public/, Next.js도 public/
|
||||
os.makedirs(public, exist_ok=True)
|
||||
return public
|
||||
|
||||
|
||||
def main():
|
||||
cfg = _load(CONFIG)
|
||||
init_cfg = _load(WEB_INIT_CONFIG)
|
||||
|
||||
project_path = (cfg.get("PROJECT_PATH") or "").strip()
|
||||
if not project_path:
|
||||
project_path = (init_cfg.get("LAST_PROJECT") or "").strip()
|
||||
if not project_path:
|
||||
_log("PROJECT_PATH가 비어있고 web_init 기록도 없음", "err")
|
||||
sys.exit(1)
|
||||
|
||||
project_path = os.path.expanduser(project_path)
|
||||
if not os.path.isdir(project_path):
|
||||
_log(f"폴더 없음: {project_path}", "err")
|
||||
sys.exit(1)
|
||||
|
||||
app_name = (cfg.get("APP_NAME") or "").strip() or os.path.basename(project_path)
|
||||
short_name = (cfg.get("APP_SHORT_NAME") or "").strip() or app_name[:12]
|
||||
theme = (cfg.get("THEME_COLOR") or "").strip() or "#667eea"
|
||||
bg = (cfg.get("BACKGROUND_COLOR") or "").strip() or "#ffffff"
|
||||
icon_emoji = (cfg.get("ICON_EMOJI") or "").strip() or "✦"
|
||||
|
||||
_log(f"PWA 셋업 시작 → {project_path}", "info")
|
||||
|
||||
public = _find_public_dir(project_path)
|
||||
|
||||
# 1. manifest.json
|
||||
manifest = {
|
||||
"name": app_name,
|
||||
"short_name": short_name,
|
||||
"description": f"{app_name} — Connect AI로 만들어진 PWA",
|
||||
"start_url": "/",
|
||||
"display": "standalone",
|
||||
"orientation": "portrait",
|
||||
"theme_color": theme,
|
||||
"background_color": bg,
|
||||
"icons": [
|
||||
{"src": "/icon-192.svg", "sizes": "192x192", "type": "image/svg+xml", "purpose": "any maskable"},
|
||||
{"src": "/icon-512.svg", "sizes": "512x512", "type": "image/svg+xml", "purpose": "any maskable"},
|
||||
],
|
||||
}
|
||||
manifest_path = os.path.join(public, "manifest.json")
|
||||
with open(manifest_path, "w", encoding="utf-8") as f:
|
||||
json.dump(manifest, f, indent=2, ensure_ascii=False)
|
||||
_log(f"manifest.json 생성: {manifest_path}", "ok")
|
||||
|
||||
# 2. 아이콘 (SVG로 — 모든 기기에서 잘 보임 + 작은 사이즈)
|
||||
for size in (192, 512):
|
||||
icon_path = os.path.join(public, f"icon-{size}.svg")
|
||||
with open(icon_path, "w", encoding="utf-8") as f:
|
||||
f.write(_generate_icon_svg(icon_emoji, theme, size))
|
||||
_log(f"icon-{size}.svg 생성", "ok")
|
||||
|
||||
# 3. service worker
|
||||
sw_path = os.path.join(public, "sw.js")
|
||||
sw_content = f'''// Connect AI PWA Service Worker
|
||||
// version: pwa_v1 — auto-generated
|
||||
const CACHE = "{short_name}-v1";
|
||||
const ASSETS = ["/", "/manifest.json", "/icon-192.svg", "/icon-512.svg"];
|
||||
|
||||
self.addEventListener("install", e => {{
|
||||
e.waitUntil(caches.open(CACHE).then(c => c.addAll(ASSETS).catch(()=>{{/* offline OK */}})));
|
||||
self.skipWaiting();
|
||||
}});
|
||||
self.addEventListener("activate", e => {{
|
||||
e.waitUntil(caches.keys().then(keys =>
|
||||
Promise.all(keys.filter(k => k !== CACHE).map(k => caches.delete(k)))
|
||||
));
|
||||
self.clients.claim();
|
||||
}});
|
||||
self.addEventListener("fetch", e => {{
|
||||
const req = e.request;
|
||||
if (req.method !== "GET") return;
|
||||
e.respondWith(
|
||||
caches.match(req).then(hit => hit || fetch(req).then(res => {{
|
||||
const copy = res.clone();
|
||||
caches.open(CACHE).then(c => c.put(req, copy)).catch(()=>{{/* ignore */}});
|
||||
return res;
|
||||
}}).catch(() => caches.match("/") || new Response("offline", {{ status: 503 }})))
|
||||
);
|
||||
}});
|
||||
'''
|
||||
with open(sw_path, "w", encoding="utf-8") as f:
|
||||
f.write(sw_content)
|
||||
_log(f"sw.js 생성: {sw_path}", "ok")
|
||||
|
||||
# 4. HTML에 meta + link + script 주입
|
||||
# 후보: index.html, public/index.html, app/layout.tsx (Next.js)
|
||||
html_candidates = [
|
||||
os.path.join(project_path, "index.html"),
|
||||
os.path.join(project_path, "public", "index.html"),
|
||||
]
|
||||
html_file = None
|
||||
for c in html_candidates:
|
||||
if os.path.exists(c):
|
||||
html_file = c
|
||||
break
|
||||
|
||||
pwa_head = f'''
|
||||
<!-- PWA: 자동 생성 — pwa_setup.py -->
|
||||
<meta name="theme-color" content="{theme}">
|
||||
<link rel="manifest" href="/manifest.json">
|
||||
<link rel="icon" type="image/svg+xml" href="/icon-512.svg">
|
||||
<link rel="apple-touch-icon" href="/icon-512.svg">
|
||||
<meta name="apple-mobile-web-app-capable" content="yes">
|
||||
<meta name="apple-mobile-web-app-title" content="{short_name}">
|
||||
<meta name="mobile-web-app-capable" content="yes">'''
|
||||
pwa_script = '''
|
||||
<script>
|
||||
if ("serviceWorker" in navigator) {
|
||||
window.addEventListener("load", () => {
|
||||
navigator.serviceWorker.register("/sw.js").catch(()=>{/* ignore */});
|
||||
});
|
||||
}
|
||||
</script>'''
|
||||
|
||||
if html_file:
|
||||
with open(html_file, "r", encoding="utf-8") as f:
|
||||
html = f.read()
|
||||
if "manifest.json" in html:
|
||||
_log(f"HTML 이미 PWA 메타 있음. 스킵: {html_file}", "warn")
|
||||
else:
|
||||
# </head> 직전에 head 삽입
|
||||
new_html = re.sub(r"</head>", pwa_head + "\n </head>", html, count=1, flags=re.IGNORECASE)
|
||||
# </body> 직전에 script 삽입
|
||||
new_html = re.sub(r"</body>", pwa_script + "\n </body>", new_html, count=1, flags=re.IGNORECASE)
|
||||
with open(html_file, "w", encoding="utf-8") as f:
|
||||
f.write(new_html)
|
||||
_log(f"HTML 메타·script 주입: {html_file}", "ok")
|
||||
else:
|
||||
# Next.js app/layout.tsx 안내만
|
||||
next_layout = os.path.join(project_path, "src", "app", "layout.tsx")
|
||||
next_layout_alt = os.path.join(project_path, "app", "layout.tsx")
|
||||
layout = next_layout if os.path.exists(next_layout) else (next_layout_alt if os.path.exists(next_layout_alt) else None)
|
||||
if layout:
|
||||
_log(f"Next.js 감지 — {layout} 의 metadata에 manifest 추가하세요", "warn")
|
||||
_log(f" export const metadata = {{ ... manifest: '/manifest.json' }}", "info")
|
||||
else:
|
||||
_log("HTML 파일을 찾지 못함. PWA 메타·script 수동 추가 필요.", "warn")
|
||||
_log(f"head: {pwa_head.strip()}", "info")
|
||||
_log(f"body: {pwa_script.strip()}", "info")
|
||||
|
||||
# 결과 저장
|
||||
cfg["LAST_PROJECT"] = project_path
|
||||
cfg["LAST_APP_NAME"] = app_name
|
||||
cfg["LAST_THEME"] = theme
|
||||
with open(CONFIG, "w", encoding="utf-8") as f:
|
||||
json.dump(cfg, f, indent=2, ensure_ascii=False)
|
||||
|
||||
print()
|
||||
_log(f"PWA 셋업 완료: {app_name}", "ok")
|
||||
_log("테스트:", "info")
|
||||
_log(" 1. dev server 또는 배포된 URL을 모바일 브라우저로 열기", "info")
|
||||
_log(" 2. iOS Safari: 공유 → 홈 화면에 추가", "info")
|
||||
_log(" 3. Android Chrome: 우측 ⋮ → 홈 화면에 추가", "info")
|
||||
_log(" 4. 풀스크린·아이콘·오프라인 작동 확인", "info")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -0,0 +1,42 @@
|
||||
<!-- version: web_init_v1 -->
|
||||
# 💻 웹·모바일 프로젝트 자동 시작
|
||||
|
||||
5개 템플릿 중 골라서 한 번에 프로젝트 폴더 + 의존성 설치 + 첫 실행 가능한 상태로.
|
||||
|
||||
## 템플릿
|
||||
|
||||
| 템플릿 | 용도 | 의존성 | 첫 실행 |
|
||||
|---|---|---|---|
|
||||
| **vite-react** ⭐ 추천 | SPA·대시보드·SaaS UI | Node·npm | `npm run dev` → :5173 |
|
||||
| **nextjs** | full-stack·SEO·서버 컴포넌트 | Node·npm | `npm run dev` → :3000 |
|
||||
| **astro** | 블로그·콘텐츠·랜딩 | Node·npm | `npm run dev` → :4321 |
|
||||
| **expo** | 진짜 모바일 앱 (iOS/Android) | Node·npm·Expo Go | `npm start` → QR |
|
||||
| **vanilla** | 단순 HTML/CSS/JS | 없음 | `python3 -m http.server` |
|
||||
|
||||
## 사용법
|
||||
|
||||
설정 (web_init.json):
|
||||
- `TEMPLATE`: 위 5개 중 하나
|
||||
- `PROJECT_NAME`: 영문·숫자·하이픈 (예: `my-blog`)
|
||||
- `OUTPUT_DIR`: 비우면 `~/connect-ai-projects/`
|
||||
|
||||
실행:
|
||||
```
|
||||
python3 web_init.py
|
||||
```
|
||||
|
||||
## 어떤 걸 골라야 하나
|
||||
|
||||
- **이걸로 시작:** vite-react (SPA·대시보드·내부 도구)
|
||||
- **블로그·기업 사이트:** astro
|
||||
- **풀스택 (DB·API):** nextjs
|
||||
- **모바일 앱:** expo (PWA로 충분하면 vite-react)
|
||||
- **HTML 한 페이지:** vanilla
|
||||
|
||||
## 다음 단계
|
||||
|
||||
셋업 후 코다리가:
|
||||
1. `web_preview` 도구로 dev server 실행
|
||||
2. 사용자 요구사항대로 컴포넌트 추가
|
||||
3. `pwa_setup` 으로 PWA 만들기 (모바일 앱처럼)
|
||||
4. Vercel/Netlify에 배포
|
||||
@@ -0,0 +1,307 @@
|
||||
#!/usr/bin/env python3
|
||||
# version: web_init_v3
|
||||
"""웹·모바일 프로젝트 자동 초기화 — 5개 템플릿 중 선택.
|
||||
|
||||
config:
|
||||
TEMPLATE — vite-react / nextjs / astro / expo / vanilla
|
||||
PROJECT_NAME — 프로젝트 폴더 이름 (영문·하이픈, 공백 X)
|
||||
OUTPUT_DIR — 어디에 만들지 (비우면 ~/connect-ai-projects/)
|
||||
|
||||
각 템플릿은 검증된 공식 명령어로 셋업. 5분 안에 dev server 띄울 수 있는 상태로.
|
||||
"""
|
||||
import os, sys, json, subprocess, shutil
|
||||
|
||||
|
||||
HERE = os.path.dirname(os.path.abspath(__file__))
|
||||
CONFIG = os.path.join(HERE, "web_init.json")
|
||||
|
||||
|
||||
def _log(msg, kind="info"):
|
||||
prefix = {"info": "💻", "ok": "✅", "warn": "⚠️ ", "err": "❌", "step": "▸"}.get(kind, "•")
|
||||
print(f"{prefix} {msg}", file=sys.stderr, flush=True)
|
||||
|
||||
|
||||
def _load():
|
||||
if os.path.exists(CONFIG):
|
||||
try:
|
||||
with open(CONFIG, "r", encoding="utf-8") as f:
|
||||
return json.load(f)
|
||||
except Exception:
|
||||
pass
|
||||
return {}
|
||||
|
||||
|
||||
def _save(c):
|
||||
try:
|
||||
with open(CONFIG, "w", encoding="utf-8") as f:
|
||||
json.dump(c, f, indent=2, ensure_ascii=False)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
|
||||
def _check_cmd(cmd):
|
||||
"""Check if a CLI tool exists."""
|
||||
return shutil.which(cmd) is not None
|
||||
|
||||
|
||||
def _run(cmd, cwd=None, capture=True):
|
||||
"""Run shell command, stream stderr live but capture stdout for return."""
|
||||
_log(f"$ {cmd}", "step")
|
||||
if capture:
|
||||
r = subprocess.run(cmd, shell=True, cwd=cwd, capture_output=True, text=True, timeout=600)
|
||||
if r.stdout:
|
||||
for line in r.stdout.splitlines()[:20]:
|
||||
print(f" {line}")
|
||||
if r.stderr and r.returncode != 0:
|
||||
for line in r.stderr.splitlines()[-10:]:
|
||||
_log(line, "warn")
|
||||
return r.returncode == 0, r.stdout
|
||||
else:
|
||||
return subprocess.run(cmd, shell=True, cwd=cwd, timeout=600).returncode == 0, ""
|
||||
|
||||
|
||||
def _scaffold_vite_react(name, parent):
|
||||
"""Vite + React + TS + Tailwind v4 (Vite 플러그인 방식).
|
||||
v2: tailwindcss init 명령이 v4에서 제거됨 → @tailwindcss/vite 플러그인 사용 + 설정 파일 직접 쓰기.
|
||||
각 단계마다 (cmd, cwd, critical) — critical=False면 실패해도 프로젝트 살림."""
|
||||
target = os.path.join(parent, name)
|
||||
return [
|
||||
("create", f"npm create vite@latest {name} -- --template react-ts", parent, True),
|
||||
("install", "npm install", target, True),
|
||||
("tailwind-pkg", "npm install tailwindcss@^4 @tailwindcss/vite@^4", target, False),
|
||||
("tailwind-config", _write_vite_tailwind_config, target, False),
|
||||
]
|
||||
|
||||
|
||||
def _write_vite_tailwind_config(target):
|
||||
"""Tailwind v4 설정 파일 직접 작성 (init 명령 의존 없음)."""
|
||||
# vite.config.ts: 기본 파일에 tailwindcss 플러그인 추가
|
||||
vite_cfg = os.path.join(target, "vite.config.ts")
|
||||
if os.path.exists(vite_cfg):
|
||||
try:
|
||||
with open(vite_cfg, "r", encoding="utf-8") as f:
|
||||
content = f.read()
|
||||
if "tailwindcss" not in content:
|
||||
# import 추가
|
||||
content = "import tailwindcss from '@tailwindcss/vite'\n" + content
|
||||
# plugins: [react()] → plugins: [react(), tailwindcss()]
|
||||
content = content.replace("plugins: [react()]", "plugins: [react(), tailwindcss()]")
|
||||
with open(vite_cfg, "w", encoding="utf-8") as f:
|
||||
f.write(content)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
# src/index.css: Tailwind v4 import 한 줄
|
||||
css_path = os.path.join(target, "src", "index.css")
|
||||
if os.path.exists(css_path):
|
||||
try:
|
||||
with open(css_path, "r", encoding="utf-8") as f:
|
||||
cur = f.read()
|
||||
if '@import "tailwindcss"' not in cur:
|
||||
with open(css_path, "w", encoding="utf-8") as f:
|
||||
f.write('@import "tailwindcss";\n\n' + cur)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
return True
|
||||
|
||||
|
||||
TEMPLATES = {
|
||||
"vite-react": {
|
||||
"label": "⚡ Vite + React + TypeScript + Tailwind v4",
|
||||
"needs": ["node", "npm"],
|
||||
"scaffold": _scaffold_vite_react,
|
||||
"post": "Tailwind v4 (Vite 플러그인) + index.css 자동 설정",
|
||||
"dev_cmd": "npm run dev",
|
||||
},
|
||||
"nextjs": {
|
||||
"label": "▲ Next.js 14 (App Router) + TypeScript + Tailwind",
|
||||
"needs": ["node", "npm"],
|
||||
"scaffold": lambda name, parent: [
|
||||
("scaffold", f"npx create-next-app@latest {name} --typescript --tailwind --app --src-dir --import-alias '@/*' --no-eslint --use-npm --yes", parent, True),
|
||||
],
|
||||
"post": "App Router·Tailwind·src 디렉토리 셋업 완료",
|
||||
"dev_cmd": "npm run dev",
|
||||
},
|
||||
"astro": {
|
||||
"label": "🚀 Astro + Tailwind (정적·콘텐츠 사이트)",
|
||||
"needs": ["node", "npm"],
|
||||
"scaffold": lambda name, parent: [
|
||||
("scaffold", f"npm create astro@latest {name} -- --template minimal --typescript strict --install --git --yes", parent, True),
|
||||
("tailwind", f"npx astro add tailwind --yes", os.path.join(parent, name), False),
|
||||
],
|
||||
"post": "Astro + Tailwind",
|
||||
"dev_cmd": "npm run dev",
|
||||
},
|
||||
"expo": {
|
||||
"label": "📱 Expo (React Native · iOS/Android/Web 동시)",
|
||||
"needs": ["node", "npm"],
|
||||
"scaffold": lambda name, parent: [
|
||||
("scaffold", f"npx create-expo-app@latest {name} --template blank-typescript", parent, True),
|
||||
],
|
||||
"post": "Expo Go 앱(iOS/Android) 깔고 'npm start' 후 QR 스캔",
|
||||
"dev_cmd": "npm start",
|
||||
},
|
||||
"vanilla": {
|
||||
"label": "📄 Vanilla HTML + CSS + JS (프레임워크 없음)",
|
||||
"needs": [],
|
||||
"scaffold": "VANILLA", # 특수 케이스 — 직접 파일 생성
|
||||
"post": "단일 폴더 + index.html + style.css + script.js + README",
|
||||
"dev_cmd": "python3 -m http.server 8000",
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
def _scaffold_vanilla(target_dir, name):
|
||||
"""프레임워크 없이 정적 사이트 시드."""
|
||||
os.makedirs(target_dir, exist_ok=True)
|
||||
files = {
|
||||
"index.html": f'''<!DOCTYPE html>
|
||||
<html lang="ko">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>{name}</title>
|
||||
<link rel="stylesheet" href="style.css">
|
||||
</head>
|
||||
<body>
|
||||
<header>
|
||||
<h1>{name}</h1>
|
||||
<p>Connect AI · 코다리가 만든 사이트</p>
|
||||
</header>
|
||||
<main>
|
||||
<p>여기에 콘텐츠를 추가하세요.</p>
|
||||
</main>
|
||||
<script src="script.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
''',
|
||||
"style.css": '''* { margin: 0; padding: 0; box-sizing: border-box; }
|
||||
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; line-height: 1.6; color: #1a1a1a; background: #fafafa; }
|
||||
header { padding: 60px 24px; text-align: center; background: linear-gradient(135deg, #667eea, #764ba2); color: white; }
|
||||
header h1 { font-size: 48px; font-weight: 800; margin-bottom: 8px; }
|
||||
main { max-width: 720px; margin: 40px auto; padding: 0 24px; }
|
||||
''',
|
||||
"script.js": '''// 코다리가 첨부한 스크립트
|
||||
console.log("✦ Connect AI 사이트 로드 완료");
|
||||
''',
|
||||
"README.md": f'''# {name}
|
||||
|
||||
Connect AI 코다리가 셋업한 정적 웹사이트.
|
||||
|
||||
## 미리보기
|
||||
```
|
||||
python3 -m http.server 8000
|
||||
```
|
||||
그 다음 브라우저에서 http://localhost:8000
|
||||
|
||||
## 구조
|
||||
- `index.html` — 메인 페이지
|
||||
- `style.css` — 스타일
|
||||
- `script.js` — JS
|
||||
|
||||
## 배포
|
||||
- Vercel: `npx vercel --prod`
|
||||
- Netlify: `npx netlify deploy --prod`
|
||||
- Cloudflare Pages: GitHub 연결
|
||||
''',
|
||||
}
|
||||
for filename, content in files.items():
|
||||
with open(os.path.join(target_dir, filename), "w", encoding="utf-8") as f:
|
||||
f.write(content)
|
||||
return True
|
||||
|
||||
|
||||
def main():
|
||||
cfg = _load()
|
||||
template = (cfg.get("TEMPLATE") or "").strip().lower() or "vite-react"
|
||||
name = (cfg.get("PROJECT_NAME") or "").strip() or "my-app"
|
||||
out_dir = (cfg.get("OUTPUT_DIR") or "").strip()
|
||||
|
||||
if template not in TEMPLATES:
|
||||
_log(f"알 수 없는 템플릿: {template}", "err")
|
||||
_log(f"사용 가능: {', '.join(TEMPLATES.keys())}", "info")
|
||||
sys.exit(1)
|
||||
|
||||
# 이름 검증
|
||||
import re
|
||||
if not re.match(r"^[a-z0-9][a-z0-9_-]*$", name):
|
||||
_log(f"프로젝트 이름은 소문자·숫자·하이픈·언더스코어만: {name}", "err")
|
||||
sys.exit(1)
|
||||
|
||||
# 출력 위치
|
||||
if not out_dir:
|
||||
out_dir = os.path.expanduser("~/connect-ai-projects")
|
||||
out_dir = os.path.expanduser(out_dir)
|
||||
os.makedirs(out_dir, exist_ok=True)
|
||||
|
||||
target = os.path.join(out_dir, name)
|
||||
if os.path.exists(target):
|
||||
_log(f"이미 존재: {target} — 다른 이름 쓰거나 폴더 지우세요", "err")
|
||||
sys.exit(1)
|
||||
|
||||
spec = TEMPLATES[template]
|
||||
_log(f"{spec['label']} 셋업 시작 → {target}", "info")
|
||||
|
||||
# 의존성 체크
|
||||
for cmd in spec.get("needs", []):
|
||||
if not _check_cmd(cmd):
|
||||
_log(f"`{cmd}` 명령이 없음. 먼저 Node.js를 설치하세요 (nodejs.org).", "err")
|
||||
sys.exit(1)
|
||||
|
||||
# 실행
|
||||
if spec["scaffold"] == "VANILLA":
|
||||
ok = _scaffold_vanilla(target, name)
|
||||
if not ok:
|
||||
_log("vanilla 셋업 실패", "err")
|
||||
sys.exit(1)
|
||||
else:
|
||||
steps = spec["scaffold"](name, out_dir)
|
||||
warnings = []
|
||||
for step in steps:
|
||||
# 4-tuple 형식: (label, cmd_or_func, cwd, critical)
|
||||
if len(step) != 4:
|
||||
_log(f"잘못된 step 형식 (4-tuple 필요): {step}", "err")
|
||||
sys.exit(1)
|
||||
label, action, cwd, critical = step
|
||||
if callable(action):
|
||||
# Python 함수 직접 호출 (설정 파일 쓰기 등)
|
||||
_log(f"[{label}] 설정 파일 작성 중...", "step")
|
||||
try:
|
||||
ok = bool(action(cwd))
|
||||
except Exception as e:
|
||||
_log(f"[{label}] 예외: {e}", "warn")
|
||||
ok = False
|
||||
else:
|
||||
ok, _ = _run(action, cwd=cwd)
|
||||
if not ok:
|
||||
if critical:
|
||||
_log(f"❌ 핵심 단계 실패: [{label}] — 중단합니다", "err")
|
||||
sys.exit(1)
|
||||
else:
|
||||
_log(f"⚠️ 부가 단계 실패: [{label}] — 계속 진행합니다", "warn")
|
||||
warnings.append(label)
|
||||
if warnings:
|
||||
_log(f"부가 단계 {len(warnings)}개 실패 ({', '.join(warnings)}). 프로젝트 자체는 작동합니다.", "warn")
|
||||
_log("Tailwind 등은 사용자가 수동 추가 가능. README 참고.", "info")
|
||||
|
||||
_log(f"셋업 완료: {target}", "ok")
|
||||
_log(f"다음 단계:", "info")
|
||||
_log(f" cd {target}", "info")
|
||||
_log(f" {spec['dev_cmd']}", "info")
|
||||
if spec.get("post"):
|
||||
_log(f" {spec['post']}", "info")
|
||||
|
||||
# 결과 저장
|
||||
cfg["LAST_PROJECT"] = target
|
||||
cfg["LAST_TEMPLATE"] = template
|
||||
cfg["LAST_DEV_CMD"] = spec["dev_cmd"]
|
||||
_save(cfg)
|
||||
|
||||
print()
|
||||
print(f"PROJECT_PATH={target}")
|
||||
print(f"DEV_CMD={spec['dev_cmd']}")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -0,0 +1,31 @@
|
||||
<!-- version: web_preview_v1 -->
|
||||
# 💻 웹 dev server 백그라운드 실행 + URL 안내
|
||||
|
||||
`npm run dev` 같은 dev server를 백그라운드로 띄우고 미리보기 URL을 자동 감지·반환.
|
||||
|
||||
## 동작
|
||||
1. PROJECT_PATH의 package.json scripts.dev 자동 감지
|
||||
2. 백그라운드 실행 (nohup·detached) + PID 파일 저장
|
||||
3. 첫 8초 동안 로그에서 `localhost:포트` URL 파싱
|
||||
4. AUTO_OPEN=true 면 브라우저 자동 열기
|
||||
|
||||
## 설정
|
||||
- `PROJECT_PATH`: 비우면 web_init이 마지막에 만든 프로젝트 자동 사용
|
||||
- `DEV_CMD`: 비우면 자동 감지 (`npm run dev` / `npm start`)
|
||||
- `AUTO_OPEN`: `true`면 미리보기 URL을 브라우저로 열기
|
||||
|
||||
## 종료
|
||||
- 같은 도구 재실행 → 이전 PID 자동 kill 후 새로 시작
|
||||
- 수동 종료: `kill <PID>` (PID는 출력에 표시)
|
||||
- macOS/Linux: `pkill -f "npm run dev"`
|
||||
|
||||
## 사용 예시
|
||||
```
|
||||
1. web_init으로 프로젝트 셋업 (예: nextjs, my-blog)
|
||||
2. web_preview 실행 → http://localhost:3000 자동 표시
|
||||
3. 코드 변경 → HMR로 즉시 반영 (브라우저)
|
||||
4. 작업 끝나면 kill 또는 도구 재실행
|
||||
```
|
||||
|
||||
## 한계
|
||||
- 진짜 라이브 미리보기 칩 (사이드바 안의 상태 인디케이터)은 별도 UI 작업 필요. 현재는 출력에 URL만 반환.
|
||||
@@ -0,0 +1,209 @@
|
||||
#!/usr/bin/env python3
|
||||
# version: web_preview_v1
|
||||
"""웹 프로젝트 dev server 시작 + URL 추출.
|
||||
|
||||
config:
|
||||
PROJECT_PATH — 프로젝트 폴더 (web_init이 만든 건 자동 감지)
|
||||
PORT — 비워두면 자동 (vite=5173, next=3000, astro=4321)
|
||||
AUTO_OPEN — 'true' 면 브라우저 자동 열기
|
||||
|
||||
특징:
|
||||
- package.json scripts.dev 자동 감지
|
||||
- 백그라운드 실행 (nohup) + PID 파일 저장
|
||||
- 첫 5초 동안 출력에서 localhost URL 파싱
|
||||
- 같은 프로젝트 재실행 시 이전 PID 자동 종료
|
||||
"""
|
||||
import os, sys, json, subprocess, time, signal, re
|
||||
|
||||
|
||||
HERE = os.path.dirname(os.path.abspath(__file__))
|
||||
CONFIG = os.path.join(HERE, "web_preview.json")
|
||||
WEB_INIT_CONFIG = os.path.join(HERE, "web_init.json")
|
||||
|
||||
|
||||
def _log(msg, kind="info"):
|
||||
prefix = {"info": "💻", "ok": "✅", "warn": "⚠️ ", "err": "❌", "step": "▸"}.get(kind, "•")
|
||||
print(f"{prefix} {msg}", file=sys.stderr, flush=True)
|
||||
|
||||
|
||||
def _load(p):
|
||||
if os.path.exists(p):
|
||||
try:
|
||||
with open(p, "r", encoding="utf-8") as f:
|
||||
return json.load(f)
|
||||
except Exception:
|
||||
pass
|
||||
return {}
|
||||
|
||||
|
||||
def _save(p, c):
|
||||
try:
|
||||
with open(p, "w", encoding="utf-8") as f:
|
||||
json.dump(c, f, indent=2, ensure_ascii=False)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
|
||||
def _detect_dev_command(project_path):
|
||||
"""package.json의 scripts.dev 또는 start를 감지."""
|
||||
pkg = os.path.join(project_path, "package.json")
|
||||
if not os.path.exists(pkg):
|
||||
return None
|
||||
try:
|
||||
with open(pkg, "r", encoding="utf-8") as f:
|
||||
data = json.load(f)
|
||||
scripts = data.get("scripts", {})
|
||||
for key in ["dev", "start", "develop", "serve"]:
|
||||
if key in scripts:
|
||||
return f"npm run {key}"
|
||||
except Exception:
|
||||
pass
|
||||
return None
|
||||
|
||||
|
||||
def _kill_old_pid(pid_file):
|
||||
"""이전 실행이 있으면 종료."""
|
||||
if not os.path.exists(pid_file):
|
||||
return
|
||||
try:
|
||||
with open(pid_file, "r") as f:
|
||||
pid = int(f.read().strip())
|
||||
try:
|
||||
os.kill(pid, signal.SIGTERM)
|
||||
time.sleep(0.5)
|
||||
os.kill(pid, signal.SIGKILL)
|
||||
except ProcessLookupError:
|
||||
pass
|
||||
except PermissionError:
|
||||
pass
|
||||
_log(f"이전 dev server 종료 (PID {pid})", "info")
|
||||
except Exception:
|
||||
pass
|
||||
try:
|
||||
os.remove(pid_file)
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
|
||||
def main():
|
||||
cfg = _load(CONFIG)
|
||||
init_cfg = _load(WEB_INIT_CONFIG)
|
||||
|
||||
project_path = (cfg.get("PROJECT_PATH") or "").strip()
|
||||
if not project_path:
|
||||
# web_init 결과 자동 사용
|
||||
project_path = (init_cfg.get("LAST_PROJECT") or "").strip()
|
||||
if not project_path:
|
||||
_log("PROJECT_PATH가 비어있고 web_init 기록도 없음. 프로젝트 경로 지정하세요.", "err")
|
||||
sys.exit(1)
|
||||
|
||||
project_path = os.path.expanduser(project_path)
|
||||
if not os.path.isdir(project_path):
|
||||
_log(f"폴더 없음: {project_path}", "err")
|
||||
sys.exit(1)
|
||||
|
||||
# dev 명령 감지
|
||||
dev_cmd = (cfg.get("DEV_CMD") or "").strip()
|
||||
if not dev_cmd:
|
||||
dev_cmd = init_cfg.get("LAST_DEV_CMD", "")
|
||||
if not dev_cmd:
|
||||
dev_cmd = _detect_dev_command(project_path) or "npm run dev"
|
||||
|
||||
_log(f"프로젝트: {project_path}", "info")
|
||||
_log(f"명령: {dev_cmd}", "info")
|
||||
|
||||
# PID 파일
|
||||
pid_file = os.path.join(project_path, ".connect-ai-dev.pid")
|
||||
log_file = os.path.join(project_path, ".connect-ai-dev.log")
|
||||
_kill_old_pid(pid_file)
|
||||
|
||||
# 백그라운드 실행
|
||||
try:
|
||||
with open(log_file, "w") as logf:
|
||||
if sys.platform == "win32":
|
||||
proc = subprocess.Popen(
|
||||
dev_cmd, shell=True, cwd=project_path,
|
||||
stdout=logf, stderr=subprocess.STDOUT,
|
||||
creationflags=subprocess.DETACHED_PROCESS | subprocess.CREATE_NEW_PROCESS_GROUP,
|
||||
)
|
||||
else:
|
||||
proc = subprocess.Popen(
|
||||
dev_cmd, shell=True, cwd=project_path,
|
||||
stdout=logf, stderr=subprocess.STDOUT,
|
||||
start_new_session=True,
|
||||
)
|
||||
with open(pid_file, "w") as f:
|
||||
f.write(str(proc.pid))
|
||||
_log(f"dev server 시작됨 (PID {proc.pid})", "ok")
|
||||
except Exception as e:
|
||||
_log(f"실행 실패: {e}", "err")
|
||||
sys.exit(1)
|
||||
|
||||
# 첫 8초 동안 로그에서 URL 파싱
|
||||
url = None
|
||||
deadline = time.time() + 8
|
||||
while time.time() < deadline:
|
||||
time.sleep(0.5)
|
||||
try:
|
||||
with open(log_file, "r") as f:
|
||||
content = f.read()
|
||||
# 흔한 패턴: "Local: http://localhost:3000" / "ready - started server on http://localhost:3000"
|
||||
m = re.search(r"https?://(?:localhost|127\.0\.0\.1):\d+(?:/\S*)?", content)
|
||||
if m:
|
||||
url = m.group(0)
|
||||
break
|
||||
except Exception:
|
||||
pass
|
||||
if proc.poll() is not None:
|
||||
_log("dev server가 일찍 종료됐어요. 로그 확인:", "warn")
|
||||
try:
|
||||
with open(log_file, "r") as f:
|
||||
for line in f.read().splitlines()[-10:]:
|
||||
print(f" {line}")
|
||||
except Exception:
|
||||
pass
|
||||
sys.exit(1)
|
||||
|
||||
if url:
|
||||
_log(f"미리보기 URL: {url}", "ok")
|
||||
else:
|
||||
_log("URL을 자동 감지 못 함. 로그 확인:", "warn")
|
||||
try:
|
||||
with open(log_file, "r") as f:
|
||||
for line in f.read().splitlines()[-15:]:
|
||||
print(f" {line}")
|
||||
except Exception:
|
||||
pass
|
||||
url = "http://localhost:3000"
|
||||
|
||||
auto_open = str(cfg.get("AUTO_OPEN", "")).lower() in ("true", "1", "yes")
|
||||
if auto_open and url:
|
||||
try:
|
||||
if sys.platform == "darwin":
|
||||
subprocess.Popen(["open", url])
|
||||
elif sys.platform == "win32":
|
||||
subprocess.Popen(["cmd", "/c", "start", "", url], shell=False)
|
||||
else:
|
||||
subprocess.Popen(["xdg-open", url])
|
||||
_log("브라우저 열림", "ok")
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
# 결과 저장
|
||||
cfg["LAST_PROJECT"] = project_path
|
||||
cfg["LAST_PID"] = proc.pid
|
||||
cfg["LAST_URL"] = url
|
||||
cfg["LAST_LOG"] = log_file
|
||||
_save(CONFIG, cfg)
|
||||
|
||||
print()
|
||||
print(f"PID={proc.pid}")
|
||||
print(f"URL={url}")
|
||||
print(f"LOG={log_file}")
|
||||
print()
|
||||
_log("dev server는 백그라운드에서 계속 실행됩니다.", "info")
|
||||
_log(f"종료: kill {proc.pid} (또는 같은 도구 재실행)", "info")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
@@ -0,0 +1,12 @@
|
||||
# 🎵 루나 스킬
|
||||
|
||||
_재사용 가능한 패턴 모음. memory.md는 모든 활동의 로그(append-only firehose),
|
||||
이 폴더는 **검증된 패턴만 골라낸 것**입니다. 각 `*.md` 파일은 다음 호출 시
|
||||
루나의 system prompt에 자동 주입됩니다._
|
||||
|
||||
## 어떻게 채우나요?
|
||||
- 텔레그램에서 `/skill` (직전 산출물 자동 승격)
|
||||
- VS Code 명령 팔레트: `Connect AI: 방금 산출물 → 스킬로 저장`
|
||||
- 직접 이 폴더에 `<주제>.md` 파일을 만들어도 됩니다 (`# 제목` + 본문)
|
||||
|
||||
`README.md` 자체는 system prompt에 주입되지 않습니다.
|
||||
@@ -0,0 +1,12 @@
|
||||
# 📷 Instagram 스킬
|
||||
|
||||
_재사용 가능한 패턴 모음. memory.md는 모든 활동의 로그(append-only firehose),
|
||||
이 폴더는 **검증된 패턴만 골라낸 것**입니다. 각 `*.md` 파일은 다음 호출 시
|
||||
Instagram의 system prompt에 자동 주입됩니다._
|
||||
|
||||
## 어떻게 채우나요?
|
||||
- 텔레그램에서 `/skill` (직전 산출물 자동 승격)
|
||||
- VS Code 명령 팔레트: `Connect AI: 방금 산출물 → 스킬로 저장`
|
||||
- 직접 이 폴더에 `<주제>.md` 파일을 만들어도 됩니다 (`# 제목` + 본문)
|
||||
|
||||
`README.md` 자체는 system prompt에 주입되지 않습니다.
|
||||
@@ -0,0 +1,12 @@
|
||||
# 🔍 Researcher 스킬
|
||||
|
||||
_재사용 가능한 패턴 모음. memory.md는 모든 활동의 로그(append-only firehose),
|
||||
이 폴더는 **검증된 패턴만 골라낸 것**입니다. 각 `*.md` 파일은 다음 호출 시
|
||||
Researcher의 system prompt에 자동 주입됩니다._
|
||||
|
||||
## 어떻게 채우나요?
|
||||
- 텔레그램에서 `/skill` (직전 산출물 자동 승격)
|
||||
- VS Code 명령 팔레트: `Connect AI: 방금 산출물 → 스킬로 저장`
|
||||
- 직접 이 폴더에 `<주제>.md` 파일을 만들어도 됩니다 (`# 제목` + 본문)
|
||||
|
||||
`README.md` 자체는 system prompt에 주입되지 않습니다.
|
||||
@@ -0,0 +1,12 @@
|
||||
# 📱 영숙 스킬
|
||||
|
||||
_재사용 가능한 패턴 모음. memory.md는 모든 활동의 로그(append-only firehose),
|
||||
이 폴더는 **검증된 패턴만 골라낸 것**입니다. 각 `*.md` 파일은 다음 호출 시
|
||||
영숙의 system prompt에 자동 주입됩니다._
|
||||
|
||||
## 어떻게 채우나요?
|
||||
- 텔레그램에서 `/skill` (직전 산출물 자동 승격)
|
||||
- VS Code 명령 팔레트: `Connect AI: 방금 산출물 → 스킬로 저장`
|
||||
- 직접 이 폴더에 `<주제>.md` 파일을 만들어도 됩니다 (`# 제목` + 본문)
|
||||
|
||||
`README.md` 자체는 system prompt에 주입되지 않습니다.
|
||||
@@ -0,0 +1,12 @@
|
||||
# ✍️ Writer 스킬
|
||||
|
||||
_재사용 가능한 패턴 모음. memory.md는 모든 활동의 로그(append-only firehose),
|
||||
이 폴더는 **검증된 패턴만 골라낸 것**입니다. 각 `*.md` 파일은 다음 호출 시
|
||||
Writer의 system prompt에 자동 주입됩니다._
|
||||
|
||||
## 어떻게 채우나요?
|
||||
- 텔레그램에서 `/skill` (직전 산출물 자동 승격)
|
||||
- VS Code 명령 팔레트: `Connect AI: 방금 산출물 → 스킬로 저장`
|
||||
- 직접 이 폴더에 `<주제>.md` 파일을 만들어도 됩니다 (`# 제목` + 본문)
|
||||
|
||||
`README.md` 자체는 system prompt에 주입되지 않습니다.
|
||||
@@ -0,0 +1,12 @@
|
||||
# 📺 레오 스킬
|
||||
|
||||
_재사용 가능한 패턴 모음. memory.md는 모든 활동의 로그(append-only firehose),
|
||||
이 폴더는 **검증된 패턴만 골라낸 것**입니다. 각 `*.md` 파일은 다음 호출 시
|
||||
레오의 system prompt에 자동 주입됩니다._
|
||||
|
||||
## 어떻게 채우나요?
|
||||
- 텔레그램에서 `/skill` (직전 산출물 자동 승격)
|
||||
- VS Code 명령 팔레트: `Connect AI: 방금 산출물 → 스킬로 저장`
|
||||
- 직접 이 폴더에 `<주제>.md` 파일을 만들어도 됩니다 (`# 제목` + 본문)
|
||||
|
||||
`README.md` 자체는 system prompt에 주입되지 않습니다.
|
||||
@@ -0,0 +1,37 @@
|
||||
{
|
||||
"_migrated": true,
|
||||
"_migrated_v2": true,
|
||||
"secretary": {
|
||||
"activatedAt": "2026-05-13T13:36:16.089Z",
|
||||
"seeded": true
|
||||
},
|
||||
"youtube": {
|
||||
"activatedAt": "2026-05-13T13:36:16.089Z",
|
||||
"seeded": true
|
||||
},
|
||||
"writer": {
|
||||
"activatedAt": "2026-05-13T13:36:16.089Z",
|
||||
"seeded": true
|
||||
},
|
||||
"designer": {
|
||||
"activatedAt": "2026-05-13T13:36:16.089Z",
|
||||
"seeded": true
|
||||
},
|
||||
"instagram": {
|
||||
"activatedAt": "2026-05-13T13:36:16.089Z",
|
||||
"seeded": true
|
||||
},
|
||||
"business": {
|
||||
"activatedAt": "2026-05-13T13:36:16.089Z",
|
||||
"seeded": true
|
||||
},
|
||||
"developer": {
|
||||
"activatedAt": "2026-05-13T13:36:16.089Z",
|
||||
"seeded": true
|
||||
},
|
||||
"researcher": {
|
||||
"activatedAt": "2026-05-13T13:36:16.089Z",
|
||||
"seeded": true
|
||||
},
|
||||
"_migrated_v3": true
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-001
|
||||
title: 창의성의 정의
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [creativity-definition, creative-capacity]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, creativity-definition, creative-capacity]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [확산적 사고, 문제 재정의, 아이디어 평가]
|
||||
---
|
||||
|
||||
# 창의성의 정의
|
||||
|
||||
## 한 줄 통찰
|
||||
> 창의성의 출발점은 번뜩임이 아니라 '새로움'과 '유용성'을 함께 보려는 태도다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 창의성은 새롭고 유용한 조합을 만드는 능력이다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 새로움과 유용성은 동시에 충족되어야 한다.
|
||||
- 개인 능력만이 아니라 평가 맥락과 수용자도 창의성 판단에 관여한다.
|
||||
- 문제 재정의가 해결안 생성보다 먼저다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 아이디어를 평가할 때 새로움과 유용성을 분리해 본다.
|
||||
- 초기 발상 단계와 최종 선택 단계의 기준을 다르게 둔다.
|
||||
- 문제 정의가 빈약하면 해결안 개수를 늘리기보다 질문을 다시 쓴다.
|
||||
|
||||
## 안티패턴
|
||||
- 새로움만 추구해 실제 쓸모를 놓친다.
|
||||
- 유용성만 강조해 평범한 개선에 머문다.
|
||||
- 창의성을 타고나는 재능으로만 간주한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[확산적 사고]]
|
||||
- [[문제 재정의]]
|
||||
- [[아이디어 평가]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-002
|
||||
title: 창의성과 혁신의 차이
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [creativity-vs-innovation]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, creativity-vs-innovation]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [실험 설계, 아이디어 평가, 프로토타입]
|
||||
---
|
||||
|
||||
# 창의성과 혁신의 차이
|
||||
|
||||
## 한 줄 통찰
|
||||
> 좋은 아이디어가 많아도 실행 구조가 없으면 혁신은 일어나지 않는다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 창의성은 아이디어 생성이고 혁신은 그것을 실행 가능한 변화로 만드는 과정이다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 창의성은 가능성의 문을 연다.
|
||||
- 혁신은 자원 배분과 실험 설계를 포함한다.
|
||||
- 조직은 종종 창의성을 칭찬하지만 혁신을 위한 마찰 감수는 회피한다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 발상 회의와 실행 검토 회의를 분리한다.
|
||||
- 아이디어 제출 후 실험 비용과 검증 기간을 함께 잡는다.
|
||||
- 혁신 과제에는 주인과 종료 조건을 둔다.
|
||||
|
||||
## 안티패턴
|
||||
- 아이디어 양산을 혁신으로 착각한다.
|
||||
- 실행 준비가 안 된 아이디어를 무리하게 제품화한다.
|
||||
- 검증 없이 참신함만으로 투자한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[실험 설계]]
|
||||
- [[아이디어 평가]]
|
||||
- [[프로토타입]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-003
|
||||
title: 확산적 사고
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [divergent-thinking]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, divergent-thinking]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [수렴적 사고, 브레인스토밍, 관점 전환]
|
||||
---
|
||||
|
||||
# 확산적 사고
|
||||
|
||||
## 한 줄 통찰
|
||||
> 초기 발상 단계에서는 정답보다 변주 폭이 더 중요하다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 확산적 사고는 하나의 질문에서 다양한 방향의 답을 넓게 생성하는 사고다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 평가를 미루면 아이디어 수가 증가한다.
|
||||
- 형태, 관점, 맥락을 바꾸면 변주 폭이 넓어진다.
|
||||
- 질문 하나를 여러 동사로 다시 쓰면 발상 범위가 커진다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 초기 10분은 판단 금지로 운영한다.
|
||||
- 한 아이디어를 최소 3개의 변형안으로 확장한다.
|
||||
- 질문을 사용자, 운영자, 경쟁자 관점으로 바꿔본다.
|
||||
|
||||
## 안티패턴
|
||||
- 첫 아이디어를 정답처럼 붙든다.
|
||||
- 회의 초반부터 비용 검토로 흐름을 끊는다.
|
||||
- 유사한 표현만 반복하면서 다른 축을 바꾸지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[수렴적 사고]]
|
||||
- [[브레인스토밍]]
|
||||
- [[관점 전환]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-004
|
||||
title: 수렴적 사고
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [convergent-thinking]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, convergent-thinking]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [아이디어 평가, 우선순위화, 실험 설계]
|
||||
---
|
||||
|
||||
# 수렴적 사고
|
||||
|
||||
## 한 줄 통찰
|
||||
> 창의성은 넓히는 힘과 좁히는 힘이 번갈아 작동할 때 완성된다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 수렴적 사고는 넓게 나온 아이디어를 목적과 제약에 맞게 좁히는 과정이다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 기준 없는 수렴은 취향 싸움이 된다.
|
||||
- 목표, 리스크, 자원, 타이밍이 수렴 기준이 된다.
|
||||
- 수렴은 제거가 아니라 우선순위화다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 선정 기준을 토론 전에 문장으로 고정한다.
|
||||
- 아이디어 후보를 3개 이하로 줄인 뒤 상세 비교한다.
|
||||
- 버릴 이유를 기록해 재논의를 막는다.
|
||||
|
||||
## 안티패턴
|
||||
- 좋아 보인다는 느낌만으로 선택한다.
|
||||
- 평가 기준을 회의 중간에 계속 바꾼다.
|
||||
- 발상 단계에서 바로 수렴을 시작한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[아이디어 평가]]
|
||||
- [[우선순위화]]
|
||||
- [[실험 설계]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-005
|
||||
title: 문제 재정의
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [problem-reframing]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, problem-reframing]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [5 Whys, 관점 전환, 제약 설계]
|
||||
---
|
||||
|
||||
# 문제 재정의
|
||||
|
||||
## 한 줄 통찰
|
||||
> 대부분의 막힘은 아이디어 부족보다 질문이 좁거나 잘못됐기 때문에 생긴다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 문제 재정의는 같은 상황을 더 생산적인 질문으로 다시 표현하는 작업이다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 문제 문장을 바꾸면 가능한 해법 집합이 달라진다.
|
||||
- 해결하려는 현상과 실제 해결해야 할 원인은 다를 수 있다.
|
||||
- 좋은 재정의는 제약을 숨기지 않으면서 탐색 범위를 넓힌다.
|
||||
|
||||
## 의사결정 기준
|
||||
- '어떻게 더 빠르게?' 대신 '무엇을 없앨 수 있나?' 같은 다른 질문으로 바꾼다.
|
||||
- 사용자 행동, 시스템 구조, 감정 경험을 각각 문제로 써본다.
|
||||
- 문제 문장을 최소 5개 버전으로 만든 뒤 비교한다.
|
||||
|
||||
## 안티패턴
|
||||
- 관찰된 증상을 문제 그 자체로 취급한다.
|
||||
- 질문을 너무 넓혀 실행 불가능하게 만든다.
|
||||
- 문제 재정의를 하지 않고 솔루션부터 찾는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[5 Whys]]
|
||||
- [[관점 전환]]
|
||||
- [[제약 설계]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-006
|
||||
title: 새로움과 유용성의 균형
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [novelty-utility-balance]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, novelty-utility-balance]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [리스크 관리, 아이디어 평가, 사용자 테스트]
|
||||
---
|
||||
|
||||
# 새로움과 유용성의 균형
|
||||
|
||||
## 한 줄 통찰
|
||||
> 기억에 남는 아이디어는 낯설지만 바로 이해 가능한 지점을 찾는다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 새로움과 유용성은 창의성 평가의 두 축이며 한쪽이 무너지면 완성도가 떨어진다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 새로움은 주목을 만들고 유용성은 지속 사용을 만든다.
|
||||
- 도메인에 따라 두 축의 허용 범위가 다르다.
|
||||
- 초기 콘셉트와 출시 직전 평가는 비율이 달라야 한다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 초기 기획은 새로움 비중을 높이고 출시 직전은 유용성 비중을 높인다.
|
||||
- 참신한 요소마다 사용 맥락을 명시한다.
|
||||
- 핵심 기능은 안정적으로, 주변 경험은 실험적으로 설계한다.
|
||||
|
||||
## 안티패턴
|
||||
- 실험적 요소를 모든 층위에 동시에 넣는다.
|
||||
- 새로움을 핑계로 복잡성을 정당화한다.
|
||||
- 안정성을 이유로 모든 차별점을 제거한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[리스크 관리]]
|
||||
- [[아이디어 평가]]
|
||||
- [[사용자 테스트]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-007
|
||||
title: 작은 창의성과 큰 창의성
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [little-c-big-c]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, little-c-big-c]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [지속 개선, 혁신, 학습 문화]
|
||||
---
|
||||
|
||||
# 작은 창의성과 큰 창의성
|
||||
|
||||
## 한 줄 통찰
|
||||
> 대부분의 팀은 거대한 돌파보다 작은 창의성의 축적에서 성과를 얻는다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 일상적 개선을 만드는 작은 창의성과 분야를 바꾸는 큰 창의성은 다른 시간축과 평가 방식을 가진다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 작은 창의성은 빈도와 지속성이 중요하다.
|
||||
- 큰 창의성은 축적된 전문성과 맥락 전환에서 튀어나온다.
|
||||
- 둘을 같은 기준으로 평가하면 둘 다 망가진다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 회고 때 작은 창의성 개선도 기록한다.
|
||||
- 큰 전환을 기대하는 과제에는 더 긴 실험 기간을 준다.
|
||||
- 작은 개선이 어떤 큰 비전과 연결되는지 적는다.
|
||||
|
||||
## 안티패턴
|
||||
- 모든 과제에서 혁신만 기대한다.
|
||||
- 작은 개선을 하찮게 여겨 학습을 놓친다.
|
||||
- 큰 창의성을 즉각적 성과 지표로만 재단한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[지속 개선]]
|
||||
- [[혁신]]
|
||||
- [[학습 문화]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-008
|
||||
title: 도메인 지식과 창의성
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [domain-knowledge]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, domain-knowledge]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [아날로지, 구조 학습, 전이]
|
||||
---
|
||||
|
||||
# 도메인 지식과 창의성
|
||||
|
||||
## 한 줄 통찰
|
||||
> 엉뚱함은 종종 지식 부족으로도 보이기 때문에 맥락을 이해한 뒤의 변주가 중요하다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 깊은 도메인 지식은 창의성의 적이 아니라 좋은 변형을 만들기 위한 재료다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 도메인 지식은 제약과 가능성을 동시에 알려준다.
|
||||
- 초보자의 신선함과 전문가의 구조 이해를 같이 쓰는 조합이 강하다.
|
||||
- 표면 모방보다 구조 이해가 창의적 전이의 핵심이다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 새 아이디어 전에 해당 분야의 기본 패턴을 정리한다.
|
||||
- 전문가 인터뷰와 외부 사례 조사를 발상 전에 넣는다.
|
||||
- 모방할 때는 결과가 아니라 작동 원리를 먼저 추출한다.
|
||||
|
||||
## 안티패턴
|
||||
- 기초 지식 없이 파격만 노린다.
|
||||
- 전문성 때문에 기존 관행만 반복한다.
|
||||
- 타 분야 사례를 구조 해석 없이 표면만 베낀다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[아날로지]]
|
||||
- [[구조 학습]]
|
||||
- [[전이]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-009
|
||||
title: 창의성과 전문성의 긴장
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [expertise-tension]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, expertise-tension]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [초보자 마인드, 관성 깨기, 실험 설계]
|
||||
---
|
||||
|
||||
# 창의성과 전문성의 긴장
|
||||
|
||||
## 한 줄 통찰
|
||||
> 실력은 높을수록 자동화된 판단이 늘어나므로 의도적 탈자동화가 필요하다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 전문성은 창의성을 강화하기도 하지만 고정관념을 만들기도 한다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 전문가는 빠르게 정답 후보를 좁힌다.
|
||||
- 빠른 판단은 효율적이지만 가능성 손실을 만든다.
|
||||
- 신참의 질문이 전문가의 맹점을 흔들 수 있다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 전문가 리뷰 전에 초안 단계에서 비전문가 관점을 한 번 거친다.
|
||||
- 정답 패턴을 의심하는 질문 리스트를 만든다.
|
||||
- 숙련 과제에도 의도적 변형 실험을 넣는다.
|
||||
|
||||
## 안티패턴
|
||||
- 전문가 의견을 절대 기준으로 삼는다.
|
||||
- 초보자의 신선함만 믿고 검증을 생략한다.
|
||||
- 과거 성공 공식을 무비판적으로 재사용한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[초보자 마인드]]
|
||||
- [[관성 깨기]]
|
||||
- [[실험 설계]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-010
|
||||
title: 창의성과 맥락 의존성
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [contextual-creativity]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, contextual-creativity]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [청중 설계, 스토리텔링, 아이디어 포지셔닝]
|
||||
---
|
||||
|
||||
# 창의성과 맥락 의존성
|
||||
|
||||
## 한 줄 통찰
|
||||
> 아이디어는 진공 상태에서 빛나는 것이 아니라 특정 문제와 청중 안에서 의미를 얻는다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 무엇이 창의적인지는 평가되는 맥락과 사회적 기준에 따라 달라진다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 같은 아이디어도 산업과 시점에 따라 평가가 바뀐다.
|
||||
- 맥락을 읽지 못하면 참신함이 오해나 저항으로 바뀐다.
|
||||
- 창의성은 사회적 수용의 문제와 연결된다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 아이디어 제안서에 대상 사용자와 사용 상황을 항상 적는다.
|
||||
- 참신한 요소가 왜 지금 필요한지 시간 맥락을 설명한다.
|
||||
- 내부자와 외부자 각각에게 피드백을 받는다.
|
||||
|
||||
## 안티패턴
|
||||
- 좋은 아이디어는 어디서나 통한다고 믿는다.
|
||||
- 청중의 이해 수준을 고려하지 않는다.
|
||||
- 맥락 없는 슬로건만 남기고 실행 장면을 제시하지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[청중 설계]]
|
||||
- [[스토리텔링]]
|
||||
- [[아이디어 포지셔닝]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-011
|
||||
title: 창의성의 사회적 평가
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [social-judgment-of-creativity]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, social-judgment-of-creativity]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [스토리텔링, 이해관계자 설득, 프로토타입]
|
||||
---
|
||||
|
||||
# 창의성의 사회적 평가
|
||||
|
||||
## 한 줄 통찰
|
||||
> 평가자가 바뀌면 창의성 판단도 바뀌므로 제안 방식까지 설계해야 한다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 창의성은 개인의 속성인 동시에 공동체가 승인하는 사회적 결과다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 문제 해결 맥락, 제안자의 신뢰, 발표 방식이 평가에 영향을 준다.
|
||||
- 낯선 아이디어는 설명 비용이 높다.
|
||||
- 수용자를 고려한 번역이 없으면 좋은 아이디어도 묻힌다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 아이디어 설명에 비유와 사용 장면을 넣는다.
|
||||
- 초기 파일럿으로 신뢰를 먼저 확보한다.
|
||||
- 평가자 집단별 우려 포인트를 정리한다.
|
||||
|
||||
## 안티패턴
|
||||
- 아이디어가 좋으면 저절로 통과된다고 생각한다.
|
||||
- 이해관계자의 언어로 번역하지 않는다.
|
||||
- 비판을 아이디어 부정으로만 받아들인다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[스토리텔링]]
|
||||
- [[이해관계자 설득]]
|
||||
- [[프로토타입]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-012
|
||||
title: 창의성과 용기
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [creative-courage]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, creative-courage]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [심리적 안전감, 프로토타입, 회고]
|
||||
---
|
||||
|
||||
# 창의성과 용기
|
||||
|
||||
## 한 줄 통찰
|
||||
> 아이디어는 안전한 머릿속에 있을 때보다 불완전한 형태로 공유될 때 더 자란다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 창의성은 새로운 것을 떠올리는 능력뿐 아니라 미완성 아이디어를 밖으로 내놓는 용기까지 포함한다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 조기 공유는 피드백을 부른다.
|
||||
- 수치심과 평판 리스크가 창의적 시도를 억제한다.
|
||||
- 용기는 무모함이 아니라 작은 실험의 반복으로 강화된다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 초안 공유 규칙을 만들어 조롱 비용을 낮춘다.
|
||||
- 실패한 시도도 학습 자산으로 기록한다.
|
||||
- 중간 결과를 보여주는 리듬을 정한다.
|
||||
|
||||
## 안티패턴
|
||||
- 완벽해질 때까지 혼자 붙든다.
|
||||
- 실패 가능성이 있는 아이디어를 아예 입 밖에 내지 않는다.
|
||||
- 용기를 대담한 한 번의 행동으로만 본다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[심리적 안전감]]
|
||||
- [[프로토타입]]
|
||||
- [[회고]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-013
|
||||
title: 창의성과 호기심
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [creative-curiosity]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, creative-curiosity]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [질문 설계, 관찰, 학습 루틴]
|
||||
---
|
||||
|
||||
# 창의성과 호기심
|
||||
|
||||
## 한 줄 통찰
|
||||
> 좋은 창의성은 멋진 답보다 집요한 질문에서 시작된다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 호기심은 창의성의 연료이며 질문 수를 늘리는 방향으로 작동한다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 호기심은 관찰 범위를 넓힌다.
|
||||
- 질문은 숨은 가정을 드러낸다.
|
||||
- 호기심이 약하면 기존 해법 반복으로 수렴한다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 회의 시작을 답 제안보다 질문 수집으로 연다.
|
||||
- 관찰한 현상마다 '왜?'와 '왜 지금?'을 붙인다.
|
||||
- 궁금증 로그를 따로 관리한다.
|
||||
|
||||
## 안티패턴
|
||||
- 질문을 무지의 표시로 여기고 숨긴다.
|
||||
- 정답 찾기에 급해 호기심 탐색을 건너뛴다.
|
||||
- 호기심을 정보 소비로만 대체한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[질문 설계]]
|
||||
- [[관찰]]
|
||||
- [[학습 루틴]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-014
|
||||
title: 창의성과 놀이성
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [playfulness]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, playfulness]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [실험 문화, 브레인스토밍, 제약 기반 창작]
|
||||
---
|
||||
|
||||
# 창의성과 놀이성
|
||||
|
||||
## 한 줄 통찰
|
||||
> 진지한 성과를 만들기 위해서는 일정량의 장난기와 실험성이 필요하다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 놀이성은 실패 비용을 낮추고 예상 밖 조합을 시도하게 만드는 태도다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 놀이는 규칙 안에서 자유를 탐색하게 한다.
|
||||
- 놀이적 태도는 고정된 역할을 잠시 풀어준다.
|
||||
- 웃음과 가벼움은 조기 평가를 늦춘다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 프로토타입 단계에 장난스러운 변형안을 일부러 포함한다.
|
||||
- 아이디어 워크숍에 규칙 기반 게임을 넣는다.
|
||||
- 가벼운 실험과 실제 검증 단계를 분리한다.
|
||||
|
||||
## 안티패턴
|
||||
- 놀이를 비효율로 취급한다.
|
||||
- 놀이성만 남기고 목표를 잃는다.
|
||||
- 초기 발상을 곧바로 공식 문서 형식에 가둔다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[실험 문화]]
|
||||
- [[브레인스토밍]]
|
||||
- [[제약 기반 창작]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-015
|
||||
title: 창의성과 미완성 수용
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [unfinishedness]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, unfinishedness]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [프로토타입, 피드백, 창작 루틴]
|
||||
---
|
||||
|
||||
# 창의성과 미완성 수용
|
||||
|
||||
## 한 줄 통찰
|
||||
> 좋은 아이디어는 처음부터 완결된 형태가 아니라 어색한 조각으로 등장하는 경우가 많다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 미완성 상태를 견디는 능력은 창의 작업을 지속시키는 핵심 역량이다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 조기 판단은 성장 가능성을 자른다.
|
||||
- 미완성을 다룰 때는 판단보다 질문이 유리하다.
|
||||
- 스케치 단계의 언어와 완성 단계의 언어는 달라야 한다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 초안에는 '보완해야 할 지점'을 함께 적는다.
|
||||
- 중간 산출물 리뷰에서 정답 요구를 금지한다.
|
||||
- 완성도보다 방향성을 먼저 본다.
|
||||
|
||||
## 안티패턴
|
||||
- 초안을 완성본처럼 평가한다.
|
||||
- 애매함을 견디지 못해 빨리 결론 내린다.
|
||||
- 미완성을 핑계로 무기한 방치한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[프로토타입]]
|
||||
- [[피드백]]
|
||||
- [[창작 루틴]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-016
|
||||
title: 창의성과 실패 관점
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [failure-and-creativity]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, failure-and-creativity]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [회고, 실험 설계, 심리적 안전감]
|
||||
---
|
||||
|
||||
# 창의성과 실패 관점
|
||||
|
||||
## 한 줄 통찰
|
||||
> 실패를 낙인으로 보는 조직에서는 아무도 새로운 조합을 시도하지 않는다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 실패는 창의성의 반대가 아니라 탐색 비용이다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 탐색 과제는 본질적으로 불확실하다.
|
||||
- 실패 기록은 다음 시도의 지름길이 된다.
|
||||
- 같은 실패를 반복하지 않게 구조화하는 것이 핵심이다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 실패를 결과보다 가설 검증 관점으로 기록한다.
|
||||
- 왜 안 됐는지 조건과 맥락까지 남긴다.
|
||||
- 실패 사례를 다음 브레인스토밍의 금지 패턴으로 사용한다.
|
||||
|
||||
## 안티패턴
|
||||
- 실패를 개인 역량 부족으로만 해석한다.
|
||||
- 실패 기록 없이 감정만 남긴다.
|
||||
- 실패를 두려워해 무난한 안만 고른다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[회고]]
|
||||
- [[실험 설계]]
|
||||
- [[심리적 안전감]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-017
|
||||
title: 창의성과 시간 지평
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [time-horizon]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, time-horizon]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [아이디어 저장소, 리듬 설계, 프로젝트 포트폴리오]
|
||||
---
|
||||
|
||||
# 창의성과 시간 지평
|
||||
|
||||
## 한 줄 통찰
|
||||
> 당장 써먹는 아이디어와 몇 달 후 의미가 드러나는 아이디어를 같은 캘린더로 재단하면 둘 다 죽는다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 창의적 성과는 즉시형과 축적형으로 나뉘며 둘의 관리 방식이 다르다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 단기 창의성은 실행 속도가 중요하다.
|
||||
- 장기 창의성은 숙성 기간과 재방문이 중요하다.
|
||||
- 아이디어 보관 체계가 없으면 장기 아이디어가 사라진다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 단기/장기 아이디어를 다른 보드에 저장한다.
|
||||
- 숙성 중인 아이디어를 재검토하는 주기를 만든다.
|
||||
- 빠른 시도와 느린 축적 과제를 구분한다.
|
||||
|
||||
## 안티패턴
|
||||
- 모든 아이디어에 즉시 ROI를 요구한다.
|
||||
- 좋은 장기 아이디어를 메모 없이 흘려보낸다.
|
||||
- 숙성이라는 말로 실행을 계속 미룬다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[아이디어 저장소]]
|
||||
- [[리듬 설계]]
|
||||
- [[프로젝트 포트폴리오]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-018
|
||||
title: 창의성과 정체성
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [identity-and-creativity]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, identity-and-creativity]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [자기효능감, 습관 형성, 학습 문화]
|
||||
---
|
||||
|
||||
# 창의성과 정체성
|
||||
|
||||
## 한 줄 통찰
|
||||
> 정체성은 결과를 설명하는 꼬리표가 아니라 행동을 유도하는 프레임이다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 자신을 창의적인 사람으로 인식하는 정도는 실제 시도 횟수에 영향을 준다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- '나는 원래 창의적이지 않아'라는 자기 서사는 시도를 줄인다.
|
||||
- 작은 성공 경험이 정체성을 갱신한다.
|
||||
- 정체성은 반복된 증거로 강화된다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 창의적 행동의 작은 증거를 기록한다.
|
||||
- 결과보다 시도 자체를 자기 서사에 포함한다.
|
||||
- 역할 정의에 개선과 실험을 포함한다.
|
||||
|
||||
## 안티패턴
|
||||
- 창의성을 소수 천재의 특권으로 본다.
|
||||
- 한 번의 실패로 자기 정체성을 닫아버린다.
|
||||
- 창의적 행동을 기록하지 않아 기억에서 사라지게 둔다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[자기효능감]]
|
||||
- [[습관 형성]]
|
||||
- [[학습 문화]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-019
|
||||
title: 창의성과 감정
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [emotion-and-creativity]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, emotion-and-creativity]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [에너지 관리, 루틴 설계, 발산과 수렴]
|
||||
---
|
||||
|
||||
# 창의성과 감정
|
||||
|
||||
## 한 줄 통찰
|
||||
> 기분은 창의성의 부수적 요소가 아니라 사고 탐색 범위를 흔드는 조건이다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 감정 상태는 발상 폭과 평가 엄격도에 다른 영향을 준다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 긍정 정서는 연상 범위를 넓히기 쉽다.
|
||||
- 불안은 탐색을 줄이지만 세부 점검에는 유리할 수 있다.
|
||||
- 감정 조절 없이 창의 작업을 하면 리듬이 흔들린다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 발산과 수렴을 다른 시간대에 배치한다.
|
||||
- 창의 작업 전 감정 상태를 짧게 체크한다.
|
||||
- 감정이 가라앉았을 때는 평가 작업으로 전환한다.
|
||||
|
||||
## 안티패턴
|
||||
- 모든 감정 상태에서 같은 종류의 창작을 강요한다.
|
||||
- 불안을 무조건 나쁜 것으로만 본다.
|
||||
- 감정 관리 없이 창의성만 의지로 해결하려 한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[에너지 관리]]
|
||||
- [[루틴 설계]]
|
||||
- [[발산과 수렴]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-020
|
||||
title: 창의성의 윤리
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [ethics-of-creativity]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, foundations, ethics-of-creativity]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [책임 있는 혁신, 출처 표기, 리스크 시나리오]
|
||||
---
|
||||
|
||||
# 창의성의 윤리
|
||||
|
||||
## 한 줄 통찰
|
||||
> 참신함이 강할수록 윤리 검토도 더 정교해야 한다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 창의성은 무엇을 새롭게 만들 수 있는가뿐 아니라 무엇을 만들어도 되는가의 질문을 함께 품어야 한다.
|
||||
- 지식 축: 창의성의 정체와 기본 원리를 이해하는 기초 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 새로움은 예상치 못한 부작용을 동반한다.
|
||||
- 타인의 아이디어, 문화, 데이터 사용에는 책임이 따른다.
|
||||
- 영향 범위를 묻는 질문이 창의성의 성숙도를 높인다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 새로운 아이디어마다 영향받는 사람을 적는다.
|
||||
- 차용과 표절의 경계를 출처로 명확히 남긴다.
|
||||
- 잠재적 오용 시나리오를 함께 검토한다.
|
||||
|
||||
## 안티패턴
|
||||
- 참신함을 이유로 윤리 검토를 생략한다.
|
||||
- 다른 문화의 표현을 맥락 없이 소비한다.
|
||||
- 부작용을 출시 후 문제로만 남긴다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[책임 있는 혁신]]
|
||||
- [[출처 표기]]
|
||||
- [[리스크 시나리오]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-021
|
||||
title: 연상 작용
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [association]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, association]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [메타포, 비유, 원격 연상]
|
||||
---
|
||||
|
||||
# 연상 작용
|
||||
|
||||
## 한 줄 통찰
|
||||
> 창의적 도약은 무에서 나오는 것이 아니라 서로 무관해 보이던 조각이 맞물릴 때 일어난다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 연상 작용은 멀리 떨어진 개념 사이에서 연결 고리를 발견하는 창의성의 핵심 메커니즘이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 연상은 기억 네트워크의 이동이다.
|
||||
- 비슷한 것끼리만 묶는 습관을 넘어서야 한다.
|
||||
- 메타포는 강력한 연상 도구다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 하나의 개념에 대해 기능, 감정, 물성, 맥락으로 각각 연상해 본다.
|
||||
- 서로 멀어 보이는 두 분야를 강제로 한 문장에 넣어본다.
|
||||
- 연상 로그를 남겨 다음 발상의 재료로 쓴다.
|
||||
|
||||
## 안티패턴
|
||||
- 익숙한 연상만 반복한다.
|
||||
- 연상 결과를 검증 없이 바로 실행한다.
|
||||
- 연상이 산만함으로 흐를 때 정리 장치가 없다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[메타포]]
|
||||
- [[비유]]
|
||||
- [[원격 연상]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-022
|
||||
title: 원격 연상
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [remote-association]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, remote-association]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [아날로지, 메타포, 프로토타입]
|
||||
---
|
||||
|
||||
# 원격 연상
|
||||
|
||||
## 한 줄 통찰
|
||||
> 참신함은 대체로 가까운 조합보다 먼 조합에서 나온다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 원격 연상은 거리가 먼 개념을 연결해 더 강한 새로움을 만드는 방식이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 멀리 떨어진 개념 연결은 고정관념을 깨기 쉽다.
|
||||
- 낯선 조합일수록 번역 비용이 크다.
|
||||
- 원격 연상은 설명 구조와 함께 가야 힘을 얻는다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 두 개의 전혀 다른 산업을 골라 공통 구조를 찾는다.
|
||||
- 아이디어 설명에 연결의 이유를 반드시 적는다.
|
||||
- 먼 조합을 바로 제품화하지 말고 스케치로 검증한다.
|
||||
|
||||
## 안티패턴
|
||||
- 먼 조합이라는 이유만으로 우수하다고 착각한다.
|
||||
- 설명 없이 기괴함만 남긴다.
|
||||
- 현실 제약을 무시한 채 과장한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[아날로지]]
|
||||
- [[메타포]]
|
||||
- [[프로토타입]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-023
|
||||
title: 작업 기억과 창의성
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [working-memory]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, working-memory]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [외부화, 시각화, 정보 구조]
|
||||
---
|
||||
|
||||
# 작업 기억과 창의성
|
||||
|
||||
## 한 줄 통찰
|
||||
> 머릿속에 유지할 수 있는 요소 수가 적으면 복합적 재구성이 어렵다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 작업 기억은 여러 조각을 동시에 붙잡아 조합할 수 있게 해 창의성에 기여한다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 작업 기억이 충분하면 비교와 조합이 쉬워진다.
|
||||
- 외부화 도구는 작업 기억 부담을 줄여준다.
|
||||
- 복잡한 창의 작업은 보조 메모를 필요로 한다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 화이트보드나 카드로 요소를 외부화한다.
|
||||
- 동시에 비교할 핵심 변수 수를 제한한다.
|
||||
- 길고 복잡한 문제는 시각적으로 쪼개서 본다.
|
||||
|
||||
## 안티패턴
|
||||
- 모든 요소를 머리로만 처리하려 한다.
|
||||
- 외부화 없이 긴 회의를 반복한다.
|
||||
- 작업 기억 한계를 의지 부족으로 오해한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[외부화]]
|
||||
- [[시각화]]
|
||||
- [[정보 구조]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-024
|
||||
title: 인지적 유연성
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [cognitive-flexibility]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, cognitive-flexibility]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [관점 전환, 역할 바꾸기, 문제 재정의]
|
||||
---
|
||||
|
||||
# 인지적 유연성
|
||||
|
||||
## 한 줄 통찰
|
||||
> 막힌 사고를 푸는 핵심은 더 오래 생각하는 것이 아니라 틀을 바꾸는 것이다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 인지적 유연성은 한 관점에 고정되지 않고 규칙과 해석 틀을 바꿀 수 있는 능력이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 유연성은 전환 비용을 감수하는 능력이다.
|
||||
- 서로 다른 규칙 체계를 오갈수록 발상이 넓어진다.
|
||||
- 관점 전환은 훈련 가능한 기술이다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 같은 문제를 최소 세 가지 프레임으로 다시 설명한다.
|
||||
- 반대 역할을 맡아보는 토론을 한다.
|
||||
- 정답이 안 나올 때는 질문의 단위를 바꾼다.
|
||||
|
||||
## 안티패턴
|
||||
- 한 번 정한 프레임을 끝까지 고수한다.
|
||||
- 전환을 우왕좌왕으로 오해한다.
|
||||
- 관점 전환 없이 같은 논리만 더 세게 반복한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[관점 전환]]
|
||||
- [[역할 바꾸기]]
|
||||
- [[문제 재정의]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-025
|
||||
title: 고정관념과 기능 고착
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [functional-fixedness]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, functional-fixedness]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [제약 깨기, 문제 재정의, 아날로지]
|
||||
---
|
||||
|
||||
# 고정관념과 기능 고착
|
||||
|
||||
## 한 줄 통찰
|
||||
> 창의적 도약은 사물의 원래 이름보다 가능한 역할을 다시 묻는 순간 시작된다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 기능 고착은 대상과 개념을 익숙한 용도로만 보는 인지적 제약이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 이름이 용도를 고정한다.
|
||||
- 역할을 분리해 보면 새로운 사용처가 보인다.
|
||||
- 고착은 숙련될수록 강해질 수 있다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 사물 이름을 가리고 기능 목록만 적어본다.
|
||||
- 문제를 해결할 수 있는 역할을 먼저 정의한다.
|
||||
- 기존 도구의 주변 기능을 따로 탐색한다.
|
||||
|
||||
## 안티패턴
|
||||
- 사물을 사전적 용도로만 본다.
|
||||
- 기존 포맷을 절대 규칙처럼 여긴다.
|
||||
- 같은 실패를 하면서도 도구를 바꾸지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[제약 깨기]]
|
||||
- [[문제 재정의]]
|
||||
- [[아날로지]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-026
|
||||
title: 잠복기 효과
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [incubation-effect]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, incubation-effect]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [휴식 설계, 에너지 관리, 통찰]
|
||||
---
|
||||
|
||||
# 잠복기 효과
|
||||
|
||||
## 한 줄 통찰
|
||||
> 억지로 붙드는 시간보다 적절한 거리두기가 더 좋은 연결을 가져올 때가 많다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 잠복기는 문제에서 잠시 떨어져 있을 때 무의식적 재조합이 일어나는 현상이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 집중 후 휴식이 재구성에 도움을 준다.
|
||||
- 완전한 방치는 아니고 문제 흔적이 남아 있어야 한다.
|
||||
- 잠복기는 특히 막힘과 과고착 상태에서 유용하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 막힐 때 작업을 끊고 다른 종류의 활동으로 전환한다.
|
||||
- 잠복기 전 핵심 질문을 한 줄로 남긴다.
|
||||
- 산책이나 반복 운동 같은 저강도 활동을 활용한다.
|
||||
|
||||
## 안티패턴
|
||||
- 잠복기를 게으름으로만 본다.
|
||||
- 아예 문제를 잊고 재진입 장치 없이 떠난다.
|
||||
- 쉬기만 하고 다시 돌아오지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[휴식 설계]]
|
||||
- [[에너지 관리]]
|
||||
- [[통찰]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-027
|
||||
title: 통찰의 순간
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [insight-moment]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, insight-moment]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [잠복기, 문제 재정의, 가설 검증]
|
||||
---
|
||||
|
||||
# 통찰의 순간
|
||||
|
||||
## 한 줄 통찰
|
||||
> 유레카는 우연처럼 보이지만 구조적으로 준비된 우연일 때가 많다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 통찰은 갑작스럽게 느껴지지만 대개는 축적된 탐색과 잠복기의 결과다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 통찰은 문제 표상이 바뀔 때 생기기 쉽다.
|
||||
- 갑작스러운 해답은 사전 탐색 없이는 드물다.
|
||||
- 통찰 후에는 검증 단계가 반드시 따라와야 한다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 막연한 느낌을 바로 메모한다.
|
||||
- 통찰이 왔을 때 왜 가능해졌는지 조건을 추적한다.
|
||||
- 통찰을 실험 가능한 가설로 바꾼다.
|
||||
|
||||
## 안티패턴
|
||||
- 통찰을 신비화해 재현 불가능한 것으로 만든다.
|
||||
- 번뜩임을 검증 없이 진실로 받아들인다.
|
||||
- 통찰 전 단계의 탐색 과정을 기록하지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[잠복기]]
|
||||
- [[문제 재정의]]
|
||||
- [[가설 검증]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-028
|
||||
title: 초보자 마인드
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [beginner-mind]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, beginner-mind]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [전문성의 긴장, 질문 설계, 관찰]
|
||||
---
|
||||
|
||||
# 초보자 마인드
|
||||
|
||||
## 한 줄 통찰
|
||||
> 창의성은 많이 아는 것과 새롭게 보는 것을 동시에 잡아야 커진다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 초보자 마인드는 익숙한 분야에서도 당연한 것을 다시 묻는 태도다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 초보자 질문은 숨은 규칙을 드러낸다.
|
||||
- 기존 전문성에 균열을 낸다.
|
||||
- 겸손과 관찰이 핵심 조건이다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 당연한 절차를 단계별로 다시 설명해 본다.
|
||||
- 새 팀원에게 설명하는 문장으로 시스템을 풀어본다.
|
||||
- 왜 이렇게 해왔는지 출발 이유를 묻는다.
|
||||
|
||||
## 안티패턴
|
||||
- 모르는 척만 하고 실제로는 관찰하지 않는다.
|
||||
- 기초를 무시한 채 새로움만 과장한다.
|
||||
- 초보자 관점을 비전문성으로만 치부한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[전문성의 긴장]]
|
||||
- [[질문 설계]]
|
||||
- [[관찰]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-029
|
||||
title: 패턴 인식
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [pattern-recognition]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, pattern-recognition]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [구조 전이, 사례 분석, 아날로지]
|
||||
---
|
||||
|
||||
# 패턴 인식
|
||||
|
||||
## 한 줄 통찰
|
||||
> 창의성은 무규칙적 발산이 아니라 패턴을 다르게 재배열하는 과정이기도 하다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 패턴 인식은 반복되는 구조를 발견해 새로운 조합의 재료로 쓰는 능력이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 반복 구조를 읽으면 전이가 쉬워진다.
|
||||
- 패턴은 형식과 리듬, 원인 구조 모두에 존재한다.
|
||||
- 패턴 인식은 모방과 혁신의 연결 다리가 된다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 성공 사례에서 표면 요소와 구조 요소를 분리한다.
|
||||
- 여러 사례의 공통 패턴을 표로 정리한다.
|
||||
- 패턴을 다른 분야에 옮겨본다.
|
||||
|
||||
## 안티패턴
|
||||
- 표면적 유사성만 보고 같은 패턴으로 오해한다.
|
||||
- 패턴을 정답처럼 굳혀 변형하지 않는다.
|
||||
- 구조를 읽지 않고 결과만 베낀다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[구조 전이]]
|
||||
- [[사례 분석]]
|
||||
- [[아날로지]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-030
|
||||
title: 비유적 사고
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [metaphorical-thinking]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, metaphorical-thinking]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [아날로지, 스토리텔링, 설득]
|
||||
---
|
||||
|
||||
# 비유적 사고
|
||||
|
||||
## 한 줄 통찰
|
||||
> 강한 비유는 설명 도구일 뿐 아니라 아이디어 엔진이 된다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 비유는 낯선 개념을 익숙한 구조로 번역해 이해와 발상을 동시에 돕는다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 비유는 구조 대응을 만든다.
|
||||
- 좋은 비유는 핵심만 옮기고 불필요한 속성은 버린다.
|
||||
- 팀 내 공통 비유는 빠른 정렬을 만든다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 문제를 다른 세계의 시스템으로 설명해 본다.
|
||||
- 비유에서 가져올 요소와 버릴 요소를 구분한다.
|
||||
- 핵심 구조가 같은지 먼저 확인한다.
|
||||
|
||||
## 안티패턴
|
||||
- 비유를 문자 그대로 적용한다.
|
||||
- 멋진 표현만 남고 구조 대응이 없다.
|
||||
- 비유 하나에 집착해 다른 해석을 막는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[아날로지]]
|
||||
- [[스토리텔링]]
|
||||
- [[설득]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-031
|
||||
title: 추상화 능력
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [abstraction]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, abstraction]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [구조 전이, 모델링, 문제 재정의]
|
||||
---
|
||||
|
||||
# 추상화 능력
|
||||
|
||||
## 한 줄 통찰
|
||||
> 한 단계 위에서 구조를 볼 수 있을 때 다른 도메인으로 아이디어를 옮길 수 있다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 추상화는 구체적 사례에서 공통 구조를 뽑아내는 능력이며 창의적 전이를 가능하게 한다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 추상화는 본질과 부차를 나눈다.
|
||||
- 적절한 추상화 수준이 전이 가능성을 좌우한다.
|
||||
- 너무 낮으면 모방이고 너무 높으면 공허하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 사례를 보고 '이건 결국 무엇의 문제인가'를 묻는다.
|
||||
- 한 문장으로 구조를 설명한 뒤 다른 분야에 적용한다.
|
||||
- 추상화 후 다시 구체화할 장면을 정한다.
|
||||
|
||||
## 안티패턴
|
||||
- 사례 디테일에 매몰된다.
|
||||
- 너무 추상적이라 실행 장면이 사라진다.
|
||||
- 추상화 결과를 다시 현실에 내려오지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[구조 전이]]
|
||||
- [[모델링]]
|
||||
- [[문제 재정의]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-032
|
||||
title: 개념적 혼합
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [conceptual-blending]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, conceptual-blending]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [원격 연상, 브랜드 콘셉트, 서사 설계]
|
||||
---
|
||||
|
||||
# 개념적 혼합
|
||||
|
||||
## 한 줄 통찰
|
||||
> 강한 콘셉트는 둘 이상의 익숙한 프레임이 예상 밖 방식으로 합쳐질 때 자주 생긴다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 개념적 혼합은 서로 다른 개념 공간의 요소를 섞어 새로운 의미를 만드는 과정이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 혼합은 선택과 제거를 동반한다.
|
||||
- 두 원천 개념의 장점과 충돌 지점을 함께 봐야 한다.
|
||||
- 브랜드, 제품, 서사 모두에 적용 가능하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 두 개념의 규칙, 감정, 사용 장면을 각각 적고 교차한다.
|
||||
- 혼합 후 충돌하는 부분을 따로 해결한다.
|
||||
- 핵심 사용자가 이해할 수 있는 한 문장으로 다시 번역한다.
|
||||
|
||||
## 안티패턴
|
||||
- 아무거나 섞으면 새롭다고 착각한다.
|
||||
- 충돌 지점을 무시한다.
|
||||
- 혼합 결과를 설명 가능한 문장으로 정리하지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[원격 연상]]
|
||||
- [[브랜드 콘셉트]]
|
||||
- [[서사 설계]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-033
|
||||
title: 기억의 재조합
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [memory-recombination]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, memory-recombination]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [지식 관리, 연상 작용, 전이]
|
||||
---
|
||||
|
||||
# 기억의 재조합
|
||||
|
||||
## 한 줄 통찰
|
||||
> 완전히 새로운 생각보다 오래 저장된 조각의 낯선 재배열이 더 현실적인 창의 경로다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 창의성은 기억 속 조각들이 새로운 맥락에서 다시 조합될 때 자주 발생한다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 다양한 기억 재료가 많을수록 조합 폭이 넓다.
|
||||
- 경험의 메모화가 재조합 가능성을 높인다.
|
||||
- 기억은 현재 문제에 맞게 편집되며 호출된다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 인상 깊은 사례를 짧게라도 저장한다.
|
||||
- 서로 다른 프로젝트의 메모를 다시 엮어본다.
|
||||
- 기억을 주제보다 구조 중심으로 태깅한다.
|
||||
|
||||
## 안티패턴
|
||||
- 좋은 사례를 보고도 저장하지 않는다.
|
||||
- 메모를 쌓기만 하고 재방문하지 않는다.
|
||||
- 기억을 단순 보관으로만 취급한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[지식 관리]]
|
||||
- [[연상 작용]]
|
||||
- [[전이]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-034
|
||||
title: 인지 부하와 창의성
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [cognitive-load]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, cognitive-load]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [외부화, 회의 설계, 정보 구조]
|
||||
---
|
||||
|
||||
# 인지 부하와 창의성
|
||||
|
||||
## 한 줄 통찰
|
||||
> 창의적 사고를 원한다면 문제를 어렵게 만드는 것보다 머릿속 혼잡을 줄이는 것이 먼저일 수 있다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 과도한 인지 부하는 발상 폭을 줄이고 무난한 선택으로 수렴하게 만든다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 과부하는 탐색보다 생존 모드 판단을 유도한다.
|
||||
- 정보 정리와 외부화는 창의성의 준비 작업이다.
|
||||
- 시간 압박은 부하를 증폭시킨다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 정보를 한 화면에 모두 올리지 않는다.
|
||||
- 핵심 변수만 남기고 나머지는 접는다.
|
||||
- 창의 회의 전에는 자료를 요약해 제공한다.
|
||||
|
||||
## 안티패턴
|
||||
- 과한 정보량을 깊이로 착각한다.
|
||||
- 정리되지 않은 입력을 한꺼번에 던진다.
|
||||
- 창의성이 떨어지는 이유를 능력 부족으로만 본다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[외부화]]
|
||||
- [[회의 설계]]
|
||||
- [[정보 구조]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-035
|
||||
title: 주의 전환
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [attention-switching]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, attention-switching]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [관찰, 시선 설계, 문제 재정의]
|
||||
---
|
||||
|
||||
# 주의 전환
|
||||
|
||||
## 한 줄 통찰
|
||||
> 새로움은 종종 새로운 답보다 기존 장면에서 다른 요소를 보는 데서 시작된다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 주의 전환은 같은 대상 안에서도 어떤 요소를 전면에 올릴지 바꾸는 능력이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 주의는 선택적이며 제한적이다.
|
||||
- 배경이었던 요소를 전경으로 올리면 해석이 바뀐다.
|
||||
- 주의 전환은 관찰 훈련으로 강화된다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 대상을 기능, 감정, 리스크, 아름다움 등 다른 렌즈로 본다.
|
||||
- 같은 인터페이스를 초보자와 숙련자 시선으로 각각 훑는다.
|
||||
- 관찰 체크리스트를 바꿔가며 본다.
|
||||
|
||||
## 안티패턴
|
||||
- 익숙한 관심사만 반복해서 본다.
|
||||
- 중요한 배경 요소를 늘 무시한다.
|
||||
- 주의 전환 없이 더 오래 보기만 한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[관찰]]
|
||||
- [[시선 설계]]
|
||||
- [[문제 재정의]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-036
|
||||
title: 무의식적 처리
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [unconscious-processing]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, unconscious-processing]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [잠복기, 수면, 통찰]
|
||||
---
|
||||
|
||||
# 무의식적 처리
|
||||
|
||||
## 한 줄 통찰
|
||||
> 늘 생각해야만 답이 나오는 것은 아니며, 덜 붙들수록 연결이 생기기도 한다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 무의식적 처리는 의식적으로 붙잡지 않는 동안에도 문제 조각이 재배열되는 현상이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 장기 기억과 연상이 조용히 작동한다.
|
||||
- 수면과 휴식이 중요한 이유다.
|
||||
- 무의식은 자료가 충분할 때 더 잘 돕는다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 집중 탐색 후 휴식 단계를 계획에 넣는다.
|
||||
- 잠들기 전 핵심 질문을 메모한다.
|
||||
- 아침 첫 생각을 기록한다.
|
||||
|
||||
## 안티패턴
|
||||
- 준비 없이 휴식만 기대한다.
|
||||
- 무의식을 핑계로 구조적 탐색을 생략한다.
|
||||
- 떠오른 생각을 기록하지 않아 사라지게 둔다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[잠복기]]
|
||||
- [[수면]]
|
||||
- [[통찰]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-037
|
||||
title: 다중 관점 보유
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [multiple-perspectives]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, multiple-perspectives]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [이해관계자 분석, 균형 설계, 수렴적 사고]
|
||||
---
|
||||
|
||||
# 다중 관점 보유
|
||||
|
||||
## 한 줄 통찰
|
||||
> 좋은 아이디어는 종종 서로 충돌하는 관점을 한 화면에 올려둘 때 나온다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 여러 관점을 동시에 품는 능력은 창의성과 복합 문제 해결력의 공통 기반이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 이해관계자마다 성공 조건이 다르다.
|
||||
- 관점 충돌은 문제의 입체감을 높인다.
|
||||
- 관점 병치는 긴장을 만들고 창의 해법을 자극한다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 사용자, 운영자, 재무, 기술 관점을 한 표에 놓는다.
|
||||
- 관점별로 가장 싫어할 지점을 먼저 적는다.
|
||||
- 한 아이디어의 수혜자와 피해자를 함께 본다.
|
||||
|
||||
## 안티패턴
|
||||
- 내 관점만 보편적이라고 믿는다.
|
||||
- 관점 차이를 갈등으로만 본다.
|
||||
- 관점 병치 없이 단일 최적해만 찾는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[이해관계자 분석]]
|
||||
- [[균형 설계]]
|
||||
- [[수렴적 사고]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-038
|
||||
title: 개방성과 창의성
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [openness]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, openness]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [탐색, 자료 수집, 연상 작용]
|
||||
---
|
||||
|
||||
# 개방성과 창의성
|
||||
|
||||
## 한 줄 통찰
|
||||
> 닫힌 시스템에는 안전함이 있지만, 개방성 없이는 재료 유입이 줄어든다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 새로운 경험과 아이디어에 대한 개방성은 창의적 조합 가능성을 높이는 성향이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 개방성은 낯섦을 견디는 태도다.
|
||||
- 새로운 입력이 많을수록 연상 재료가 늘어난다.
|
||||
- 무분별한 수집과는 다르게 선별적 개방이 중요하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 정기적으로 낯선 분야를 탐색한다.
|
||||
- 좋아하지 않는 스타일도 구조적으로 분석한다.
|
||||
- 새 입력을 바로 판단하지 않고 일단 저장한다.
|
||||
|
||||
## 안티패턴
|
||||
- 익숙한 취향 안에서만 자료를 소비한다.
|
||||
- 개방성을 비판 없음으로 오해한다.
|
||||
- 수집만 하고 연결하지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[탐색]]
|
||||
- [[자료 수집]]
|
||||
- [[연상 작용]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-039
|
||||
title: 자기 검열
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [self-censorship]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, self-censorship]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [완벽주의, 심리적 안전감, 발산 단계]
|
||||
---
|
||||
|
||||
# 자기 검열
|
||||
|
||||
## 한 줄 통찰
|
||||
> 창의성의 적은 아이디어 부족이 아니라 너무 이른 내적 평가일 때가 많다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 자기 검열은 아이디어가 자라기 전에 머릿속에서 먼저 삭제되는 현상이다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 자기 검열은 평판 불안과 완벽주의에서 자주 온다.
|
||||
- 초기 발상 단계에서는 품질보다 양이 중요하다.
|
||||
- 검열을 늦추는 규칙이 필요하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 브레인스토밍 초반에는 반박 금지 규칙을 둔다.
|
||||
- 어설픈 표현이라도 임시 저장한다.
|
||||
- 초안 단계와 최종 검토 단계를 구분한다.
|
||||
|
||||
## 안티패턴
|
||||
- 생각이 떠오르자마자 불가능 판정을 내린다.
|
||||
- 표현이 서툴다는 이유로 아이디어를 버린다.
|
||||
- 비판을 전부 악으로 보고 후반 검증까지 막는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[완벽주의]]
|
||||
- [[심리적 안전감]]
|
||||
- [[발산 단계]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-040
|
||||
title: 창의성과 회복탄력성
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [resilience]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, cognition, resilience]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [실패 관점, 정체성, 루틴 설계]
|
||||
---
|
||||
|
||||
# 창의성과 회복탄력성
|
||||
|
||||
## 한 줄 통찰
|
||||
> 창의적 사람은 상처받지 않는 사람이 아니라 상처 뒤에 다시 재조합하는 사람에 가깝다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 회복탄력성은 거절과 실패 뒤에도 다시 시도하게 만드는 창의성의 지속 장치다.
|
||||
- 지식 축: 인지 과정과 정신 작동을 통해 창의성이 어떻게 생기는지 다루는 지식
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 거절은 탐색 과정의 일부다.
|
||||
- 감정 회복 속도가 시도 빈도를 좌우한다.
|
||||
- 피드백을 자아와 분리할수록 회복이 쉬워진다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 거절 후 바로 수정 가능한 요소와 아닌 요소를 나눈다.
|
||||
- 회복 시간을 미리 일정에 넣는다.
|
||||
- 시도 횟수를 성과와 별도로 기록한다.
|
||||
|
||||
## 안티패턴
|
||||
- 한 번의 거절을 능력 전체의 부정으로 받아들인다.
|
||||
- 실패 직후 과도한 자기비난에 빠진다.
|
||||
- 회복 없이 계속 밀어붙여 소진된다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[실패 관점]]
|
||||
- [[정체성]]
|
||||
- [[루틴 설계]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-041
|
||||
title: 관찰의 해상도
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [observation-resolution]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, observation-resolution]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [필드 리서치, 행동 관찰, 문제 정의]
|
||||
---
|
||||
|
||||
# 관찰의 해상도
|
||||
|
||||
## 한 줄 통찰
|
||||
> 대충 본 세계에서는 대충 결합한 아이디어만 나온다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 관찰의 해상도는 문제와 재료를 얼마나 세밀하게 볼 수 있는지를 뜻한다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 높은 해상도는 미세한 차이와 패턴을 포착한다.
|
||||
- 세밀한 관찰은 표면 인상과 실제 작동을 구분하게 한다.
|
||||
- 관찰력은 느리게 보는 습관에서 올라간다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 하나의 장면을 기능, 감정, 동선으로 나눠 기록한다.
|
||||
- 익숙한 제품도 첫 사용자처럼 관찰한다.
|
||||
- 메모에 형용사보다 구체적 행동을 남긴다.
|
||||
|
||||
## 안티패턴
|
||||
- 느낌만 남기고 사실을 기록하지 않는다.
|
||||
- 한 번 훑고 다 봤다고 착각한다.
|
||||
- 관찰 없이 해석부터 시작한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[필드 리서치]]
|
||||
- [[행동 관찰]]
|
||||
- [[문제 정의]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-042
|
||||
title: 질문 수집
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [question-collection]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, question-collection]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [호기심, 문제 재정의, 지식 관리]
|
||||
---
|
||||
|
||||
# 질문 수집
|
||||
|
||||
## 한 줄 통찰
|
||||
> 좋은 질문 저장소는 미래의 아이디어 저장소이기도 하다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 질문 수집은 답보다 질문을 자산으로 저장하는 창의적 준비 행위다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 질문은 미해결 긴장을 보존한다.
|
||||
- 잘 쓴 질문은 다른 문제에도 재사용된다.
|
||||
- 질문이 많을수록 문제 재정의가 쉬워진다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 회의록에 답 외에 질문도 남긴다.
|
||||
- 궁금증이 생길 때 바로 기록한다.
|
||||
- 질문을 주제별이 아니라 긴장 유형별로 묶는다.
|
||||
|
||||
## 안티패턴
|
||||
- 답만 기록하고 질문은 버린다.
|
||||
- 질문을 미정 상태로 두는 것을 불편해한다.
|
||||
- 질문을 너무 빨리 닫아버린다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[호기심]]
|
||||
- [[문제 재정의]]
|
||||
- [[지식 관리]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-043
|
||||
title: 아이디어 재료 수집
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [creative-inputs]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, creative-inputs]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [지식 관리, 연상 작용, 전이]
|
||||
---
|
||||
|
||||
# 아이디어 재료 수집
|
||||
|
||||
## 한 줄 통찰
|
||||
> 빈 머리에서 짜내려 하기보다 풍부한 재료를 축적하는 편이 훨씬 안정적이다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 창의성은 입력 품질의 영향을 강하게 받으므로 재료 수집은 본 작업의 일부다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 입력의 다양성이 조합 폭을 만든다.
|
||||
- 자료는 양보다 분류와 회수가 중요하다.
|
||||
- 수집 단계와 해석 단계가 모두 필요하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 흥미로운 사례를 구조 메모와 함께 저장한다.
|
||||
- 분야별, 감정별, 형식별로 재료를 분류한다.
|
||||
- 정기적으로 수집함을 재방문한다.
|
||||
|
||||
## 안티패턴
|
||||
- 자료를 읽기만 하고 저장하지 않는다.
|
||||
- 수집만 하고 조합 단계가 없다.
|
||||
- 한 분야 자료에만 갇힌다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[지식 관리]]
|
||||
- [[연상 작용]]
|
||||
- [[전이]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-044
|
||||
title: 관찰 일지
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [observation-journal]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, observation-journal]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [시각 노트, 현장 조사, 자료 수집]
|
||||
---
|
||||
|
||||
# 관찰 일지
|
||||
|
||||
## 한 줄 통찰
|
||||
> 기억은 흐려지지만 관찰 일지는 재료를 다시 조합할 수 있게 남겨준다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 관찰 일지는 일상의 미세한 차이와 패턴을 창의 재료로 보존하는 도구다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 작은 관찰이 큰 아이디어의 씨앗이 된다.
|
||||
- 정기 기록은 감각의 해상도를 높인다.
|
||||
- 나중에 의미가 생길 재료를 먼저 붙잡아 둔다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 하루에 하나라도 흥미로운 장면을 기록한다.
|
||||
- 관찰과 해석을 구분해 쓴다.
|
||||
- 사진, 스케치, 문장을 함께 사용한다.
|
||||
|
||||
## 안티패턴
|
||||
- 기억에 남을 것이라 믿고 기록하지 않는다.
|
||||
- 관찰 없이 감상만 남긴다.
|
||||
- 정기성이 없어 재료가 축적되지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[시각 노트]]
|
||||
- [[현장 조사]]
|
||||
- [[자료 수집]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-045
|
||||
title: 스케치 사고
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [sketch-thinking]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, sketch-thinking]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [외부화, 프로토타입, 정보 구조]
|
||||
---
|
||||
|
||||
# 스케치 사고
|
||||
|
||||
## 한 줄 통찰
|
||||
> 선을 대충 그리는 순간 머릿속에서만 맴돌던 구조가 밖으로 나온다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 스케치는 완성보다 탐색을 돕는 사고 도구다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 스케치는 빠른 외부화다.
|
||||
- 불완전함이 수정 가능성을 높인다.
|
||||
- 말보다 그림이 구조를 더 빨리 드러낼 수 있다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 아이디어를 문장만 아니라 도형과 흐름으로도 표현한다.
|
||||
- 여러 버전의 작은 스케치를 만든다.
|
||||
- 잘 그리는 것보다 빨리 그리는 것을 우선한다.
|
||||
|
||||
## 안티패턴
|
||||
- 스케치를 최종 산출물처럼 꾸민다.
|
||||
- 그림 실력 부족을 이유로 스케치를 피한다.
|
||||
- 텍스트 설명만으로 구조를 붙잡으려 한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[외부화]]
|
||||
- [[프로토타입]]
|
||||
- [[정보 구조]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-046
|
||||
title: 시각 노트
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [visual-notes]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, visual-notes]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [스케치 사고, 마인드맵, 정보 구조]
|
||||
---
|
||||
|
||||
# 시각 노트
|
||||
|
||||
## 한 줄 통찰
|
||||
> 시각화는 기억을 돕는 것을 넘어 새로운 연결을 드러낸다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 시각 노트는 언어와 도형을 함께 써 사고를 압축하고 확장하는 기록 방식이다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 공간 배치는 관계 인식을 돕는다.
|
||||
- 아이콘, 색, 화살표는 개념 구조를 빠르게 보여준다.
|
||||
- 복잡한 아이디어일수록 시각 노트가 강력하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 핵심 개념과 관계를 한 페이지에 담는다.
|
||||
- 색은 장식이 아니라 역할 구분에만 쓴다.
|
||||
- 회의 정리 시 시간 순서보다 구조를 우선한다.
|
||||
|
||||
## 안티패턴
|
||||
- 모든 내용을 줄글로만 남긴다.
|
||||
- 시각 요소를 과도하게 꾸며 핵심이 흐려진다.
|
||||
- 정리 없이 캡처만 모은다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[스케치 사고]]
|
||||
- [[마인드맵]]
|
||||
- [[정보 구조]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-047
|
||||
title: 자료 클리핑의 기술
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [clipping]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, clipping]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [지식 관리, 관찰 일지, 연상 작용]
|
||||
---
|
||||
|
||||
# 자료 클리핑의 기술
|
||||
|
||||
## 한 줄 통찰
|
||||
> 좋은 입력도 다시 찾지 못하면 창의 재료로 쓰이지 못한다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 자료 클리핑은 흩어진 영감을 나중에 쓸 수 있는 조각으로 저장하는 기술이다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 클리핑은 수집보다 회수 가능성이 중요하다.
|
||||
- 짧은 코멘트가 붙어야 맥락이 살아남는다.
|
||||
- 태그보다 자신의 언어로 요약한 메모가 유용하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 저장할 때 왜 중요했는지 한 줄 메모를 남긴다.
|
||||
- 클립을 주제와 패턴 두 축으로 분류한다.
|
||||
- 주간 단위로 다시 훑으며 연결한다.
|
||||
|
||||
## 안티패턴
|
||||
- 무작정 저장만 한다.
|
||||
- 출처 없이 캡처만 남긴다.
|
||||
- 나중에 읽겠다고 쌓아두기만 한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[지식 관리]]
|
||||
- [[관찰 일지]]
|
||||
- [[연상 작용]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-048
|
||||
title: 비교 관찰
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [comparative-observation]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, comparative-observation]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [벤치마킹, 패턴 인식, 차별화]
|
||||
---
|
||||
|
||||
# 비교 관찰
|
||||
|
||||
## 한 줄 통찰
|
||||
> 차이는 창의적 개선 포인트를, 공통성은 구조를 드러낸다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 비교 관찰은 두 대상을 나란히 놓아 차이와 공통 구조를 보는 방법이다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 비교는 암묵적 기준을 드러낸다.
|
||||
- 경쟁자 분석뿐 아니라 자기 버전 비교에도 유용하다.
|
||||
- 비슷한 것과 다른 것을 함께 봐야 입체적이다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 동일 기준표를 만들어 비교한다.
|
||||
- 차이의 원인을 추정하기보다 먼저 기록한다.
|
||||
- 극단적으로 다른 사례 하나를 함께 본다.
|
||||
|
||||
## 안티패턴
|
||||
- 비교 기준 없이 인상평만 한다.
|
||||
- 좋고 나쁨만 따지고 구조를 보지 않는다.
|
||||
- 유사 사례만 보고 극단 사례를 배제한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[벤치마킹]]
|
||||
- [[패턴 인식]]
|
||||
- [[차별화]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-049
|
||||
title: 경계 넘기 입력
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [cross-domain-inputs]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, cross-domain-inputs]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [구조 전이, 원격 연상, 자료 수집]
|
||||
---
|
||||
|
||||
# 경계 넘기 입력
|
||||
|
||||
## 한 줄 통찰
|
||||
> 새 아이디어는 같은 분야 안의 더 많은 예시보다 이웃하지 않은 분야의 원리에서 더 자주 튀어나온다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 다른 분야 입력은 기존 패턴의 당연함을 흔들어 창의적 전이를 만든다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 다른 분야는 낯선 규칙과 비유를 제공한다.
|
||||
- 표면이 아닌 구조를 읽어야 전이가 된다.
|
||||
- 경계 넘기는 의도적으로 설계해야 효과가 난다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 주간 탐색 주제를 본업 밖에서 정한다.
|
||||
- 타 분야 사례를 볼 때 구조와 감정 효과를 함께 적는다.
|
||||
- 다른 산업의 사용자 경험을 자기 문제에 대입한다.
|
||||
|
||||
## 안티패턴
|
||||
- 자기 분야 자료만 반복 소비한다.
|
||||
- 낯선 사례를 흥미거리로만 소비한다.
|
||||
- 구조 전이 없이 분위기만 가져온다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[구조 전이]]
|
||||
- [[원격 연상]]
|
||||
- [[자료 수집]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-050
|
||||
title: 관찰의 편향 줄이기
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [observation-bias]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, observation-bias]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [필드 리서치, 검증, 반례 탐색]
|
||||
---
|
||||
|
||||
# 관찰의 편향 줄이기
|
||||
|
||||
## 한 줄 통찰
|
||||
> 보고 싶은 것만 보면 창의성은 넓어지지 않고 기존 신념만 강화된다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 관찰도 기대와 선입견의 영향을 받기 때문에 편향을 줄이는 장치가 필요하다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 가설이 강할수록 반례 관찰이 중요하다.
|
||||
- 기록 형식이 편향을 줄이는 도구가 된다.
|
||||
- 다른 사람의 관찰과 비교하면 맹점이 보인다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 사실 기록과 해석 기록을 나눠 쓴다.
|
||||
- 예상과 달랐던 장면을 따로 모은다.
|
||||
- 동료와 관찰 노트를 교차 비교한다.
|
||||
|
||||
## 안티패턴
|
||||
- 가설에 맞는 장면만 수집한다.
|
||||
- 관찰과 해석을 섞어버린다.
|
||||
- 혼자만 본 장면을 곧바로 보편화한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[필드 리서치]]
|
||||
- [[검증]]
|
||||
- [[반례 탐색]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-051
|
||||
title: 이상 징후 포착
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [anomaly-detection]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, anomaly-detection]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [문제 발견, 사용자 조사, 기회 발굴]
|
||||
---
|
||||
|
||||
# 이상 징후 포착
|
||||
|
||||
## 한 줄 통찰
|
||||
> 좋은 아이디어는 종종 평범한 데이터보다 이상한 예외에서 시작된다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 이상 징후는 익숙한 흐름에서 어긋난 장면을 포착하는 능력이며 창의적 기회 발견에 중요하다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 예외는 숨은 욕구나 구조 문제를 드러낸다.
|
||||
- 반복되는 작은 불편이 개선 포인트다.
|
||||
- 이상 징후는 무시하기 쉽기 때문에 기록 습관이 필요하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- '왜 이 부분만 다르지?'를 관찰 질문으로 삼는다.
|
||||
- 사용자 불편 로그에서 반복 예외를 찾는다.
|
||||
- 예외가 발생한 맥락을 함께 적는다.
|
||||
|
||||
## 안티패턴
|
||||
- 평균값만 보고 예외를 버린다.
|
||||
- 이상 징후를 오류로만 치부한다.
|
||||
- 예외의 배경 맥락을 기록하지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[문제 발견]]
|
||||
- [[사용자 조사]]
|
||||
- [[기회 발굴]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-052
|
||||
title: 사용자 그림자 관찰
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [shadowing]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, shadowing]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [사용자 조사, 관찰의 해상도, 문제 발견]
|
||||
---
|
||||
|
||||
# 사용자 그림자 관찰
|
||||
|
||||
## 한 줄 통찰
|
||||
> 사람들은 말과 다르게 행동하기 때문에 창의적 통찰은 현장 행동에서 자주 나온다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 그림자 관찰은 사용자의 실제 행동을 따라가며 문서에 없는 현실을 보는 방법이다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 현장성은 숨은 불편과 편법을 드러낸다.
|
||||
- 맥락 없는 인터뷰보다 행동 관찰이 풍부하다.
|
||||
- 작은 우회 행동이 큰 기회 신호가 될 수 있다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 사용자의 실제 동선을 순서대로 기록한다.
|
||||
- 말보다 멈춤과 망설임을 표시한다.
|
||||
- 사후 인터뷰로 행동 이유를 확인한다.
|
||||
|
||||
## 안티패턴
|
||||
- 말만 듣고 실제 행동은 보지 않는다.
|
||||
- 현장 맥락 없이 스크린샷만 본다.
|
||||
- 관찰한 행동을 즉시 일반화한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[사용자 조사]]
|
||||
- [[관찰의 해상도]]
|
||||
- [[문제 발견]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-053
|
||||
title: 행동의 미세 마찰
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [micro-frictions]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, micro-frictions]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [UX 개선, 관찰, 우선순위화]
|
||||
---
|
||||
|
||||
# 행동의 미세 마찰
|
||||
|
||||
## 한 줄 통찰
|
||||
> 큰 혁신이 없어도 작은 마찰 제거가 경험을 극적으로 바꿀 수 있다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 미세 마찰은 사용자가 참지만 분명히 느끼는 작은 불편으로, 창의적 개선의 금광이다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 사소한 지연과 망설임은 누적 비용이 크다.
|
||||
- 사용자들은 종종 마찰을 당연한 것으로 받아들인다.
|
||||
- 창의적 관찰은 당연함으로 숨은 마찰을 발견한다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 동선에서 멈춤, 재시도, 되돌아감을 기록한다.
|
||||
- 작은 불편을 빈도와 강도로 분류한다.
|
||||
- 마찰 하나를 제거하는 실험을 작게 돌린다.
|
||||
|
||||
## 안티패턴
|
||||
- 큰 문제만 문제라고 생각한다.
|
||||
- 작은 마찰을 사용자의 미숙함으로 돌린다.
|
||||
- 마찰의 원인 구조를 보지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[UX 개선]]
|
||||
- [[관찰]]
|
||||
- [[우선순위화]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-054
|
||||
title: 현장 메모의 속도
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [field-note-speed]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, field-note-speed]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [관찰 일지, 리서치, 외부화]
|
||||
---
|
||||
|
||||
# 현장 메모의 속도
|
||||
|
||||
## 한 줄 통찰
|
||||
> 좋은 관찰은 깔끔한 문장보다 사라지기 전에 붙잡는 속도에서 나온다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 현장 메모는 완벽성보다 속도가 중요하며, 나중에 해석할 수 있을 정도면 충분하다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 현장에서는 압축 기록이 유리하다.
|
||||
- 후처리 시간을 따로 두면 품질이 올라간다.
|
||||
- 표기 규칙을 단순화할수록 지속 가능하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 기호와 축약어 체계를 미리 정한다.
|
||||
- 관찰 직후 10분 안에 보완 메모를 남긴다.
|
||||
- 나중에 이해할 최소 맥락을 꼭 포함한다.
|
||||
|
||||
## 안티패턴
|
||||
- 현장에서 완벽한 문장을 쓰려다 놓친다.
|
||||
- 나중에 기억날 거라 믿고 미룬다.
|
||||
- 너무 난잡해서 스스로도 못 읽는 메모를 남긴다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[관찰 일지]]
|
||||
- [[리서치]]
|
||||
- [[외부화]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-055
|
||||
title: 좋은 사례 해부
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [case-dissection]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, case-dissection]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [벤치마킹, 구조 전이, 패턴 인식]
|
||||
---
|
||||
|
||||
# 좋은 사례 해부
|
||||
|
||||
## 한 줄 통찰
|
||||
> 영감은 감탄에서 끝나지 않고 구조 분석으로 넘어갈 때 재사용 가능해진다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 좋은 사례를 해부한다는 것은 멋진 결과가 아니라 작동 원리를 분해해 보는 것이다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 입력, 규칙, 출력의 구조를 봐야 한다.
|
||||
- 좋아 보이는 이유와 맥락을 나눠야 한다.
|
||||
- 해부는 모방을 넘는 출발점이다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 좋은 사례를 목표, 제약, 메커니즘으로 나눈다.
|
||||
- 표면 요소와 핵심 구조를 분리한다.
|
||||
- 자기 맥락에 맞지 않는 요소는 제거한다.
|
||||
|
||||
## 안티패턴
|
||||
- 멋지다는 감상만 남긴다.
|
||||
- 결과만 따라 하고 메커니즘은 보지 않는다.
|
||||
- 맥락 차이를 무시하고 그대로 복사한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[벤치마킹]]
|
||||
- [[구조 전이]]
|
||||
- [[패턴 인식]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-056
|
||||
title: 나쁜 사례 분석
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [anti-case-analysis]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, anti-case-analysis]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [회고, 안티패턴, 리스크 관리]
|
||||
---
|
||||
|
||||
# 나쁜 사례 분석
|
||||
|
||||
## 한 줄 통찰
|
||||
> 무엇을 하지 말아야 하는지 선명할수록 좋은 아이디어 공간도 또렷해진다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 나쁜 사례 분석은 실패한 구조를 배워 반복 비용을 줄이는 창의적 방어 훈련이다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 실패는 경계 조건을 알려준다.
|
||||
- 반복되는 안티패턴은 구조적 교훈이 된다.
|
||||
- 나쁜 사례는 좋은 사례보다 실행 리스크를 더 잘 보여준다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 실패 사례에서 의도와 실제 결과의 차이를 적는다.
|
||||
- 실패를 개인 탓보다 구조로 본다.
|
||||
- 안티패턴 목록을 다음 기획의 금지 규칙으로 쓴다.
|
||||
|
||||
## 안티패턴
|
||||
- 실패 사례를 부끄러워 숨긴다.
|
||||
- 결과만 비웃고 원인을 분석하지 않는다.
|
||||
- 실패 맥락을 기록하지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[회고]]
|
||||
- [[안티패턴]]
|
||||
- [[리스크 관리]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-057
|
||||
title: 사물 재해석
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [object-reinterpretation]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, object-reinterpretation]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [기능 고착, 비유, 콘셉트 설계]
|
||||
---
|
||||
|
||||
# 사물 재해석
|
||||
|
||||
## 한 줄 통찰
|
||||
> 사물은 본래의 이름보다 사용할 수 있는 관계 속에서 더 풍부해진다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 사물 재해석은 익숙한 물건과 인터페이스에 새로운 역할과 의미를 부여하는 창의 훈련이다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 역할 바꾸기는 기능 고착을 깨는 훈련이다.
|
||||
- 감정과 상징도 재해석 대상이 된다.
|
||||
- 재해석은 제품 콘셉트와 콘텐츠 모두에 유용하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 하나의 물건을 세 가지 다른 역할로 써본다.
|
||||
- 물건이 주는 감정 이미지를 적어본다.
|
||||
- 사물의 부재가 만들 빈자리도 상상한다.
|
||||
|
||||
## 안티패턴
|
||||
- 용도를 하나로만 본다.
|
||||
- 재해석을 장난으로만 끝낸다.
|
||||
- 새 역할의 실행 맥락을 검토하지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[기능 고착]]
|
||||
- [[비유]]
|
||||
- [[콘셉트 설계]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-058
|
||||
title: 상황 전환 관찰
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [context-shift-observation]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, context-shift-observation]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [시나리오 설계, 사용자 조사, 예외 처리]
|
||||
---
|
||||
|
||||
# 상황 전환 관찰
|
||||
|
||||
## 한 줄 통찰
|
||||
> 창의적 통찰은 사물보다 상황의 변화에서 더 자주 나온다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 같은 행동도 상황이 바뀌면 의미가 달라지므로 맥락 전환 관찰이 중요하다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 행동의 의도는 환경에 따라 달라진다.
|
||||
- 같은 인터페이스도 시간대와 장소에 따라 다른 경험이 된다.
|
||||
- 맥락 전환은 새로운 요구를 드러낸다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 같은 기능을 여러 상황에서 관찰한다.
|
||||
- 시간, 장소, 동행자 유무를 함께 기록한다.
|
||||
- 극단 상황을 일부러 설정해 본다.
|
||||
|
||||
## 안티패턴
|
||||
- 한 가지 대표 상황만 본다.
|
||||
- 맥락 변수를 기록하지 않는다.
|
||||
- 정상 시나리오만 보고 예외 환경을 무시한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[시나리오 설계]]
|
||||
- [[사용자 조사]]
|
||||
- [[예외 처리]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-059
|
||||
title: 감각 채널 확장
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [sensory-expansion]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, sensory-expansion]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [경험 디자인, 표현, 몰입]
|
||||
---
|
||||
|
||||
# 감각 채널 확장
|
||||
|
||||
## 한 줄 통찰
|
||||
> 아이디어는 눈으로만 보는 세계보다 다감각 세계에서 더 풍부해진다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 시각 중심 관찰에서 벗어나 소리, 촉감, 리듬까지 보면 창의 재료가 늘어난다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 감각은 경험 구조를 입체화한다.
|
||||
- 비시각적 요소는 종종 차별화 포인트가 된다.
|
||||
- 감각 기록은 표현의 다양성을 높인다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 장면을 볼 때 소리와 촉감도 함께 기록한다.
|
||||
- 제품 경험에서 리듬과 속도를 따로 적는다.
|
||||
- 한 감각을 제한하고 다른 감각으로 보완해 본다.
|
||||
|
||||
## 안티패턴
|
||||
- 시각 정보만 중요하다고 여긴다.
|
||||
- 감각 경험을 장식으로만 본다.
|
||||
- 감각 차이를 언어화하지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[경험 디자인]]
|
||||
- [[표현]]
|
||||
- [[몰입]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-060
|
||||
title: 질문이 있는 독서
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [active-reading]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, observation, active-reading]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [지식 관리, 자료 수집, 구조 전이]
|
||||
---
|
||||
|
||||
# 질문이 있는 독서
|
||||
|
||||
## 한 줄 통찰
|
||||
> 많이 읽는 것보다 어떤 질문으로 읽는지가 창의성에 더 큰 영향을 준다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 질문이 있는 독서는 수동 소비를 창의적 재료 생산으로 바꾸는 읽기 방식이다.
|
||||
- 지식 축: 관찰, 수집, 연결을 통해 창의 재료를 확보하는 방법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 질문이 자료의 해상도를 바꾼다.
|
||||
- 독서는 답 수집이 아니라 구조 채집이 될 수 있다.
|
||||
- 읽은 뒤 남는 문장이 다음 발상의 씨앗이 된다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 읽기 전 보고 싶은 구조를 정한다.
|
||||
- 메모는 인용보다 자기 언어 요약을 중심으로 남긴다.
|
||||
- 읽은 뒤 적용 가능한 질문을 한 줄 적는다.
|
||||
|
||||
## 안티패턴
|
||||
- 내용을 복사만 한다.
|
||||
- 질문 없이 읽고 감상만 남긴다.
|
||||
- 읽은 것을 자신의 문제와 연결하지 않는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[지식 관리]]
|
||||
- [[자료 수집]]
|
||||
- [[구조 전이]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-061
|
||||
title: 브레인스토밍
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [brainstorming]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, ideation, brainstorming]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [브레인라이팅, 질문 설계, 클러스터링]
|
||||
---
|
||||
|
||||
# 브레인스토밍
|
||||
|
||||
## 한 줄 통찰
|
||||
> 효과적인 브레인스토밍은 자유로움만이 아니라 규칙 설계에서 갈린다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 브레인스토밍은 평가를 늦추고 아이디어 수를 확보하기 위한 대표적 집단 발산 기법이다.
|
||||
- 지식 축: 아이디어를 만들어내고 확장하는 실전 기법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 초기 비판 금지와 양 중심이 핵심이다.
|
||||
- 연결과 확장이 단독 천재보다 중요하다.
|
||||
- 명확한 질문이 없으면 산만해진다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 질문을 한 문장으로 선명히 적는다.
|
||||
- 초기에는 양을, 후반에는 클러스터링을 우선한다.
|
||||
- 아이디어를 타인의 아이디어 위에 덧붙이게 한다.
|
||||
|
||||
## 안티패턴
|
||||
- 처음부터 현실성 검토를 시작한다.
|
||||
- 막연한 주제로 회의를 연다.
|
||||
- 말 잘하는 사람만 주도하게 둔다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[브레인라이팅]]
|
||||
- [[질문 설계]]
|
||||
- [[클러스터링]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-062
|
||||
title: 브레인라이팅
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [brainwriting]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, ideation, brainwriting]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [브레인스토밍, 비동기 협업, 심리적 안전감]
|
||||
---
|
||||
|
||||
# 브레인라이팅
|
||||
|
||||
## 한 줄 통찰
|
||||
> 조용한 참여를 설계하면 집단의 발상 폭이 넓어진다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 브레인라이팅은 말을 많이 하는 사람보다 생각을 많이 적는 사람이 기여하기 쉬운 발상 방식이다.
|
||||
- 지식 축: 아이디어를 만들어내고 확장하는 실전 기법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 글로 쓰면 평가 불안이 줄 수 있다.
|
||||
- 동시 기록은 발언 독점을 줄인다.
|
||||
- 비동기 아이디어 수집에도 적합하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 먼저 각자 5분간 조용히 쓴다.
|
||||
- 다른 사람이 쓴 아이디어를 이어서 확장하게 한다.
|
||||
- 집계 후 중복과 변형을 함께 표시한다.
|
||||
|
||||
## 안티패턴
|
||||
- 바로 토론부터 시작한다.
|
||||
- 작성 시간이 너무 짧아 생각이 자라지 못한다.
|
||||
- 적은 아이디어를 발표 순서대로만 소비한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[브레인스토밍]]
|
||||
- [[비동기 협업]]
|
||||
- [[심리적 안전감]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-063
|
||||
title: SCAMPER
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [scamper]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, ideation, scamper]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [변형, 개선, 확산적 사고]
|
||||
---
|
||||
|
||||
# SCAMPER
|
||||
|
||||
## 한 줄 통찰
|
||||
> 발상이 막힐 때는 더 열심히 생각하는 것보다 다른 동사를 빌리는 편이 낫다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: SCAMPER는 대체, 결합, 응용, 수정, 다른 용도, 제거, 재배열 질문으로 변형을 유도하는 기법이다.
|
||||
- 지식 축: 아이디어를 만들어내고 확장하는 실전 기법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 질문 프레임이 변형 방향을 제공한다.
|
||||
- 완전 신안보다 기존 아이디어 개선에 강하다.
|
||||
- 조직적 변형에 적합하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 기존 아이디어 하나를 두고 SCAMPER 질문을 순서대로 적용한다.
|
||||
- 각 질문마다 최소 두 개 답을 만든다.
|
||||
- 결과를 바로 평가하지 말고 일단 쌓는다.
|
||||
|
||||
## 안티패턴
|
||||
- 질문 목록만 읽고 실제 답은 적지 않는다.
|
||||
- 기존 아이디어가 없는데 억지로 적용한다.
|
||||
- 한 질문에서 막히면 전체를 포기한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[변형]]
|
||||
- [[개선]]
|
||||
- [[확산적 사고]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-064
|
||||
title: 마인드맵
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [mind-map]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, ideation, mind-map]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [시각 노트, 연상 작용, 클러스터링]
|
||||
---
|
||||
|
||||
# 마인드맵
|
||||
|
||||
## 한 줄 통찰
|
||||
> 비선형 구조를 보게 되면 생각의 우회로가 늘어난다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 마인드맵은 중심 개념에서 가지를 뻗어 생각의 관계를 시각화하는 기법이다.
|
||||
- 지식 축: 아이디어를 만들어내고 확장하는 실전 기법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 연상 구조를 한눈에 볼 수 있다.
|
||||
- 카테고리와 세부 항목을 동시에 다룰 수 있다.
|
||||
- 시각적 배치가 새로운 연결을 유도한다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 중심 질문을 한 단어로 놓고 가지를 뻗는다.
|
||||
- 가지마다 예시와 반례를 함께 적는다.
|
||||
- 완성 후 멀리 떨어진 가지끼리 연결해 본다.
|
||||
|
||||
## 안티패턴
|
||||
- 문장을 길게 써서 지도성이 사라진다.
|
||||
- 한 레벨만 만들고 멈춘다.
|
||||
- 관계 표시 없이 목록만 늘어놓는다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[시각 노트]]
|
||||
- [[연상 작용]]
|
||||
- [[클러스터링]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-065
|
||||
title: 랜덤 자극 기법
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [random-stimulus]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, ideation, random-stimulus]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [원격 연상, 브레인스토밍, 제약 깨기]
|
||||
---
|
||||
|
||||
# 랜덤 자극 기법
|
||||
|
||||
## 한 줄 통찰
|
||||
> 우연은 생각을 망치는 요소가 아니라 고착을 깨는 도구가 될 수 있다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 랜덤 자극은 우연한 단어, 이미지, 사물을 발상 촉발제로 사용하는 방법이다.
|
||||
- 지식 축: 아이디어를 만들어내고 확장하는 실전 기법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 비의도적 입력이 새로운 연결을 만든다.
|
||||
- 낯선 자극은 자동 경로를 우회시킨다.
|
||||
- 랜덤 자극 뒤에는 구조화 단계가 필요하다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 사전이나 이미지에서 임의 요소를 하나 뽑는다.
|
||||
- 랜덤 자극과 현재 문제의 연결점을 3개 이상 찾는다.
|
||||
- 말이 안 되는 연결도 일단 적어둔다.
|
||||
|
||||
## 안티패턴
|
||||
- 랜덤이니 아무 의미 없다고 바로 버린다.
|
||||
- 자극만 재미있고 문제와 연결하지 않는다.
|
||||
- 우연을 검증 없이 진실로 받아들인다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[원격 연상]]
|
||||
- [[브레인스토밍]]
|
||||
- [[제약 깨기]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
@@ -0,0 +1,69 @@
|
||||
---
|
||||
id: wiki-2026-0514-creativity-066
|
||||
title: 6가지 생각 모자
|
||||
category: 10_Wiki/Topics/창의성
|
||||
status: needs_review
|
||||
canonical_id: self
|
||||
aliases: [six-thinking-hats]
|
||||
duplicate_of: none
|
||||
source_trust_level: C
|
||||
confidence_score: 0.58
|
||||
created_at: 2026-05-14
|
||||
updated_at: 2026-05-14
|
||||
last_reinforced: 2026-05-14
|
||||
review_reason: ai_generated_concept_batch
|
||||
merge_history: []
|
||||
tags: [창의성, ideation, six-thinking-hats]
|
||||
raw_sources: [user_request:2026-05-14-creativity-knowledge-batch]
|
||||
applied_in: []
|
||||
verification_status: conceptual
|
||||
related_notes: [회의 설계, 발산과 수렴, 갈등 조정]
|
||||
---
|
||||
|
||||
# 6가지 생각 모자
|
||||
|
||||
## 한 줄 통찰
|
||||
> 관점 싸움을 모드 전환으로 바꾸면 아이디어와 비판이 충돌하지 않고 순서 있게 나온다.
|
||||
|
||||
## 핵심 개념
|
||||
- 요약: 생각 모자는 같은 문제를 서로 다른 사고 모드로 분리해 보는 협업 기법이다.
|
||||
- 지식 축: 아이디어를 만들어내고 확장하는 실전 기법
|
||||
- 이 문서는 창의성 운영과 발상, 선택, 검증에 바로 연결할 수 있는 개념 문서다.
|
||||
|
||||
## 세부 내용
|
||||
- 사실, 감정, 비판, 낙관, 창의, 메타 관점을 분리한다.
|
||||
- 동시에 다른 모자를 쓰기보다 순서 전환이 핵심이다.
|
||||
- 회의 역할 갈등을 줄인다.
|
||||
|
||||
## 의사결정 기준
|
||||
- 회의 전에 모드 순서를 정한다.
|
||||
- 현재 어떤 모드인지 명확히 표시한다.
|
||||
- 창의 모드와 비판 모드를 분리해 운영한다.
|
||||
|
||||
## 안티패턴
|
||||
- 모드를 섞어 혼란을 만든다.
|
||||
- 비판 모드가 전체를 장악하게 둔다.
|
||||
- 모자 개념을 역할 고정으로 오해한다.
|
||||
|
||||
## 적용 사례
|
||||
- 아직 직접 연결된 실제 적용 사례는 없다.
|
||||
- `verification_status: conceptual` 상태이며, 추후 기획/디자인/개발 워크플로우에 연결되면 갱신한다.
|
||||
|
||||
## 중복 검사 결과
|
||||
- 2026-05-14 기준 `Topics` 전역에서 창의성 일반 카테고리의 직접 동일 제목 문서는 확인되지 않았다.
|
||||
- 유사 개념은 다른 분야 문서 내부에 부분적으로 존재할 수 있으므로 추후 `ReviewQueue` 기반 정리가 필요하다.
|
||||
|
||||
## 모순 및 업데이트
|
||||
- 현재 문서는 사용자 요청으로 생성된 AI 기반 개념 초안이다.
|
||||
- 실제 프로젝트 적용 사례가 생기면 `applied_in`과 `verification_status`를 갱신한다.
|
||||
|
||||
## 관련 문서
|
||||
- [[회의 설계]]
|
||||
- [[발산과 수렴]]
|
||||
- [[갈등 조정]]
|
||||
|
||||
## Raw Source
|
||||
- user_request:2026-05-14-creativity-knowledge-batch
|
||||
|
||||
## 변경 이력
|
||||
- 2026-05-14: 초기 생성. 창의성 카테고리 배치용 개념 초안 문서 작성.
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user