Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
ogi — 오픈소스 링크 분석 & OSINT 프레임워크 | Kitploit
도구/GitHubGitHub/khashashin/ogi
OSINT (Open Source Intelligence)ReconnaissanceInformation GatheringWeb SecuritySocial EngineeringThreat IntelligenceEmail HarvestingLearning & EducationCrawlerDNS Analysis
GitHubkhashashin/ogi
280373313일 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

ogi

오픈소스 링크 분석 & OSINT 프레임워크

저장소 보기웹사이트
<div align="center">

<img src="https://assets.kitploit.com/production/public/readmes/12241/4d60ae367bb5f1d9b7d1d95df2b16186f01454c9610e40703f636923a0a70ced.png" alt="OGI 마스코트" width="200" />

# OpenGraph Intel (OGI)

**오픈 소스 시각적 링크 분석 및 OSINT 프레임워크.**
**무료, 자체 호스팅 가능, 커뮤니티 주도.**

[![License: AGPL v3](https://img.shields.io/badge/License-AGPL_v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)
[![CI](https://github.com/khashashin/ogi/actions/workflows/ci.yml/badge.svg)](https://github.com/khashashin/ogi/actions/workflows/ci.yml)
[![Docker](https://github.com/khashashin/ogi/actions/workflows/docker-publish.yml/badge.svg)](https://github.com/khashashin/ogi/actions/workflows/docker-publish.yml)
[![Python 3.14+](https://img.shields.io/badge/python-3.14+-3776AB.svg?logo=python&logoColor=white)](https://www.python.org)
[![TypeScript](https://img.shields.io/badge/TypeScript-5.9-3178C6.svg?logo=typescript&logoColor=white)](https://www.typescriptlang.org)
[![React](https://img.shields.io/badge/React-19-61DAFB.svg?logo=react&logoColor=black)](https://react.dev)
[![FastAPI](https://img.shields.io/badge/FastAPI-0.134-009688.svg?logo=fastapi&logoColor=white)](https://fastapi.tiangolo.com)
![Version](https://img.shields.io/github/v/release/khashashin/ogi?display_name=tag&color=green)

[기능](#features) &bull; [스크린샷](#screenshots) &bull; [빠른 시작](#quick-start) &bull; [Docker](#docker) &bull; [Transform Hub](#transform-hub) &bull; [아키텍처](#architecture) &bull; [기여하기](#contributing)

</div>

---

> **주의:** 이 프로젝트는 활발히 발전 중입니다. 견고한 핵심 기능과 테스트 범위를 갖추고 있으며, 각 릴리스마다 문서, 보안 강화, 기능 깊이를 계속 개선하고 있습니다. 기여, 버그 신고, 피드백을 환영합니다.

## 기능

- **시각적 그래프 조사** — 엔티티 드래그 앤 드롭, 대화형으로 연결 탐색
- **20개 이상의 내장 변환** — DNS, WHOIS, SSL 인증서, 지리적 위치, 웹/이메일/해시/소셜 인리치먼트 등
- **Transform Hub** — 레지스트리에서 커뮤니티 변환 탐색 및 설치
- **AI 조사관** — 프롬프트 기반 에이전트 조사로 변환 실행 계획, 실시간 진행 스트리밍, 감사 가능한 결과 요약
- **가져오기 / 내보내기** — JSON, CSV, GraphML, MTGX 형식 가져오기
- **그래프 분석** — 중심성, 커뮤니티 탐지, 최단 경로
- **실시간 협업** — Supabase Realtime을 통한 프로젝트, 공유, 실시간 동기화
- **비동기 변환 작업** — WebSocket 진행 업데이트가 포함된 Redis/RQ 큐
- **플러그인 시스템** — YAML 매니페스트를 사용한 디렉터리 기반 플러그인 검색
- **CLI 도구** — 터미널에서 변환 검색, 설치, 관리
- **어디서나 실행** — 로컬 SQLite 모드(설정 불필요) 또는 팀/클라우드 설정용 PostgreSQL + Supabase
- **Docker 지원** — `docker compose up` 한 번으로 배포

## 스크린샷

<div align="center">

|              그래프 조사              |              엔티티 인리치먼트              |
| :-----------------------------------: | :-----------------------------------------: |
| ![그래프 조사](https://assets.kitploit.com/production/public/readmes/12241/736f7dcefbbf9d6fe364a9485e3cdfbbe58abb28f544befa703c96f21c4af25f.png) | ![엔티티 인리치먼트](https://assets.kitploit.com/production/public/readmes/12241/2f82a9ff6205006bf1cc00870f2456f4070c5b56237e62bfc23854ac328147f8.png) |

|              Transform Hub              |             내보내기 / 가져오기             |
| :-------------------------------------: | :---------------------------------------: |
| ![Transform Hub](https://assets.kitploit.com/production/public/readmes/12241/1aad4060afe92b4b922a37bc2223994e072d9c91154223ed74bfbd1fb6c5332d.png) | ![내보내기 가져오기](https://assets.kitploit.com/production/public/readmes/12241/91c2d3ec087b52685a352bc6acd465784f56d45b4d8bdae1af5e1ed6a4af3523.png) |

</div>

## 빠른 시작

### 사전 요구 사항

| 도구                             | 버전    |
| -------------------------------- | ------- |
| [Python](https://www.python.org) | 3.14+   |
| [uv](https://docs.astral.sh/uv/) | 최신    |
| [Node.js](https://nodejs.org)    | 20+     |
| [pnpm](https://pnpm.io)          | 최신    |

### 백엔드```bash
cd backend
uv sync
uv run uvicorn ogi.main:app --reload
```
API는 `http://localhost:8000`에서 사용할 수 있습니다.

로컬 변환 실행을 위해서는 Redis와 변환 작업자도 실행 중이어야 합니다. Redis만으로는 충분하지 않습니다.

Redis 시작:```bash
docker run -d --name ogi-redis -p 6379:6379 redis:7-alpine
```
두 번째 터미널에서 변환 작업자를 시작하십시오:```bash
cd backend
uv run python -m ogi.worker.run_worker
```
`Job queue not available` 또는 `Redis not available`가 표시되면 다음을 확인하세요:

- `OGI_REDIS_URL`이 로컬 호스트 기반 실행의 경우 `redis://localhost:6379/0`을 가리키는지
- Redis가 실행된 후 백엔드가 재시작되었는지
- 별도의 worker 프로세스가 실행 중인지
- Docker Compose 외부에서 Docker 전용 호스트명 `redis`를 사용하지 않는지

PostgreSQL (`OGI_USE_SQLITE=false`)에 대해 백엔드를 실행하면 시작 시 요청을 처리하기 전에 Alembic 마이그레이션이 자동으로 적용됩니다. Docker 배포도 백엔드 컨테이너 진입점에서 동일하게 수행합니다.

AI Investigator 실행은 또 다른 별도의 worker에 의해 처리됩니다:```bash
cd backend
uv run python -m ogi.agent.run_worker
```
### 프론트엔드```bash
cd frontend
pnpm install
pnpm dev
```
Open http://localhost:5173. 그게 전부입니다.

### AI Investigator

AI Investigator는 선택적 공급자 기반 워크플로로, 변환 시퀀스를 계획하고, 승인을 요청하며, 작업 공간 내에서 조사 진행 상황을 요약할 수 있습니다.

- 프로젝트 내에서 `AI Investigator` 탭을 엽니다.
- 조사자 설정 대화상자에서 공급자와 모델을 구성합니다.
- 공급자 API 키를 `API Keys`에 저장합니다.
- 백엔드와 함께 별도의 `agent-worker` 프로세스를 실행합니다.

현재 구현은 사용자별 공급자 구성과 메인 API 서버와 독립적으로 조사 단계를 실행하는 전용 워커를 지원합니다.

### CLI

CLI를 실행하는 두 가지 지원 방식:

**권장** (활성화 불필요):```bash
cd backend
uv sync
uv run ogi --help
```
**활성화된 virtualenv** (일반 `ogi` 명령):```bash
cd backend
uv venv
# PowerShell:
.\.venv\Scripts\Activate.ps1
uv pip install -e .
ogi --help
```
## Docker

### 개발```bash
cp .env.example .env
docker compose up
```
### 프로덕션

사전 빌드된 GHCR 이미지를 사용하세요.

중요: [docker-compose.prod.yml](https://github.com/khashashin/ogi/blob/main/docker-compose.prod.yml)은 외부 PostgreSQL 데이터베이스가 필요합니다. `db` 서비스를 포함하지 않습니다.

내장 Postgres 및 Redis가 포함된 올인원 로컬 Docker 스택을 원하신다면 다음을 사용하세요:```bash
docker compose up -d
```
도달 가능한 PostgreSQL 인스턴스가 이미 있고 `OGI_DATABASE_URL`을 적절히 설정한 경우에만 프로덕션 compose 파일을 사용하세요:```bash
docker compose -f docker-compose.prod.yml pull
docker compose -f docker-compose.prod.yml up -d
```
`.env` 파일에서 `OGI_IMAGE_TAG`를 설정하여 특정 릴리스 이미지 태그를 고정할 수 있습니다 (예: `v0.2.6`). 기본값은 `latest`입니다.

### Hetzner Cloud

[![Hetzner Cloud 크레딧 받기](https://img.shields.io/badge/Get_Hetzner_Cloud_credits-D50C2D?style=for-the-badge&logo=hetzner&logoColor=white)](https://hetzner.cloud/?ref=LspEGc99USBa)
[![Hetzner에 Docker CE 배포](https://img.shields.io/badge/Deploy_Docker_CE_on_Hetzner-D50C2D?style=for-the-badge&logo=hetzner&logoColor=white)](https://console.hetzner.com/deploy/docker-ce)

새로운 Hetzner 사용자는 첫 번째 링크를 사용하여 Hetzner Cloud 크레딧으로 가입할 수 있습니다. 이 링크는 추천 링크이므로, 추천이 적격할 경우 OGI 유지 관리자도 Hetzner Cloud 크레딧을 받을 수 있습니다. 서버를 생성한 후 위의 Docker 배포 명령어를 사용하여 OGI를 실행하세요.

### 구성 가능한 변환 상한

OGI는 `max_results`, `max_links`, `max_urls`, `max_content_chars`와 같은 항목에 대해 합리적인 변환별 최대값을 제공하지만, 이제 이러한 상한을 중앙에서 재정의할 수 있어 클라우드 배포에서 로컬 제한을 하드코딩하지 않고도 적용할 수 있습니다.

`.env`에서 `OGI_TRANSFORM_SETTING_MAX_OVERRIDES`를 사용하세요:```env
OGI_TRANSFORM_SETTING_MAX_OVERRIDES=max_results=50,max_urls=25,max_links=40,max_content_chars=20000
```
로컬 우선 배포에서 특정 한도를 제거하려면:```env
OGI_TRANSFORM_SETTING_MAX_OVERRIDES=max_results=none,max_urls=none,max_links=none,max_content_chars=none
```
재정의는 변환 설정 이름으로 키가 지정되며, OGI의 공유 변환 기반/런타임을 사용하는 내장 변환 및 커뮤니티 플러그인에 적용됩니다.

### Hosted cloud instance and Supporter plan

[ogi.khas.app](https://ogi.khas.app)에서 제공되는 호스티드 클라우드 버전은 사용자가 셀프 호스팅 여부를 결정하기 전에 OGI를 빠르게 사용해볼 수 있도록 처음 구축되었습니다. 이후 350명 이상의 활성 클라우드 사용자를 보유한 이 프로젝트의 가장 인기 있는 사용 방식이 되었습니다.

이러한 사용량은 이 사이드 프로젝트의 인프라 비용도 증가시켰습니다. 따라서 저장소에는 클라우드 전용 Supporter 구독 및 변환 실행 쿨다운 시스템이 포함되어 있습니다. 공용 클라우드 인스턴스에서 무료 사용자는 변환 실행 간 시간 제한이 있을 수 있으며, Supporter 사용자는 Supabase 및 VPS 비용을 지원하기 위해 상징적인 월 3 USD의 구독료를 낼 수 있습니다.

Supporter 구독은 프로필 청구 컨트롤 또는 Stripe 청구 포털에서 취소할 수 있습니다. 취소는 향후 청구를 중단하지만, 유료 구독 기간은 환불되지 않거나 비례 배분되지 않습니다.

이 청구 코드는 의도적으로 구성에 의해 보호됩니다. `OGI_DEPLOYMENT_MODE=cloud` 및 `OGI_CLOUD_BILLING_ENABLED=true`인 경우에만 효과가 있습니다. 자체 호스팅 배포는 청구를 비활성화된 상태로 두어야 하며, 청구 또는 페이월 동작이 표시되지 않아야 합니다.

### Telemetry

OGI에는 실제 사용 현황, 특히 자체 호스팅 배포 전반에 걸친 사용을 이해하는 데 도움이 되는 설치 수준의 제품 텔레메트리가 포함되어 있습니다.

- `OGI_TELEMETRY_ENABLED=true`는 텔레메트리 수집을 활성화합니다.
- `OGI_TELEMETRY_LEVEL=full`은 기본 수집 레벨입니다.
- `OGI_TELEMETRY_ENABLED=false`로 설정하면 텔레메트리 수집을 완전히 비활성화합니다.
- `OGI_TELEMETRY_LEVEL=basic`으로 설정하면 전송되는 데이터를 줄입니다.

`basic` 전송 내용:

- OGI 버전
- 일일 활성 설치 핑

`full` 추가 전송 내용:

- 인스턴스 생성 날짜
- 해당 기간의 프로젝트, 엔티티, 엣지, 변환 실행, 조사자 실행 및 활성 사용자에 대한 집계 수
- 설치된 변환 및 해당 버전

텔레메트리는 그래프 내용, 엔티티 값, API 키, 프롬프트 또는 기타 조사 데이터를 전송하지 않도록 설계되었습니다. 현재 정책 세부 사항은 [개인정보처리방침](https://ogi.khas.app/privacy#telemetry)에도 게시되어 있습니다.

<details>
<summary><strong>개발 Compose 서비스</strong></summary>

| 서비스        | 설명                          | 포트 |
| ------------- | ----------------------------- | ---- |
| `backend`     | FastAPI 애플리케이션 서버      | 8000 |
| `worker`      | RQ 비동기 작업 워커            | -    |
| `agent-worker`| AI 조사자 워커                | -    |
| `frontend`    | nginx를 통해 제공되는 React 앱 | 80   |
| `db`          | PostgreSQL 16                  | 5432 |
| `redis`       | Redis 7 (작업 큐)              | 6379 |

</details>

<details>
<summary><strong>프로덕션 Compose 서비스</strong></summary>

| 서비스        | 설명                          | 포트 |
| ------------- | ----------------------------- | ---- |
| `backend`     | FastAPI 애플리케이션 서버      | 8000 |
| `worker`      | RQ 비동기 작업 워커            | -    |
| `agent-worker`| AI 조사자 워커                | -    |
| `frontend`    | nginx를 통해 제공되는 React 앱 | 80   |
| `redis`       | Redis 7 (작업 큐)              | 6379 |

`docker-compose.prod.yml`은 `OGI_DATABASE_URL`을 통해 외부 PostgreSQL 데이터베이스를 필요로 합니다.

</details>

---

<details>
<summary><strong>부팅 시 플러그인 종속성</strong></summary>

사전 빌드된 이미지를 사용하고 플러그인에 추가 Python 라이브러리가 필요한 경우, OGI는 컨테이너 시작 시 다음에서 플러그인 종속성을 설치합니다.

1. `plugins/requirements.txt` (권장), 또는
2. `requirements.txt`가 없을 때 `plugins/ogi-lock.json`에서 파생된 자동 생성 요구 사항.

**환경 변수:**

| 변수                               | 기본값                              | 설명                                       |
| ---------------------------------- | ----------------------------------- | ----------------------------------------- |
| `OGI_BOOT_REQUIREMENTS_ENABLE`     | `true`                              | 부팅 시 설치 활성화/비활성화              |
| `OGI_BOOT_REQUIREMENTS_FILE`       | `/app/plugins/requirements.txt`     | 요구 사항 파일 경로                        |
| `OGI_BOOT_LOCK_FILE`               | `/app/plugins/ogi-lock.json`        | 잠금 파일 경로                             |
| `OGI_BOOT_REQUIREMENTS_STRICT`     | `false`                             | 요구 사항이 없으면 시작 실패               |
| `OGI_BOOT_REQUIREMENTS_CACHE_DIR`  | `/tmp/ogi-boot`                     | 생성된 요구 사항의 임시/캐시 디렉터리      |

</details>

---

## 변환 허브

OpenGraph Intel에는 내장된 변환 마켓플레이스가 있습니다. [커뮤니티 레지스트리](https://github.com/opengraphintel/ogi-transforms)에서 변환을 찾아보고, 설치하고, 관리하세요.

> **보안 참고 사항:** API 키가 필요한 플러그인은 권한 있는 코드로 취급되어야 합니다. 플러그인이 사용자의 비밀에 접근하고 아웃바운드 네트워크 요청을 할 수 있는 경우, 해당 비밀을 오용하거나 유출할 수 있습니다. 타사 플러그인을 설치하거나 실행하기 전에 신뢰 계층, 권한 및 필요한 서비스를 검토하세요.```bash
# Search for transforms
uv run ogi transform search dns

# Install a transform
uv run ogi transform install shodan-host-lookup
```
### 기본 제공 변환 카테고리

| 카테고리 | 예시                              |
| -------- | --------------------------------- |
| DNS      | A, AAAA, MX, NS, CNAME 레코드        |
| IP 및 ASN | GeoIP, 역방향 IP, ASN 정보           |
| SSL/TLS  | 인증서 투명성, SSL 랩스    |
| 이메일    | 메일 서버 검증, 침해 점검  |
| 웹      | WHOIS, 도메인 정보, 웹 추출    |
| 소셜   | 사용자명 열거, 소셜 프로필 |
| 해시     | MD5, SHA1, SHA256 조회             |
| 위치 | 지오코딩, 날씨, 인근 ASN 데이터   |

### 지원되는 엔티티 유형

`Person` &bull; `Username` &bull; `Domain` &bull; `IPAddress` &bull; `EmailAddress` &bull; `PhoneNumber` &bull; `Organization` &bull; `URL` &bull; `SocialMedia` &bull; `Hash` &bull; `Document` &bull; `Location` &bull; `ASNumber` &bull; `Network` &bull; `MXRecord` &bull; `NSRecord` &bull; `Nameserver` &bull; `SSLCertificate` &bull; `Subdomain` &bull; `HTTPHeader`

### 자체 변환 구축하기

직접 구축하고 싶으신가요? [기여 가이드](https://github.com/opengraphintel/ogi-transforms/blob/main/CONTRIBUTING.md)를 참조하세요.

변환에 외부 서비스 자격 증명이 필요한 경우 `api_keys_required`에 선언하세요. 변환 설정에 비밀을 저장하지 마세요. OGI는 `API Keys` 아래에서 이를 관리하며, 비밀을 사용하는 플러그인은 권한 있는 코드로 간주됩니다.

변환에 `max_results` 또는 `max_content_chars`와 같은 제한된 설정이 노출되는 경우, 가능하면 맞춤형 일회성 이름보다 안정적인 설정 이름을 선호하세요. OGI는 `OGI_TRANSFORM_SETTING_MAX_OVERRIDES`로 중앙에서 최대값을 재정의할 수 있으며, 이는 클라우드 배포에서 제한을 강제하고 로컬 사용자가 제거할 수 있도록 도와줍니다.

각 플러그인은 `plugin.yaml` 매니페스트가 있는 디렉터리입니다:```yaml
name: my-transform
version: "1.0.0"
display_name: My Transform
description: What it does
author: Your Name
license: MIT
category: dns
input_types: [Domain]
output_types: [IPAddress]
permissions:
  network: true
  filesystem: false
  subprocess: false
```
## 아키텍처

### 기술 스택

| 계층            | 기술                                                                  |
| ---------------- | --------------------------------------------------------------------------- |
| 백엔드          | Python 3.14+, FastAPI, SQLModel, asyncpg / aiosqlite                        |
| 프론트엔드         | React 19, TypeScript 5.9, Sigma.js (graphology), Zustand, Tailwind CSS 4    |
| 데이터베이스         | PostgreSQL 16 (기본) / SQLite (로컬 대체)                           |
| 인증 및 실시간  | Supabase Auth + JWT + Realtime (로컬 모드에서 선택 사항)                     |
| 작업 큐        | Redis 7 + RQ (비동기 변환)                                             |
| AI 런타임       | 공급자 지원 AI 조사 워커 (감사된 변환 오케스트레이션 포함) |
| 패키지 관리자 | uv (백엔드), pnpm (프론트엔드)                                               |
| 배포       | Docker, nginx, GHCR                                                         |

### 프로젝트 구조```
ogi/
├── backend/
│   └── ogi/
│       ├── api/            # REST API routes
│       ├── cli/            # CLI tool (Typer)
│       ├── db/             # Database layer (asyncpg + aiosqlite)
│       ├── engine/         # Graph engine & transform engine
│       ├── models/         # SQLModel definitions
│       ├── store/          # Data stores
│       ├── transforms/     # Built-in transforms
│       │   ├── dns/        # DNS resolution transforms
│       │   ├── cert/       # SSL certificate transforms
│       │   ├── email/      # Email enrichment
│       │   ├── hash/       # Hash lookups
│       │   ├── ip/         # IP/ASN/geolocation
│       │   ├── org/        # Organization info
│       │   ├── social/     # Social media
│       │   └── web/        # Web scraping/extraction
│       ├── worker/         # Async job queue (RQ)
│       ├── config.py       # Pydantic settings
│       └── main.py         # FastAPI entry point
├── frontend/
│   └── src/
│       ├── api/            # API client
│       ├── components/     # React components
│       ├── hooks/          # Custom hooks (realtime sync, etc.)
│       ├── stores/         # Zustand state management
│       ├── types/          # TypeScript types
│       └── App.tsx         # Main application
├── plugins/                # Community plugins directory
├── docs/                   # Documentation & images
├── docker-compose.yml      # Development deployment
├── docker-compose.prod.yml # Production deployment
└── .env.example            # Environment template
```
### Configuration

OGI는 `.env` 파일을 지원하는 [pydantic-settings](https://docs.pydantic.dev/latest/concepts/pydantic_settings/)를 사용합니다. 런타임/백엔드 변수는 `OGI_` 접두사가 붙습니다.

리스트 스타일 설정은 다음 중 하나를 허용합니다:

- JSON 배열, 예: `["plugins","../plugins"]`
- 쉼표로 구분된 문자열, 예: `plugins,../plugins`

<details>
<summary><strong>주요 환경 변수</strong></summary>

| 변수                                        | 설명                                                                                                      | 기본값                                             |
| ----------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- |
| `OGI_APP_NAME`                                  | 애플리케이션 이름                                                                                                 | `OGI`                                               |
| `OGI_HOST`                                      | 백엔드 바인드 호스트                                                                                                | `0.0.0.0`                                           |
| `OGI_PORT`                                      | 백엔드 포트                                                                                                     | `8000`                                              |
| `OGI_CORS_ORIGINS`                              | 허용된 프론트엔드 출처(origin)                                                                                         | `http://localhost:5173,http://localhost:3000`       |
| `OGI_USE_SQLITE`                                | PostgreSQL 대신 SQLite 사용                                                                                 | `true`                                              |
| `OGI_DB_PATH`                                   | SQLite 데이터베이스 파일 경로                                                                                        | `ogi.db`                                            |
| `OGI_DATABASE_URL`                              | PostgreSQL 연결 문자열                                                                                     | `postgresql://postgres:postgres@localhost:5432/ogi` |
| `OGI_REDIS_URL`                                 | RQ/작업을 위한 Redis 연결 문자열                                                                              | `redis://localhost:6379/0`                          |
| `OGI_RQ_QUEUE_NAME`                             | 변환 작업을 위한 큐 이름                                                                                    | `transforms`                                        |
| `OGI_TRANSFORM_TIMEOUT`                         | 변환당 작업 제한 시간(초)                                                                             | `300`                                               |
| `OGI_AGENT_WORKER_POLL_INTERVAL_SEC`            | AI 조사관 워커의 폴링 간격                                                                     | `2.0`                                               |
| `OGI_AGENT_CLAIM_TIMEOUT_SEC`                   | AI 조사관 단계 복구를 위한 스테일 클레임 제한 시간                                                            | `120`                                               |
| `OGI_AUTO_RUN_MIGRATIONS`                       | 로컬 비SQLite 앱 시작 시 Alembic 자동 실행                                                                 | `true`                                              |
| `OGI_RUN_DB_MIGRATIONS`                         | 컨테이너 진입점에서 DB 마이그레이션 실행                                                                        | `false`                                             |
| `OGI_DB_MIGRATION_RETRIES`                      | 진입점 마이그레이션 재시도 횟수                                                                                | `30`                                                |
| `OGI_DB_MIGRATION_DELAY_SECONDS`                | 진입점 마이그레이션 재시도 간 지연(초)                                                                      | `2`                                                 |
| `OGI_PLUGIN_DIRS`                               | 플러그인 검색 디렉터리                                                                                        | `plugins,../plugins`                                |
| `OGI_DEPLOYMENT_MODE`                           | 배포 모드 (`self-hosted` 또는 `cloud`)                                                                       | `self-hosted`                                       |
| `OGI_CLOUD_BILLING_ENABLED`                     | 클라우드 전용 서포터 청구 및 변환 쿨다운 시행 활성화                                           | `false`                                             |
| `OGI_FREE_TRANSFORM_COOLDOWN_SECONDS`           | 무료 클라우드 사용자의 변환기 실행 간 쿨다운(초)                                                                | `1800`                                              |
| `OGI_PAID_TRANSFORM_COOLDOWN_SECONDS`           | 유료 클라우드 사용자의 변환기 실행 간 쿨다운(초)                                                                | `0`                                                 |
| `OGI_STRIPE_SECRET_KEY`                         | Checkout 및 포털 세션을 위한 Stripe 서버 측 비밀 키                                                   | 설정되지 않음                                               |
| `OGI_STRIPE_WEBHOOK_SECRET`                     | Stripe 웹훅 서명 비밀                                                                                    | 설정되지 않음                                               |
| `OGI_STRIPE_SUPPORTER_PRICE_ID`                 | 서포터 플랜을 위한 Stripe 정기 가격 ID                                                                 | 설정되지 않음                                               |
| `OGI_STRIPE_SUPPORTER_AMOUNT_CENTS`             | 서포터 플랜 표시 금액(센트)                                                                            | `300`                                               |
| `OGI_STRIPE_SUPPORTER_CURRENCY`                 | 서포터 플랜 표시 통화                                                                          | `usd`                                               |
| `OGI_BILLING_SUCCESS_URL`                       | 선택적 Stripe Checkout 성공 리디렉션                                                                        | 요청에서 파생                                |
| `OGI_BILLING_CANCEL_URL`                        | 선택적 Stripe Checkout 취소 리디렉션                                                                         | 요청에서 파생                                |
| `OGI_BILLING_PORTAL_RETURN_URL`                 | 선택적 Stripe 청구 포털 반환 URL                                                                        | 요청에서 파생                                |
| `OGI_REGISTRY_REPO`                             | 변환 레지스트리 GitHub 저장소                                                                                   | `opengraphintel/ogi-transforms`                     |
| `OGI_REGISTRY_CACHE_TTL`                        | 레지스트리 캐시 TTL(초)                                                                                    | `3600`                                              |
| `OGI_TRANSFORM_SETTING_MAX_OVERRIDES`           | 변환 설정에 대한 선택적 전역 최대 재정의 맵                                                          | 비어 있음                                               |
| `OGI_GITHUB_TOKEN`                              | 레지스트리/API 속도 제한을 위한 선택적 GitHub 토큰                                                               | 설정되지 않음                                               |
| `OGI_SUPABASE_URL`                              | Supabase 프로젝트 URL                                                                                             | 설정되지 않음                                               |
| `OGI_SUPABASE_ANON_KEY`                         | Supabase 익명/공개 키                                                                                         | 설정되지 않음                                               |
| `OGI_SUPABASE_SERVICE_ROLE_KEY`                 | Supabase 서비스 역할 키                                                                                        | 설정되지 않음                                               |
| `OGI_SUPABASE_JWT_SECRET`                       | Supabase JWT 시크릿                                                                                              | 설정되지 않음                                               |
| `OGI_SUPABASE_REDIRECT_URL`                     | 프론트엔드 인증 흐름에서 사용하는 리디렉션 URL                                                                         | 설정되지 않음                                               |
| `OGI_ADMIN_EMAILS`                              | 레지스트리/플러그인 관리를 위한 관리자 사용자                                                                       | 설정되지 않음                                               |
| `OGI_TELEMETRY_ENABLED`                         | 설치 수준 텔레메트리 활성화 또는 비활성화                                                                   | `true`                                              |
| `OGI_TELEMETRY_LEVEL`                           | 텔레메트리 수준 (`basic` 또는 `full`)                                                                              | `full`                                              |
| `OGI_API_KEY_ENCRYPTION_KEY`                    | 암호화된 API 키 저장소를 위한 Fernet 키                                                                         | 설정되지 않음 (강력 권장)                      |
| `OGI_API_KEY_INJECTION_ALLOW_COMMUNITY_PLUGINS` | 커뮤니티 플러그인이 저장된 API 키를 받도록 허용                                                               | `true`                                              |
| `OGI_API_KEY_INJECTION_TRUSTED_TIERS_ONLY`      | 저장된 키 주입을 신뢰할 수 있는 등급으로만 제한                                                              | `false`                                             |
| `OGI_API_KEY_INJECTION_ALLOWED_TIERS`           | 신뢰 전용 모드에서 허용되는 등급                                                                  | `official,verified`                                 |
| `OGI_API_KEY_SERVICE_ALLOWLIST`                 | 저장된 키 주입을 위한 선택적 허용 서비스                                                               | 비어 있음                                               |
| `OGI_API_KEY_SERVICE_BLOCKLIST`                 | 저장된 키 주입을 위한 선택적 차단 서비스                                                               | 비어 있음                                               |
| `OGI_LLM_PROVIDER`                              | 기본 AI 조사관 제공자 대체                                                                        | `openai`                                            |
```

---

[Read more](https://github.com/khashashin/ogi)
도구 다운로드