@pillar-ai/sdk 0.1.32 → 0.1.34
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.
- package/README.md +19 -21
- package/dist/actions/definitions/analytics.d.ts +18 -0
- package/dist/actions/definitions/content.d.ts +40 -0
- package/dist/actions/definitions/index.d.ts +26 -0
- package/dist/actions/definitions/navigation.d.ts +65 -0
- package/dist/actions/definitions/settings.d.ts +162 -0
- package/dist/actions/definitions/sources.d.ts +44 -0
- package/dist/actions/definitions/support.d.ts +15 -0
- package/dist/actions/definitions/team.d.ts +120 -0
- package/dist/api/ag-ui-adapter.d.ts +76 -0
- package/dist/api/ag-ui-bridge.d.ts +49 -0
- package/dist/api/ag-ui-client.d.ts +102 -0
- package/dist/api/ag-ui-handler.d.ts +89 -0
- package/dist/button/FloatingButton.d.ts +44 -0
- package/dist/cli/sync.js +32 -10
- package/dist/components/Button/FloatingButton.d.ts +46 -0
- package/dist/components/DevTools/DOMScannerPreview.d.ts +21 -0
- package/dist/components/Progress/AGUIProgress.d.ts +15 -0
- package/dist/components/Tooltips/Tooltip.d.ts +46 -0
- package/dist/components/Tooltips/TooltipManager.d.ts +41 -0
- package/dist/components/Tooltips/index.d.ts +6 -0
- package/dist/components/Tooltips/styles.d.ts +5 -0
- package/dist/components/Views/ArticleChatView.d.ts +9 -0
- package/dist/components/Views/ArticleView.d.ts +10 -0
- package/dist/components/Views/CategoryView.d.ts +11 -0
- package/dist/components/Views/DeveloperView.d.ts +6 -0
- package/dist/components/Views/SearchView.d.ts +10 -0
- package/dist/components/shared/ArticleCard.d.ts +17 -0
- package/dist/components/shared/CategoryCard.d.ts +17 -0
- package/dist/content/extensions/AccordionNode.d.ts +10 -0
- package/dist/content/extensions/CalloutNode.d.ts +11 -0
- package/dist/content/extensions/index.d.ts +5 -0
- package/dist/content/index.d.ts +5 -0
- package/dist/content/renderer.d.ts +24 -0
- package/dist/core/config.d.ts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/panel/Panel.d.ts +53 -0
- package/dist/panel/PanelUI.d.ts +43 -0
- package/dist/panel/components/ArticleCard.d.ts +10 -0
- package/dist/panel/components/CategoryCard.d.ts +10 -0
- package/dist/panel/components/ChatInput.d.ts +36 -0
- package/dist/panel/components/Header.d.ts +16 -0
- package/dist/panel/components/SearchInput.d.ts +11 -0
- package/dist/panel/styles.d.ts +5 -0
- package/dist/panel/views/ArticleView.d.ts +21 -0
- package/dist/panel/views/CategoryView.d.ts +20 -0
- package/dist/panel/views/ChatView.d.ts +30 -0
- package/dist/panel/views/HomeView.d.ts +18 -0
- package/dist/panel/views/SearchView.d.ts +22 -0
- package/dist/pillar.esm.js +1 -1
- package/dist/store/chat.d.ts +10 -0
- package/dist/store/developer.d.ts +19 -0
- package/dist/store/tooltips.d.ts +21 -0
- package/dist/tools/index.d.ts +1 -1
- package/dist/tools/types.d.ts +100 -43
- package/dist/tooltips/Tooltip.d.ts +63 -0
- package/dist/tooltips/TooltipManager.d.ts +42 -0
- package/dist/tooltips/styles.d.ts +5 -0
- package/dist/ui/config.d.ts +96 -0
- package/dist/ui/executor.d.ts +75 -0
- package/dist/ui/index.d.ts +11 -0
- package/dist/ui/scanner.d.ts +105 -0
- package/dist/ui/types.d.ts +293 -0
- package/dist/utils/markdown.d.ts +9 -0
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -31,7 +31,7 @@ Pillar understands the intent, builds a multi-step plan, and executes it client-
|
|
|
31
31
|
- **Multi-Step Plans** — Chain actions into workflows for complex tasks
|
|
32
32
|
- **Context-Aware** — Knows current page, user state, and selected text
|
|
33
33
|
- **Knowledge Sync** — Trained on your docs, Zendesk, Intercom, and more
|
|
34
|
-
- **Custom
|
|
34
|
+
- **Render Custom Components** — Render your own interactive UI in the chat
|
|
35
35
|
- **Framework Bindings** — First-class support for React, Vue, and Svelte
|
|
36
36
|
|
|
37
37
|
## Why Pillar?
|
|
@@ -42,7 +42,7 @@ Pillar understands the intent, builds a multi-step plan, and executes it client-
|
|
|
42
42
|
|
|
43
43
|
## Documentation
|
|
44
44
|
|
|
45
|
-
**[View Full Documentation](https://trypillar.com/docs)** | [Getting Started](https://trypillar.com/docs/get-started/quickstart) | [API Reference](https://trypillar.com/docs/reference
|
|
45
|
+
**[View Full Documentation](https://trypillar.com/docs)** | [Getting Started](https://trypillar.com/docs/get-started/quickstart) | [API Reference](https://trypillar.com/docs/reference)
|
|
46
46
|
|
|
47
47
|
## Installation
|
|
48
48
|
|
|
@@ -56,11 +56,9 @@ yarn add @pillar-ai/sdk
|
|
|
56
56
|
|
|
57
57
|
## Quick Start
|
|
58
58
|
|
|
59
|
-
### 1. Get
|
|
59
|
+
### 1. Get your product key
|
|
60
60
|
|
|
61
|
-
|
|
62
|
-
>
|
|
63
|
-
> By default, you'll get an engineer from Pillar to help with setup. If you prefer onboarding without engineering support, include that in your waitlist request and we will support that too.
|
|
61
|
+
Sign up at [app.trypillar.com](https://app.trypillar.com) and grab your product key from the dashboard.
|
|
64
62
|
|
|
65
63
|
### 2. Initialize the SDK
|
|
66
64
|
|
|
@@ -144,29 +142,29 @@ const pillar = await Pillar.init({
|
|
|
144
142
|
|
|
145
143
|
## API Reference
|
|
146
144
|
|
|
147
|
-
| Method
|
|
148
|
-
|
|
149
|
-
| `Pillar.init(config)`
|
|
150
|
-
| `Pillar.getInstance()`
|
|
151
|
-
| `pillar.open()`
|
|
152
|
-
| `pillar.close()`
|
|
153
|
-
| `pillar.toggle()`
|
|
154
|
-
| `pillar.setContext(context)` | Update the user/product context
|
|
155
|
-
| `pillar.on(event, callback)` | Subscribe to SDK events
|
|
145
|
+
| Method | Description |
|
|
146
|
+
| ---------------------------- | ---------------------------------------- |
|
|
147
|
+
| `Pillar.init(config)` | Initialize the SDK, returns the instance |
|
|
148
|
+
| `Pillar.getInstance()` | Get the initialized SDK instance |
|
|
149
|
+
| `pillar.open()` | Open the co-pilot panel |
|
|
150
|
+
| `pillar.close()` | Close the co-pilot panel |
|
|
151
|
+
| `pillar.toggle()` | Toggle the co-pilot panel |
|
|
152
|
+
| `pillar.setContext(context)` | Update the user/product context |
|
|
153
|
+
| `pillar.on(event, callback)` | Subscribe to SDK events |
|
|
156
154
|
|
|
157
155
|
> **Note:** `Pillar.init()` and `Pillar.getInstance()` are static methods on the class. All other methods (lowercase `pillar`) are instance methods - call them on the instance returned from `init()` or `getInstance()`.
|
|
158
156
|
|
|
159
|
-
For complete API documentation, see the [API Reference](https://trypillar.com/docs/reference
|
|
157
|
+
For complete API documentation, see the [API Reference](https://trypillar.com/docs/reference).
|
|
160
158
|
|
|
161
159
|
## Framework Integrations
|
|
162
160
|
|
|
163
161
|
For idiomatic integration with your framework, use our framework-specific packages:
|
|
164
162
|
|
|
165
|
-
| Framework | Package
|
|
166
|
-
|
|
167
|
-
| React
|
|
168
|
-
| Vue
|
|
169
|
-
| Svelte
|
|
163
|
+
| Framework | Package | Installation |
|
|
164
|
+
| --------- | ----------------------------------------------------------- | ------------------------------- |
|
|
165
|
+
| React | [@pillar-ai/react](https://github.com/pillarhq/sdk-react) | `npm install @pillar-ai/react` |
|
|
166
|
+
| Vue | [@pillar-ai/vue](https://github.com/pillarhq/sdk-vue) | `npm install @pillar-ai/vue` |
|
|
167
|
+
| Svelte | [@pillar-ai/svelte](https://github.com/pillarhq/sdk-svelte) | `npm install @pillar-ai/svelte` |
|
|
170
168
|
|
|
171
169
|
## License
|
|
172
170
|
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export declare const analyticsActions: {
|
|
2
|
+
view_search_analytics: {
|
|
3
|
+
description: string;
|
|
4
|
+
type: "navigate";
|
|
5
|
+
path: string;
|
|
6
|
+
autoRun: true;
|
|
7
|
+
autoComplete: true;
|
|
8
|
+
handler: () => void;
|
|
9
|
+
};
|
|
10
|
+
view_ai_analytics: {
|
|
11
|
+
description: string;
|
|
12
|
+
type: "navigate";
|
|
13
|
+
path: string;
|
|
14
|
+
autoRun: true;
|
|
15
|
+
autoComplete: true;
|
|
16
|
+
handler: () => void;
|
|
17
|
+
};
|
|
18
|
+
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export declare const contentActions: {
|
|
2
|
+
view_all_articles: {
|
|
3
|
+
description: string;
|
|
4
|
+
type: "navigate";
|
|
5
|
+
path: string;
|
|
6
|
+
autoRun: true;
|
|
7
|
+
autoComplete: true;
|
|
8
|
+
handler: () => void;
|
|
9
|
+
};
|
|
10
|
+
view_article: {
|
|
11
|
+
description: string;
|
|
12
|
+
type: "trigger_action";
|
|
13
|
+
autoRun: false;
|
|
14
|
+
autoComplete: false;
|
|
15
|
+
defaultData: {
|
|
16
|
+
action: string;
|
|
17
|
+
};
|
|
18
|
+
handler: () => void;
|
|
19
|
+
};
|
|
20
|
+
filter_stale: {
|
|
21
|
+
description: string;
|
|
22
|
+
type: "trigger_action";
|
|
23
|
+
autoRun: false;
|
|
24
|
+
autoComplete: false;
|
|
25
|
+
defaultData: {
|
|
26
|
+
action: string;
|
|
27
|
+
};
|
|
28
|
+
handler: () => void;
|
|
29
|
+
};
|
|
30
|
+
view_categories: {
|
|
31
|
+
description: string;
|
|
32
|
+
type: "trigger_action";
|
|
33
|
+
autoRun: false;
|
|
34
|
+
autoComplete: false;
|
|
35
|
+
defaultData: {
|
|
36
|
+
action: string;
|
|
37
|
+
};
|
|
38
|
+
handler: () => void;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Action Definitions Index
|
|
3
|
+
*
|
|
4
|
+
* Imports and registers all action definitions for the Pillar Admin app.
|
|
5
|
+
* These are code-first action definitions that get synced to the backend
|
|
6
|
+
* during CI/CD builds.
|
|
7
|
+
*
|
|
8
|
+
* To use in your app:
|
|
9
|
+
* 1. Import this file early in your app initialization
|
|
10
|
+
* 2. Or create your own action definitions using defineActions()
|
|
11
|
+
*
|
|
12
|
+
* The action metadata is extracted via `npm run extract-actions` and
|
|
13
|
+
* synced to the backend via `npm run sync-actions`.
|
|
14
|
+
*/
|
|
15
|
+
import './navigation';
|
|
16
|
+
import './settings';
|
|
17
|
+
import './sources';
|
|
18
|
+
import './analytics';
|
|
19
|
+
import './team';
|
|
20
|
+
import './support';
|
|
21
|
+
export { navigationActions } from './navigation';
|
|
22
|
+
export { settingsActions } from './settings';
|
|
23
|
+
export { sourcesActions } from './sources';
|
|
24
|
+
export { analyticsActions } from './analytics';
|
|
25
|
+
export { teamActions } from './team';
|
|
26
|
+
export { supportActions } from './support';
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
export declare const navigationActions: {
|
|
2
|
+
open_knowledge: {
|
|
3
|
+
description: string;
|
|
4
|
+
examples: string[];
|
|
5
|
+
type: "navigate";
|
|
6
|
+
path: string;
|
|
7
|
+
autoRun: true;
|
|
8
|
+
autoComplete: true;
|
|
9
|
+
handler: () => void;
|
|
10
|
+
};
|
|
11
|
+
open_settings: {
|
|
12
|
+
description: string;
|
|
13
|
+
examples: string[];
|
|
14
|
+
type: "navigate";
|
|
15
|
+
path: string;
|
|
16
|
+
autoRun: true;
|
|
17
|
+
autoComplete: true;
|
|
18
|
+
handler: () => void;
|
|
19
|
+
};
|
|
20
|
+
open_actions: {
|
|
21
|
+
description: string;
|
|
22
|
+
examples: string[];
|
|
23
|
+
type: "navigate";
|
|
24
|
+
path: string;
|
|
25
|
+
autoRun: true;
|
|
26
|
+
autoComplete: true;
|
|
27
|
+
handler: () => void;
|
|
28
|
+
};
|
|
29
|
+
open_analytics: {
|
|
30
|
+
description: string;
|
|
31
|
+
examples: string[];
|
|
32
|
+
type: "navigate";
|
|
33
|
+
path: string;
|
|
34
|
+
autoRun: true;
|
|
35
|
+
autoComplete: true;
|
|
36
|
+
handler: () => void;
|
|
37
|
+
};
|
|
38
|
+
open_ai_tester: {
|
|
39
|
+
description: string;
|
|
40
|
+
examples: string[];
|
|
41
|
+
type: "navigate";
|
|
42
|
+
path: string;
|
|
43
|
+
autoRun: true;
|
|
44
|
+
autoComplete: true;
|
|
45
|
+
handler: () => void;
|
|
46
|
+
};
|
|
47
|
+
open_configure: {
|
|
48
|
+
description: string;
|
|
49
|
+
examples: string[];
|
|
50
|
+
type: "navigate";
|
|
51
|
+
path: string;
|
|
52
|
+
autoRun: true;
|
|
53
|
+
autoComplete: true;
|
|
54
|
+
handler: () => void;
|
|
55
|
+
};
|
|
56
|
+
create_new_action: {
|
|
57
|
+
description: string;
|
|
58
|
+
examples: string[];
|
|
59
|
+
type: "navigate";
|
|
60
|
+
path: string;
|
|
61
|
+
autoRun: true;
|
|
62
|
+
autoComplete: true;
|
|
63
|
+
handler: () => void;
|
|
64
|
+
};
|
|
65
|
+
};
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
export declare const settingsActions: {
|
|
2
|
+
open_branding_settings: {
|
|
3
|
+
description: string;
|
|
4
|
+
examples: string[];
|
|
5
|
+
type: "navigate";
|
|
6
|
+
path: string;
|
|
7
|
+
autoRun: true;
|
|
8
|
+
autoComplete: true;
|
|
9
|
+
handler: () => void;
|
|
10
|
+
};
|
|
11
|
+
open_layout_settings: {
|
|
12
|
+
description: string;
|
|
13
|
+
examples: string[];
|
|
14
|
+
type: "navigate";
|
|
15
|
+
path: string;
|
|
16
|
+
autoRun: true;
|
|
17
|
+
autoComplete: true;
|
|
18
|
+
handler: () => void;
|
|
19
|
+
};
|
|
20
|
+
open_header_settings: {
|
|
21
|
+
description: string;
|
|
22
|
+
examples: string[];
|
|
23
|
+
type: "navigate";
|
|
24
|
+
path: string;
|
|
25
|
+
autoRun: true;
|
|
26
|
+
autoComplete: true;
|
|
27
|
+
handler: () => void;
|
|
28
|
+
};
|
|
29
|
+
open_footer_settings: {
|
|
30
|
+
description: string;
|
|
31
|
+
examples: string[];
|
|
32
|
+
type: "navigate";
|
|
33
|
+
path: string;
|
|
34
|
+
autoRun: true;
|
|
35
|
+
autoComplete: true;
|
|
36
|
+
handler: () => void;
|
|
37
|
+
};
|
|
38
|
+
open_features_settings: {
|
|
39
|
+
description: string;
|
|
40
|
+
examples: string[];
|
|
41
|
+
type: "navigate";
|
|
42
|
+
path: string;
|
|
43
|
+
autoRun: true;
|
|
44
|
+
autoComplete: true;
|
|
45
|
+
handler: () => void;
|
|
46
|
+
};
|
|
47
|
+
open_ai_settings: {
|
|
48
|
+
description: string;
|
|
49
|
+
examples: string[];
|
|
50
|
+
type: "navigate";
|
|
51
|
+
path: string;
|
|
52
|
+
autoRun: true;
|
|
53
|
+
autoComplete: true;
|
|
54
|
+
handler: () => void;
|
|
55
|
+
};
|
|
56
|
+
open_seo_settings: {
|
|
57
|
+
description: string;
|
|
58
|
+
examples: string[];
|
|
59
|
+
type: "navigate";
|
|
60
|
+
path: string;
|
|
61
|
+
autoRun: true;
|
|
62
|
+
autoComplete: true;
|
|
63
|
+
handler: () => void;
|
|
64
|
+
};
|
|
65
|
+
enable_ai_assistant: {
|
|
66
|
+
description: string;
|
|
67
|
+
type: "trigger_action";
|
|
68
|
+
autoRun: false;
|
|
69
|
+
autoComplete: false;
|
|
70
|
+
defaultData: {
|
|
71
|
+
action: string;
|
|
72
|
+
target: string;
|
|
73
|
+
};
|
|
74
|
+
handler: () => void;
|
|
75
|
+
};
|
|
76
|
+
disable_ai_assistant: {
|
|
77
|
+
description: string;
|
|
78
|
+
type: "trigger_action";
|
|
79
|
+
autoRun: false;
|
|
80
|
+
autoComplete: false;
|
|
81
|
+
defaultData: {
|
|
82
|
+
action: string;
|
|
83
|
+
target: string;
|
|
84
|
+
};
|
|
85
|
+
handler: () => void;
|
|
86
|
+
};
|
|
87
|
+
enable_dark_mode: {
|
|
88
|
+
description: string;
|
|
89
|
+
examples: string[];
|
|
90
|
+
type: "trigger_action";
|
|
91
|
+
autoRun: true;
|
|
92
|
+
autoComplete: true;
|
|
93
|
+
defaultData: {
|
|
94
|
+
action: string;
|
|
95
|
+
theme: string;
|
|
96
|
+
};
|
|
97
|
+
handler: () => void;
|
|
98
|
+
};
|
|
99
|
+
disable_dark_mode: {
|
|
100
|
+
description: string;
|
|
101
|
+
examples: string[];
|
|
102
|
+
type: "trigger_action";
|
|
103
|
+
autoRun: true;
|
|
104
|
+
autoComplete: true;
|
|
105
|
+
defaultData: {
|
|
106
|
+
action: string;
|
|
107
|
+
theme: string;
|
|
108
|
+
};
|
|
109
|
+
handler: () => void;
|
|
110
|
+
};
|
|
111
|
+
toggle_dark_mode: {
|
|
112
|
+
description: string;
|
|
113
|
+
examples: string[];
|
|
114
|
+
type: "trigger_action";
|
|
115
|
+
autoRun: true;
|
|
116
|
+
autoComplete: true;
|
|
117
|
+
defaultData: {
|
|
118
|
+
action: string;
|
|
119
|
+
};
|
|
120
|
+
handler: () => void;
|
|
121
|
+
};
|
|
122
|
+
change_theme: {
|
|
123
|
+
description: string;
|
|
124
|
+
type: "trigger_action";
|
|
125
|
+
autoRun: true;
|
|
126
|
+
autoComplete: true;
|
|
127
|
+
defaultData: {
|
|
128
|
+
action: string;
|
|
129
|
+
};
|
|
130
|
+
handler: () => void;
|
|
131
|
+
};
|
|
132
|
+
update_logo: {
|
|
133
|
+
description: string;
|
|
134
|
+
type: "trigger_action";
|
|
135
|
+
autoRun: true;
|
|
136
|
+
autoComplete: true;
|
|
137
|
+
defaultData: {
|
|
138
|
+
action: string;
|
|
139
|
+
};
|
|
140
|
+
handler: () => void;
|
|
141
|
+
};
|
|
142
|
+
add_footer_link: {
|
|
143
|
+
description: string;
|
|
144
|
+
type: "trigger_action";
|
|
145
|
+
autoRun: true;
|
|
146
|
+
autoComplete: true;
|
|
147
|
+
defaultData: {
|
|
148
|
+
action: string;
|
|
149
|
+
};
|
|
150
|
+
handler: () => void;
|
|
151
|
+
};
|
|
152
|
+
configure_suggested_questions: {
|
|
153
|
+
description: string;
|
|
154
|
+
type: "trigger_action";
|
|
155
|
+
autoRun: true;
|
|
156
|
+
autoComplete: true;
|
|
157
|
+
defaultData: {
|
|
158
|
+
action: string;
|
|
159
|
+
};
|
|
160
|
+
handler: () => void;
|
|
161
|
+
};
|
|
162
|
+
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export declare const sourcesActions: {
|
|
2
|
+
add_new_source: {
|
|
3
|
+
description: string;
|
|
4
|
+
examples: string[];
|
|
5
|
+
type: "navigate";
|
|
6
|
+
path: string;
|
|
7
|
+
autoRun: true;
|
|
8
|
+
autoComplete: true;
|
|
9
|
+
dataSchema: {
|
|
10
|
+
type: "object";
|
|
11
|
+
properties: {
|
|
12
|
+
type: {
|
|
13
|
+
type: "string";
|
|
14
|
+
description: string;
|
|
15
|
+
};
|
|
16
|
+
url: {
|
|
17
|
+
type: "string";
|
|
18
|
+
description: string;
|
|
19
|
+
};
|
|
20
|
+
name: {
|
|
21
|
+
type: "string";
|
|
22
|
+
description: string;
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
handler: () => void;
|
|
27
|
+
};
|
|
28
|
+
crawl_website: {
|
|
29
|
+
description: string;
|
|
30
|
+
type: "navigate";
|
|
31
|
+
path: string;
|
|
32
|
+
autoRun: true;
|
|
33
|
+
autoComplete: true;
|
|
34
|
+
handler: () => void;
|
|
35
|
+
};
|
|
36
|
+
connect_cloud_storage: {
|
|
37
|
+
description: string;
|
|
38
|
+
type: "navigate";
|
|
39
|
+
path: string;
|
|
40
|
+
autoRun: true;
|
|
41
|
+
autoComplete: true;
|
|
42
|
+
handler: () => void;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const supportActions: {
|
|
2
|
+
escalate: {
|
|
3
|
+
description: string;
|
|
4
|
+
examples: string[];
|
|
5
|
+
type: "external_link";
|
|
6
|
+
externalUrl: string;
|
|
7
|
+
handler: () => void;
|
|
8
|
+
};
|
|
9
|
+
defer: {
|
|
10
|
+
description: string;
|
|
11
|
+
examples: string[];
|
|
12
|
+
type: "trigger_action";
|
|
13
|
+
handler: () => void;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
export declare const teamActions: {
|
|
2
|
+
open_team_settings: {
|
|
3
|
+
description: string;
|
|
4
|
+
type: "navigate";
|
|
5
|
+
path: string;
|
|
6
|
+
autoRun: true;
|
|
7
|
+
autoComplete: true;
|
|
8
|
+
handler: () => void;
|
|
9
|
+
};
|
|
10
|
+
invite_team_member: {
|
|
11
|
+
description: string;
|
|
12
|
+
type: "inline_ui";
|
|
13
|
+
autoRun: false;
|
|
14
|
+
autoComplete: false;
|
|
15
|
+
defaultData: {
|
|
16
|
+
card_type: string;
|
|
17
|
+
emails: never[];
|
|
18
|
+
role: string;
|
|
19
|
+
};
|
|
20
|
+
dataSchema: {
|
|
21
|
+
type: "object";
|
|
22
|
+
properties: {
|
|
23
|
+
emails: {
|
|
24
|
+
type: "array";
|
|
25
|
+
description: string;
|
|
26
|
+
};
|
|
27
|
+
role: {
|
|
28
|
+
type: "string";
|
|
29
|
+
description: string;
|
|
30
|
+
enum: string[];
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
required: string[];
|
|
34
|
+
};
|
|
35
|
+
requiredContext: {
|
|
36
|
+
userRole: string;
|
|
37
|
+
};
|
|
38
|
+
handler: () => void;
|
|
39
|
+
};
|
|
40
|
+
view_pending_invitations: {
|
|
41
|
+
description: string;
|
|
42
|
+
type: "trigger_action";
|
|
43
|
+
autoRun: true;
|
|
44
|
+
autoComplete: true;
|
|
45
|
+
defaultData: {
|
|
46
|
+
action: string;
|
|
47
|
+
};
|
|
48
|
+
requiredContext: {
|
|
49
|
+
userRole: string;
|
|
50
|
+
};
|
|
51
|
+
handler: () => void;
|
|
52
|
+
};
|
|
53
|
+
resend_invitation: {
|
|
54
|
+
description: string;
|
|
55
|
+
type: "trigger_action";
|
|
56
|
+
autoRun: false;
|
|
57
|
+
autoComplete: false;
|
|
58
|
+
defaultData: {
|
|
59
|
+
action: string;
|
|
60
|
+
};
|
|
61
|
+
requiredContext: {
|
|
62
|
+
userRole: string;
|
|
63
|
+
};
|
|
64
|
+
handler: () => void;
|
|
65
|
+
};
|
|
66
|
+
cancel_invitation: {
|
|
67
|
+
description: string;
|
|
68
|
+
type: "trigger_action";
|
|
69
|
+
autoRun: false;
|
|
70
|
+
autoComplete: false;
|
|
71
|
+
defaultData: {
|
|
72
|
+
action: string;
|
|
73
|
+
};
|
|
74
|
+
requiredContext: {
|
|
75
|
+
userRole: string;
|
|
76
|
+
};
|
|
77
|
+
handler: () => void;
|
|
78
|
+
};
|
|
79
|
+
remove_team_member: {
|
|
80
|
+
description: string;
|
|
81
|
+
type: "trigger_action";
|
|
82
|
+
autoRun: false;
|
|
83
|
+
autoComplete: false;
|
|
84
|
+
defaultData: {
|
|
85
|
+
action: string;
|
|
86
|
+
};
|
|
87
|
+
requiredContext: {
|
|
88
|
+
userRole: string;
|
|
89
|
+
};
|
|
90
|
+
handler: () => void;
|
|
91
|
+
};
|
|
92
|
+
promote_to_admin: {
|
|
93
|
+
description: string;
|
|
94
|
+
type: "trigger_action";
|
|
95
|
+
autoRun: false;
|
|
96
|
+
autoComplete: false;
|
|
97
|
+
defaultData: {
|
|
98
|
+
action: string;
|
|
99
|
+
role: string;
|
|
100
|
+
};
|
|
101
|
+
requiredContext: {
|
|
102
|
+
userRole: string;
|
|
103
|
+
};
|
|
104
|
+
handler: () => void;
|
|
105
|
+
};
|
|
106
|
+
demote_to_member: {
|
|
107
|
+
description: string;
|
|
108
|
+
type: "trigger_action";
|
|
109
|
+
autoRun: false;
|
|
110
|
+
autoComplete: false;
|
|
111
|
+
defaultData: {
|
|
112
|
+
action: string;
|
|
113
|
+
role: string;
|
|
114
|
+
};
|
|
115
|
+
requiredContext: {
|
|
116
|
+
userRole: string;
|
|
117
|
+
};
|
|
118
|
+
handler: () => void;
|
|
119
|
+
};
|
|
120
|
+
};
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AG-UI Client Adapter for Pillar SDK
|
|
3
|
+
*
|
|
4
|
+
* Bridges the new AGUIClient to existing chat store patterns.
|
|
5
|
+
* Allows gradual migration without changing all components at once.
|
|
6
|
+
*
|
|
7
|
+
* Copyright (C) 2025 Pillar Team
|
|
8
|
+
*/
|
|
9
|
+
import type { ResolvedConfig } from '../core/config';
|
|
10
|
+
import type { ExecutionPlan } from '../core/plan';
|
|
11
|
+
import type { TaskButtonData } from '../components/Panel/TaskButton';
|
|
12
|
+
import type { UserContextItem } from '../types/user-context';
|
|
13
|
+
import type { ArticleSummary, ChatMessage, ChatResponse, ProgressEvent } from './client';
|
|
14
|
+
import type { QueryRequest, ChatImage } from './mcp-client';
|
|
15
|
+
import { type ClientTool } from './ag-ui-client';
|
|
16
|
+
export interface LegacyStreamCallbacks {
|
|
17
|
+
/** Called for each text token */
|
|
18
|
+
onToken?: (token: string) => void;
|
|
19
|
+
/** Called when sources are available */
|
|
20
|
+
onSources?: (sources: ArticleSummary[]) => void;
|
|
21
|
+
/** Called when actions are available */
|
|
22
|
+
onActions?: (actions: TaskButtonData[]) => void;
|
|
23
|
+
/** Called when a plan is created */
|
|
24
|
+
onPlan?: (plan: ExecutionPlan) => void;
|
|
25
|
+
/** Called for progress updates */
|
|
26
|
+
onProgress?: (progress: ProgressEvent) => void;
|
|
27
|
+
/** Called when conversation starts (early conversation_id) */
|
|
28
|
+
onConversationStarted?: (conversationId: string, messageId?: string) => void;
|
|
29
|
+
/** Called when agent requests data from host app */
|
|
30
|
+
onQueryRequest?: (request: QueryRequest) => Promise<void>;
|
|
31
|
+
/** Called on error */
|
|
32
|
+
onError?: (error: string) => void;
|
|
33
|
+
/** Called when stream is complete */
|
|
34
|
+
onComplete?: (conversationId?: string, queryLogId?: string) => void;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Wraps AGUIClient to provide the same interface as the legacy MCPClient.
|
|
38
|
+
* Used during migration to minimize component changes.
|
|
39
|
+
*/
|
|
40
|
+
export declare class AGUIClientAdapter {
|
|
41
|
+
private client;
|
|
42
|
+
private currentStep;
|
|
43
|
+
constructor(config: ResolvedConfig);
|
|
44
|
+
/**
|
|
45
|
+
* Register a client-side tool (query action).
|
|
46
|
+
*/
|
|
47
|
+
registerTool(tool: ClientTool): void;
|
|
48
|
+
/**
|
|
49
|
+
* Unregister a client-side tool.
|
|
50
|
+
*/
|
|
51
|
+
unregisterTool(toolName: string): void;
|
|
52
|
+
/**
|
|
53
|
+
* Chat with streaming, using legacy callback patterns.
|
|
54
|
+
*/
|
|
55
|
+
chat(message: string, callbacks: LegacyStreamCallbacks, options?: {
|
|
56
|
+
history?: ChatMessage[];
|
|
57
|
+
userContext?: UserContextItem[];
|
|
58
|
+
images?: ChatImage[];
|
|
59
|
+
signal?: AbortSignal;
|
|
60
|
+
}): Promise<ChatResponse>;
|
|
61
|
+
/**
|
|
62
|
+
* Get current thread ID.
|
|
63
|
+
*/
|
|
64
|
+
get threadId(): string;
|
|
65
|
+
/**
|
|
66
|
+
* Start a new conversation.
|
|
67
|
+
*/
|
|
68
|
+
newThread(): string;
|
|
69
|
+
/**
|
|
70
|
+
* Send action result back to the agent (for query actions).
|
|
71
|
+
*
|
|
72
|
+
* @param actionName - The name of the action that was executed
|
|
73
|
+
* @param result - The result data to send back to the agent
|
|
74
|
+
*/
|
|
75
|
+
sendActionResult(actionName: string, result: unknown): Promise<void>;
|
|
76
|
+
}
|