@agent-native/core 0.84.35 → 0.84.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/README.md +15 -51
  2. package/corpus/core/CHANGELOG.md +18 -0
  3. package/corpus/core/docs/content/actions.mdx +17 -24
  4. package/corpus/core/docs/content/agent-surfaces.mdx +59 -56
  5. package/corpus/core/docs/content/cloneable-saas.mdx +3 -3
  6. package/corpus/core/docs/content/faq.mdx +4 -4
  7. package/corpus/core/docs/content/getting-started.mdx +246 -204
  8. package/corpus/core/docs/content/key-concepts.mdx +9 -9
  9. package/corpus/core/docs/content/locales/ar-SA/cloneable-saas.mdx +3 -3
  10. package/corpus/core/docs/content/locales/ar-SA/faq.mdx +4 -4
  11. package/corpus/core/docs/content/locales/ar-SA/getting-started.mdx +148 -214
  12. package/corpus/core/docs/content/locales/ar-SA/pure-agent-apps.mdx +4 -9
  13. package/corpus/core/docs/content/locales/ar-SA/template-chat.mdx +2 -2
  14. package/corpus/core/docs/content/locales/ar-SA/using-your-agent.mdx +2 -2
  15. package/corpus/core/docs/content/locales/de-DE/cloneable-saas.mdx +3 -3
  16. package/corpus/core/docs/content/locales/de-DE/faq.mdx +4 -4
  17. package/corpus/core/docs/content/locales/de-DE/getting-started.mdx +145 -211
  18. package/corpus/core/docs/content/locales/de-DE/pure-agent-apps.mdx +4 -9
  19. package/corpus/core/docs/content/locales/de-DE/template-chat.mdx +2 -2
  20. package/corpus/core/docs/content/locales/de-DE/using-your-agent.mdx +2 -2
  21. package/corpus/core/docs/content/locales/es-ES/cloneable-saas.mdx +3 -3
  22. package/corpus/core/docs/content/locales/es-ES/faq.mdx +4 -4
  23. package/corpus/core/docs/content/locales/es-ES/getting-started.mdx +148 -214
  24. package/corpus/core/docs/content/locales/es-ES/pure-agent-apps.mdx +4 -9
  25. package/corpus/core/docs/content/locales/es-ES/template-chat.mdx +2 -2
  26. package/corpus/core/docs/content/locales/es-ES/using-your-agent.mdx +2 -2
  27. package/corpus/core/docs/content/locales/fr-FR/cloneable-saas.mdx +2 -2
  28. package/corpus/core/docs/content/locales/fr-FR/faq.mdx +4 -4
  29. package/corpus/core/docs/content/locales/fr-FR/getting-started.mdx +146 -212
  30. package/corpus/core/docs/content/locales/fr-FR/pure-agent-apps.mdx +4 -9
  31. package/corpus/core/docs/content/locales/fr-FR/template-chat.mdx +2 -2
  32. package/corpus/core/docs/content/locales/fr-FR/using-your-agent.mdx +2 -2
  33. package/corpus/core/docs/content/locales/hi-IN/cloneable-saas.mdx +3 -3
  34. package/corpus/core/docs/content/locales/hi-IN/faq.mdx +4 -4
  35. package/corpus/core/docs/content/locales/hi-IN/getting-started.mdx +149 -215
  36. package/corpus/core/docs/content/locales/hi-IN/pure-agent-apps.mdx +8 -13
  37. package/corpus/core/docs/content/locales/hi-IN/template-chat.mdx +2 -2
  38. package/corpus/core/docs/content/locales/hi-IN/using-your-agent.mdx +2 -2
  39. package/corpus/core/docs/content/locales/ja-JP/cloneable-saas.mdx +2 -2
  40. package/corpus/core/docs/content/locales/ja-JP/faq.mdx +4 -4
  41. package/corpus/core/docs/content/locales/ja-JP/getting-started.mdx +144 -210
  42. package/corpus/core/docs/content/locales/ja-JP/pure-agent-apps.mdx +8 -13
  43. package/corpus/core/docs/content/locales/ja-JP/template-chat.mdx +2 -2
  44. package/corpus/core/docs/content/locales/ja-JP/using-your-agent.mdx +2 -2
  45. package/corpus/core/docs/content/locales/ko-KR/cloneable-saas.mdx +3 -3
  46. package/corpus/core/docs/content/locales/ko-KR/faq.mdx +4 -4
  47. package/corpus/core/docs/content/locales/ko-KR/getting-started.mdx +146 -212
  48. package/corpus/core/docs/content/locales/ko-KR/pure-agent-apps.mdx +8 -13
  49. package/corpus/core/docs/content/locales/ko-KR/template-chat.mdx +2 -2
  50. package/corpus/core/docs/content/locales/ko-KR/using-your-agent.mdx +2 -2
  51. package/corpus/core/docs/content/locales/pt-BR/cloneable-saas.mdx +3 -3
  52. package/corpus/core/docs/content/locales/pt-BR/faq.mdx +4 -4
  53. package/corpus/core/docs/content/locales/pt-BR/getting-started.mdx +145 -211
  54. package/corpus/core/docs/content/locales/pt-BR/pure-agent-apps.mdx +4 -9
  55. package/corpus/core/docs/content/locales/pt-BR/template-chat.mdx +2 -2
  56. package/corpus/core/docs/content/locales/pt-BR/using-your-agent.mdx +2 -2
  57. package/corpus/core/docs/content/locales/zh-CN/cloneable-saas.mdx +3 -3
  58. package/corpus/core/docs/content/locales/zh-CN/faq.mdx +4 -4
  59. package/corpus/core/docs/content/locales/zh-CN/getting-started.mdx +158 -209
  60. package/corpus/core/docs/content/locales/zh-CN/pure-agent-apps.mdx +4 -9
  61. package/corpus/core/docs/content/locales/zh-CN/template-chat.mdx +2 -2
  62. package/corpus/core/docs/content/locales/zh-CN/using-your-agent.mdx +2 -2
  63. package/corpus/core/docs/content/locales/zh-TW/cloneable-saas.mdx +3 -3
  64. package/corpus/core/docs/content/locales/zh-TW/faq.mdx +4 -4
  65. package/corpus/core/docs/content/locales/zh-TW/getting-started.mdx +158 -212
  66. package/corpus/core/docs/content/locales/zh-TW/pure-agent-apps.mdx +4 -9
  67. package/corpus/core/docs/content/locales/zh-TW/template-chat.mdx +2 -2
  68. package/corpus/core/docs/content/locales/zh-TW/using-your-agent.mdx +2 -2
  69. package/corpus/core/docs/content/native-chat-ui.mdx +17 -32
  70. package/corpus/core/docs/content/pure-agent-apps.mdx +46 -26
  71. package/corpus/core/docs/content/template-chat.mdx +8 -8
  72. package/corpus/core/docs/content/using-your-agent.mdx +2 -2
  73. package/corpus/core/docs/content/what-is-agent-native.mdx +6 -6
  74. package/corpus/core/package.json +1 -1
  75. package/corpus/core/src/cli/skills.ts +7 -9
  76. package/corpus/core/src/client/AssistantChat.tsx +27 -13
  77. package/corpus/core/src/client/MultiTabAssistantChat.tsx +2 -0
  78. package/corpus/core/src/client/RunStuckBanner.tsx +195 -21
  79. package/corpus/core/src/client/blocks/library/wireframe-kit.tsx +57 -9
  80. package/corpus/core/src/client/blocks/library/wireframe.tsx +3 -18
  81. package/corpus/core/src/client/chat/widgets/builtin-tool-renderers.tsx +28 -32
  82. package/corpus/core/src/client/use-run-stuck-detection.ts +14 -1
  83. package/corpus/core/src/db/schema.ts +5 -0
  84. package/corpus/core/src/server/agent-chat-plugin.ts +5 -2
  85. package/corpus/core/src/styles/blocks.css +27 -6
  86. package/corpus/templates/analytics/app/components/layout/Sidebar.tsx +1 -4
  87. package/corpus/templates/content/actions/list-trashed-content-databases.ts +1 -1
  88. package/corpus/templates/plan/.agents/skills/visual-plan/references/wireframe.md +7 -9
  89. package/corpus/templates/plan/.agents/skills/visual-recap/references/wireframe.md +7 -9
  90. package/dist/cli/skills.d.ts +1 -1
  91. package/dist/cli/skills.d.ts.map +1 -1
  92. package/dist/cli/skills.js +7 -9
  93. package/dist/cli/skills.js.map +1 -1
  94. package/dist/client/AssistantChat.d.ts +6 -0
  95. package/dist/client/AssistantChat.d.ts.map +1 -1
  96. package/dist/client/AssistantChat.js +19 -13
  97. package/dist/client/AssistantChat.js.map +1 -1
  98. package/dist/client/MultiTabAssistantChat.d.ts.map +1 -1
  99. package/dist/client/MultiTabAssistantChat.js +1 -1
  100. package/dist/client/MultiTabAssistantChat.js.map +1 -1
  101. package/dist/client/RunStuckBanner.d.ts +13 -1
  102. package/dist/client/RunStuckBanner.d.ts.map +1 -1
  103. package/dist/client/RunStuckBanner.js +138 -16
  104. package/dist/client/RunStuckBanner.js.map +1 -1
  105. package/dist/client/blocks/library/wireframe-kit.d.ts +6 -6
  106. package/dist/client/blocks/library/wireframe-kit.d.ts.map +1 -1
  107. package/dist/client/blocks/library/wireframe-kit.js +52 -5
  108. package/dist/client/blocks/library/wireframe-kit.js.map +1 -1
  109. package/dist/client/blocks/library/wireframe.d.ts.map +1 -1
  110. package/dist/client/blocks/library/wireframe.js +1 -11
  111. package/dist/client/blocks/library/wireframe.js.map +1 -1
  112. package/dist/client/chat/widgets/builtin-tool-renderers.d.ts.map +1 -1
  113. package/dist/client/chat/widgets/builtin-tool-renderers.js +27 -31
  114. package/dist/client/chat/widgets/builtin-tool-renderers.js.map +1 -1
  115. package/dist/client/use-run-stuck-detection.d.ts +4 -0
  116. package/dist/client/use-run-stuck-detection.d.ts.map +1 -1
  117. package/dist/client/use-run-stuck-detection.js +7 -1
  118. package/dist/client/use-run-stuck-detection.js.map +1 -1
  119. package/dist/collab/awareness.d.ts +2 -2
  120. package/dist/collab/awareness.d.ts.map +1 -1
  121. package/dist/collab/routes.d.ts +1 -1
  122. package/dist/db/schema.d.ts +2 -1
  123. package/dist/db/schema.d.ts.map +1 -1
  124. package/dist/db/schema.js +3 -2
  125. package/dist/db/schema.js.map +1 -1
  126. package/dist/notifications/routes.d.ts +3 -3
  127. package/dist/progress/routes.d.ts +1 -1
  128. package/dist/resources/handlers.d.ts +3 -3
  129. package/dist/server/agent-chat-plugin.d.ts.map +1 -1
  130. package/dist/server/agent-chat-plugin.js +3 -2
  131. package/dist/server/agent-chat-plugin.js.map +1 -1
  132. package/dist/server/transcribe-voice.d.ts +1 -1
  133. package/dist/styles/blocks.css +27 -6
  134. package/docs/content/actions.mdx +17 -24
  135. package/docs/content/agent-surfaces.mdx +59 -56
  136. package/docs/content/cloneable-saas.mdx +3 -3
  137. package/docs/content/faq.mdx +4 -4
  138. package/docs/content/getting-started.mdx +246 -204
  139. package/docs/content/key-concepts.mdx +9 -9
  140. package/docs/content/locales/ar-SA/cloneable-saas.mdx +3 -3
  141. package/docs/content/locales/ar-SA/faq.mdx +4 -4
  142. package/docs/content/locales/ar-SA/getting-started.mdx +148 -214
  143. package/docs/content/locales/ar-SA/pure-agent-apps.mdx +4 -9
  144. package/docs/content/locales/ar-SA/template-chat.mdx +2 -2
  145. package/docs/content/locales/ar-SA/using-your-agent.mdx +2 -2
  146. package/docs/content/locales/de-DE/cloneable-saas.mdx +3 -3
  147. package/docs/content/locales/de-DE/faq.mdx +4 -4
  148. package/docs/content/locales/de-DE/getting-started.mdx +145 -211
  149. package/docs/content/locales/de-DE/pure-agent-apps.mdx +4 -9
  150. package/docs/content/locales/de-DE/template-chat.mdx +2 -2
  151. package/docs/content/locales/de-DE/using-your-agent.mdx +2 -2
  152. package/docs/content/locales/es-ES/cloneable-saas.mdx +3 -3
  153. package/docs/content/locales/es-ES/faq.mdx +4 -4
  154. package/docs/content/locales/es-ES/getting-started.mdx +148 -214
  155. package/docs/content/locales/es-ES/pure-agent-apps.mdx +4 -9
  156. package/docs/content/locales/es-ES/template-chat.mdx +2 -2
  157. package/docs/content/locales/es-ES/using-your-agent.mdx +2 -2
  158. package/docs/content/locales/fr-FR/cloneable-saas.mdx +2 -2
  159. package/docs/content/locales/fr-FR/faq.mdx +4 -4
  160. package/docs/content/locales/fr-FR/getting-started.mdx +146 -212
  161. package/docs/content/locales/fr-FR/pure-agent-apps.mdx +4 -9
  162. package/docs/content/locales/fr-FR/template-chat.mdx +2 -2
  163. package/docs/content/locales/fr-FR/using-your-agent.mdx +2 -2
  164. package/docs/content/locales/hi-IN/cloneable-saas.mdx +3 -3
  165. package/docs/content/locales/hi-IN/faq.mdx +4 -4
  166. package/docs/content/locales/hi-IN/getting-started.mdx +149 -215
  167. package/docs/content/locales/hi-IN/pure-agent-apps.mdx +8 -13
  168. package/docs/content/locales/hi-IN/template-chat.mdx +2 -2
  169. package/docs/content/locales/hi-IN/using-your-agent.mdx +2 -2
  170. package/docs/content/locales/ja-JP/cloneable-saas.mdx +2 -2
  171. package/docs/content/locales/ja-JP/faq.mdx +4 -4
  172. package/docs/content/locales/ja-JP/getting-started.mdx +144 -210
  173. package/docs/content/locales/ja-JP/pure-agent-apps.mdx +8 -13
  174. package/docs/content/locales/ja-JP/template-chat.mdx +2 -2
  175. package/docs/content/locales/ja-JP/using-your-agent.mdx +2 -2
  176. package/docs/content/locales/ko-KR/cloneable-saas.mdx +3 -3
  177. package/docs/content/locales/ko-KR/faq.mdx +4 -4
  178. package/docs/content/locales/ko-KR/getting-started.mdx +146 -212
  179. package/docs/content/locales/ko-KR/pure-agent-apps.mdx +8 -13
  180. package/docs/content/locales/ko-KR/template-chat.mdx +2 -2
  181. package/docs/content/locales/ko-KR/using-your-agent.mdx +2 -2
  182. package/docs/content/locales/pt-BR/cloneable-saas.mdx +3 -3
  183. package/docs/content/locales/pt-BR/faq.mdx +4 -4
  184. package/docs/content/locales/pt-BR/getting-started.mdx +145 -211
  185. package/docs/content/locales/pt-BR/pure-agent-apps.mdx +4 -9
  186. package/docs/content/locales/pt-BR/template-chat.mdx +2 -2
  187. package/docs/content/locales/pt-BR/using-your-agent.mdx +2 -2
  188. package/docs/content/locales/zh-CN/cloneable-saas.mdx +3 -3
  189. package/docs/content/locales/zh-CN/faq.mdx +4 -4
  190. package/docs/content/locales/zh-CN/getting-started.mdx +158 -209
  191. package/docs/content/locales/zh-CN/pure-agent-apps.mdx +4 -9
  192. package/docs/content/locales/zh-CN/template-chat.mdx +2 -2
  193. package/docs/content/locales/zh-CN/using-your-agent.mdx +2 -2
  194. package/docs/content/locales/zh-TW/cloneable-saas.mdx +3 -3
  195. package/docs/content/locales/zh-TW/faq.mdx +4 -4
  196. package/docs/content/locales/zh-TW/getting-started.mdx +158 -212
  197. package/docs/content/locales/zh-TW/pure-agent-apps.mdx +4 -9
  198. package/docs/content/locales/zh-TW/template-chat.mdx +2 -2
  199. package/docs/content/locales/zh-TW/using-your-agent.mdx +2 -2
  200. package/docs/content/native-chat-ui.mdx +17 -32
  201. package/docs/content/pure-agent-apps.mdx +46 -26
  202. package/docs/content/template-chat.mdx +8 -8
  203. package/docs/content/using-your-agent.mdx +2 -2
  204. package/docs/content/what-is-agent-native.mdx +6 -6
  205. package/package.json +1 -1
