> ## Documentation Index
> Fetch the complete documentation index at: https://docs.platform.nora.my/llms.txt
> Use this file to discover all available pages before exploring further.

# 에이전트와 블록

> 다섯 종류의 블록, 그리고 연결 방식.

**Agent** 는 Flow 의 추론 코어입니다 — 무엇을 할지 결정하는 블록. 나머지 (Tool, Action, Trigger, DataSource) 는 Agent 에 입력과 출력을 주기 위해 존재합니다.

## Agent

Agent 는 세 가지가 필요합니다:

1. **역할 (role)** — 무엇을 해야 하는지 자연어로 적은 지시.
2. **모델 (model)** — GPT·Claude·Gemini급, 또는 Nora 자체 모델. Flow 를 다시 만들지 않고 언제든 교체 가능.
3. **연결된 블록들** — 호출할 수 있는 Tool, 검색할 수 있는 DataSource, 이후 실행되는 Action.

```text theme={null}
Role:  너는 FinCorp 의 지원 어시스턴트야.
       계좌와 수수료 질문에 답해. 확신이 없으면 확실하지 않다고 말해.
Model: GPT-4급 (기본)
Tools: [look-up-account, calc-fee]
Data:  [help-center, policy-docs]
```

## Tool

**Tool** 은 Agent 가 호출할 수 있는 하나의 액션입니다. 예:

* 백엔드로 보내는 HTTP 요청 (`GET /accounts/{id}`)
* 계산을 수행하는 코드 스니펫
* 사전 준비된 연동 (예: Google Sheets 읽기)

도구를 자연어로 설명하면 Nora 가 호출 스키마를 생성해 Agent 가 언제 쓸지 알게 합니다.

## Action

**Action** 은 Agent 가 답변을 만든 *후에* 실행됩니다. "부수 효과 (side effect)" 라고 생각하세요.

* 이메일 전송
* Slack 게시
* Google Sheet 쓰기
* 웹훅 알림

Action 은 선택 사항입니다. 순수 Q\&A Flow 는 Action 이 없습니다.

## Trigger

**Trigger** 는 Flow 를 시작하는 것입니다. 하나의 Flow 에 하나의 Trigger (현재로선). 옵션:

* **채팅** — 사용자가 앱 또는 Nora 채팅 패널에서 메시지 전송
* **웹훅** — 외부 시스템이 페이로드를 POST
* **스케줄** — 크론 스타일, 예: 매 시간

## DataSource

**DataSource** 는 Agent 에 연결된 검색 가능한 지식 뭉치입니다. 문서, 스프레드시트, 또는 데이터베이스.

Agent 가 언제 검색할지, 무엇을 찾을지 결정합니다. 여러분은 소스만 지정하면 됩니다.

## 연결 방식

블록은 캔버스에서 배선됩니다. 전형적 Flow:

```
[Trigger: 채팅 메시지]
        ↓
[Agent: support-agent]  ←── [DataSource: 헬프 센터]
        ↓                    [Tool: look-up-account]
[Action: CRM 로그]
```

배선을 직접 손으로 쓰지 않아도 됩니다 — 두 블록 포트 사이를 드래그하면 됩니다.
