통합 구축
Triggerfish는 확장을 위해 설계되었습니다. 새로운 데이터 소스를 연결하거나, 워크플로우를 자동화하거나, 에이전트에 새로운 기술을 부여하거나, 외부 이벤트에 반응하려는 경우 잘 정의된 통합 경로가 있으며 -- 모든 경로는 동일한 보안 모델을 준수합니다.
통합 경로
Triggerfish는 플랫폼을 확장하는 다섯 가지 고유한 방법을 제공합니다. 각각 다른 목적을 수행하지만 모두 동일한 보안 보장을 공유합니다: 분류 적용, 테인트 추적, 정책 훅 및 전체 감사 로깅.
| 경로 | 목적 | 적합한 용도 |
|---|---|---|
| MCP Gateway | 외부 도구 서버 연결 | Model Context Protocol을 통한 표준화된 에이전트-도구 통신 |
| Plugin SDK | 샌드박스화된 사용자 정의 코드 실행 | 외부 시스템에 대한 CRUD 작업, 복잡한 데이터 변환, 워크플로우 |
| 실행 환경 | 에이전트가 자체 코드를 작성하고 실행 | 통합 구축, 프로토타이핑, 테스트 및 피드백 루프에서의 반복 |
| Skills | 지침을 통해 에이전트에 새로운 능력 부여 | 재사용 가능한 동작, 커뮤니티 마켓플레이스, 에이전트 자체 저작 |
| 브라우저 자동화 | CDP를 통한 브라우저 인스턴스 제어 | 웹 리서치, 폼 작성, 스크래핑, 자동화된 웹 워크플로우 |
| Webhooks | 외부 서비스로부터 인바운드 이벤트 수신 | 이메일, 알림, CI/CD 이벤트, 캘린더 변경에 대한 실시간 반응 |
| GitHub | 전체 GitHub 워크플로우 통합 | PR 리뷰 루프, 이슈 분류, webhook + 실행 + 기술을 통한 브랜치 관리 |
| Google Workspace | Gmail, Calendar, Tasks, Drive, Sheets 연결 | 14개 도구를 갖춘 번들 OAuth2 통합 |
| Obsidian | Obsidian 볼트 노트 읽기, 쓰기 및 검색 | 폴더 매핑, 위키링크, 일일 노트를 사용한 분류 게이트 노트 접근 |
보안 모델
모든 통합은 -- 경로에 관계없이 -- 동일한 보안 제약 조건 하에서 작동합니다.
모든 것은 UNTRUSTED로 시작합니다
새로운 MCP 서버, 플러그인, 채널 및 webhook 소스는 모두 기본적으로 UNTRUSTED 상태입니다. 소유자(개인 티어) 또는 관리자(엔터프라이즈 티어)가 명시적으로 분류하기 전까지 에이전트와 데이터를 교환할 수 없습니다.
UNTRUSTED --> CLASSIFIED (검토 후 분류 등급 할당)
UNTRUSTED --> BLOCKED (명시적으로 금지)분류가 전파됩니다
통합이 데이터를 반환하면 해당 데이터는 분류 등급을 가집니다. 분류된 데이터에 접근하면 세션 테인트가 이에 맞게 에스컬레이션됩니다. 테인트된 세션은 더 낮은 분류의 대상으로 출력할 수 없습니다. 이것이 하향 기록 금지 규칙이며 -- 고정되어 있고 재정의할 수 없습니다.
정책 훅이 모든 경계에서 적용됩니다
모든 통합 작업은 결정론적 정책 훅을 통과합니다:
| 훅 | 실행 시점 |
|---|---|
PRE_CONTEXT_INJECTION | 외부 데이터가 에이전트 컨텍스트에 진입 (webhooks, 플러그인 응답) |
PRE_TOOL_CALL | 에이전트가 도구 호출 요청 (MCP, 실행, 브라우저) |
POST_TOOL_RESPONSE | 도구가 데이터 반환 (응답 분류, 테인트 업데이트) |
PRE_OUTPUT | 응답이 시스템을 떠남 (최종 분류 검사) |
이 훅들은 순수 함수입니다 -- LLM 호출 없음, 무작위성 없음, 우회 없음. 동일한 입력은 항상 동일한 결정을 생성합니다.
감사 추적
모든 통합 작업이 로깅됩니다: 무엇이 호출되었는지, 누가 호출했는지, 정책 결정이 무엇이었는지, 세션 테인트가 어떻게 변경되었는지. 이 감사 추적은 불변이며 컴플라이언스 검토에 사용할 수 있습니다.
보안 LLM은 정책 훅 결정을 우회, 수정 또는 영향을 줄 수
없습니다. 훅은 LLM 레이어 아래의 코드에서 실행됩니다. AI는 작업을 요청하고 -- 정책 레이어가 결정합니다. :::
올바른 경로 선택
사용 사례에 맞는 통합 경로를 선택하기 위해 이 결정 가이드를 사용하십시오:
- 표준 도구 서버를 연결하려면 -- MCP Gateway를 사용합니다. 도구가 MCP를 지원하면 이 경로입니다.
- 외부 API에 대해 사용자 정의 코드를 실행해야 하면 -- Plugin SDK를 사용합니다. 플러그인은 엄격한 격리가 있는 이중 샌드박스에서 실행됩니다.
- 에이전트가 코드를 빌드하고 반복하도록 하려면 -- 실행 환경을 사용합니다. 에이전트가 전체 작성/실행/수정 루프가 있는 워크스페이스를 얻습니다.
- 에이전트에 새로운 동작을 가르치려면 -- Skills를 사용합니다. 지침이 포함된
SKILL.md를 작성하거나 에이전트가 자체 저작하도록 합니다. - 웹 상호 작용을 자동화해야 하면 -- 브라우저 자동화를 사용합니다. 도메인 정책 적용이 있는 CDP 제어 Chromium입니다.
- 실시간으로 외부 이벤트에 반응해야 하면 -- Webhooks를 사용합니다. 인바운드 이벤트가 확인, 분류되고 에이전트로 라우팅됩니다.
이 경로들은 상호 배타적이지 않습니다. 스킬이 내부적으로 브라우저
자동화를 사용할 수 있습니다. 플러그인이 webhook에 의해 트리거될 수 있습니다. 실행 환경에서 에이전트가 저작한 통합을 스킬로 유지할 수 있습니다. 자연스럽게 구성됩니다. :::
