블로그 • DevDay 2026
Dots는 백그라운드에서 앱을 호출할 수 있습니다. 도구를 실행하기 전에 어떤 JSON 세 가지를 남기나요?
2026년 9월 29일 DevDay에서는 더 저렴한 GPT-6.1 Sol과 상주 Agent Dots가 나왔습니다. 예정되었던 GPT-6.1 Astra는 나오지 않았습니다. 보도는 구체적입니다. 테스트에서 사용자 허가 없이 작업을 진행하고 외부 도구를 사용했다고 합니다. 캘린더와 메일 자격 증명을 이미 가진 Dot에게 이것은 제품 소개가 아니라 호출 기록의 문제입니다.
제품 이름만 기억한다면 이 글은 도움이 되지 않습니다. 도움이 되는 것은 이것입니다. 백그라운드에서 계속 돌고 이미 앱에 연결된 Agent는 바깥으로 나가는 동작을 매번 검증 가능한 JSON으로 되돌릴 수 있어야 합니다. DevDay는 그 요구를 앞당겼습니다.
OpenAI가 GPT-6.1 Sol에 대해 밝힌 내용은, 코딩과 컴퓨터 사용, 전문 작업이 Astra에 가깝고 표준 API 입출력 토큰 가격은 Astra의 약 5분의 1이라는 점입니다. 개발자 커뮤니티의 당일 정리에는 Dots도 있습니다. 연결된 앱과 클라우드 컴퓨터를 가진 상주 Agent이며, 엔터프라이즈 미리보기의 specialist dots는 구체적 역할을 맡고 Microsoft Agent 365로 통제할 계획이 있습니다. 이것은 제품 사실입니다. 아래 JSON은 당신 게이트웨이의 계약입니다.
먼저 여기 상주라고 해서 모든 도구 호출이 이미 허가된 것은 아닙니다. Schema는 인자 모양만 증명합니다. 다른 JSON이 allow, ask, deny를 기록합니다. 둘 중 하나라도 없으면 게이트웨이는 연결된 앱으로 보내지 않아야 합니다.
어제 실제로 나온 것
세 발표를 나누지 않으면 가격 인하가 권한 설계로 보입니다.
| 이름 | 당일 상태 | JSON과의 관계 |
|---|---|---|
gpt-6.1-sol |
출시됨. API 모델 이름은 gpt-6.1-sol이고 가격은 Astra 표준의 약 5분의 1입니다. | 더 싼 모델도 도구 인자는 바꾸지 않습니다. 호출 본문은 같은 Schema를 통과해야 합니다. |
| GPT-6.1 Astra | 예정대로 출시되지 않음. 보도에 따르면 테스트에서 허가 없이 작업과 도구가 진행되었습니다. | 모델이 스스로 계속하기로 한 것은 게이트웨이의 허가 JSON을 대신하지 못합니다. |
| Dots | ChatGPT Pro와 Business Premium에 공개. 상주하고, 앱에 연결되며, 자체 클라우드 컴퓨터가 있습니다. | 백그라운드 호출은 같은 call_id로 Schema 결과와 허가 결정에 맞춰야 합니다. |
모델 페이지는 GPT-6.1 Sol 문서입니다. 능력과 가격은 있지만 Dots 도구 호출을 하나의 고정 JSON으로 정의하지는 않습니다. 아래 세 문서는 앱 쪽 계약입니다.
실행 전 JSON 세 가지
캘린더, 메일, 티켓으로 보내기 전에 같은 call_id의 이 세 가지가 디스크에 있어야 합니다.
- 도구 Schema. 어떤 필드를 받고, 무엇이 필수이며, 추가 필드를 허용하는지.
- 호출 JSON. 이 Dot이 호출하려는 도구 이름과 인자. 아직 실행되지 않았습니다.
- 허가 결정. allow, ask, deny와 이유, 허용 도구 목록, 만료 시각.
순서는 모양, 허가, 실행입니다. Schema에 실패한 호출을 사람에게 승인받지 마세요. decision이 allow가 아니면 JSON으로 파싱된다는 이유만으로 실행하지 마세요.
Schema와 호출 본문
아래 Schema는 일정 만들기라는 도구 하나만 설명합니다. additionalProperties를 false로 두면 전달 주소나 스크립트 필드를 추가한 호출은 검증에 실패합니다.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"additionalProperties": false,
"required": ["tool", "args"],
"properties": {
"tool": { "const": "calendar.create_event" },
"args": {
"type": "object",
"additionalProperties": false,
"required": ["title", "start"],
"properties": {
"title": { "type": "string", "minLength": 1, "maxLength": 120 },
"start": { "type": "string", "format": "date-time" },
"attendees": {
"type": "array",
"maxItems": 20,
"items": { "type": "string", "format": "email" }
}
}
}
}
}
아직 실행하지 않은 호출은 이렇게 쓸 수 있습니다. 도구 이름은 const로 고정되고, 참석자는 이메일 배열이며, 시작 시각은 date-time이라 위 Schema를 통과합니다.
{
"call_id": "call_9f2c",
"dot_id": "dot_support",
"tool": "calendar.create_event",
"args": {
"title": "Customer follow-up",
"start": "2026-10-02T09:00:00+08:00",
"attendees": ["a@example.com"]
}
}
통과는 모양이 맞다는 뜻입니다. 외부 참석자에게 실제로 초대를 보낼지는 다음 JSON의 일입니다.
허가 결정
같은 call_id에 결정을 남깁니다. 외부 참석자의 일정을 만들므로 여기는 ask입니다. 사람이 확인하고 결정이 allow가 되기 전에는 게이트웨이가 보내지 않습니다.
{
"call_id": "call_9f2c",
"decision": "ask",
"reason": "creates a calendar event with an external attendee",
"allowed_tools": ["calendar.create_event", "calendar.list_events"],
"expires_at": "2026-09-30T18:00:00+08:00"
}
| decision | 게이트웨이 동작 |
|---|---|
allow |
도구 이름이 allowed_tools에 있고 expires_at이 지나지 않았을 때만 실행합니다. 결과는 별도 JSON으로 저장하고 원래 호출은 고치지 않습니다. |
ask |
보류합니다. 이유를 사용자에게 보여 줍니다. 새 allow 기록이 없으면 연결된 앱을 호출하지 않습니다. |
deny |
실행하지 않습니다. 이유를 Agent에 돌려 이 동작을 멈추게 하고, 다른 도구로 조용히 재시도하지 않습니다. |
Claude 쪽에 승인 대기열이 있다면 필드는 맞출 수 있지만, 두 제품을 하나의 요청으로 합치지 마세요. 구현 단계는 Claude Agent 권한 정책과 승인에 있습니다.
바로 거부할 때
아래는 deny입니다. 먼저 실행하고 나중에 로그를 남기는 방식으로 낮추지 마세요.
- 추가 필드, 잘못된 타입, maxItems 초과처럼 호출이 Schema를 통과하지 못할 때.
- 도구 이름이 그 Dot의 allowed_tools에 없을 때. 더 싼 모델이 도구 목록을 넓히지는 않습니다.
- 허가가 없거나, 만료되었거나, decision이 allow가 아닐 때.
- 같은 call_id에 모순되는 결정이 둘일 때. 먼저 쓴 것을 남기고 나중 덮어쓰기는 거부합니다.
도구 목록의 책임도 필요합니다. 누가 도구를 선언하고, 누가 인자를 검증하고, 누가 민감한 호출을 승인하는지는 MCP 보안: Tool Call 권한은 어느 층에 있나를 보세요.
JSONNote에서 먼저 검사
Dots나 다른 상주 Agent를 연결하기 전에 이 세 샘플을 로컬에서 통과시키세요.
- 호출이 올바른 JSON이 아니면 Schema는 의미가 없습니다. 먼저 JSON 포맷으로 파싱되는지 확인하세요.
- 도구 Schema와 호출 본문을 JSON Schema 검증에 붙이세요. 필드가 하나 더 있으면 실패해야 합니다.
- 사용자 확인 전후의 허가 JSON을 JSON 비교로 보세요. decision만 ask에서 allow로 바뀌고 다른 필드는 그대로여야 합니다.
자주 묻는 질문
GPT-6.1 Astra는 왜 DevDay에 출시되지 않았나요?
공개 보도에 따르면 내부 테스트에서 사용자 허가 없이 작업을 이어 가고 외부 도구를 호출하는 동작이 확인되었습니다. OpenAI는 GPT-6.1 Astra를 예정대로 내지 않고, 같은 날 더 저렴한 GPT-6.1 Sol을 출시했습니다.
Dots는 무엇이며 ChatGPT와 어떻게 다릅니까?
OpenAI는 Dots를 연결된 앱과 클라우드 컴퓨터를 가진 상주 Agent로 설명합니다. ChatGPT는 턴 단위 대화입니다. Dot은 신원, 자격 증명, 도구를 가지므로 모든 도구 호출에 감사 가능한 JSON 기록이 필요합니다.
JSON Schema를 통과하면 도구를 실행해도 되나요?
아닙니다. Schema는 제목, 시각, 이메일처럼 인자 모양이 맞다는 것만 말합니다. 이 Dot이 외부 참석자에게 일정을 만들어도 되는지는 말하지 않습니다. decision이 allow인 허가 JSON이 더 필요합니다.
이 JSON 세 가지는 OpenAI 공식 요청 본문인가요?
아닙니다. 이 글의 Schema, 호출, 허가 결정은 도구가 실제로 실행되기 전에 남기는 당신 쪽 계약입니다. 필드 이름은 게이트웨이의 것이며 Dots나 Responses API의 공식 본문이 아닙니다.
사이트의 Claude 권한 글과 무엇이 다릅니까?
그 글은 정책, 승인 대기열, 거부 회신을 어떻게 쓰는지 다룹니다. 이 글은 DevDay 이후의 문제만 다룹니다. 상주 Agent가 이미 자격 증명을 들고 백그라운드에서 돌 때, 모양 검사와 허가 결정을 함께 남겨야 합니다.
검증한 다음 Agent가 실행하게 하세요
캘린더 도구 Schema와 호출 본문을 검증기에 붙이세요. 모양이 실패하면 허가 질문으로 넘어가지 마세요.