---
title: Přehled
description: Server-side TypeScript, který běží uvnitř Twenty — spouštěný pomocí HTTP rout, plánů CRON, databázových událostí, nástrojů AI nebo akcí pracovního postupu.
icon: bolt
---

**Logická vrstva** aplikace Twenty je kód, který *běží* — server-side TypeScript handlery reagující na HTTP požadavky, plány CRON a změny záznamů; AI dovednosti a agenti, kteří fungují uvnitř pracovního prostoru; a připojení OAuth, která umožňují vašim funkcím jednat jménem uživatele ve službách třetích stran.

```text
            ┌─ HTTP route      ──┐
            │  Cron schedule     │
            │  Database event    │      ┌────────────────────┐
  triggers ─┤  AI tool call      ├─────▶│ Logic function     │
            │  Workflow action   │      │ (your handler)     │
            │  Manual exec       │      └────────────────────┘
            └────────────────────┘                │
                                                  ▼
                                  ┌────────────────────────────┐
                                  │ Twenty API (records)       │
                                  │ Third-party API            │
                                  │   (via Connection token)   │
                                  └────────────────────────────┘
```

## V této části

<CardGroup cols={2}>
  <Card title="Logické funkce" icon="bolt" href="/l/cs/developers/extend/apps/logic/logic-functions">
    Základní stavební blok — typy spouštěčů, payloady a typovaný klient API.
  </Card>
  <Card title="Dovednosti a agenti" icon="robot" href="/l/cs/developers/extend/apps/logic/skills-and-agents">
    Opakovaně použitelné pokyny pro agenty AI a asistenti s vlastními systémovými prompty.
  </Card>
  <Card title="Připojení" icon="plug" href="/l/cs/developers/extend/apps/logic/connections">
    Přihlašovací údaje OAuth, které vaše aplikace uchovává pro služby třetích stran — Linear, GitHub, Slack a další.
  </Card>
</CardGroup>

## Přehled typů spouštěčů

Logická funkce volí jeden nebo více spouštěčů — každá z níže uvedených položek je samostatné pole v `defineLogicFunction()`:

| Spouštěč                    | Kdy se spouští                                                    | Nastavení                       |
| --------------------------- | ----------------------------------------------------------------- | ------------------------------- |
| **HTTP route**              | Požadavek zasáhne veřejnou adresu URL funkce                      | `httpRouteTriggerSettings`      |
| **Cron**                    | CRON výraz se shoduje                                             | `cronTriggerSettings`           |
| **Událost databáze**        | Záznam v pracovním prostoru je vytvořen, aktualizován nebo smazán | `databaseEventTriggerSettings`  |
| **Nástroj AI**              | Funkce Twenty AI se rozhodne zavolat vaši funkci                  | `toolTriggerSettings`           |
| **Akce pracovního postupu** | Krok pracovního postupu vyvolá vaši funkci                        | `workflowActionTriggerSettings` |

Funkce běží v izolovaných sandboxovaných procesech Node.js a přistupují k pracovnímu prostoru přes typovaného klienta API omezeného na roli deklarovanou v [`defineApplication()`](/l/cs/developers/extend/apps/config/application).

<Note>
**Instalační hooky** — kód, který běží před nebo po instalaci — sdílejí toto běhové prostředí, ale používají vlastní funkce `define` a nacházejí se pod [Config → Install Hooks](/l/cs/developers/extend/apps/config/install-hooks).
</Note>