@@ -1,259 +1,193 @@
1
1
  ---
2
2
  title: "はじめに"
3
- description: "エージェント アプリを作成し、命令、skills、actions を理解してから、エージェントが最初のアクションを呼び出す様子を観察します。"
3
+ description: "チャットから始まる agentic app を作成し、action を追加し、構造化結果をインライン表示して、agent が開ける永続ページへ広げます。"
4
4
  ---
5
5
 
6
6
  # はじめに
7
7
 
8
- Agent-Native アプリは、AI エージェントと UI に同じ actions、データ、および
9
- 状態。基本的なエージェントは、それをガイドする命令 (skills) から作成されます。
10
- 再現可能な動作と、実際の作業を可能にする actions。
11
-
12
- **完全なアプリから開始したいですか?** 豊富なテンプレートの 1 つを複製します —
13
- [Chat](/docs/template-chat), [Mail](/docs/template-mail),
14
- [Calendar](/docs/template-calendar), [Content](/docs/template-content),
15
- [Analytics](/docs/template-analytics)、および [many more](/docs/cloneable-saas) —
16
- それぞれがカスタマイズしたフル機能のアプリです。
17
-
18
- ゼロから構築しますか?事前の唯一の選択肢は、UI が必要かどうかです —
19
- その後のすべて (命令の作成、skills の追加、actions の定義、実行
20
- エージェント)はどちらの方法でも同じです。
21
-
22
- <FileTree
23
- id="doc-block-10kfbl8"
24
- title={"基本的な Agent-Native エージェント"}
25
- entries={[
26
- {
27
- path: "AGENTS.md",
28
- note: "常時有効な指示: 目的、ルール、トーン、エージェントができることのマップ",
29
- },
30
- {
31
- path: ".agents/skills/customer-research/SKILL.md",
32
- note: "タスクが一致したときにエージェントが読み込む再利用可能な playbook",
33
- },
34
- {
35
- path: "actions/summarize-week.ts",
36
- note: "エージェント、UI、CLI、HTTP、MCP、A2A、jobs、webhooks が実行できる型付きコード",
37
- },
38
- ]}
39
- />
40
-
41
- これは、チャット UI、ヘッドレス エージェント、または完全なアプリから開始するかどうかに当てはまります。
42
- UI は表面を変更します。命令、skills、および actions はエージェントに
43
- 指導と行動。
44
-
45
- ## 1.アプリを作成します
8
+ Agent-Native は agentic applications を作るためのフレームワークです。AI agent UI は同じ [actions](/docs/actions)、SQL データ、application state を共有します。最初に headless agent を作るのではなく、ユーザーがすぐ会話できる Chat app から始め、必要なアプリ画面を足していきます。
46
9
 
