|
| 1 | +# FableLayer DPTD-ADHD — 빠르게 이해하는 설치·사용 가이드 |
| 2 | + |
| 3 | +## 한 줄 요약 |
| 4 | + |
| 5 | +FableLayer는 AI 모델을 “더 똑똑하게 바꾸는 마법”이 아니라, **일을 끝까지 검증하게 만드는 작업 규율 세트**입니다. |
| 6 | + |
| 7 | +설치해서 바로 확인할 수 있습니다. |
| 8 | + |
| 9 | +```bash |
| 10 | +git clone https://github.com/VoidLight00/fablelayer.git |
| 11 | +cd fablelayer |
| 12 | +python3 tests/run_tests.py |
| 13 | +bash gates/verify_fablelayer.sh . --mode new |
| 14 | +``` |
| 15 | + |
| 16 | +## 먼저 알아야 할 것 |
| 17 | + |
| 18 | +### FableLayer가 하는 일 |
| 19 | + |
| 20 | +- 완료했다고 말하기 전에 증거를 요구합니다. |
| 21 | +- 성능 수치를 근거 없이 쓰지 못하게 막습니다. |
| 22 | +- private/non-public prompt text를 복사하지 못하게 막습니다. |
| 23 | +- Claude Code, Ollama, LM Studio, SillyTavern용 profile을 만들 수 있습니다. |
| 24 | +- 로컬에서 먼저 검증하고, 외부 공개는 승인 뒤에만 하게 만듭니다. |
| 25 | + |
| 26 | +### FableLayer가 하지 않는 일 |
| 27 | + |
| 28 | +- 모델의 기본 지능을 바꾸지 않습니다. |
| 29 | +- 특정 비공개 prompt를 복제하지 않습니다. |
| 30 | +- 승인 없이 GitHub push, package publish, marketplace 등록을 하지 않습니다. |
| 31 | +- benchmark 없이 “좋아졌다”고 주장하지 않습니다. |
| 32 | + |
| 33 | +## 1단계 — 설치 |
| 34 | + |
| 35 | +터미널에서 실행합니다. |
| 36 | + |
| 37 | +```bash |
| 38 | +git clone https://github.com/VoidLight00/fablelayer.git |
| 39 | +cd fablelayer |
| 40 | +``` |
| 41 | + |
| 42 | +필요한 것: |
| 43 | + |
| 44 | +- Python 3.10 이상 |
| 45 | +- Bash |
| 46 | +- Git |
| 47 | + |
| 48 | +외부 Python package는 필요 없습니다. |
| 49 | + |
| 50 | +## 2단계 — 작동 확인 |
| 51 | + |
| 52 | +아래 세 줄을 그대로 실행합니다. |
| 53 | + |
| 54 | +```bash |
| 55 | +python3 tests/run_tests.py |
| 56 | +bash gates/selftest.sh |
| 57 | +bash gates/verify_fablelayer.sh . --mode new |
| 58 | +``` |
| 59 | + |
| 60 | +성공하면 대략 이런 문구가 보입니다. |
| 61 | + |
| 62 | +```text |
| 63 | +OK |
| 64 | +SELFTEST PASS |
| 65 | +VERIFY PASS |
| 66 | +``` |
| 67 | + |
| 68 | +## 3단계 — CLI 보기 |
| 69 | + |
| 70 | +```bash |
| 71 | +./cli/fablelayer --help |
| 72 | +``` |
| 73 | + |
| 74 | +주요 명령은 이렇습니다. |
| 75 | + |
| 76 | +| 명령 | 의미 | |
| 77 | +|---|---| |
| 78 | +| `init` | FableLayer profile을 프로젝트에 만들 준비를 합니다. | |
| 79 | +| `init --apply` | 실제로 local profile 파일을 씁니다. | |
| 80 | +| `upgrade sonnet` | Sonnet에 어떤 절차 layer를 붙일지 미리 봅니다. | |
| 81 | +| `benchmark` | deterministic benchmark fixture를 실행합니다. | |
| 82 | +| `check --file output.md` | 파일 안에 근거 없는 완료 주장이 있는지 봅니다. | |
| 83 | +| `status` | 최근 run 상태를 봅니다. | |
| 84 | +| `resume` | 끝나지 않은 run을 이어갈 준비를 합니다. | |
| 85 | + |
| 86 | +## 4단계 — demo profile 만들기 |
| 87 | + |
| 88 | +안전하게 `_dist/demo`에 만들어 봅니다. |
| 89 | + |
| 90 | +```bash |
| 91 | +./cli/fablelayer init --target ./_dist/demo --apply |
| 92 | +``` |
| 93 | + |
| 94 | +생성되는 것: |
| 95 | + |
| 96 | +```text |
| 97 | +_dist/demo/ |
| 98 | +├── .claude/skills/fablelayer-runtime/SKILL.md |
| 99 | +├── ollama/... |
| 100 | +├── lm-studio/... |
| 101 | +└── sillytavern/... |
| 102 | +``` |
| 103 | + |
| 104 | +`_dist/`는 git에 올라가지 않게 무시됩니다. |
| 105 | + |
| 106 | +## 머릿속 모델 |
| 107 | + |
| 108 | +FableLayer는 네 층으로 보면 쉽습니다. |
| 109 | + |
| 110 | +```text |
| 111 | +PromptCore |
| 112 | + ↓ |
| 113 | +Procedure / Evidence Gate |
| 114 | + ↓ |
| 115 | +Router / Adapter |
| 116 | + ↓ |
| 117 | +Benchmark / Gates |
| 118 | +``` |
| 119 | + |
| 120 | +### PromptCore |
| 121 | + |
| 122 | +공개-safe 작업 규칙을 한 파일로 만듭니다. |
| 123 | + |
| 124 | +### Evidence Gate |
| 125 | + |
| 126 | +“완료했습니다” 같은 말을 할 때 증거가 있는지 봅니다. |
| 127 | + |
| 128 | +### Router |
| 129 | + |
| 130 | +작업이 복잡하면 더 강한 모델을 쓰라고 판단합니다. 단, 모델 능력이 옮겨진다고 말하지 않습니다. |
| 131 | + |
| 132 | +### Benchmark / Gates |
| 133 | + |
| 134 | +테스트, benchmark, license, publish 안전장치를 확인합니다. |
| 135 | + |
| 136 | +## 자주 헷갈리는 지점 |
| 137 | + |
| 138 | +### “이거 설치하면 모델이 Fable처럼 되나요?” |
| 139 | + |
| 140 | +아닙니다. 모델의 기본 capability는 그대로입니다. 대신 작업 절차를 더 빡빡하게 만들어서 모델이 자기 한계 안에서 더 일관되게 일하게 합니다. |
| 141 | + |
| 142 | +### “private prompt가 들어 있나요?” |
| 143 | + |
| 144 | +아닙니다. 그런 텍스트는 포함하지 않는 방향으로 설계했고, gate로도 막습니다. |
| 145 | + |
| 146 | +### “그냥 public repo로 써도 되나요?” |
| 147 | + |
| 148 | +네. 현재 public GitHub repo에서 clone할 수 있습니다. 다만 package registry나 marketplace 배포는 아직 별도 단계입니다. |
| 149 | + |
| 150 | +### “뭘 먼저 읽으면 되나요?” |
| 151 | + |
| 152 | +순서 추천: |
| 153 | + |
| 154 | +1. `README.md` |
| 155 | +2. `docs/INSTALL.md` |
| 156 | +3. `docs/DPTD-ADHD.md` |
| 157 | +4. `docs/DEVELOPMENT.md` |
| 158 | +5. `INTERFACE.md` |
| 159 | + |
| 160 | +## 작업 체크리스트 |
| 161 | + |
| 162 | +처음 설치한 사람은 이것만 확인하면 됩니다. |
| 163 | + |
| 164 | +```text |
| 165 | +[ ] git clone 성공 |
| 166 | +[ ] python3 tests/run_tests.py 성공 |
| 167 | +[ ] bash gates/verify_fablelayer.sh . --mode new 성공 |
| 168 | +[ ] ./cli/fablelayer --help 출력 확인 |
| 169 | +[ ] ./cli/fablelayer init --target ./_dist/demo --apply 실행 |
| 170 | +``` |
| 171 | + |
| 172 | +개발자는 이것까지 확인합니다. |
| 173 | + |
| 174 | +```text |
| 175 | +[ ] 변경 전 INTERFACE.md 확인 |
| 176 | +[ ] 테스트 추가 |
| 177 | +[ ] gates/selftest.sh 통과 |
| 178 | +[ ] gates/verify_fablelayer.sh 통과 |
| 179 | +[ ] README/docs 갱신 |
| 180 | +[ ] CHANGELOG 갱신 |
| 181 | +``` |
| 182 | + |
| 183 | +## 문제가 생겼을 때 |
| 184 | + |
| 185 | +### Python import가 안 됩니다 |
| 186 | + |
| 187 | +레포 루트에서 실행 중인지 확인합니다. |
| 188 | + |
| 189 | +```bash |
| 190 | +pwd |
| 191 | +ls fablelayer |
| 192 | +python3 -m fablelayer.cli --help |
| 193 | +``` |
| 194 | + |
| 195 | +### gate가 실패합니다 |
| 196 | + |
| 197 | +실패한 gate 이름을 봅니다. |
| 198 | + |
| 199 | +```text |
| 200 | +LICENSE FAIL → source/attribution 문제 |
| 201 | +PERF FAIL → 근거 없는 성능 주장 |
| 202 | +BENCH FAIL → raw data/reproduce/한계 섹션 문제 |
| 203 | +RUNTIME FAIL → Python import/test/CLI 문제 |
| 204 | +PUBLISH FAIL → 승인 없는 공개 작업 차단. 정상일 수 있음 |
| 205 | +``` |
| 206 | + |
| 207 | +### publish gate가 실패합니다 |
| 208 | + |
| 209 | +승인 토큰 없이 실패하는 것이 정상입니다. FableLayer는 외부 공개 작업을 자동으로 하지 않게 설계되어 있습니다. |
| 210 | + |
| 211 | +## 5분 루틴 |
| 212 | + |
| 213 | +시간이 없으면 이것만 실행합니다. |
| 214 | + |
| 215 | +```bash |
| 216 | +git clone https://github.com/VoidLight00/fablelayer.git |
| 217 | +cd fablelayer |
| 218 | +python3 tests/run_tests.py |
| 219 | +bash gates/verify_fablelayer.sh . --mode new |
| 220 | +./cli/fablelayer --help |
| 221 | +``` |
| 222 | + |
| 223 | +여기까지 되면 설치와 기본 검증은 끝입니다. |
0 commit comments