README.ko.md
September 15, 2026 ยท View on GitHub
โ ๏ธ This is an auto-generated translation. For the latest version, see the English README. Community corrections welcome!
๐บ๐ธ English | ๐จ๐ณ ็ฎไฝไธญๆ | ๐ฏ๐ต ๆฅๆฌ่ช | ๐ฐ๐ท ํ๊ตญ์ด | ๐ช๐ธ Espaรฑol | ๐ง๐ท Portuguรชs | ๐ฉ๐ช Deutsch | ๐ซ๐ท Franรงais | ๐ท๐บ ะ ัััะบะธะน | ๐ฎ๐ณ เคนเคฟเคจเฅเคฆเฅ | ๐น๐ท Tรผrkรงe | ๐ป๐ณ Tiแบฟng Viแปt | ๐ฎ๐น Italiano | ๐ธ๐ฆ ุงูุนุฑุจูุฉ | ๐ฎ๐ฑ ืขืืจืืช
๋ฒ์ญ: ็ฎไฝไธญๆ ยท ๆฅๆฌ่ช ยท ํ๊ตญ์ด ยท Espaรฑol ยท Portuguรชs ยท Deutsch ยท Franรงais ยท ะ ัััะบะธะน ยท เคนเคฟเคจเฅเคฆเฅ ยท Tรผrkรงe ยท Tiแบฟng Viแปt ยท Italiano ยท ุงูุนุฑุจูุฉ ยท ืขืืจืืช
์์ด์ ํธ๊ฐ ์คํ๋๋ ๋ชจ๋ ํ๋ค์ค๋ฅผ ์ํ ๊ด์ธก์ฑ๊ณผ ์ ์ฑ ์งํ. ์์ด์ ํธ๊ฐ ์ด๋์ ์คํ๋๋ ์ฐ๋ฆฌ๋ ํ์ธํ๊ณ โ ์ฐจ๋จํ ์ ์์ต๋๋ค. Failproof๋ 12๊ฐ์ ์์ด์ ํธ ํ๋ค์ค๋ฅผ ํํนํฉ๋๋ค โ Claude Code, Codex ๊ฐ์ ์ฝ๋ฉ CLI, Hermes ๊ฐ์ ์ฑํ ๊ฒ์ดํธ์จ์ด, OpenClaw ๊ฐ์ ์์ฒด ํธ์คํ ์ด์์คํดํธ โ ๋ชจ๋ ์คํ์ ์บก์ฒํ๊ณ ์ํํ ํด ํธ์ถ์ ์คํ ์ ์ ์ฐจ๋จํฉ๋๋ค. ๊ธฐ๋ณธ ์ ๊ณต ์ ์ฑ 39๊ฐ. ๋ ์ดํด์ ์์. ๋ก์ปฌ์์ ์คํ.
์ง์ ํ๋ค์ค
๋ ๊ฐ์ง ํด๋์ค๋ก ๋๋ 12๊ฐ์ ํ๋ค์ค โ ์ฝ๋ฉ CLI 10๊ฐ, ์ฑํ ๋ฐ ์ด์์คํดํธ ๊ฒ์ดํธ์จ์ด 2๊ฐ(Hermes, OpenClaw). ๋ชจ๋ ํ๋ค์ค์ ๊ฑธ์ณ ํ๋์ ์ ์ฑ API์ ํ๋์ ์ธ์ ํ์คํ ๋ฆฌ๋ฅผ ๊ณต์ ํฉ๋๋ค. ์ ์ฑ ์ด ์ฐจ๋จํ ์ ์๋ ๋ฒ์๋ ํ๋ค์ค๋ง๋ค ๋ค๋ฆ ๋๋ค. ํด ํธ์ถ์ ์คํ ์ ์ ๋ฉ์ถ๋ ๊ธฐ๋ฅ์ 12๊ฐ ๋ชจ๋์์ ๊ฒ์ฆ๋์์ผ๋ฉฐ, ํด ์ข ๋ฃ ๊ฒ์ดํธ๋ 8๊ฐ์์ ์๋ํฉ๋๋ค. ํ๋ค์ค๋ณ ๋งคํธ๋ฆญ์ค์์ ๊ฐ ํ๋ค์ค๊ฐ ์ง์ํ๋ ์ด๋ฒคํธ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
12๊ฐ ํ๋ค์ค ์ค ์ด๋์๋ ์ํ์ง ์๋ ์์ด์ ํธ๋ Python SDK๋ฅผ ํตํด ๋ณด๊ณ ํ๋ฉฐ, ํธ๋ ์ด์ฑ, ์ธ์ , ๊ฐ์ฌ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ํด๋น ํ๊ฒฝ์์์ ์ ์ฑ ์งํ์ ์์ฒด ๋ฐํ์์ ํ ์ด ํ์ํฉ๋๋ค โ ๋ฌธ์ํ์๋ฉด ๋งคํ์ ๋์๋๋ฆฝ๋๋ค.
{/* A 6-column table instead of inline runs: table columns never re-wrap,
so the grid stays 2ร6 at any window width (scrolling on very narrow screens
instead of collapsing into ragged orphan rows). */}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
์ค์น
npm install -g failproofai
failproofai config # ์์ด์ ํธ์ ๋ฐ๋ชฌ ์ฐ๊ฒฐ ์ค์
failproofai policies add FailproofAI/policies # ์ ์ฉํ ์ ์ฑ
์ ํ
failproofai # localhost:8020์์ ๋์๋ณด๋ ์คํ
์ค์ ์ ํ
์ ์ฐ๊ฒฐํ๋ ์ ์ฑ
์ ์๋ฌด๊ฒ๋ ์ ์ฉํ์ง ์์ต๋๋ค โ ๋ ๋ฒ์งธ ๋ช
๋ น์ด ๋จธ์ ์ ๊ฐ๋๋ ์ผ์ ์ค์นํ๋ ์ญํ ์ ํ๋ฉฐ, ๋ชจ๋ ํฉ์ ๋์ผํ ๋ฐฉ์์ผ๋ก ์ง์ ํฉ๋๋ค
(failproofai policies add <owner>/<repo>; policies show <owner>/<repo>๋ก ๋จผ์ ๋ด์ฉ์ ํ์ธํ ์ ์์ต๋๋ค). ํฐ๋ฏธ๋ ์์ด failproofai config๋ฅผ ์คํํ๋ฉด โ CI, ์ปจํ
์ด๋, ์์ด์ ํธ๊ฐ ์ง์ ๊ตฌ๋ํ๋ ๊ฒฝ์ฐ โ ๋ฌป์ง ์๊ณ ๋ฐ๋ก ์ ์ฉํฉ๋๋ค. ํ ๋ฒ๋ ์ค์ ๋์ง ์์ ๋จธ์ ์์๋ ๋ค๋ฅธ ๋ช
๋ น์ ์คํํด๋ ๋์ผํ ์ค์ ๋ง๋ฒ์ฌ๊ฐ ๋จผ์ ์คํ๋ฉ๋๋ค. FAILPROOFAI_NO_FIRST_RUN=1๋ก ์ด๋ฅผ ๋นํ์ฑํํ ์ ์์ต๋๋ค.
ํฉ์ด ์ถ๊ฐ๋๊ธฐ ์ ๊น์ง๋ block-failproofai-commands๋ง ์ ์ฑ
์ ์งํํฉ๋๋ค. ์ด ์ ์ฑ
์ ํญ์ ํ์ฑํ๋์ด ์์ผ๋ฉฐ ๋๊ฑฐ๋ ์ผ์ ์ค์งํ ์ ์์ต๋๋ค. ์งํ์ ์ผ์ ์ค์งํ ์ ์๋ ์์ด์ ํธ๋ ๋ค๋ฅธ ๋ชจ๋ ์ ์ฑ
๋ ๋ ์ ์๊ธฐ ๋๋ฌธ์
๋๋ค.
์ฐจ๋จ ๋์
| ์ ์ฑ | ์ฐจ๋จ ๋ด์ฉ |
|---|---|
block-env-files | .env ๋ฐ ๊ธฐํ ์ํฌ๋ฆฟ ํ์ผ ์ฝ๊ธฐ |
warn-repeated-tool-calls | ๋์ผํ ํด ํธ์ถ์ ๋ฐ๋ณตํ๋ ์์ด์ ํธ ๋ฃจํ |
block-sudo | ๊ถํ ์์น |
warn-destructive-sql | DROP, TRUNCATE, ์กฐ๊ฑด ์๋ DELETE |
block-terraform / block-kubectl | ๊ฒํ ๋์ง ์์ ๋ผ์ด๋ธ ์ธํ๋ผ ๋ณ๊ฒฝ |
block-rm-rf | ์ฌ๊ท์ ํ์ผ ์ญ์ |
block-force-push / block-push-master | git push --force, main ๋ธ๋์น๋ก์ ์ง์ ํธ์ |
์ด ๋ชจ๋ ์ ์ฑ
์ ํด ํธ์ถ์ ์คํ ์ ์ ์ฐจ๋จํ๋ฏ๋ก 12๊ฐ ํ๋ค์ค ๋ชจ๋์์ ๋์ํฉ๋๋ค. ์ฒ์ ๋ค ๊ฐ์ง๋ ํด์ ํธ์ถํ ์ ์๋ ๋ชจ๋ ์์ด์ ํธ์ ์ ์ฉ๋๊ณ , ๋๋จธ์ง ์ธ ๊ฐ์ง๋ ๊ฐ๋ฐ์๋ค์ด ๊ฐ์ฅ ์ ํธํ๋ ์ ์ฑ
์
๋๋ค โ ์ฝ๋ฉ CLI๋ ์ฐ๋ฆฌ๊ฐ ๊ฐ์ฅ ๊น์ด ์ง์ํ๋ ํ๋ค์ค ํด๋์ค์
๋๋ค. sanitize-* ๊ณ์ด์ ๋ณ๋๋ก ์๋ํฉ๋๋ค. ํด์ด ๋ฐํ๋ ํ ์คํ๋๋ฏ๋ก, ์ํฌ๋ฆฟ์ด ์ปจํ
์คํธ์ ํฌํจ๋์ง ์๋๋ก ๋ง๋ ๊ฒ์ด ์๋๋ผ ํด ์ถ๋ ฅ์์ ์ํฌ๋ฆฟ์ ๊ฐ์งํด ๋ณด๊ณ ํฉ๋๋ค.
โ 39๊ฐ์ ๊ธฐ๋ณธ ์ ๊ณต ์ ์ฑ ์ ์ฒด ๋ณด๊ธฐ
์ปค์คํ ์ ์ฑ
.failproofai/policies/ ๋๋ ํฐ๋ฆฌ์ ํ์ผ์ ์ถ๊ฐํ๋ฉด ์๋์ผ๋ก ๋ก๋๋ฉ๋๋ค โ ๋ณ๋์ ํ๋๊ทธ๊ฐ ํ์ ์์ต๋๋ค.
์ปค๋ฐํ๋ฉด ํ ์ ์ฒด๊ฐ ๋ค์ ํ ๋ ์ ์ฉ๋ฉ๋๋ค.
import { customPolicies, deny, allow } from "failproofai";
customPolicies.add({
name: "no-production-writes",
match: { events: ["PreToolUse"] },
fn: async (ctx) => {
if (ctx.toolInput?.file_path?.includes("production"))
return deny("Writes to production paths are blocked.");
return allow();
},
});
๋ชจ๋ ์ ์ฑ ์์ ์ฌ์ฉํ ์ ์๋ ์ธ ๊ฐ์ง ๊ฒฐ์ :
| ๊ฒฐ์ | ํจ๊ณผ |
|---|---|
allow() | ์์ ํ์ฉ |
deny(message) | ์ฐจ๋จ โ ๋ฉ์์ง๊ฐ ์์ด์ ํธ์๊ฒ ๋ฐํ๋จ |
instruct(message) | ํต๊ณผ์ํค๋, ์์ด์ ํธ์ ๋ค์ ํ๋กฌํํธ์ ์ปจํ ์คํธ ์ถ๊ฐ |
๊ด์ธก์ฑ
์ ์ฑ ์งํ์ ์ ๋ฐ์ ๋ถ๊ณผํฉ๋๋ค. ๋๋จธ์ง ์ ๋ฐ์ ์์ด์ ํธ๊ฐ ์ค์ ๋ก ๋ฌด์์ ํ๋์ง ํ์ ํ๋ ๊ฒ์ ๋๋ค.
์ธ์ ์์ด failproofai๋ฅผ ์คํํ๋ฉด localhost:8020์์ ๋์๋ณด๋๊ฐ ์์๋๋ฉฐ, ์ด๋ฏธ ๋จธ์ ์ ์ ์ฅ๋ ์คํ ํ์คํ ๋ฆฌ๋ฅผ ์ฝ์ด์ต๋๋ค โ ๊ณ์ ๋, ํ์๊ฐ์
๋, ์ธ๋ถ ์ ์ก๋ ์์ต๋๋ค. ์ธ์
๋ชฉ๋ก, ๊ฐ ์คํ ๋ด์ ๋ชจ๋ธ ํธ์ถ ์์, ํด ํธ์ถ, ํ
๊ฒฐ์ , ์ฐจ๋จ๋ ๋ด์ฉ๊ณผ ์ ์ฑ
์ด ์์ด์ ํธ์ ์ ๋ฌํ ๋ด์ฉ, ๊ทธ๋ฆฌ๊ณ ํ์คํ ๋ฆฌ์์ ์ํ ํจํด์ ์ค์บํ๊ณ ์ฐจ๋จํ ์ ์ฑ
์ ์ ์ํ๋ ์คํ๋ผ์ธ ๊ฐ์ฌ(failproofai audit)๋ฅผ ์ ๊ณตํฉ๋๋ค.
โ ๋ก์ปฌ ๋์๋ณด๋ ยท ํธ๋ ์ด์ค ์ฝ๊ธฐ ยท ๋ก์ปฌ ๊ฐ์ฌ
Failproof AI Observability๋ ๋์ผํ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ํธ์คํ ๋ฒ์ ์ผ๋ก, ํ๋ฆฟ ์ ์ฒด์์ ์์ด์ ํธ๋ฅผ ์ด์ํ๋ ํ์ ์ํ ์๋น์ค์ ๋๋ค. ๋ชจ๋ ํ๋ค์ค์ ๋ชจ๋ ์คํ์ ํ ๊ณณ์์ ํ์ธํ๊ณ , ๋ณ๋ ฌ ์๋ธ์์ด์ ํธ๋ฅผ ๋ณ๋ ๋ ์ธ์ผ๋ก ํ์ํ๋ ์คํ ๊ทธ๋ํ, ๋ชจ๋ธยทํดยทํ ์ p50/p95/p99 ๋ ์ดํด์, ๋ชจ๋ธ๋ณ ๋น์ฉ ๋ฐ ์ปจํ ์คํธ ์๋์ฐ ์ถ์ , ์ค๋ฅ ์ถ์ , ๊ณต์ ๊ฐ๋ฅํ ๋์๋ณด๋๋ฅผ ๊ฐ์ถ ์์ฒด ํธ๋ ์ด์ค SQL ์ฟผ๋ฆฌ, ์์ฒด ์๋น์ค๋ก ์ ์๋ฅผ ๋งค๊ธฐ๋ ํ๊ฐ, ๋ฐ๋ณต์ ์ธ ์คํจ๋ฅผ ์ฆ๊ฑฐ ๊ธฐ๋ฐ ๊ฒฐ๊ณผ๋ก ๋ณํํ๋ ์์ฝ ๊ฐ์ฌ, Slackยท์ด๋ฉ์ผยท์๋ช ๋ ์นํ ์ผ๋ก์ ์๋ฆผ ๋ผ์ฐํ ์ ์ ๊ณตํฉ๋๋ค. Enterprise ํ๋์์๋ ์์ฒด ํด๋ฌ์คํฐ ์ ํ ํธ์คํ ๋ ์ง์ํฉ๋๋ค.
โ ์ธ์ ยท ๊ฐ์ฌ ยท ๋ฐ๋ชจ ์์ฝ
๋ฌธ์
| ์์ํ๊ธฐ | |
|---|---|
| ๋น ๋ฅธ ์์ | ์ค์น, ํ๋ค์ค ์ฐ๊ฒฐ, ์ฒซ ๋ฒ์งธ ์คํ ํ์ธ |
| ๊ฐ๋ | ํ ์์คํ ์๋ ๋ฐฉ์ |
| ์ง์ ํ๋ค์ค | 12๊ฐ ์ ์ฒด ๋ฐ ๊ฐ ํ๋ค์ค์ ์งํ ๋ฒ์ |
| ๊ด์ธก | |
|---|---|
| ์ธ์ | ์คํ ์ถ์ : ๋ชจ๋ธ, ํด, ์ค๋ฅ, ๋ ์ดํด์ |
| ํธ๋ ์ด์ค ์ฝ๊ธฐ | ์คํ ๊ทธ๋ํ๊ฐ ๋งํด์ฃผ๋ ๊ฒ |
| ๊ฐ์ฌ | ์ฌ๋ฌ ์ธ์ ์ ๊ฑธ์น ์คํจ ํจํด ํ์ง |
| ๋ก์ปฌ ๋์๋ณด๋ | localhost:8020, ๊ณ์ ๋ถํ์ |
| ์งํ | |
|---|---|
| ์ ์ฑ ํฉ | Failproof AI ์ ์ฑ ๋ฐ ์ ์ฑ ํ๋ธ์ ํฉ |
| ์ ์ฑ ์์ฑํ๊ธฐ | ๊ฐ์ฌ ๊ฒฐ๊ณผ ๊ธฐ๋ฐ ๋๋ ์ฝ๋๋ก ์ง์ ์์ฑ |
| ์ค์ | ์ค์ ์ค์ฝํ, ๋ณํฉ ๊ท์น ๋ฐ ์ ์ฑ ํ๋ผ๋ฏธํฐ |
| ์ปค์คํ ์์ด์ ํธ ์ฐ๋ | |
|---|---|
| Python SDK | ํ๋ค์ค ์์ด ์์ด์ ํธ ์คํ์ ๋ณด๊ณ |
| Policy SDK | allow / deny / instruct ๋ ํผ๋ฐ์ค |
๋ผ์ด์ ์ค
Commons Clause๊ฐ ํฌํจ๋ MIT ๋ผ์ด์ ์ค โ ๋ด๋ถ ๋ฐ ๊ฐ์ธ ์ฌ์ฉ์ ๋ฌด๋ฃ์ด๋ฉฐ, failproofai ์์ฒด์ ์์ ์ ์ฌํ๋งค๋ ๋ณ๋ ๊ณ์ฝ์ด ํ์ํฉ๋๋ค. ์ ๋ฌธ์ LICENSE๋ฅผ ์ฐธ์กฐํ์ธ์.
๊ธฐ์ฌํ๊ธฐ
CONTRIBUTING.md๋ฅผ ์ฐธ์กฐํ์ธ์. ์๋ก์ด ์ ์ฑ , ์ฃ์ง ์ผ์ด์ค, ๋ฒ์ญ ๋ชจ๋ ํ์ํฉ๋๋ค.
์์ ์ ์ ๋น๋ํ์ธ์. ๋จผ์
bun install && bun run build๋ฅผ ์คํํ์ธ์. ์ด ์ ์ฅ์๋ failproofai ์์ฒด ํ ์ ์๊ธฐ ์์ ์๊ฒ ์ ์ฉํ๋ฉฐ, ํ ์ ์ปดํ์ผ๋dist/๋ฒ๋ค์์failproofai์ํฌํธ๋ฅผ ํด์ํฉ๋๋ค โ ๋น๋ ์์ด๋Cannot find package 'failproofai'ํ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.src/๋ณ๊ฒฝ ํ์๋ ๋ค์ ๋น๋ํ์ธ์. ์์ธํ ๋ด์ฉ์ Build before the in-repo dev hooks will work๋ฅผ ์ฐธ์กฐํ์ธ์.
SF์ ๋ฒต๊ฐ๋ฃจ๋ฃจ์์ โค๏ธ๋ฅผ ๋ด์ befailproof.ai๊ฐ ๋ง๋ค์์ต๋๋ค.