47
- [Node.js 22+](https://nodejs.org) と [pnpm](https://pnpm.io) が必要です。
48
-
49
- フラグなしで `create` を実行すると、どのように開始するかを尋ねられます (完全なテンプレート、
50
- チャット、またはヘッドレス) 他の何よりも前に:
10
+ 基本の流れ:
51
11
 
52
- ```bash
53
- npx @agent-native/core@latest create my-app
54
- ```
12
+ 1. Chat app を作成する。
13
+ 2. action を追加する。
14
+ 3. action の結果をチャット内のネイティブ UI として表示する。
15
+ 4. データを SQL に永続化する。
16
+ 5. 視覚的に確認したいときに agent が開けるページを追加する。
55
17
 
56
- または、フラグを渡してプロンプトをスキップします。
18
+ ## 1. Chat app を作成する {#create-your-app}
57
19
 
58
- **UI が必要ですか?** チャット テンプレートから開始します。作業エージェントに加えて
59
- カスタマイズ可能なチャット UI、追加したすべてのアクションが自動的にチャットに表示されます:
20
+ [Node.js 22+](https://nodejs.org) [pnpm](https://pnpm.io) が必要です。
60
21
 
61
22
  ```bash
62
23
  npx @agent-native/core@latest create my-app --template chat
24
+ cd my-app
25
+ pnpm install
26
+ pnpm dev
63
27
  ```
64
28
 
65
- **単なるヘッドレス プリミティブですか?** ヘッドレスで開始します 同じ actions とエージェント
66
- ループ、UI シェルなし:
67
-
68
- ```bash
69
- npx @agent-native/core@latest create my-agent --headless
29
+ このテンプレートには durable chat threads、auth、live sync、`actions/` ディレクトリ、標準の `view-screen` / `navigate` actions、拡張できる React app が含まれます。
30
+
31
+ ## 2. action を追加する {#add-an-action}
32
+
33
+ action agent UI が共有する typed operation です。この流れでは `actions/analyze-responses.ts` を作成し、フォーム回答を分析してカスタムチャットグラフ用の検証済み形状を返します。
34
+
35
+ <!-- prettier-ignore -->
36
+ ```ts
37
+ // actions/analyze-responses.ts
38
+ import { defineAction } from "@agent-native/core/action";
39
+ import { z } from "zod";
40
+
41
+ const responseChartResultSchema = z.object({
42
+ title: z.string(),
43
+ points: z.array(z.object({ day: z.string(), responses: z.number() })),
44
+ });
45
+
46
+ export default defineAction({
47
+ description: "Analyze recent form responses and render a custom chart.",
48
+ schema: z.object({
49
+ formId: z.string().default("demo")
50
+ }),
51
+ outputSchema: responseChartResultSchema,
52
+ chatUI: {
53
+ renderer: "responses.response-chart",
54
+ title: "回答チャート"
55
+ },
56
+ readOnly: true,
57
+ run: async ({ formId }) => ({
58
+ title: `Responses for ${formId}`,
59
+ points: [{ day: "Mon", responses: 12 }, { day: "Tue", responses: 18 }, { day: "Wed", responses: 24 }, { day: "Thu", responses: 21 }],
60
+ }),
61
+ });
70
62
  ```
71
63
 
72
- 次に、作成したフォルダーからインストールします。
64
+ 直接実行できます:
73
65
 
74
66
  ```bash
75
- cd my-agent # または、チャット テンプレートを選択した場合は my-app
76
- pnpm install
67
+ pnpm action analyze-responses --formId demo
77
68
  ```
78
69
 
79
- ここからは、この 2 つは同じです。
80
-
81
- ## 2.アクションを追加
82
-
83
- アクションとは、エージェント (および UI) が呼び出すことができる 1 つの操作です。両方の足場
84
- このサンプルが同梱されています:
85
-
86
- <AnnotatedCode
87
- id="doc-block-7yg0w9"
88
- title={"最初の action"}
89
- filename="actions/hello.ts"
90
- language="ts"
91
- code={
92
- 'import { defineAction } from "@agent-native/core/action";\nimport { z } from "zod";\n\nexport default defineAction({\n description: "ローカルエージェントから挨拶します。",\n schema: z.object({\n name: z.string().default("world"),\n }),\n http: { method: "GET" },\n readOnly: true,\n run: async ({ name }) => {\n return { message: `Hello, ${name}!` };\n },\n});'
93
- }
94
- annotations={[
95
- {
96
- lines: "5",
97
- label: "ツール説明",
98
- note: "エージェントは `description` を読み、いつツールとして呼び出すかを判断します。",
99
- },
100
- {
101
- lines: "6-8",
102
- label: "型付き契約",
103
- note: "1 つの zod `schema` が、エージェント、UI、HTTP、MCP、A2A のすべての入力を検証します。",
104
- },
105
- {
106
- lines: "9",
107
- label: "HTTP 動詞",
108
- note: "このアクションを自動マウントされる HTTP エンドポイントとして公開します。",
109
- },
110
- {
111
- lines: "10",
112
- label: "読み取り専用",
113
- note: "`readOnly` は、このアクションが承認なしで安全に呼び出せ、クエリとしてキャッシュ可能であることを示します。",
114
- },
115
- {
116
- lines: "11-13",
117
- label: "単一の実装",
118
- note: "`run` 本体は、すべてのサーフェスが実行する唯一の信頼できる実装です。",
119
- },
120
- ]}
121
- />
122
-
123
- `hello` をドメイン内の最初の実際の操作に置き換えます。一度定義すれば、
124
- あらゆる表面がそれを拾います。
125
-
126
- 毎ターン適用されるガイダンスとして `AGENTS.md` を使用してください。
127
- エージェントには、再利用可能なワークフローまたはドメイン プロシージャが必要です。
128
- エージェントには、データの読み取り、書き込み、API の呼び出しなどを行うための、型指定されたテスト可能な方法が必要です。
129
- 承認を実行します。
130
-
131
- ## 3.実行してください
132
-
133
- アクションを直接呼び出します:
70
+ またはブラウザーで agent に依頼します:
134
71
 
135
- ```bash
136
- pnpm action hello --name Steve
137
- ```
72
+ > デモフォームの最近の回答を分析して。
138
73
 
139
- または、エージェントに電話してもらうよう依頼してください。
74
+ ## 3. チャット内に結果を表示する {#render-inline}
140
75
 
141
- ```bash
142
- pnpm agent "Call the hello action for Steve and explain what happened."
143
- ```
76
+ action が `outputSchema` とプロダクト固有の `chatUI.renderer` を宣言しているため、チャットは構造化データを長い文章に潰しません。次に、app の起動時にその正確な renderer id に対応する React コンポーネントを登録します。たとえば `app/root.tsx` から `app/chat-renderers.tsx` を一度 import します。
144
77
 
145
- チャット テンプレートから開始した場合は、アプリを実行し、同じエージェントを使用します。
146
- ブラウザ — 定義したすべてのアクションをすでに呼び出すことができます:
78
+ <!-- prettier-ignore -->
79
+ ```tsx
80
+ import { registerActionChatRenderer, type ToolRendererProps,} from "@agent-native/core/client/chat";
81
+
82
+ type ResponseChartResult = {
83
+ title: string;
84
+ points: Array<{ day: string; responses: number }>;
85
+ };
86
+
87
+ function ResponseChart({ context }: ToolRendererProps) {
88
+ const result = context.resultJson as ResponseChartResult;
89
+ const max = Math.max(...result.points.map((point) => point.responses), 1);
90
+ return (
91
+ <section className="rounded-lg border bg-card p-4">
92
+ <h3 className="text-sm font-medium">{result.title}</h3>
93
+ <div className="mt-4 flex h-32 items-end gap-2">
94
+ {result.points.map((point) => (
95
+ <div key={point.day} className="flex flex-1 flex-col items-center gap-2">
96
+ <div className="w-full rounded-t bg-primary" style={{ height: `${(point.responses / max) * 100}%` }} />
97
+ <span className="text-xs text-muted-foreground">{point.day}</span>
98
+ </div>
99
+ ))}
100
+ </div>
101
+ </section>
102
+ );
103
+ }
147
104
 
148
- ```bash
149
- pnpm dev
105
+ registerActionChatRenderer({
106
+ id: "responses.response-chart",
107
+ renderer: "responses.response-chart",
108
+ Component: ResponseChart,
109
+ });
150
110
  ```
151
111
 
152
- その 1 つのアクションは、チャット UI、CLI、HTTP、MCP、A2A からアクセスできるようになりました。
153
- スケジュールされたジョブ、および webhooks。一度定義すれば、どこからでも呼び出すことができます。
154
-
155
- <Diagram id="doc-block-1e9l236" title={"1 つのアクションであらゆる面に対応"} summary={"単一の defineAction ファイルは、追加の配線なしですべてのコンシューマに展開されます。"}>
156
-
157
- ```html
158
- <div class="diagram-fan">
159
- <div class="diagram-box" data-rough>defineAction</div>
160
- <div class="diagram-arrow diagram-muted" aria-hidden="true">&rarr;</div>
161
- <div class="diagram-surfaces">
162
- <span class="diagram-pill">チャット UI</span
163
- ><span class="diagram-pill">CLI</span><span class="diagram-pill">HTTP</span
164
- ><span class="diagram-pill">MCP</span><span class="diagram-pill">A2A</span
165
- ><span class="diagram-pill">スケジュール済みジョブ</span
166
- ><span class="diagram-pill">Webhooks</span>
167
- </div>
168
- </div>
169
- ```
112
+ 再利用できる汎用出力には、framework 組み込みの `data-chart` と `data-table` renderers も使えます。`data-insights` は summary/chart/table を組み合わせたカード向けです。詳しくは [Native Chat UI](/docs/native-chat-ui) を参照してください。
170
113
 
171
- ```css
172
- .diagram-fan {
173
- display: flex;
174
- align-items: center;
175
- gap: 14px;
176
- flex-wrap: wrap;
177
- }
178
- .diagram-fan .diagram-surfaces {
179
- display: flex;
180
- flex-wrap: wrap;
181
- gap: 8px;
182
- max-width: 420px;
183
- }
184
- .diagram-fan .diagram-arrow {
185
- font-size: 22px;
186
- line-height: 1;
187
- }
188
- ```
114
+ <WireframeBlock id="doc-block-inline-result-wireframe-ja">
115
+ <Screen
116
+ surface="desktop"
117
+ html={
118
+ "<div style='min-height:340px;box-sizing:border-box;padding:24px;display:flex;justify-content:center;align-items:center;background:var(--wf-bg)'><div style='width:min(530px,100%);display:flex;flex-direction:column;gap:14px'><div class='wf-card' data-rough style='align-self:flex-end;max-width:70%;padding:12px 14px'><strong>User</strong><p style='margin:6px 0 0'>デモの回答を分析して。</p></div><div class='wf-card' data-rough style='align-self:flex-start;width:min(370px,100%);padding:14px'><strong>Agent</strong><p class='wf-muted' style='margin:6px 0 12px'>responses.response-chart で描画。</p><section class='wf-card' data-rough style='padding:14px'><h3 style='margin:0 0 12px;font-size:14px'>回答チャート</h3><div data-rough='line:bottom' style='height:104px;display:flex;align-items:end;gap:8px;border-bottom:1.4px solid var(--wf-line);padding-bottom:4px'><div style='flex:1;display:flex;flex-direction:column;align-items:center;gap:6px'><div data-rough style='height:38px;width:100%;background:color-mix(in srgb, var(--wf-accent) 24%, transparent);border:1.4px solid var(--wf-accent);border-radius:8px 8px 3px 3px'></div><span class='wf-muted'>月</span></div><div style='flex:1;display:flex;flex-direction:column;align-items:center;gap:6px'><div data-rough style='height:62px;width:100%;background:color-mix(in srgb, var(--wf-accent) 30%, transparent);border:1.4px solid var(--wf-accent);border-radius:8px 8px 3px 3px'></div><span class='wf-muted'>火</span></div><div style='flex:1;display:flex;flex-direction:column;align-items:center;gap:6px'><div data-rough style='height:86px;width:100%;background:color-mix(in srgb, var(--wf-accent) 36%, transparent);border:1.4px solid var(--wf-accent);border-radius:8px 8px 3px 3px'></div><span class='wf-muted'>水</span></div><div style='flex:1;display:flex;flex-direction:column;align-items:center;gap:6px'><div data-rough style='height:54px;width:100%;background:color-mix(in srgb, var(--wf-accent) 42%, transparent);border:1.4px solid var(--wf-accent);border-radius:8px 8px 3px 3px'></div><span class='wf-muted'>木</span></div></div></section></div></div></div>"
119
+ }
120
+ />
121
+ </WireframeBlock>
189
122
 
190
- </Diagram>
123
+ ## 4. SQL に永続化する {#persist-data}
191
124
 
192
- ## 状態は組み込まれています
125
+ 結果を後で見返す、比較する、更新する必要があるなら SQL に保存し、読み書きは actions の後ろに置きます。
193
126
 
194
- ヘッドレスはステートレスを意味するものではありません。 Actions、セッション、アプリケーションの状態、スレッド、
195
- 実行履歴と資格情報はすべて SQL に存在します。ローカルでは、
196
- `data/app.db`;運用環境では、`DATABASE_URL` を設定します。参照
197
- [Deployment](/docs/deployment).
127
+ テーブルは `drizzle-orm/sqlite-core` や `drizzle-orm/pg-core` から import するのではなく、framework のポータブルな helper で定義します。
198
128
 
199
- <Callout id="doc-block-1st025c" tone="info">
129
+ ```ts
130
+ // server/db/schema.ts
131
+ import { integer, now, table, text } from "@agent-native/core/db/schema";
200
132
 
201
- **ヘッドレスは依然として実際のアプリです。**アプリとエージェントのループは、セッション、スレッド、実行、設定、資格情報を SQL に保持します。これはステートレス プロンプトではありません。アクションや状態に手を加えずに、後から UI を追加できます。
133
+ export const responseInsights = table("response_insights", {
134
+ id: text("id").primaryKey(),
135
+ formId: text("form_id").notNull(),
136
+ title: text("title").notNull(),
137
+ summary: text("summary").notNull(),
138
+ responseCount: integer("response_count").notNull(),
139
+ createdAt: text("created_at").notNull().default(now()),
140
+ updatedAt: text("updated_at").notNull().default(now()),
141
+ });
142
+ ```
202
143
 
203
- </Callout>
144
+ これらの helper は設定された SQL backend を選ぶため、同じ schema がローカルの SQLite と、production の Postgres、Turso/libSQL、D1、その他の対応 SQL provider で動きます。
204
145
 
205
- ## UI をカスタマイズ
146
+ - `create-response-insight` は新しい insight を書き込みます。
147
+ - `list-response-insights` はページ用のデータを読みます。
148
+ - `update-response-insight` はレコードを更新します。
149
+ - `analyze-responses` はチャット用のネイティブ widget を返し続けます。
206
150
 
207
- チャット テンプレートから開始した場合は、UI を編集できます。チャット自体
208
- `<AgentChatSurface>` コンポーネント上に構築された 1 つの小さなルートです:
151
+ ブラウザー専用の重複 REST route は作らず、UI と agent が actions を共有します。
209
152
 
210
- ```tsx
211
- // app/routes/_index.tsx
212
- import { AgentChatSurface } from "@agent-native/core/client";
153
+ ## 5. agent が開けるページを追加する {#add-a-page}
213
154
 
214
- export default function ChatRoute() {
215
- return <AgentChatSurface mode="page" className="h-full" />;
216
- }
217
- ```
155
+ `/response-insights` route を追加し、`useActionQuery("list-response-insights")` と `useActionMutation("create-response-insight")` を使います。このページは SQL state の表示であり、データは同じ actions で書き込まれます。
218
156
 
219
- - **`app/routes/_index.tsx`** — チャット ページ。提案を変更します。空白
220
- 状態、レイアウト。
221
- - **`app/root.tsx`** — アプリシェル。
222
- エージェント。
223
- - `<AgentSidebar>` を使用してエージェントを任意の画面にドロップし、手動で操作します
224
- `sendToAgentChat()` でボタンを押すか、
225
- `useActionMutation()`.
157
+ <WireframeBlock id="doc-block-response-insights-page-wireframe-ja">
158
+ <Screen
159
+ surface="desktop"
160
+ html={
161
+ "<main style='min-height:440px;box-sizing:border-box;padding:28px;background:var(--wf-bg)'><section style='max-width:960px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:16px;align-items:stretch'><section class='wf-card' data-rough style='display:flex;flex-direction:column;gap:16px'><header><h2 style='margin:0 0 4px;font-size:28px'>回答インサイト</h2><p class='wf-muted' style='margin:0'>エージェントがフォーム回答から作成したインサイト。</p></header><button class='primary' data-rough style='align-self:flex-start'>デモフォームを分析</button><section style='display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px'><article class='wf-box' data-rough style='padding:12px'><strong>料金テーマ</strong><p class='wf-muted' style='margin:8px 0 0'>ユーザーはチームプランを求めています。</p></article><article class='wf-box' data-rough style='padding:12px'><strong>オンボーディング離脱</strong><p class='wf-muted' style='margin:8px 0 0'>3つのステップにより明確な文言が必要です。</p></article></section><section class='wf-card' data-rough style='display:flex;flex-direction:column;gap:10px'><div class='wf-row wf-box' data-rough style='padding:10px 12px;gap:12px;justify-content:space-between'><strong>デモフォーム</strong><span class='wf-muted'>42件の回答を分析済み</span></div><div class='wf-row wf-box' data-rough style='padding:10px 12px;gap:12px;justify-content:space-between'><strong>次のステップ</strong><span class='wf-muted'>2件のインサイト下書きを確認</span></div></section></section><aside class='wf-card' data-rough style='height:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:12px'><strong>チャット</strong><div class='wf-box' data-rough style='align-self:flex-end;max-width:210px;padding:10px 12px'><span class='wf-muted'>あなた</span><p style='margin:4px 0 0'>回答インサイトを開く。</p></div><div class='wf-box' data-rough style='align-self:flex-start;max-width:210px;padding:10px 12px'><span class='wf-muted'>Agent</span><p style='margin:4px 0 0'>回答インサイトを開きました。</p></div></aside></section></main>"
162
+ }
163
+ />
164
+ </WireframeBlock>
226
165
 
227
- 完全なコンポーネント セットについては、[Drop-in Agent](/docs/drop-in-agent) を参照してください。
228
- [Native チャット UI](/docs/native-chat-ui) はアクションの結果をテーブルとしてレンダリングします。
229
- プレーンテキストの代わりにグラフと入力されたカード。
166
+ `view-screen` と `navigate` を拡張し、agent が現在の route を理解して `/response-insights` を開けるようにします。結果に `href: "/response-insights"` を含めれば、チャットに "回答インサイトを開く" ボタンを表示できます。
230
167
 
231
- **ヘッドレスで始めましたが、後で UI が必要ですか?** チャット テンプレートは UI オンランプです
232
- その `app/` レイヤー (React ルーター + Vite) はまさにヘッドレス足場です
233
- は除外されます。最もクリーンな方法は、チャットから開始 (または再スキャフォールディング) することです
234
- テンプレート; `actions/`、エージェント、および SQL の状態は変更されずに引き継がれます。参照
235
- 間にあるすべてのサーフェスに対して [Agent Surfaces](/docs/agent-surfaces)。
168
+ フルページ chat から app ページを開くときは、[Agent Surfaces](/docs/agent-surfaces#rich-chat) `AgentChatSurface`、`AgentSidebar`、`useAgentChatHomeHandoff`、`useAgentChatHomeHandoffLinks`、`chatViewTransition` を使い、同じ thread のままチャットをサイドバーへ移動します。
236
169
 
237
- ## プロジェクトの構造
170
+ ## プロジェクト構成 {#project-structure}
238
171
 
239
172
  ```text
240
173
  my-app/
241
- actions/ # エージェントが呼び出せるアクション
242
- app/ # React フロントエンド(UI テンプレートのみ。headless では省略)
243
- server/ # Nitro API サーバー(ルート、プラグイン)
244
- AGENTS.md # 常に適用されるエージェント指示
174
+ actions/ # エージェントとUIから呼び出せる操作
175
+ app/ # Reactのルート、ページ、チャット画面
176
+ server/ # NitroサーバーとSQLスキーマ
177
+ AGENTS.md # アプリアージェントの常時有効な指示
245
178
  .agents/ # 必要に応じてエージェントが読み込むスキル
246
- data/app.db # DATABASE_URL 未設定時のローカル SQLite 状態
179
+ data/app.db # DATABASE_URL未設定時のローカルSQLite状態
247
180
  ```
248
181
 
249
- ## 次にどこに行くか
250
-
251
- - **[Key Concepts](/docs/key-concepts)** コア アーキテクチャ: SQL、actions
252
- 同期とコンテキスト認識。
253
- - **[Actions](/docs/actions)** — 完全なアクション API: スキーマ、HTTP、認証、
254
- 承認。
255
- - **[Agent Surfaces](/docs/agent-surfaces)** — ヘッドレス、チャット、埋め込みサイドカー
256
- および完全なアプリ。
257
- - **[Drop-in Agent](/docs/drop-in-agent)** — エージェント チャットを React アプリに追加します。
258
- - **[Deployment](/docs/deployment)** — アプリを独自のドメインに配置します。
259
- - **[FAQ](/docs/faq)** — セットアップと製品に関する質問。
182
+ ## 本格的な Analytics の出発点が必要な場合 {#analytics-starting-point}
183
+
184
+ 上の 回答インサイト 例は、framework の部品を見やすくするために小さくしています。実際の analytics product を作るなら、[Analytics](/docs/template-analytics) から始めてください。providers を接続し、既存の dashboards と agent actions を使い、そこからカスタマイズできる堅牢な出発点です。
185
+
186
+ ## 次のステップ {#next}
187
+
188
+ - **[Actions](/docs/actions)** — schemas、auth、approvals、hooks、transport。
189
+ - **[Native Chat UI](/docs/native-chat-ui)** — action 結果をテーブル、グラフ、typed cards として表示。
190
+ - **[Chat Template](/docs/template-chat)** — 最小の chat-first app。
191
+ - **[Analytics Template](/docs/template-analytics)** — 堅牢な analytics app の出発点。providers を接続してカスタマイズできます。
192
+ - **[Context Awareness](/docs/context-awareness)** — `view-screen`、`navigate`、route state、選択中のオブジェクト。
193
+ - **[Agent Surfaces](/docs/agent-surfaces)** — chat、inline UI、app pages、embedded sidecars、automation、外部 agent。
@@ -1,16 +1,11 @@
1
1
  ---
2
- title: "純粋なエージェント アプリ"
3
- description: "エージェントが製品全体であるアプリ: アプリとエージェントのループが玄関口であり、UI は人間が必要とする場合にのみ追加されます。"
2
+ title: "Automation-First Apps"
3
+ description: "scheduled jobs、queues、scripts、integration workers、external agents 向けのブラウザーなし Agent-Native apps。"
4
4
  ---
5
5
 
6
- # 純粋なエージェント アプリ
6
+ # Automation-First Apps
7
7
 
8
- 純粋なエージェント アプリは、エージェント ネイティブの最小限の終端です。アプリとエージェントのループは、
9
- 製品であり、ダッシュボードではありません。端末 Slack、電子メール、
10
- スケジュールされたジョブ、別のエージェント、またはチャット — 「未読メールの要約」、「投稿」
11
- 毎日のメトリクスを Slack に送信します。エージェントはどこにいても動作し、結果を返します。
12
- に属します。これはまだ実際のアプリです: actions、セッション、アプリの状態、履歴
13
- 設定、認証情報、共有レコードはすべて SQL に保存されます。
8
+ Automation-first app は、scheduled jobs、queues、scripts、integration workers、external agents 向けのブラウザーなし Agent-Native app です。Getting Started の既定ルートではありませんが、workflow がまだページを必要としない場合に有用です。これはまだ実際の app です: actions、sessions、application state、run history、settings、credentials、共有レコードはすべて SQL に保存されます。
14
9
 
15
10
  <Diagram id="doc-block-1evvzm8" title={"アプリとエージェントのループが玄関口です"} summary={"多くのエントリ ポイントは、SQL-backed アクションと状態を介して 1 つのエージェント ループに到達します。結果はリクエストの送信元に返されます。 UIは人間が監視する必要がある場合にのみ追加されます。"}>
16
11
 
@@ -66,7 +61,7 @@ description: "エージェントが製品全体であるアプリ: アプリと
66
61
  作業がバックグラウンドで実行されているときにこの形状に到達すると、出力が残ります
67
62
  アプリ、ドメインはワンショットであるか、プロトタイピング中です。エージェントには依然として UI が必要です —
68
63
  ダッシュボードではなく、人間が管理、設定、操作するための場所です —
69
- これが、純粋なエージェント アプリでも通常、組み込みのチャット シェルをマウントする理由です。
64
+ これが、automation-first apps でも通常、組み込みのチャット シェルをマウントする理由です。
70
65
 
71
66
  これは **ヘッドレス** 製品形状です。完全な意思決定ガイド、同梱物
72
67
  ボックス、スキャフォールド、リポジトリへのアクセス、および実行共有が 1 か所に存在するようになりました:
@@ -76,8 +71,8 @@ description: "エージェントが製品全体であるアプリ: アプリと
76
71
  ## 次は何ですか
77
72
 
78
73
  - [**Agent Surfaces — Headless**](/docs/agent-surfaces#headless) — 完全なヘッドレス意思決定ガイドと API
79
- - [**Getting Started**](/docs/getting-started) — まずチャット アプリまたはヘッドレス エージェントを作成します
80
- - [**Dispatch**](/docs/template-dispatch) — 純粋なエージェントの優れた出発点となるワークスペース テンプレート
74
+ - [**Getting Started**](/docs/getting-started) — まず chat-first app を作成し、actions、inline results、pages へ拡張します
75
+ - [**Dispatch**](/docs/template-dispatch) — automation-first workflows に適した workspace template
81
76
  - [**Messaging the agent**](/docs/messaging) — ユーザーがウェブ、Slack、電報、電子メールでエージェントと会話する方法
82
77
  - [**Recurring Jobs**](/docs/recurring-jobs) — エージェントが独自に実行するスケジュールされたプロンプト
83
- - [**Actions**](/docs/actions) — 純粋なエージェントが呼び出すツール
78
+ - [**Actions**](/docs/actions) — automation-first app が呼び出すツール
@@ -7,7 +7,7 @@ description: "最小限のチャットファーストのエージェントネイ
7
7
 
8
8
  チャットは、エージェントネイティブ アプリの基本的な開始点です。中央にチャット、左側にスレッド リスト、標準のアプリ ナビゲーション、認証、ライブ同期、actions、および 1 つのサンプル アクションを備えたクリーンな ChatGPT スタイルのシェルが提供されます。ドメイン テンプレートにコミットせずに構築できる実際のブラウザ アプリが必要な場合は、ここから始めてください。
9
9
 
10
- ブラウザー UI を使用しない最小のアクションのみのランタイムが必要な場合は、[Pure-Agent Apps](/docs/pure-agent-apps) から始めてください。完成したドメイン プロダクトの形状が必要な場合は、[Calendar](/docs/template-calendar)、[Mail](/docs/template-mail)、[Content](/docs/template-content)、[Forms](/docs/template-forms)、[Analytics](/docs/template-analytics)、または別のドメイン テンプレートから開始してください。
10
+ ブラウザー UI を使用しない automation-first runtime が必要な場合は、[Automation-First Apps](/docs/pure-agent-apps) から始めてください。完成したドメイン プロダクトの形状が必要な場合は、[Calendar](/docs/template-calendar)、[Mail](/docs/template-mail)、[Content](/docs/template-content)、[Forms](/docs/template-forms)、[Analytics](/docs/template-analytics)、または別のドメイン テンプレートから開始してください。
11
11
 
12
12
  <WireframeBlock id="doc-block-12k6jf8">
13
13
  <Screen
@@ -200,4 +200,4 @@ export default function ChatRoute() {
200
200
  - [**Agent Surfaces**](/docs/agent-surfaces) — ヘッドレス、チャット、埋め込み、フルアプリのパターン
201
201
  - [**Actions**](/docs/actions) — アクション システム チャットと UI の両方を呼び出します
202
202
  - [**Native チャット UI**](/docs/native-chat-ui) — チャット サーフェス プリミティブとランタイム オプション
203
- - [**Pure-Agent Apps**](/docs/pure-agent-apps) — 後でチャットに成長できるアクション専用アプリ
203
+ - [**Automation-First Apps**](/docs/pure-agent-apps) — ブラウザー UI のない automations、queues、scripts、external agent workflows
@@ -99,7 +99,7 @@ description: "エージェントとの日々の作業のループ。エージェ
99
99
 
100
100
  すべてのアプリに完全なダッシュボードが必要なわけではありません。エージェントが製品である場合、カスタム UI のほとんどをスキップできます。アプリを開いて必要なものを尋ね、残りはエージェントに任せます。エージェントには履歴、ワークスペース、設定などの管理画面がまだありますが、主な操作はクリックではなく会話です。
101
101
 
102
- → [**Pure-Agent Apps**](/docs/pure-agent-apps) — エージェントが製品全体であるアプリ。
102
+ → [**Automation-First Apps**](/docs/pure-agent-apps) — jobs、queues、scripts、external agents 向けのブラウザーなしアプリ。
103
103
 
104
104
  ## あなたはそれを共同編集します {#you-co-edit}
105
105
 
@@ -113,5 +113,5 @@ description: "エージェントとの日々の作業のループ。エージェ
113
113
  - [**Agent Mentions**](/docs/agent-mentions) — `@` メンションで指示
114
114
  - [**Voice Input**](/docs/voice-input) — 話すことで指示
115
115
  - [**Drop-in Agent**](/docs/drop-in-agent) — React アプリに埋め込みます
116
- - [**Pure-Agent Apps**](/docs/pure-agent-apps) — エージェントが製品の場合は 軽量UI に移行します
116
+ - [**Automation-First Apps**](/docs/pure-agent-apps) — jobs、queues、scripts、external agents 向けのブラウザーなしアプリ
117
117
  - [**Real-Time Collaboration**](/docs/real-time-collaboration) — 同じドキュメントを一緒に共同編集します
@@ -30,7 +30,7 @@ description: "작동하는 SaaS 제품을 포크하여 귀하의 것으로 만
30
30
  | [**Plan**](/docs/template-plan) | 다이어그램, 와이어프레임 및 주석을 포함한 시각적 계획 및 PR 요약 |
31
31
  | [**Dispatch**](/docs/template-dispatch) | 작업 공간 제어 플레인: 공유 비밀, 재사용 가능한 통합, Slack/Telegram, 예약된 작업. |
32
32
 
33
- 도메인 앱을 원하지 않습니까? 사용자가 즉시 대화할 수 있는 기본 앱을 원할 [Chat](/docs/template-chat)를 사용하거나 [Pure-Agent Apps](/docs/pure-agent-apps)에서 작업부터 시작할 수 있습니다.
33
+ 도메인 앱을 원하지 않습니까? 사용자가 즉시 대화할 수 있고 actions, native results, screens로 확장할 수 있는 기본 앱을 원한다면 [Chat](/docs/template-chat)를 사용하세요. 아직 브라우저 UI가 필요 없는 workflow에만 [Automation-First Apps](/docs/pure-agent-apps) 사용하세요.
34
34
 
35
35
  [Apps](/apps)에서 전체 카탈로그를 확인하거나 바로 카탈로그로 이동하세요. 예를 들어 작업 공간 스타일 앱을 원한다면 [Dispatch](/docs/template-dispatch)가 시작하기에 좋은 곳입니다.
36
36
 
@@ -168,7 +168,7 @@ description: "작동하는 SaaS 제품을 포크하여 귀하의 것으로 만
168
168
 
169
169
  ## 이를 토대로 구축
170
170
 
171
- - [**Getting Started**](/docs/getting-started) — 최소한의 채팅 또는 헤드리스 에이전트 만들기
171
+ - [**Getting Started**](/docs/getting-started) — chat-first app을 만들고, action을 추가하고, structured result를 렌더링한 뒤 page로 확장하기
172
172
  - [**Messaging the agent**](/docs/messaging) — 사용자(및 귀하)가 각 템플릿과 함께 제공되는 에이전트와 대화하는 방법
173
173
  - [**Multi-App Workspace**](/docs/multi-app-workspace) — 여러 템플릿을 인증, 브랜드 및 에이전트를 공유하는 하나의 작업 공간으로 묶습니다.
174
174
  - [**Dispatch**](/docs/template-dispatch) — 작업공간 제어 평면 템플릿
@@ -182,7 +182,7 @@ description: "작동하는 SaaS 제품을 포크하여 귀하의 것으로 만
182
182
  npx @agent-native/core@latest create my-platform
183
183
  ```
184
184
 
185
- 다중 선택 선택 도구가 제공됩니다. 하나의 앱(독립 실행형) 또는 여러 개(작업 공간 - 앱 공유 인증, 브랜드, 에이전트 구성 및 데이터베이스)를 선택합니다. 선택한 각 템플릿은 필요한 모든 파일과 함께 `apps/<name>/`에 스캐폴딩됩니다. 템플릿 UI 대신 작업 전용 앱의 경우 `npx @agent-native/core@latest create my-agent --headless`를 사용하세요.
185
+ 다중 선택 선택 도구가 제공됩니다. 하나의 앱(독립 실행형) 또는 여러 개(작업 공간 - 앱 공유 인증, 브랜드, 에이전트 구성 및 데이터베이스)를 선택합니다. 선택한 각 템플릿은 필요한 모든 파일과 함께 `apps/<name>/`에 스캐폴딩됩니다. 템플릿 UI 대신 브라우저 UI 없는 automation을 만들려면 `npx @agent-native/core@latest create my-agent --headless`를 사용하세요.
186
186
 
187
187
  `.env`(주로 `ANTHROPIC_API_KEY` 및 `DATABASE_URL`), `pnpm install`, `pnpm dev`를 입력하면 작동합니다. "TODO: 로그인 구현" 없음, 자리 표시자 경로 없음.
188
188
 
@@ -11,15 +11,15 @@ description: "에이전트 네이티브에 대한 일반적인 질문 - 그것
11
11
 
12
12
  ### 에이전트 네이티브란 무엇인가요? {#what-is-agent-native}
13
13
 
14
- 에이전트 네이티브는 AI 에이전트와 그 주변의 제품 표면이 동등한 파트너인 앱을 구축하기 위한 프레임워크입니다. 해당 표면은 하나의 사용자 지정 작업을 통해 헤드리스 에이전트로 시작하여 풍부한 채팅으로 성장하거나 완전한 UI가 있습니다. 변하지 않는 점은 에이전트와 인간이 동일한 actions, 데이터베이스 및 상태를 공유한다는 것입니다. 전체 설명은 [What Is Agent-Native?](/docs/what-is-agent-native)를 참조하세요.
14
+ 에이전트 네이티브는 AI 에이전트와 그 주변의 제품 표면이 동등한 파트너인 앱을 구축하기 위한 프레임워크입니다. 일반적인 경로는 chat에서 시작해 typed actions를 추가하고, structured results를 inline으로 렌더링한 뒤, 같은 SQL state 위에 durable pages를 확장하는 것입니다. 변하지 않는 점은 에이전트와 인간이 동일한 actions, 데이터베이스 및 상태를 공유한다는 것입니다. 전체 설명은 [What Is Agent-Native?](/docs/what-is-agent-native)를 참조하세요.
15
15
 
16
16
  ### 이것은 누구를 위한 것인가요? {#who-is-this-for}
17
17
 
18
18
  에이전트 네이티브는 실제 앱과 AI 에이전트가 동일한 데이터와 actions에서 작동하기를 원하는 사람들을 위한 것입니다. 일반적인 경로는 다음과 같습니다:
19
19
 
20
20
  - **설정 없이 메일, 캘린더, 양식, 계획 또는 기타 완성된 템플릿을 원하는 경우 호스팅된 앱을 사용하세요** — [template gallery](/templates)에서 시작하세요.
21
- - **채팅으로 시작** 사용자가 즉시 대화할 있는 기본 앱을 원한다면 actions 화면으로 확장하세요. [Getting Started](/docs/getting-started) 또는 [Chat](/docs/template-chat)로 시작하세요.
22
- - **UI에 커밋하기 전에 하나의 작업과 헤드리스 에이전트 루프를 원하는 경우 기본 우선 시작** - [Getting Started](/docs/getting-started)로 시작하세요.
21
+ - **채팅으로 시작** 사용자가 즉시 agent와 대화하고 actions, native results, screens로 확장하는 기본 경로를 원한다면 [Getting Started](/docs/getting-started) 또는 [Chat](/docs/template-chat)로 시작하세요.
22
+ - **automation-first로 시작** 예약 작업, queues, scripts, integration workers 또는 아직 브라우저 UI가 필요 없는 외부 agent workflows를 만든다면 [Automation-First Apps](/docs/pure-agent-apps)로 시작하세요.
23
23
  - **인증, 데이터베이스, UI 및 에이전트 actions가 이미 연결되어 있는 자체 SaaS 제품을 원하는 경우 템플릿을 포크하고 사용자 정의**하세요. [Templates](/docs/cloneable-saas)를 참조하세요.
24
24
  - **처음부터 빌드** 새로운 에이전트 기반 제품을 위한 프레임워크 기본 요소를 원한다면 [Getting Started](/docs/getting-started)로 시작하세요.
25
25
  - **다른 에이전트 또는 코드 도구 연결** Claude, ChatGPT, Codex, Cursor 또는 GitHub Copilot/VS Code를 사용하여 에이전트 기본 앱을 사용하려면 — [External Agents](/docs/external-agents) 및 [Skills Guide](/docs/skills-guide)를 참조하세요.
@@ -128,7 +128,7 @@ Anthropic Claude, OpenAI(GPT-5 제품군), Google Gemini 및 OpenAI API 형태
128
128
 
129
129
  ### 템플릿에서 다루지 않는 것을 만들 수 있나요? {#build-from-scratch}
130
130
 
131
- 그렇습니다. 기본 채팅 앱을 원한다면 `npx @agent-native/core@latest create my-chat-app --template chat`를 실행하세요. 내구성 있는 채팅 스레드, actions, 인증, SQL 지원 런타임 상태 및 자신만의 화면을 추가할 수 있는 공간이 제공됩니다. UI가 없는 가장 작은 작업 우선 앱을 원한다면 `npx @agent-native/core@latest create my-agent --headless`를 실행하세요. [Getting Started](/docs/getting-started), [Pure-Agent Apps](/docs/pure-agent-apps) 및 [Chat](/docs/template-chat)를 참조하세요.
131
+ 그렇습니다. 기본 agentic app을 원한다면 `npx @agent-native/core@latest create my-chat-app --template chat`를 실행하세요. 내구성 있는 채팅 스레드, actions, 인증, SQL 지원 런타임 상태, native inline rendering 및 자신만의 화면을 추가할 수 있는 공간이 제공됩니다. 브라우저 없는 automation을 만든다면 `npx @agent-native/core@latest create my-agent --headless`를 실행하세요. [Getting Started](/docs/getting-started), [Automation-First Apps](/docs/pure-agent-apps) 및 [Chat](/docs/template-chat)를 참조하세요.
132
132
 
133
133
  ### 템플릿을 포크하지 않고 시도해 볼 수 있나요? {#try-with-a-skill}
134
134