@soederpop/luca 0.0.14 → 0.0.16
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/assistants/architect/CORE.md +3 -0
- package/assistants/architect/hooks.ts +3 -0
- package/assistants/architect/tools.ts +10 -0
- package/package.json +1 -1
- package/src/agi/features/assistant.ts +5 -0
- package/src/agi/features/conversation.ts +67 -4
- package/src/bootstrap/generated.ts +1 -1
- package/src/commands/chat.ts +12 -0
- package/src/introspection/generated.agi.ts +472 -446
- package/src/introspection/generated.node.ts +469 -443
- package/src/introspection/generated.web.ts +1 -1
- package/src/scaffolds/generated.ts +1 -1
- package/src/servers/express.ts +23 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { setBuildTimeData, setContainerBuildTimeData } from './index.js';
|
|
2
2
|
|
|
3
3
|
// Auto-generated introspection registry data
|
|
4
|
-
// Generated at: 2026-03-
|
|
4
|
+
// Generated at: 2026-03-20T16:22:29.071Z
|
|
5
5
|
|
|
6
6
|
setBuildTimeData('features.googleDocs', {
|
|
7
7
|
"id": "features.googleDocs",
|
|
@@ -9787,6 +9787,202 @@ setBuildTimeData('clients.openai', {
|
|
|
9787
9787
|
]
|
|
9788
9788
|
});
|
|
9789
9789
|
|
|
9790
|
+
setBuildTimeData('clients.supabase', {
|
|
9791
|
+
"id": "clients.supabase",
|
|
9792
|
+
"description": "Supabase client for the Luca container system. Wraps the official `@supabase/supabase-js` SDK and exposes it through Luca's typed state, events, and introspection system. The SDK is isomorphic so this single implementation works in both Node and browser containers. Use `client.sdk` for full SDK access, or use the convenience wrappers for common operations (auth, database queries, storage, edge functions, realtime).",
|
|
9793
|
+
"shortcut": "clients.supabase",
|
|
9794
|
+
"className": "SupabaseClient",
|
|
9795
|
+
"methods": {
|
|
9796
|
+
"from": {
|
|
9797
|
+
"description": "Start a query on a Postgres table or view.",
|
|
9798
|
+
"parameters": {
|
|
9799
|
+
"table": {
|
|
9800
|
+
"type": "string",
|
|
9801
|
+
"description": "The table or view name to query"
|
|
9802
|
+
}
|
|
9803
|
+
},
|
|
9804
|
+
"required": [
|
|
9805
|
+
"table"
|
|
9806
|
+
],
|
|
9807
|
+
"returns": "void"
|
|
9808
|
+
},
|
|
9809
|
+
"rpc": {
|
|
9810
|
+
"description": "Call a Postgres function (RPC).",
|
|
9811
|
+
"parameters": {
|
|
9812
|
+
"fn": {
|
|
9813
|
+
"type": "string",
|
|
9814
|
+
"description": "The function name"
|
|
9815
|
+
},
|
|
9816
|
+
"params": {
|
|
9817
|
+
"type": "Record<string, unknown>",
|
|
9818
|
+
"description": "Arguments to pass to the function"
|
|
9819
|
+
},
|
|
9820
|
+
"options": {
|
|
9821
|
+
"type": "{ head?: boolean; get?: boolean; count?: \"exact\" | \"planned\" | \"estimated\" }",
|
|
9822
|
+
"description": "Optional settings (head, get, count)"
|
|
9823
|
+
}
|
|
9824
|
+
},
|
|
9825
|
+
"required": [
|
|
9826
|
+
"fn"
|
|
9827
|
+
],
|
|
9828
|
+
"returns": "void"
|
|
9829
|
+
},
|
|
9830
|
+
"signInWithPassword": {
|
|
9831
|
+
"description": "Sign in with email and password.",
|
|
9832
|
+
"parameters": {
|
|
9833
|
+
"email": {
|
|
9834
|
+
"type": "string",
|
|
9835
|
+
"description": "Parameter email"
|
|
9836
|
+
},
|
|
9837
|
+
"password": {
|
|
9838
|
+
"type": "string",
|
|
9839
|
+
"description": "Parameter password"
|
|
9840
|
+
}
|
|
9841
|
+
},
|
|
9842
|
+
"required": [
|
|
9843
|
+
"email",
|
|
9844
|
+
"password"
|
|
9845
|
+
],
|
|
9846
|
+
"returns": "void"
|
|
9847
|
+
},
|
|
9848
|
+
"signUp": {
|
|
9849
|
+
"description": "Create a new user account with email and password.",
|
|
9850
|
+
"parameters": {
|
|
9851
|
+
"email": {
|
|
9852
|
+
"type": "string",
|
|
9853
|
+
"description": "Parameter email"
|
|
9854
|
+
},
|
|
9855
|
+
"password": {
|
|
9856
|
+
"type": "string",
|
|
9857
|
+
"description": "Parameter password"
|
|
9858
|
+
}
|
|
9859
|
+
},
|
|
9860
|
+
"required": [
|
|
9861
|
+
"email",
|
|
9862
|
+
"password"
|
|
9863
|
+
],
|
|
9864
|
+
"returns": "void"
|
|
9865
|
+
},
|
|
9866
|
+
"signOut": {
|
|
9867
|
+
"description": "Sign the current user out.",
|
|
9868
|
+
"parameters": {},
|
|
9869
|
+
"required": [],
|
|
9870
|
+
"returns": "void"
|
|
9871
|
+
},
|
|
9872
|
+
"getSession": {
|
|
9873
|
+
"description": "Get the current session, if any.",
|
|
9874
|
+
"parameters": {},
|
|
9875
|
+
"required": [],
|
|
9876
|
+
"returns": "void"
|
|
9877
|
+
},
|
|
9878
|
+
"getUser": {
|
|
9879
|
+
"description": "Get the current user, if any.",
|
|
9880
|
+
"parameters": {},
|
|
9881
|
+
"required": [],
|
|
9882
|
+
"returns": "void"
|
|
9883
|
+
},
|
|
9884
|
+
"invoke": {
|
|
9885
|
+
"description": "Invoke a Supabase Edge Function by name.",
|
|
9886
|
+
"parameters": {
|
|
9887
|
+
"name": {
|
|
9888
|
+
"type": "string",
|
|
9889
|
+
"description": "Parameter name"
|
|
9890
|
+
},
|
|
9891
|
+
"body": {
|
|
9892
|
+
"type": "any",
|
|
9893
|
+
"description": "Parameter body"
|
|
9894
|
+
}
|
|
9895
|
+
},
|
|
9896
|
+
"required": [
|
|
9897
|
+
"name"
|
|
9898
|
+
],
|
|
9899
|
+
"returns": "void"
|
|
9900
|
+
},
|
|
9901
|
+
"subscribe": {
|
|
9902
|
+
"description": "Subscribe to realtime changes on a Postgres table.",
|
|
9903
|
+
"parameters": {
|
|
9904
|
+
"channelName": {
|
|
9905
|
+
"type": "string",
|
|
9906
|
+
"description": "A name for this subscription channel"
|
|
9907
|
+
},
|
|
9908
|
+
"table": {
|
|
9909
|
+
"type": "string",
|
|
9910
|
+
"description": "The table to listen to"
|
|
9911
|
+
},
|
|
9912
|
+
"callback": {
|
|
9913
|
+
"type": "(payload: any) => void",
|
|
9914
|
+
"description": "Called with the payload on each change"
|
|
9915
|
+
},
|
|
9916
|
+
"event": {
|
|
9917
|
+
"type": "\"INSERT\" | \"UPDATE\" | \"DELETE\" | \"*\"",
|
|
9918
|
+
"description": "The event type to listen for (default: all changes)"
|
|
9919
|
+
}
|
|
9920
|
+
},
|
|
9921
|
+
"required": [
|
|
9922
|
+
"channelName",
|
|
9923
|
+
"table",
|
|
9924
|
+
"callback"
|
|
9925
|
+
],
|
|
9926
|
+
"returns": "RealtimeChannel"
|
|
9927
|
+
},
|
|
9928
|
+
"unsubscribe": {
|
|
9929
|
+
"description": "Unsubscribe and remove a realtime channel by name.",
|
|
9930
|
+
"parameters": {
|
|
9931
|
+
"channelName": {
|
|
9932
|
+
"type": "string",
|
|
9933
|
+
"description": "The channel name to remove"
|
|
9934
|
+
}
|
|
9935
|
+
},
|
|
9936
|
+
"required": [
|
|
9937
|
+
"channelName"
|
|
9938
|
+
],
|
|
9939
|
+
"returns": "void"
|
|
9940
|
+
},
|
|
9941
|
+
"unsubscribeAll": {
|
|
9942
|
+
"description": "Unsubscribe and remove all realtime channels.",
|
|
9943
|
+
"parameters": {},
|
|
9944
|
+
"required": [],
|
|
9945
|
+
"returns": "void"
|
|
9946
|
+
},
|
|
9947
|
+
"connect": {
|
|
9948
|
+
"description": "Connect is a no-op since the Supabase SDK initializes on construction. The client is ready to use immediately after creation.",
|
|
9949
|
+
"parameters": {},
|
|
9950
|
+
"required": [],
|
|
9951
|
+
"returns": "void"
|
|
9952
|
+
},
|
|
9953
|
+
"disconnect": {
|
|
9954
|
+
"description": "Disconnect by signing out and removing all realtime channels.",
|
|
9955
|
+
"parameters": {},
|
|
9956
|
+
"required": [],
|
|
9957
|
+
"returns": "void"
|
|
9958
|
+
}
|
|
9959
|
+
},
|
|
9960
|
+
"getters": {
|
|
9961
|
+
"sdk": {
|
|
9962
|
+
"description": "Returns the raw Supabase SDK client for full access to all SDK methods.",
|
|
9963
|
+
"returns": "SupabaseSDKClient<any, any>"
|
|
9964
|
+
},
|
|
9965
|
+
"storage": {
|
|
9966
|
+
"description": "Returns the Supabase Storage client for managing buckets and files.",
|
|
9967
|
+
"returns": "any"
|
|
9968
|
+
},
|
|
9969
|
+
"functions": {
|
|
9970
|
+
"description": "Returns the Supabase Functions client.",
|
|
9971
|
+
"returns": "any"
|
|
9972
|
+
}
|
|
9973
|
+
},
|
|
9974
|
+
"events": {},
|
|
9975
|
+
"state": {},
|
|
9976
|
+
"options": {},
|
|
9977
|
+
"envVars": [],
|
|
9978
|
+
"examples": [
|
|
9979
|
+
{
|
|
9980
|
+
"language": "ts",
|
|
9981
|
+
"code": "const supabase = container.client('supabase', {\n supabaseUrl: 'https://xyz.supabase.co',\n supabaseKey: 'your-anon-key',\n})\n\n// Query data\nconst { data } = await supabase.from('users').select('*')\n\n// Auth\nawait supabase.signInWithPassword('user@example.com', 'password')\n\n// Realtime\nsupabase.subscribe('changes', 'users', (payload) => {\n console.log('Change:', payload)\n})"
|
|
9982
|
+
}
|
|
9983
|
+
]
|
|
9984
|
+
});
|
|
9985
|
+
|
|
9790
9986
|
setBuildTimeData('clients.elevenlabs', {
|
|
9791
9987
|
"id": "clients.elevenlabs",
|
|
9792
9988
|
"description": "ElevenLabs client — text-to-speech synthesis via the ElevenLabs REST API. Provides methods for listing voices, listing models, and generating speech audio. Audio is returned as a Buffer; use `say()` for a convenience method that writes to disk.",
|
|
@@ -9961,226 +10157,30 @@ setBuildTimeData('clients.elevenlabs', {
|
|
|
9961
10157
|
"returns": "string"
|
|
9962
10158
|
}
|
|
9963
10159
|
},
|
|
9964
|
-
"events": {
|
|
9965
|
-
"failure": {
|
|
9966
|
-
"name": "failure",
|
|
9967
|
-
"description": "Event emitted by ElevenLabsClient",
|
|
9968
|
-
"arguments": {}
|
|
9969
|
-
},
|
|
9970
|
-
"voices": {
|
|
9971
|
-
"name": "voices",
|
|
9972
|
-
"description": "Event emitted by ElevenLabsClient",
|
|
9973
|
-
"arguments": {}
|
|
9974
|
-
},
|
|
9975
|
-
"speech": {
|
|
9976
|
-
"name": "speech",
|
|
9977
|
-
"description": "Event emitted by ElevenLabsClient",
|
|
9978
|
-
"arguments": {}
|
|
9979
|
-
}
|
|
9980
|
-
},
|
|
9981
|
-
"state": {},
|
|
9982
|
-
"options": {},
|
|
9983
|
-
"envVars": [],
|
|
9984
|
-
"examples": [
|
|
9985
|
-
{
|
|
9986
|
-
"language": "ts",
|
|
9987
|
-
"code": "const el = container.client('elevenlabs')\nawait el.connect()\nconst voices = await el.listVoices()\nconst audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data"
|
|
9988
|
-
}
|
|
9989
|
-
]
|
|
9990
|
-
});
|
|
9991
|
-
|
|
9992
|
-
setBuildTimeData('clients.supabase', {
|
|
9993
|
-
"id": "clients.supabase",
|
|
9994
|
-
"description": "Supabase client for the Luca container system. Wraps the official `@supabase/supabase-js` SDK and exposes it through Luca's typed state, events, and introspection system. The SDK is isomorphic so this single implementation works in both Node and browser containers. Use `client.sdk` for full SDK access, or use the convenience wrappers for common operations (auth, database queries, storage, edge functions, realtime).",
|
|
9995
|
-
"shortcut": "clients.supabase",
|
|
9996
|
-
"className": "SupabaseClient",
|
|
9997
|
-
"methods": {
|
|
9998
|
-
"from": {
|
|
9999
|
-
"description": "Start a query on a Postgres table or view.",
|
|
10000
|
-
"parameters": {
|
|
10001
|
-
"table": {
|
|
10002
|
-
"type": "string",
|
|
10003
|
-
"description": "The table or view name to query"
|
|
10004
|
-
}
|
|
10005
|
-
},
|
|
10006
|
-
"required": [
|
|
10007
|
-
"table"
|
|
10008
|
-
],
|
|
10009
|
-
"returns": "void"
|
|
10010
|
-
},
|
|
10011
|
-
"rpc": {
|
|
10012
|
-
"description": "Call a Postgres function (RPC).",
|
|
10013
|
-
"parameters": {
|
|
10014
|
-
"fn": {
|
|
10015
|
-
"type": "string",
|
|
10016
|
-
"description": "The function name"
|
|
10017
|
-
},
|
|
10018
|
-
"params": {
|
|
10019
|
-
"type": "Record<string, unknown>",
|
|
10020
|
-
"description": "Arguments to pass to the function"
|
|
10021
|
-
},
|
|
10022
|
-
"options": {
|
|
10023
|
-
"type": "{ head?: boolean; get?: boolean; count?: \"exact\" | \"planned\" | \"estimated\" }",
|
|
10024
|
-
"description": "Optional settings (head, get, count)"
|
|
10025
|
-
}
|
|
10026
|
-
},
|
|
10027
|
-
"required": [
|
|
10028
|
-
"fn"
|
|
10029
|
-
],
|
|
10030
|
-
"returns": "void"
|
|
10031
|
-
},
|
|
10032
|
-
"signInWithPassword": {
|
|
10033
|
-
"description": "Sign in with email and password.",
|
|
10034
|
-
"parameters": {
|
|
10035
|
-
"email": {
|
|
10036
|
-
"type": "string",
|
|
10037
|
-
"description": "Parameter email"
|
|
10038
|
-
},
|
|
10039
|
-
"password": {
|
|
10040
|
-
"type": "string",
|
|
10041
|
-
"description": "Parameter password"
|
|
10042
|
-
}
|
|
10043
|
-
},
|
|
10044
|
-
"required": [
|
|
10045
|
-
"email",
|
|
10046
|
-
"password"
|
|
10047
|
-
],
|
|
10048
|
-
"returns": "void"
|
|
10049
|
-
},
|
|
10050
|
-
"signUp": {
|
|
10051
|
-
"description": "Create a new user account with email and password.",
|
|
10052
|
-
"parameters": {
|
|
10053
|
-
"email": {
|
|
10054
|
-
"type": "string",
|
|
10055
|
-
"description": "Parameter email"
|
|
10056
|
-
},
|
|
10057
|
-
"password": {
|
|
10058
|
-
"type": "string",
|
|
10059
|
-
"description": "Parameter password"
|
|
10060
|
-
}
|
|
10061
|
-
},
|
|
10062
|
-
"required": [
|
|
10063
|
-
"email",
|
|
10064
|
-
"password"
|
|
10065
|
-
],
|
|
10066
|
-
"returns": "void"
|
|
10067
|
-
},
|
|
10068
|
-
"signOut": {
|
|
10069
|
-
"description": "Sign the current user out.",
|
|
10070
|
-
"parameters": {},
|
|
10071
|
-
"required": [],
|
|
10072
|
-
"returns": "void"
|
|
10073
|
-
},
|
|
10074
|
-
"getSession": {
|
|
10075
|
-
"description": "Get the current session, if any.",
|
|
10076
|
-
"parameters": {},
|
|
10077
|
-
"required": [],
|
|
10078
|
-
"returns": "void"
|
|
10079
|
-
},
|
|
10080
|
-
"getUser": {
|
|
10081
|
-
"description": "Get the current user, if any.",
|
|
10082
|
-
"parameters": {},
|
|
10083
|
-
"required": [],
|
|
10084
|
-
"returns": "void"
|
|
10085
|
-
},
|
|
10086
|
-
"invoke": {
|
|
10087
|
-
"description": "Invoke a Supabase Edge Function by name.",
|
|
10088
|
-
"parameters": {
|
|
10089
|
-
"name": {
|
|
10090
|
-
"type": "string",
|
|
10091
|
-
"description": "Parameter name"
|
|
10092
|
-
},
|
|
10093
|
-
"body": {
|
|
10094
|
-
"type": "any",
|
|
10095
|
-
"description": "Parameter body"
|
|
10096
|
-
}
|
|
10097
|
-
},
|
|
10098
|
-
"required": [
|
|
10099
|
-
"name"
|
|
10100
|
-
],
|
|
10101
|
-
"returns": "void"
|
|
10102
|
-
},
|
|
10103
|
-
"subscribe": {
|
|
10104
|
-
"description": "Subscribe to realtime changes on a Postgres table.",
|
|
10105
|
-
"parameters": {
|
|
10106
|
-
"channelName": {
|
|
10107
|
-
"type": "string",
|
|
10108
|
-
"description": "A name for this subscription channel"
|
|
10109
|
-
},
|
|
10110
|
-
"table": {
|
|
10111
|
-
"type": "string",
|
|
10112
|
-
"description": "The table to listen to"
|
|
10113
|
-
},
|
|
10114
|
-
"callback": {
|
|
10115
|
-
"type": "(payload: any) => void",
|
|
10116
|
-
"description": "Called with the payload on each change"
|
|
10117
|
-
},
|
|
10118
|
-
"event": {
|
|
10119
|
-
"type": "\"INSERT\" | \"UPDATE\" | \"DELETE\" | \"*\"",
|
|
10120
|
-
"description": "The event type to listen for (default: all changes)"
|
|
10121
|
-
}
|
|
10122
|
-
},
|
|
10123
|
-
"required": [
|
|
10124
|
-
"channelName",
|
|
10125
|
-
"table",
|
|
10126
|
-
"callback"
|
|
10127
|
-
],
|
|
10128
|
-
"returns": "RealtimeChannel"
|
|
10129
|
-
},
|
|
10130
|
-
"unsubscribe": {
|
|
10131
|
-
"description": "Unsubscribe and remove a realtime channel by name.",
|
|
10132
|
-
"parameters": {
|
|
10133
|
-
"channelName": {
|
|
10134
|
-
"type": "string",
|
|
10135
|
-
"description": "The channel name to remove"
|
|
10136
|
-
}
|
|
10137
|
-
},
|
|
10138
|
-
"required": [
|
|
10139
|
-
"channelName"
|
|
10140
|
-
],
|
|
10141
|
-
"returns": "void"
|
|
10142
|
-
},
|
|
10143
|
-
"unsubscribeAll": {
|
|
10144
|
-
"description": "Unsubscribe and remove all realtime channels.",
|
|
10145
|
-
"parameters": {},
|
|
10146
|
-
"required": [],
|
|
10147
|
-
"returns": "void"
|
|
10148
|
-
},
|
|
10149
|
-
"connect": {
|
|
10150
|
-
"description": "Connect is a no-op since the Supabase SDK initializes on construction. The client is ready to use immediately after creation.",
|
|
10151
|
-
"parameters": {},
|
|
10152
|
-
"required": [],
|
|
10153
|
-
"returns": "void"
|
|
10154
|
-
},
|
|
10155
|
-
"disconnect": {
|
|
10156
|
-
"description": "Disconnect by signing out and removing all realtime channels.",
|
|
10157
|
-
"parameters": {},
|
|
10158
|
-
"required": [],
|
|
10159
|
-
"returns": "void"
|
|
10160
|
-
}
|
|
10161
|
-
},
|
|
10162
|
-
"getters": {
|
|
10163
|
-
"sdk": {
|
|
10164
|
-
"description": "Returns the raw Supabase SDK client for full access to all SDK methods.",
|
|
10165
|
-
"returns": "SupabaseSDKClient<any, any>"
|
|
10160
|
+
"events": {
|
|
10161
|
+
"failure": {
|
|
10162
|
+
"name": "failure",
|
|
10163
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
10164
|
+
"arguments": {}
|
|
10166
10165
|
},
|
|
10167
|
-
"
|
|
10168
|
-
"
|
|
10169
|
-
"
|
|
10166
|
+
"voices": {
|
|
10167
|
+
"name": "voices",
|
|
10168
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
10169
|
+
"arguments": {}
|
|
10170
10170
|
},
|
|
10171
|
-
"
|
|
10172
|
-
"
|
|
10173
|
-
"
|
|
10171
|
+
"speech": {
|
|
10172
|
+
"name": "speech",
|
|
10173
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
10174
|
+
"arguments": {}
|
|
10174
10175
|
}
|
|
10175
10176
|
},
|
|
10176
|
-
"events": {},
|
|
10177
10177
|
"state": {},
|
|
10178
10178
|
"options": {},
|
|
10179
10179
|
"envVars": [],
|
|
10180
10180
|
"examples": [
|
|
10181
10181
|
{
|
|
10182
10182
|
"language": "ts",
|
|
10183
|
-
"code": "const
|
|
10183
|
+
"code": "const el = container.client('elevenlabs')\nawait el.connect()\nconst voices = await el.listVoices()\nconst audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data"
|
|
10184
10184
|
}
|
|
10185
10185
|
]
|
|
10186
10186
|
});
|
|
@@ -10657,6 +10657,19 @@ setBuildTimeData('servers.express', {
|
|
|
10657
10657
|
],
|
|
10658
10658
|
"returns": "Promise<this>"
|
|
10659
10659
|
},
|
|
10660
|
+
"useEndpointModules": {
|
|
10661
|
+
"description": "",
|
|
10662
|
+
"parameters": {
|
|
10663
|
+
"modules": {
|
|
10664
|
+
"type": "EndpointModule[]",
|
|
10665
|
+
"description": "Parameter modules"
|
|
10666
|
+
}
|
|
10667
|
+
},
|
|
10668
|
+
"required": [
|
|
10669
|
+
"modules"
|
|
10670
|
+
],
|
|
10671
|
+
"returns": "Promise<this>"
|
|
10672
|
+
},
|
|
10660
10673
|
"serveOpenAPISpec": {
|
|
10661
10674
|
"description": "",
|
|
10662
10675
|
"parameters": {
|
|
@@ -23183,263 +23196,62 @@ export const introspectionData = [
|
|
|
23183
23196
|
"type": "OpenAI.Chat.Completions.ChatCompletionMessageParam[]",
|
|
23184
23197
|
"description": "Array of chat messages"
|
|
23185
23198
|
},
|
|
23186
|
-
"options": {
|
|
23187
|
-
"type": "Partial<OpenAI.Chat.Completions.ChatCompletionCreateParams>",
|
|
23188
|
-
"description": "Additional completion parameters"
|
|
23189
|
-
}
|
|
23190
|
-
},
|
|
23191
|
-
"required": [
|
|
23192
|
-
"messages"
|
|
23193
|
-
],
|
|
23194
|
-
"returns": "Promise<string>",
|
|
23195
|
-
"examples": [
|
|
23196
|
-
{
|
|
23197
|
-
"language": "ts",
|
|
23198
|
-
"code": "const reply = await openai.chat([\n { role: 'system', content: 'You are a pirate.' },\n { role: 'user', content: 'Hello!' }\n])"
|
|
23199
|
-
}
|
|
23200
|
-
]
|
|
23201
|
-
}
|
|
23202
|
-
},
|
|
23203
|
-
"getters": {
|
|
23204
|
-
"defaultModel": {
|
|
23205
|
-
"description": "The default model used for completions, from options or 'gpt-4o'.",
|
|
23206
|
-
"returns": "string"
|
|
23207
|
-
},
|
|
23208
|
-
"raw": {
|
|
23209
|
-
"description": "The underlying OpenAI SDK instance for advanced use cases.",
|
|
23210
|
-
"returns": "OpenAI"
|
|
23211
|
-
}
|
|
23212
|
-
},
|
|
23213
|
-
"events": {
|
|
23214
|
-
"connected": {
|
|
23215
|
-
"name": "connected",
|
|
23216
|
-
"description": "Event emitted by OpenAIClient",
|
|
23217
|
-
"arguments": {}
|
|
23218
|
-
},
|
|
23219
|
-
"failure": {
|
|
23220
|
-
"name": "failure",
|
|
23221
|
-
"description": "Event emitted by OpenAIClient",
|
|
23222
|
-
"arguments": {}
|
|
23223
|
-
},
|
|
23224
|
-
"completion": {
|
|
23225
|
-
"name": "completion",
|
|
23226
|
-
"description": "Event emitted by OpenAIClient",
|
|
23227
|
-
"arguments": {}
|
|
23228
|
-
},
|
|
23229
|
-
"embedding": {
|
|
23230
|
-
"name": "embedding",
|
|
23231
|
-
"description": "Event emitted by OpenAIClient",
|
|
23232
|
-
"arguments": {}
|
|
23233
|
-
},
|
|
23234
|
-
"image": {
|
|
23235
|
-
"name": "image",
|
|
23236
|
-
"description": "Event emitted by OpenAIClient",
|
|
23237
|
-
"arguments": {}
|
|
23238
|
-
},
|
|
23239
|
-
"models": {
|
|
23240
|
-
"name": "models",
|
|
23241
|
-
"description": "Event emitted by OpenAIClient",
|
|
23242
|
-
"arguments": {}
|
|
23243
|
-
}
|
|
23244
|
-
},
|
|
23245
|
-
"state": {},
|
|
23246
|
-
"options": {},
|
|
23247
|
-
"envVars": [],
|
|
23248
|
-
"examples": [
|
|
23249
|
-
{
|
|
23250
|
-
"language": "ts",
|
|
23251
|
-
"code": "const openai = container.client('openai', { defaultModel: 'gpt-4o' })\nconst answer = await openai.ask('What is the meaning of life?')\nconsole.log(answer)"
|
|
23252
|
-
}
|
|
23253
|
-
]
|
|
23254
|
-
},
|
|
23255
|
-
{
|
|
23256
|
-
"id": "clients.elevenlabs",
|
|
23257
|
-
"description": "ElevenLabs client — text-to-speech synthesis via the ElevenLabs REST API. Provides methods for listing voices, listing models, and generating speech audio. Audio is returned as a Buffer; use `say()` for a convenience method that writes to disk.",
|
|
23258
|
-
"shortcut": "clients.elevenlabs",
|
|
23259
|
-
"className": "ElevenLabsClient",
|
|
23260
|
-
"methods": {
|
|
23261
|
-
"beforeRequest": {
|
|
23262
|
-
"description": "Inject the xi-api-key header before each request.",
|
|
23263
|
-
"parameters": {},
|
|
23264
|
-
"required": [],
|
|
23265
|
-
"returns": "void"
|
|
23266
|
-
},
|
|
23267
|
-
"connect": {
|
|
23268
|
-
"description": "Validate the API key by listing available models.",
|
|
23269
|
-
"parameters": {},
|
|
23270
|
-
"required": [],
|
|
23271
|
-
"returns": "Promise<this>",
|
|
23272
|
-
"examples": [
|
|
23273
|
-
{
|
|
23274
|
-
"language": "ts",
|
|
23275
|
-
"code": "await el.connect()"
|
|
23276
|
-
}
|
|
23277
|
-
]
|
|
23278
|
-
},
|
|
23279
|
-
"listVoices": {
|
|
23280
|
-
"description": "List available voices with optional search and filtering.",
|
|
23281
|
-
"parameters": {
|
|
23282
|
-
"options": {
|
|
23283
|
-
"type": "{\n search?: string\n category?: string\n voice_type?: string\n page_size?: number\n next_page_token?: string\n }",
|
|
23284
|
-
"description": "Query parameters for filtering voices"
|
|
23285
|
-
}
|
|
23286
|
-
},
|
|
23287
|
-
"required": [],
|
|
23288
|
-
"returns": "Promise<any>",
|
|
23289
|
-
"examples": [
|
|
23290
|
-
{
|
|
23291
|
-
"language": "ts",
|
|
23292
|
-
"code": "const voices = await el.listVoices()\nconst premade = await el.listVoices({ category: 'premade' })"
|
|
23293
|
-
}
|
|
23294
|
-
]
|
|
23295
|
-
},
|
|
23296
|
-
"getVoice": {
|
|
23297
|
-
"description": "Get details for a single voice.",
|
|
23298
|
-
"parameters": {
|
|
23299
|
-
"voiceId": {
|
|
23300
|
-
"type": "string",
|
|
23301
|
-
"description": "The voice ID to look up"
|
|
23302
|
-
}
|
|
23303
|
-
},
|
|
23304
|
-
"required": [
|
|
23305
|
-
"voiceId"
|
|
23306
|
-
],
|
|
23307
|
-
"returns": "Promise<any>",
|
|
23308
|
-
"examples": [
|
|
23309
|
-
{
|
|
23310
|
-
"language": "ts",
|
|
23311
|
-
"code": "const voice = await el.getVoice('21m00Tcm4TlvDq8ikWAM')\nconsole.log(voice.name, voice.settings)"
|
|
23312
|
-
}
|
|
23313
|
-
]
|
|
23314
|
-
},
|
|
23315
|
-
"listModels": {
|
|
23316
|
-
"description": "List available TTS models.",
|
|
23317
|
-
"parameters": {},
|
|
23318
|
-
"required": [],
|
|
23319
|
-
"returns": "Promise<any[]>",
|
|
23320
|
-
"examples": [
|
|
23321
|
-
{
|
|
23322
|
-
"language": "ts",
|
|
23323
|
-
"code": "const models = await el.listModels()\nconsole.log(models.map(m => m.model_id))"
|
|
23324
|
-
}
|
|
23325
|
-
]
|
|
23326
|
-
},
|
|
23327
|
-
"synthesize": {
|
|
23328
|
-
"description": "Synthesize speech from text, returning audio as a Buffer.",
|
|
23329
|
-
"parameters": {
|
|
23330
|
-
"text": {
|
|
23331
|
-
"type": "string",
|
|
23332
|
-
"description": "The text to convert to speech"
|
|
23333
|
-
},
|
|
23334
|
-
"options": {
|
|
23335
|
-
"type": "SynthesizeOptions",
|
|
23336
|
-
"description": "Voice, model, format, and voice settings overrides",
|
|
23337
|
-
"properties": {
|
|
23338
|
-
"voiceId": {
|
|
23339
|
-
"type": "string",
|
|
23340
|
-
"description": ""
|
|
23341
|
-
},
|
|
23342
|
-
"modelId": {
|
|
23343
|
-
"type": "string",
|
|
23344
|
-
"description": ""
|
|
23345
|
-
},
|
|
23346
|
-
"outputFormat": {
|
|
23347
|
-
"type": "string",
|
|
23348
|
-
"description": ""
|
|
23349
|
-
},
|
|
23350
|
-
"voiceSettings": {
|
|
23351
|
-
"type": "ElevenLabsVoiceSettings",
|
|
23352
|
-
"description": ""
|
|
23353
|
-
},
|
|
23354
|
-
"disableCache": {
|
|
23355
|
-
"type": "boolean",
|
|
23356
|
-
"description": ""
|
|
23357
|
-
}
|
|
23358
|
-
}
|
|
23359
|
-
}
|
|
23360
|
-
},
|
|
23361
|
-
"required": [
|
|
23362
|
-
"text"
|
|
23363
|
-
],
|
|
23364
|
-
"returns": "Promise<Buffer>",
|
|
23365
|
-
"examples": [
|
|
23366
|
-
{
|
|
23367
|
-
"language": "ts",
|
|
23368
|
-
"code": "const audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data\n\nconst custom = await el.synthesize('Hello', {\n voiceId: '21m00Tcm4TlvDq8ikWAM',\n voiceSettings: { stability: 0.5, similarityBoost: 0.8 }\n})"
|
|
23369
|
-
}
|
|
23370
|
-
]
|
|
23371
|
-
},
|
|
23372
|
-
"say": {
|
|
23373
|
-
"description": "Synthesize speech and write the audio to a file.",
|
|
23374
|
-
"parameters": {
|
|
23375
|
-
"text": {
|
|
23376
|
-
"type": "string",
|
|
23377
|
-
"description": "The text to convert to speech"
|
|
23378
|
-
},
|
|
23379
|
-
"outputPath": {
|
|
23380
|
-
"type": "string",
|
|
23381
|
-
"description": "File path to write the audio to"
|
|
23382
|
-
},
|
|
23383
|
-
"options": {
|
|
23384
|
-
"type": "SynthesizeOptions",
|
|
23385
|
-
"description": "Voice, model, format, and voice settings overrides",
|
|
23386
|
-
"properties": {
|
|
23387
|
-
"voiceId": {
|
|
23388
|
-
"type": "string",
|
|
23389
|
-
"description": ""
|
|
23390
|
-
},
|
|
23391
|
-
"modelId": {
|
|
23392
|
-
"type": "string",
|
|
23393
|
-
"description": ""
|
|
23394
|
-
},
|
|
23395
|
-
"outputFormat": {
|
|
23396
|
-
"type": "string",
|
|
23397
|
-
"description": ""
|
|
23398
|
-
},
|
|
23399
|
-
"voiceSettings": {
|
|
23400
|
-
"type": "ElevenLabsVoiceSettings",
|
|
23401
|
-
"description": ""
|
|
23402
|
-
},
|
|
23403
|
-
"disableCache": {
|
|
23404
|
-
"type": "boolean",
|
|
23405
|
-
"description": ""
|
|
23406
|
-
}
|
|
23407
|
-
}
|
|
23199
|
+
"options": {
|
|
23200
|
+
"type": "Partial<OpenAI.Chat.Completions.ChatCompletionCreateParams>",
|
|
23201
|
+
"description": "Additional completion parameters"
|
|
23408
23202
|
}
|
|
23409
23203
|
},
|
|
23410
23204
|
"required": [
|
|
23411
|
-
"
|
|
23412
|
-
"outputPath"
|
|
23205
|
+
"messages"
|
|
23413
23206
|
],
|
|
23414
23207
|
"returns": "Promise<string>",
|
|
23415
23208
|
"examples": [
|
|
23416
23209
|
{
|
|
23417
23210
|
"language": "ts",
|
|
23418
|
-
"code": "const
|
|
23211
|
+
"code": "const reply = await openai.chat([\n { role: 'system', content: 'You are a pirate.' },\n { role: 'user', content: 'Hello!' }\n])"
|
|
23419
23212
|
}
|
|
23420
23213
|
]
|
|
23421
23214
|
}
|
|
23422
23215
|
},
|
|
23423
23216
|
"getters": {
|
|
23424
|
-
"
|
|
23425
|
-
"description": "The
|
|
23217
|
+
"defaultModel": {
|
|
23218
|
+
"description": "The default model used for completions, from options or 'gpt-4o'.",
|
|
23426
23219
|
"returns": "string"
|
|
23220
|
+
},
|
|
23221
|
+
"raw": {
|
|
23222
|
+
"description": "The underlying OpenAI SDK instance for advanced use cases.",
|
|
23223
|
+
"returns": "OpenAI"
|
|
23427
23224
|
}
|
|
23428
23225
|
},
|
|
23429
23226
|
"events": {
|
|
23227
|
+
"connected": {
|
|
23228
|
+
"name": "connected",
|
|
23229
|
+
"description": "Event emitted by OpenAIClient",
|
|
23230
|
+
"arguments": {}
|
|
23231
|
+
},
|
|
23430
23232
|
"failure": {
|
|
23431
23233
|
"name": "failure",
|
|
23432
|
-
"description": "Event emitted by
|
|
23234
|
+
"description": "Event emitted by OpenAIClient",
|
|
23433
23235
|
"arguments": {}
|
|
23434
23236
|
},
|
|
23435
|
-
"
|
|
23436
|
-
"name": "
|
|
23437
|
-
"description": "Event emitted by
|
|
23237
|
+
"completion": {
|
|
23238
|
+
"name": "completion",
|
|
23239
|
+
"description": "Event emitted by OpenAIClient",
|
|
23438
23240
|
"arguments": {}
|
|
23439
23241
|
},
|
|
23440
|
-
"
|
|
23441
|
-
"name": "
|
|
23442
|
-
"description": "Event emitted by
|
|
23242
|
+
"embedding": {
|
|
23243
|
+
"name": "embedding",
|
|
23244
|
+
"description": "Event emitted by OpenAIClient",
|
|
23245
|
+
"arguments": {}
|
|
23246
|
+
},
|
|
23247
|
+
"image": {
|
|
23248
|
+
"name": "image",
|
|
23249
|
+
"description": "Event emitted by OpenAIClient",
|
|
23250
|
+
"arguments": {}
|
|
23251
|
+
},
|
|
23252
|
+
"models": {
|
|
23253
|
+
"name": "models",
|
|
23254
|
+
"description": "Event emitted by OpenAIClient",
|
|
23443
23255
|
"arguments": {}
|
|
23444
23256
|
}
|
|
23445
23257
|
},
|
|
@@ -23449,7 +23261,7 @@ export const introspectionData = [
|
|
|
23449
23261
|
"examples": [
|
|
23450
23262
|
{
|
|
23451
23263
|
"language": "ts",
|
|
23452
|
-
"code": "const
|
|
23264
|
+
"code": "const openai = container.client('openai', { defaultModel: 'gpt-4o' })\nconst answer = await openai.ask('What is the meaning of life?')\nconsole.log(answer)"
|
|
23453
23265
|
}
|
|
23454
23266
|
]
|
|
23455
23267
|
},
|
|
@@ -23648,6 +23460,207 @@ export const introspectionData = [
|
|
|
23648
23460
|
}
|
|
23649
23461
|
]
|
|
23650
23462
|
},
|
|
23463
|
+
{
|
|
23464
|
+
"id": "clients.elevenlabs",
|
|
23465
|
+
"description": "ElevenLabs client — text-to-speech synthesis via the ElevenLabs REST API. Provides methods for listing voices, listing models, and generating speech audio. Audio is returned as a Buffer; use `say()` for a convenience method that writes to disk.",
|
|
23466
|
+
"shortcut": "clients.elevenlabs",
|
|
23467
|
+
"className": "ElevenLabsClient",
|
|
23468
|
+
"methods": {
|
|
23469
|
+
"beforeRequest": {
|
|
23470
|
+
"description": "Inject the xi-api-key header before each request.",
|
|
23471
|
+
"parameters": {},
|
|
23472
|
+
"required": [],
|
|
23473
|
+
"returns": "void"
|
|
23474
|
+
},
|
|
23475
|
+
"connect": {
|
|
23476
|
+
"description": "Validate the API key by listing available models.",
|
|
23477
|
+
"parameters": {},
|
|
23478
|
+
"required": [],
|
|
23479
|
+
"returns": "Promise<this>",
|
|
23480
|
+
"examples": [
|
|
23481
|
+
{
|
|
23482
|
+
"language": "ts",
|
|
23483
|
+
"code": "await el.connect()"
|
|
23484
|
+
}
|
|
23485
|
+
]
|
|
23486
|
+
},
|
|
23487
|
+
"listVoices": {
|
|
23488
|
+
"description": "List available voices with optional search and filtering.",
|
|
23489
|
+
"parameters": {
|
|
23490
|
+
"options": {
|
|
23491
|
+
"type": "{\n search?: string\n category?: string\n voice_type?: string\n page_size?: number\n next_page_token?: string\n }",
|
|
23492
|
+
"description": "Query parameters for filtering voices"
|
|
23493
|
+
}
|
|
23494
|
+
},
|
|
23495
|
+
"required": [],
|
|
23496
|
+
"returns": "Promise<any>",
|
|
23497
|
+
"examples": [
|
|
23498
|
+
{
|
|
23499
|
+
"language": "ts",
|
|
23500
|
+
"code": "const voices = await el.listVoices()\nconst premade = await el.listVoices({ category: 'premade' })"
|
|
23501
|
+
}
|
|
23502
|
+
]
|
|
23503
|
+
},
|
|
23504
|
+
"getVoice": {
|
|
23505
|
+
"description": "Get details for a single voice.",
|
|
23506
|
+
"parameters": {
|
|
23507
|
+
"voiceId": {
|
|
23508
|
+
"type": "string",
|
|
23509
|
+
"description": "The voice ID to look up"
|
|
23510
|
+
}
|
|
23511
|
+
},
|
|
23512
|
+
"required": [
|
|
23513
|
+
"voiceId"
|
|
23514
|
+
],
|
|
23515
|
+
"returns": "Promise<any>",
|
|
23516
|
+
"examples": [
|
|
23517
|
+
{
|
|
23518
|
+
"language": "ts",
|
|
23519
|
+
"code": "const voice = await el.getVoice('21m00Tcm4TlvDq8ikWAM')\nconsole.log(voice.name, voice.settings)"
|
|
23520
|
+
}
|
|
23521
|
+
]
|
|
23522
|
+
},
|
|
23523
|
+
"listModels": {
|
|
23524
|
+
"description": "List available TTS models.",
|
|
23525
|
+
"parameters": {},
|
|
23526
|
+
"required": [],
|
|
23527
|
+
"returns": "Promise<any[]>",
|
|
23528
|
+
"examples": [
|
|
23529
|
+
{
|
|
23530
|
+
"language": "ts",
|
|
23531
|
+
"code": "const models = await el.listModels()\nconsole.log(models.map(m => m.model_id))"
|
|
23532
|
+
}
|
|
23533
|
+
]
|
|
23534
|
+
},
|
|
23535
|
+
"synthesize": {
|
|
23536
|
+
"description": "Synthesize speech from text, returning audio as a Buffer.",
|
|
23537
|
+
"parameters": {
|
|
23538
|
+
"text": {
|
|
23539
|
+
"type": "string",
|
|
23540
|
+
"description": "The text to convert to speech"
|
|
23541
|
+
},
|
|
23542
|
+
"options": {
|
|
23543
|
+
"type": "SynthesizeOptions",
|
|
23544
|
+
"description": "Voice, model, format, and voice settings overrides",
|
|
23545
|
+
"properties": {
|
|
23546
|
+
"voiceId": {
|
|
23547
|
+
"type": "string",
|
|
23548
|
+
"description": ""
|
|
23549
|
+
},
|
|
23550
|
+
"modelId": {
|
|
23551
|
+
"type": "string",
|
|
23552
|
+
"description": ""
|
|
23553
|
+
},
|
|
23554
|
+
"outputFormat": {
|
|
23555
|
+
"type": "string",
|
|
23556
|
+
"description": ""
|
|
23557
|
+
},
|
|
23558
|
+
"voiceSettings": {
|
|
23559
|
+
"type": "ElevenLabsVoiceSettings",
|
|
23560
|
+
"description": ""
|
|
23561
|
+
},
|
|
23562
|
+
"disableCache": {
|
|
23563
|
+
"type": "boolean",
|
|
23564
|
+
"description": ""
|
|
23565
|
+
}
|
|
23566
|
+
}
|
|
23567
|
+
}
|
|
23568
|
+
},
|
|
23569
|
+
"required": [
|
|
23570
|
+
"text"
|
|
23571
|
+
],
|
|
23572
|
+
"returns": "Promise<Buffer>",
|
|
23573
|
+
"examples": [
|
|
23574
|
+
{
|
|
23575
|
+
"language": "ts",
|
|
23576
|
+
"code": "const audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data\n\nconst custom = await el.synthesize('Hello', {\n voiceId: '21m00Tcm4TlvDq8ikWAM',\n voiceSettings: { stability: 0.5, similarityBoost: 0.8 }\n})"
|
|
23577
|
+
}
|
|
23578
|
+
]
|
|
23579
|
+
},
|
|
23580
|
+
"say": {
|
|
23581
|
+
"description": "Synthesize speech and write the audio to a file.",
|
|
23582
|
+
"parameters": {
|
|
23583
|
+
"text": {
|
|
23584
|
+
"type": "string",
|
|
23585
|
+
"description": "The text to convert to speech"
|
|
23586
|
+
},
|
|
23587
|
+
"outputPath": {
|
|
23588
|
+
"type": "string",
|
|
23589
|
+
"description": "File path to write the audio to"
|
|
23590
|
+
},
|
|
23591
|
+
"options": {
|
|
23592
|
+
"type": "SynthesizeOptions",
|
|
23593
|
+
"description": "Voice, model, format, and voice settings overrides",
|
|
23594
|
+
"properties": {
|
|
23595
|
+
"voiceId": {
|
|
23596
|
+
"type": "string",
|
|
23597
|
+
"description": ""
|
|
23598
|
+
},
|
|
23599
|
+
"modelId": {
|
|
23600
|
+
"type": "string",
|
|
23601
|
+
"description": ""
|
|
23602
|
+
},
|
|
23603
|
+
"outputFormat": {
|
|
23604
|
+
"type": "string",
|
|
23605
|
+
"description": ""
|
|
23606
|
+
},
|
|
23607
|
+
"voiceSettings": {
|
|
23608
|
+
"type": "ElevenLabsVoiceSettings",
|
|
23609
|
+
"description": ""
|
|
23610
|
+
},
|
|
23611
|
+
"disableCache": {
|
|
23612
|
+
"type": "boolean",
|
|
23613
|
+
"description": ""
|
|
23614
|
+
}
|
|
23615
|
+
}
|
|
23616
|
+
}
|
|
23617
|
+
},
|
|
23618
|
+
"required": [
|
|
23619
|
+
"text",
|
|
23620
|
+
"outputPath"
|
|
23621
|
+
],
|
|
23622
|
+
"returns": "Promise<string>",
|
|
23623
|
+
"examples": [
|
|
23624
|
+
{
|
|
23625
|
+
"language": "ts",
|
|
23626
|
+
"code": "const path = await el.say('Hello world', './hello.mp3')\nconsole.log(`Audio saved to ${path}`)"
|
|
23627
|
+
}
|
|
23628
|
+
]
|
|
23629
|
+
}
|
|
23630
|
+
},
|
|
23631
|
+
"getters": {
|
|
23632
|
+
"apiKey": {
|
|
23633
|
+
"description": "The resolved API key from options or environment.",
|
|
23634
|
+
"returns": "string"
|
|
23635
|
+
}
|
|
23636
|
+
},
|
|
23637
|
+
"events": {
|
|
23638
|
+
"failure": {
|
|
23639
|
+
"name": "failure",
|
|
23640
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
23641
|
+
"arguments": {}
|
|
23642
|
+
},
|
|
23643
|
+
"voices": {
|
|
23644
|
+
"name": "voices",
|
|
23645
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
23646
|
+
"arguments": {}
|
|
23647
|
+
},
|
|
23648
|
+
"speech": {
|
|
23649
|
+
"name": "speech",
|
|
23650
|
+
"description": "Event emitted by ElevenLabsClient",
|
|
23651
|
+
"arguments": {}
|
|
23652
|
+
}
|
|
23653
|
+
},
|
|
23654
|
+
"state": {},
|
|
23655
|
+
"options": {},
|
|
23656
|
+
"envVars": [],
|
|
23657
|
+
"examples": [
|
|
23658
|
+
{
|
|
23659
|
+
"language": "ts",
|
|
23660
|
+
"code": "const el = container.client('elevenlabs')\nawait el.connect()\nconst voices = await el.listVoices()\nconst audio = await el.synthesize('Hello world')\n// audio is a Buffer of mp3 data"
|
|
23661
|
+
}
|
|
23662
|
+
]
|
|
23663
|
+
},
|
|
23651
23664
|
{
|
|
23652
23665
|
"id": "clients.comfyui",
|
|
23653
23666
|
"description": "ComfyUI client — execute Stable Diffusion workflows via the ComfyUI API. Connects to a ComfyUI instance to queue prompts, track execution via WebSocket or polling, and download generated images. Supports both UI-format and API-format workflows with automatic conversion.",
|
|
@@ -24118,6 +24131,19 @@ export const introspectionData = [
|
|
|
24118
24131
|
],
|
|
24119
24132
|
"returns": "Promise<this>"
|
|
24120
24133
|
},
|
|
24134
|
+
"useEndpointModules": {
|
|
24135
|
+
"description": "",
|
|
24136
|
+
"parameters": {
|
|
24137
|
+
"modules": {
|
|
24138
|
+
"type": "EndpointModule[]",
|
|
24139
|
+
"description": "Parameter modules"
|
|
24140
|
+
}
|
|
24141
|
+
},
|
|
24142
|
+
"required": [
|
|
24143
|
+
"modules"
|
|
24144
|
+
],
|
|
24145
|
+
"returns": "Promise<this>"
|
|
24146
|
+
},
|
|
24121
24147
|
"serveOpenAPISpec": {
|
|
24122
24148
|
"description": "",
|
|
24123
24149
|
"parameters": {
|