@soederpop/luca 0.0.19 → 0.0.21
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/docs/bootstrap/SKILL.md +16 -0
- package/package.json +1 -1
- package/src/bootstrap/generated.ts +17 -1
- package/src/commands/chat.ts +14 -0
- package/src/commands/describe.ts +557 -94
- package/src/commands/prompt.ts +204 -64
- package/src/introspection/generated.agi.ts +454 -454
- package/src/introspection/generated.node.ts +446 -446
- package/src/introspection/generated.web.ts +1 -1
- package/src/introspection/index.ts +7 -0
- package/src/node/container.ts +4 -0
- package/src/registry.ts +12 -1
- package/src/scaffolds/generated.ts +1 -1
|
@@ -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-21T05:24:15.146Z
|
|
5
5
|
|
|
6
6
|
setBuildTimeData('features.googleDocs', {
|
|
7
7
|
"id": "features.googleDocs",
|
|
@@ -9519,202 +9519,6 @@ setBuildTimeData('clients.websocket', {
|
|
|
9519
9519
|
]
|
|
9520
9520
|
});
|
|
9521
9521
|
|
|
9522
|
-
setBuildTimeData('clients.supabase', {
|
|
9523
|
-
"id": "clients.supabase",
|
|
9524
|
-
"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).",
|
|
9525
|
-
"shortcut": "clients.supabase",
|
|
9526
|
-
"className": "SupabaseClient",
|
|
9527
|
-
"methods": {
|
|
9528
|
-
"from": {
|
|
9529
|
-
"description": "Start a query on a Postgres table or view.",
|
|
9530
|
-
"parameters": {
|
|
9531
|
-
"table": {
|
|
9532
|
-
"type": "string",
|
|
9533
|
-
"description": "The table or view name to query"
|
|
9534
|
-
}
|
|
9535
|
-
},
|
|
9536
|
-
"required": [
|
|
9537
|
-
"table"
|
|
9538
|
-
],
|
|
9539
|
-
"returns": "void"
|
|
9540
|
-
},
|
|
9541
|
-
"rpc": {
|
|
9542
|
-
"description": "Call a Postgres function (RPC).",
|
|
9543
|
-
"parameters": {
|
|
9544
|
-
"fn": {
|
|
9545
|
-
"type": "string",
|
|
9546
|
-
"description": "The function name"
|
|
9547
|
-
},
|
|
9548
|
-
"params": {
|
|
9549
|
-
"type": "Record<string, unknown>",
|
|
9550
|
-
"description": "Arguments to pass to the function"
|
|
9551
|
-
},
|
|
9552
|
-
"options": {
|
|
9553
|
-
"type": "{ head?: boolean; get?: boolean; count?: \"exact\" | \"planned\" | \"estimated\" }",
|
|
9554
|
-
"description": "Optional settings (head, get, count)"
|
|
9555
|
-
}
|
|
9556
|
-
},
|
|
9557
|
-
"required": [
|
|
9558
|
-
"fn"
|
|
9559
|
-
],
|
|
9560
|
-
"returns": "void"
|
|
9561
|
-
},
|
|
9562
|
-
"signInWithPassword": {
|
|
9563
|
-
"description": "Sign in with email and password.",
|
|
9564
|
-
"parameters": {
|
|
9565
|
-
"email": {
|
|
9566
|
-
"type": "string",
|
|
9567
|
-
"description": "Parameter email"
|
|
9568
|
-
},
|
|
9569
|
-
"password": {
|
|
9570
|
-
"type": "string",
|
|
9571
|
-
"description": "Parameter password"
|
|
9572
|
-
}
|
|
9573
|
-
},
|
|
9574
|
-
"required": [
|
|
9575
|
-
"email",
|
|
9576
|
-
"password"
|
|
9577
|
-
],
|
|
9578
|
-
"returns": "void"
|
|
9579
|
-
},
|
|
9580
|
-
"signUp": {
|
|
9581
|
-
"description": "Create a new user account with email and password.",
|
|
9582
|
-
"parameters": {
|
|
9583
|
-
"email": {
|
|
9584
|
-
"type": "string",
|
|
9585
|
-
"description": "Parameter email"
|
|
9586
|
-
},
|
|
9587
|
-
"password": {
|
|
9588
|
-
"type": "string",
|
|
9589
|
-
"description": "Parameter password"
|
|
9590
|
-
}
|
|
9591
|
-
},
|
|
9592
|
-
"required": [
|
|
9593
|
-
"email",
|
|
9594
|
-
"password"
|
|
9595
|
-
],
|
|
9596
|
-
"returns": "void"
|
|
9597
|
-
},
|
|
9598
|
-
"signOut": {
|
|
9599
|
-
"description": "Sign the current user out.",
|
|
9600
|
-
"parameters": {},
|
|
9601
|
-
"required": [],
|
|
9602
|
-
"returns": "void"
|
|
9603
|
-
},
|
|
9604
|
-
"getSession": {
|
|
9605
|
-
"description": "Get the current session, if any.",
|
|
9606
|
-
"parameters": {},
|
|
9607
|
-
"required": [],
|
|
9608
|
-
"returns": "void"
|
|
9609
|
-
},
|
|
9610
|
-
"getUser": {
|
|
9611
|
-
"description": "Get the current user, if any.",
|
|
9612
|
-
"parameters": {},
|
|
9613
|
-
"required": [],
|
|
9614
|
-
"returns": "void"
|
|
9615
|
-
},
|
|
9616
|
-
"invoke": {
|
|
9617
|
-
"description": "Invoke a Supabase Edge Function by name.",
|
|
9618
|
-
"parameters": {
|
|
9619
|
-
"name": {
|
|
9620
|
-
"type": "string",
|
|
9621
|
-
"description": "Parameter name"
|
|
9622
|
-
},
|
|
9623
|
-
"body": {
|
|
9624
|
-
"type": "any",
|
|
9625
|
-
"description": "Parameter body"
|
|
9626
|
-
}
|
|
9627
|
-
},
|
|
9628
|
-
"required": [
|
|
9629
|
-
"name"
|
|
9630
|
-
],
|
|
9631
|
-
"returns": "void"
|
|
9632
|
-
},
|
|
9633
|
-
"subscribe": {
|
|
9634
|
-
"description": "Subscribe to realtime changes on a Postgres table.",
|
|
9635
|
-
"parameters": {
|
|
9636
|
-
"channelName": {
|
|
9637
|
-
"type": "string",
|
|
9638
|
-
"description": "A name for this subscription channel"
|
|
9639
|
-
},
|
|
9640
|
-
"table": {
|
|
9641
|
-
"type": "string",
|
|
9642
|
-
"description": "The table to listen to"
|
|
9643
|
-
},
|
|
9644
|
-
"callback": {
|
|
9645
|
-
"type": "(payload: any) => void",
|
|
9646
|
-
"description": "Called with the payload on each change"
|
|
9647
|
-
},
|
|
9648
|
-
"event": {
|
|
9649
|
-
"type": "\"INSERT\" | \"UPDATE\" | \"DELETE\" | \"*\"",
|
|
9650
|
-
"description": "The event type to listen for (default: all changes)"
|
|
9651
|
-
}
|
|
9652
|
-
},
|
|
9653
|
-
"required": [
|
|
9654
|
-
"channelName",
|
|
9655
|
-
"table",
|
|
9656
|
-
"callback"
|
|
9657
|
-
],
|
|
9658
|
-
"returns": "RealtimeChannel"
|
|
9659
|
-
},
|
|
9660
|
-
"unsubscribe": {
|
|
9661
|
-
"description": "Unsubscribe and remove a realtime channel by name.",
|
|
9662
|
-
"parameters": {
|
|
9663
|
-
"channelName": {
|
|
9664
|
-
"type": "string",
|
|
9665
|
-
"description": "The channel name to remove"
|
|
9666
|
-
}
|
|
9667
|
-
},
|
|
9668
|
-
"required": [
|
|
9669
|
-
"channelName"
|
|
9670
|
-
],
|
|
9671
|
-
"returns": "void"
|
|
9672
|
-
},
|
|
9673
|
-
"unsubscribeAll": {
|
|
9674
|
-
"description": "Unsubscribe and remove all realtime channels.",
|
|
9675
|
-
"parameters": {},
|
|
9676
|
-
"required": [],
|
|
9677
|
-
"returns": "void"
|
|
9678
|
-
},
|
|
9679
|
-
"connect": {
|
|
9680
|
-
"description": "Connect is a no-op since the Supabase SDK initializes on construction. The client is ready to use immediately after creation.",
|
|
9681
|
-
"parameters": {},
|
|
9682
|
-
"required": [],
|
|
9683
|
-
"returns": "void"
|
|
9684
|
-
},
|
|
9685
|
-
"disconnect": {
|
|
9686
|
-
"description": "Disconnect by signing out and removing all realtime channels.",
|
|
9687
|
-
"parameters": {},
|
|
9688
|
-
"required": [],
|
|
9689
|
-
"returns": "void"
|
|
9690
|
-
}
|
|
9691
|
-
},
|
|
9692
|
-
"getters": {
|
|
9693
|
-
"sdk": {
|
|
9694
|
-
"description": "Returns the raw Supabase SDK client for full access to all SDK methods.",
|
|
9695
|
-
"returns": "SupabaseSDKClient<any, any>"
|
|
9696
|
-
},
|
|
9697
|
-
"storage": {
|
|
9698
|
-
"description": "Returns the Supabase Storage client for managing buckets and files.",
|
|
9699
|
-
"returns": "any"
|
|
9700
|
-
},
|
|
9701
|
-
"functions": {
|
|
9702
|
-
"description": "Returns the Supabase Functions client.",
|
|
9703
|
-
"returns": "any"
|
|
9704
|
-
}
|
|
9705
|
-
},
|
|
9706
|
-
"events": {},
|
|
9707
|
-
"state": {},
|
|
9708
|
-
"options": {},
|
|
9709
|
-
"envVars": [],
|
|
9710
|
-
"examples": [
|
|
9711
|
-
{
|
|
9712
|
-
"language": "ts",
|
|
9713
|
-
"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})"
|
|
9714
|
-
}
|
|
9715
|
-
]
|
|
9716
|
-
});
|
|
9717
|
-
|
|
9718
9522
|
setBuildTimeData('clients.openai', {
|
|
9719
9523
|
"id": "clients.openai",
|
|
9720
9524
|
"description": "OpenAI client — wraps the OpenAI SDK for chat completions, responses API, embeddings, and image generation. Provides convenience methods for common operations while tracking token usage and request counts. Supports both the Chat Completions API and the newer Responses API.",
|
|
@@ -10148,39 +9952,235 @@ setBuildTimeData('clients.elevenlabs', {
|
|
|
10148
9952
|
"language": "ts",
|
|
10149
9953
|
"code": "const path = await el.say('Hello world', './hello.mp3')\nconsole.log(`Audio saved to ${path}`)"
|
|
10150
9954
|
}
|
|
10151
|
-
]
|
|
9955
|
+
]
|
|
9956
|
+
}
|
|
9957
|
+
},
|
|
9958
|
+
"getters": {
|
|
9959
|
+
"apiKey": {
|
|
9960
|
+
"description": "The resolved API key from options or environment.",
|
|
9961
|
+
"returns": "string"
|
|
9962
|
+
}
|
|
9963
|
+
},
|
|
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"
|
|
10152
10160
|
}
|
|
10153
10161
|
},
|
|
10154
10162
|
"getters": {
|
|
10155
|
-
"
|
|
10156
|
-
"description": "
|
|
10157
|
-
"returns": "
|
|
10158
|
-
}
|
|
10159
|
-
},
|
|
10160
|
-
"events": {
|
|
10161
|
-
"failure": {
|
|
10162
|
-
"name": "failure",
|
|
10163
|
-
"description": "Event emitted by ElevenLabsClient",
|
|
10164
|
-
"arguments": {}
|
|
10163
|
+
"sdk": {
|
|
10164
|
+
"description": "Returns the raw Supabase SDK client for full access to all SDK methods.",
|
|
10165
|
+
"returns": "SupabaseSDKClient<any, any>"
|
|
10165
10166
|
},
|
|
10166
|
-
"
|
|
10167
|
-
"
|
|
10168
|
-
"
|
|
10169
|
-
"arguments": {}
|
|
10167
|
+
"storage": {
|
|
10168
|
+
"description": "Returns the Supabase Storage client for managing buckets and files.",
|
|
10169
|
+
"returns": "any"
|
|
10170
10170
|
},
|
|
10171
|
-
"
|
|
10172
|
-
"
|
|
10173
|
-
"
|
|
10174
|
-
"arguments": {}
|
|
10171
|
+
"functions": {
|
|
10172
|
+
"description": "Returns the Supabase Functions client.",
|
|
10173
|
+
"returns": "any"
|
|
10175
10174
|
}
|
|
10176
10175
|
},
|
|
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 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})"
|
|
10184
10184
|
}
|
|
10185
10185
|
]
|
|
10186
10186
|
});
|
|
@@ -20652,256 +20652,61 @@ export const introspectionData = [
|
|
|
20652
20652
|
"parameters": {
|
|
20653
20653
|
"data": {
|
|
20654
20654
|
"type": "any",
|
|
20655
|
-
"description": "The data to send (will be JSON.stringify'd)"
|
|
20656
|
-
}
|
|
20657
|
-
},
|
|
20658
|
-
"required": [
|
|
20659
|
-
"data"
|
|
20660
|
-
],
|
|
20661
|
-
"returns": "Promise<void>"
|
|
20662
|
-
},
|
|
20663
|
-
"disconnect": {
|
|
20664
|
-
"description": "Gracefully close the WebSocket connection. Suppresses auto-reconnect and updates connection state to disconnected.",
|
|
20665
|
-
"parameters": {},
|
|
20666
|
-
"required": [],
|
|
20667
|
-
"returns": "Promise<this>"
|
|
20668
|
-
}
|
|
20669
|
-
},
|
|
20670
|
-
"getters": {
|
|
20671
|
-
"hasError": {
|
|
20672
|
-
"description": "Whether the client is in an error state.",
|
|
20673
|
-
"returns": "any"
|
|
20674
|
-
}
|
|
20675
|
-
},
|
|
20676
|
-
"events": {
|
|
20677
|
-
"open": {
|
|
20678
|
-
"name": "open",
|
|
20679
|
-
"description": "Event emitted by WebSocketClient",
|
|
20680
|
-
"arguments": {}
|
|
20681
|
-
},
|
|
20682
|
-
"error": {
|
|
20683
|
-
"name": "error",
|
|
20684
|
-
"description": "Event emitted by WebSocketClient",
|
|
20685
|
-
"arguments": {}
|
|
20686
|
-
},
|
|
20687
|
-
"message": {
|
|
20688
|
-
"name": "message",
|
|
20689
|
-
"description": "Event emitted by WebSocketClient",
|
|
20690
|
-
"arguments": {}
|
|
20691
|
-
},
|
|
20692
|
-
"close": {
|
|
20693
|
-
"name": "close",
|
|
20694
|
-
"description": "Event emitted by WebSocketClient",
|
|
20695
|
-
"arguments": {}
|
|
20696
|
-
},
|
|
20697
|
-
"reconnecting": {
|
|
20698
|
-
"name": "reconnecting",
|
|
20699
|
-
"description": "Event emitted by WebSocketClient",
|
|
20700
|
-
"arguments": {}
|
|
20701
|
-
}
|
|
20702
|
-
},
|
|
20703
|
-
"state": {},
|
|
20704
|
-
"options": {},
|
|
20705
|
-
"envVars": [],
|
|
20706
|
-
"examples": [
|
|
20707
|
-
{
|
|
20708
|
-
"language": "ts",
|
|
20709
|
-
"code": "const ws = container.client('websocket', {\n baseURL: 'ws://localhost:8080',\n reconnect: true,\n maxReconnectAttempts: 5\n})\nws.on('message', (data) => console.log('Received:', data))\nawait ws.connect()\nawait ws.send({ type: 'hello' })"
|
|
20710
|
-
}
|
|
20711
|
-
]
|
|
20712
|
-
},
|
|
20713
|
-
{
|
|
20714
|
-
"id": "clients.supabase",
|
|
20715
|
-
"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).",
|
|
20716
|
-
"shortcut": "clients.supabase",
|
|
20717
|
-
"className": "SupabaseClient",
|
|
20718
|
-
"methods": {
|
|
20719
|
-
"from": {
|
|
20720
|
-
"description": "Start a query on a Postgres table or view.",
|
|
20721
|
-
"parameters": {
|
|
20722
|
-
"table": {
|
|
20723
|
-
"type": "string",
|
|
20724
|
-
"description": "The table or view name to query"
|
|
20725
|
-
}
|
|
20726
|
-
},
|
|
20727
|
-
"required": [
|
|
20728
|
-
"table"
|
|
20729
|
-
],
|
|
20730
|
-
"returns": "void"
|
|
20731
|
-
},
|
|
20732
|
-
"rpc": {
|
|
20733
|
-
"description": "Call a Postgres function (RPC).",
|
|
20734
|
-
"parameters": {
|
|
20735
|
-
"fn": {
|
|
20736
|
-
"type": "string",
|
|
20737
|
-
"description": "The function name"
|
|
20738
|
-
},
|
|
20739
|
-
"params": {
|
|
20740
|
-
"type": "Record<string, unknown>",
|
|
20741
|
-
"description": "Arguments to pass to the function"
|
|
20742
|
-
},
|
|
20743
|
-
"options": {
|
|
20744
|
-
"type": "{ head?: boolean; get?: boolean; count?: \"exact\" | \"planned\" | \"estimated\" }",
|
|
20745
|
-
"description": "Optional settings (head, get, count)"
|
|
20746
|
-
}
|
|
20747
|
-
},
|
|
20748
|
-
"required": [
|
|
20749
|
-
"fn"
|
|
20750
|
-
],
|
|
20751
|
-
"returns": "void"
|
|
20752
|
-
},
|
|
20753
|
-
"signInWithPassword": {
|
|
20754
|
-
"description": "Sign in with email and password.",
|
|
20755
|
-
"parameters": {
|
|
20756
|
-
"email": {
|
|
20757
|
-
"type": "string",
|
|
20758
|
-
"description": "Parameter email"
|
|
20759
|
-
},
|
|
20760
|
-
"password": {
|
|
20761
|
-
"type": "string",
|
|
20762
|
-
"description": "Parameter password"
|
|
20763
|
-
}
|
|
20764
|
-
},
|
|
20765
|
-
"required": [
|
|
20766
|
-
"email",
|
|
20767
|
-
"password"
|
|
20768
|
-
],
|
|
20769
|
-
"returns": "void"
|
|
20770
|
-
},
|
|
20771
|
-
"signUp": {
|
|
20772
|
-
"description": "Create a new user account with email and password.",
|
|
20773
|
-
"parameters": {
|
|
20774
|
-
"email": {
|
|
20775
|
-
"type": "string",
|
|
20776
|
-
"description": "Parameter email"
|
|
20777
|
-
},
|
|
20778
|
-
"password": {
|
|
20779
|
-
"type": "string",
|
|
20780
|
-
"description": "Parameter password"
|
|
20781
|
-
}
|
|
20782
|
-
},
|
|
20783
|
-
"required": [
|
|
20784
|
-
"email",
|
|
20785
|
-
"password"
|
|
20786
|
-
],
|
|
20787
|
-
"returns": "void"
|
|
20788
|
-
},
|
|
20789
|
-
"signOut": {
|
|
20790
|
-
"description": "Sign the current user out.",
|
|
20791
|
-
"parameters": {},
|
|
20792
|
-
"required": [],
|
|
20793
|
-
"returns": "void"
|
|
20794
|
-
},
|
|
20795
|
-
"getSession": {
|
|
20796
|
-
"description": "Get the current session, if any.",
|
|
20797
|
-
"parameters": {},
|
|
20798
|
-
"required": [],
|
|
20799
|
-
"returns": "void"
|
|
20800
|
-
},
|
|
20801
|
-
"getUser": {
|
|
20802
|
-
"description": "Get the current user, if any.",
|
|
20803
|
-
"parameters": {},
|
|
20804
|
-
"required": [],
|
|
20805
|
-
"returns": "void"
|
|
20806
|
-
},
|
|
20807
|
-
"invoke": {
|
|
20808
|
-
"description": "Invoke a Supabase Edge Function by name.",
|
|
20809
|
-
"parameters": {
|
|
20810
|
-
"name": {
|
|
20811
|
-
"type": "string",
|
|
20812
|
-
"description": "Parameter name"
|
|
20813
|
-
},
|
|
20814
|
-
"body": {
|
|
20815
|
-
"type": "any",
|
|
20816
|
-
"description": "Parameter body"
|
|
20817
|
-
}
|
|
20818
|
-
},
|
|
20819
|
-
"required": [
|
|
20820
|
-
"name"
|
|
20821
|
-
],
|
|
20822
|
-
"returns": "void"
|
|
20823
|
-
},
|
|
20824
|
-
"subscribe": {
|
|
20825
|
-
"description": "Subscribe to realtime changes on a Postgres table.",
|
|
20826
|
-
"parameters": {
|
|
20827
|
-
"channelName": {
|
|
20828
|
-
"type": "string",
|
|
20829
|
-
"description": "A name for this subscription channel"
|
|
20830
|
-
},
|
|
20831
|
-
"table": {
|
|
20832
|
-
"type": "string",
|
|
20833
|
-
"description": "The table to listen to"
|
|
20834
|
-
},
|
|
20835
|
-
"callback": {
|
|
20836
|
-
"type": "(payload: any) => void",
|
|
20837
|
-
"description": "Called with the payload on each change"
|
|
20838
|
-
},
|
|
20839
|
-
"event": {
|
|
20840
|
-
"type": "\"INSERT\" | \"UPDATE\" | \"DELETE\" | \"*\"",
|
|
20841
|
-
"description": "The event type to listen for (default: all changes)"
|
|
20842
|
-
}
|
|
20843
|
-
},
|
|
20844
|
-
"required": [
|
|
20845
|
-
"channelName",
|
|
20846
|
-
"table",
|
|
20847
|
-
"callback"
|
|
20848
|
-
],
|
|
20849
|
-
"returns": "RealtimeChannel"
|
|
20850
|
-
},
|
|
20851
|
-
"unsubscribe": {
|
|
20852
|
-
"description": "Unsubscribe and remove a realtime channel by name.",
|
|
20853
|
-
"parameters": {
|
|
20854
|
-
"channelName": {
|
|
20855
|
-
"type": "string",
|
|
20856
|
-
"description": "The channel name to remove"
|
|
20655
|
+
"description": "The data to send (will be JSON.stringify'd)"
|
|
20857
20656
|
}
|
|
20858
20657
|
},
|
|
20859
20658
|
"required": [
|
|
20860
|
-
"
|
|
20659
|
+
"data"
|
|
20861
20660
|
],
|
|
20862
|
-
"returns": "void"
|
|
20863
|
-
},
|
|
20864
|
-
"unsubscribeAll": {
|
|
20865
|
-
"description": "Unsubscribe and remove all realtime channels.",
|
|
20866
|
-
"parameters": {},
|
|
20867
|
-
"required": [],
|
|
20868
|
-
"returns": "void"
|
|
20869
|
-
},
|
|
20870
|
-
"connect": {
|
|
20871
|
-
"description": "Connect is a no-op since the Supabase SDK initializes on construction. The client is ready to use immediately after creation.",
|
|
20872
|
-
"parameters": {},
|
|
20873
|
-
"required": [],
|
|
20874
|
-
"returns": "void"
|
|
20661
|
+
"returns": "Promise<void>"
|
|
20875
20662
|
},
|
|
20876
20663
|
"disconnect": {
|
|
20877
|
-
"description": "
|
|
20664
|
+
"description": "Gracefully close the WebSocket connection. Suppresses auto-reconnect and updates connection state to disconnected.",
|
|
20878
20665
|
"parameters": {},
|
|
20879
20666
|
"required": [],
|
|
20880
|
-
"returns": "
|
|
20667
|
+
"returns": "Promise<this>"
|
|
20881
20668
|
}
|
|
20882
20669
|
},
|
|
20883
20670
|
"getters": {
|
|
20884
|
-
"
|
|
20885
|
-
"description": "
|
|
20886
|
-
"returns": "SupabaseSDKClient<any, any>"
|
|
20887
|
-
},
|
|
20888
|
-
"storage": {
|
|
20889
|
-
"description": "Returns the Supabase Storage client for managing buckets and files.",
|
|
20671
|
+
"hasError": {
|
|
20672
|
+
"description": "Whether the client is in an error state.",
|
|
20890
20673
|
"returns": "any"
|
|
20674
|
+
}
|
|
20675
|
+
},
|
|
20676
|
+
"events": {
|
|
20677
|
+
"open": {
|
|
20678
|
+
"name": "open",
|
|
20679
|
+
"description": "Event emitted by WebSocketClient",
|
|
20680
|
+
"arguments": {}
|
|
20891
20681
|
},
|
|
20892
|
-
"
|
|
20893
|
-
"
|
|
20894
|
-
"
|
|
20682
|
+
"error": {
|
|
20683
|
+
"name": "error",
|
|
20684
|
+
"description": "Event emitted by WebSocketClient",
|
|
20685
|
+
"arguments": {}
|
|
20686
|
+
},
|
|
20687
|
+
"message": {
|
|
20688
|
+
"name": "message",
|
|
20689
|
+
"description": "Event emitted by WebSocketClient",
|
|
20690
|
+
"arguments": {}
|
|
20691
|
+
},
|
|
20692
|
+
"close": {
|
|
20693
|
+
"name": "close",
|
|
20694
|
+
"description": "Event emitted by WebSocketClient",
|
|
20695
|
+
"arguments": {}
|
|
20696
|
+
},
|
|
20697
|
+
"reconnecting": {
|
|
20698
|
+
"name": "reconnecting",
|
|
20699
|
+
"description": "Event emitted by WebSocketClient",
|
|
20700
|
+
"arguments": {}
|
|
20895
20701
|
}
|
|
20896
20702
|
},
|
|
20897
|
-
"events": {},
|
|
20898
20703
|
"state": {},
|
|
20899
20704
|
"options": {},
|
|
20900
20705
|
"envVars": [],
|
|
20901
20706
|
"examples": [
|
|
20902
20707
|
{
|
|
20903
20708
|
"language": "ts",
|
|
20904
|
-
"code": "const
|
|
20709
|
+
"code": "const ws = container.client('websocket', {\n baseURL: 'ws://localhost:8080',\n reconnect: true,\n maxReconnectAttempts: 5\n})\nws.on('message', (data) => console.log('Received:', data))\nawait ws.connect()\nawait ws.send({ type: 'hello' })"
|
|
20905
20710
|
}
|
|
20906
20711
|
]
|
|
20907
20712
|
},
|
|
@@ -21373,6 +21178,201 @@ export const introspectionData = [
|
|
|
21373
21178
|
}
|
|
21374
21179
|
]
|
|
21375
21180
|
},
|
|
21181
|
+
{
|
|
21182
|
+
"id": "clients.supabase",
|
|
21183
|
+
"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).",
|
|
21184
|
+
"shortcut": "clients.supabase",
|
|
21185
|
+
"className": "SupabaseClient",
|
|
21186
|
+
"methods": {
|
|
21187
|
+
"from": {
|
|
21188
|
+
"description": "Start a query on a Postgres table or view.",
|
|
21189
|
+
"parameters": {
|
|
21190
|
+
"table": {
|
|
21191
|
+
"type": "string",
|
|
21192
|
+
"description": "The table or view name to query"
|
|
21193
|
+
}
|
|
21194
|
+
},
|
|
21195
|
+
"required": [
|
|
21196
|
+
"table"
|
|
21197
|
+
],
|
|
21198
|
+
"returns": "void"
|
|
21199
|
+
},
|
|
21200
|
+
"rpc": {
|
|
21201
|
+
"description": "Call a Postgres function (RPC).",
|
|
21202
|
+
"parameters": {
|
|
21203
|
+
"fn": {
|
|
21204
|
+
"type": "string",
|
|
21205
|
+
"description": "The function name"
|
|
21206
|
+
},
|
|
21207
|
+
"params": {
|
|
21208
|
+
"type": "Record<string, unknown>",
|
|
21209
|
+
"description": "Arguments to pass to the function"
|
|
21210
|
+
},
|
|
21211
|
+
"options": {
|
|
21212
|
+
"type": "{ head?: boolean; get?: boolean; count?: \"exact\" | \"planned\" | \"estimated\" }",
|
|
21213
|
+
"description": "Optional settings (head, get, count)"
|
|
21214
|
+
}
|
|
21215
|
+
},
|
|
21216
|
+
"required": [
|
|
21217
|
+
"fn"
|
|
21218
|
+
],
|
|
21219
|
+
"returns": "void"
|
|
21220
|
+
},
|
|
21221
|
+
"signInWithPassword": {
|
|
21222
|
+
"description": "Sign in with email and password.",
|
|
21223
|
+
"parameters": {
|
|
21224
|
+
"email": {
|
|
21225
|
+
"type": "string",
|
|
21226
|
+
"description": "Parameter email"
|
|
21227
|
+
},
|
|
21228
|
+
"password": {
|
|
21229
|
+
"type": "string",
|
|
21230
|
+
"description": "Parameter password"
|
|
21231
|
+
}
|
|
21232
|
+
},
|
|
21233
|
+
"required": [
|
|
21234
|
+
"email",
|
|
21235
|
+
"password"
|
|
21236
|
+
],
|
|
21237
|
+
"returns": "void"
|
|
21238
|
+
},
|
|
21239
|
+
"signUp": {
|
|
21240
|
+
"description": "Create a new user account with email and password.",
|
|
21241
|
+
"parameters": {
|
|
21242
|
+
"email": {
|
|
21243
|
+
"type": "string",
|
|
21244
|
+
"description": "Parameter email"
|
|
21245
|
+
},
|
|
21246
|
+
"password": {
|
|
21247
|
+
"type": "string",
|
|
21248
|
+
"description": "Parameter password"
|
|
21249
|
+
}
|
|
21250
|
+
},
|
|
21251
|
+
"required": [
|
|
21252
|
+
"email",
|
|
21253
|
+
"password"
|
|
21254
|
+
],
|
|
21255
|
+
"returns": "void"
|
|
21256
|
+
},
|
|
21257
|
+
"signOut": {
|
|
21258
|
+
"description": "Sign the current user out.",
|
|
21259
|
+
"parameters": {},
|
|
21260
|
+
"required": [],
|
|
21261
|
+
"returns": "void"
|
|
21262
|
+
},
|
|
21263
|
+
"getSession": {
|
|
21264
|
+
"description": "Get the current session, if any.",
|
|
21265
|
+
"parameters": {},
|
|
21266
|
+
"required": [],
|
|
21267
|
+
"returns": "void"
|
|
21268
|
+
},
|
|
21269
|
+
"getUser": {
|
|
21270
|
+
"description": "Get the current user, if any.",
|
|
21271
|
+
"parameters": {},
|
|
21272
|
+
"required": [],
|
|
21273
|
+
"returns": "void"
|
|
21274
|
+
},
|
|
21275
|
+
"invoke": {
|
|
21276
|
+
"description": "Invoke a Supabase Edge Function by name.",
|
|
21277
|
+
"parameters": {
|
|
21278
|
+
"name": {
|
|
21279
|
+
"type": "string",
|
|
21280
|
+
"description": "Parameter name"
|
|
21281
|
+
},
|
|
21282
|
+
"body": {
|
|
21283
|
+
"type": "any",
|
|
21284
|
+
"description": "Parameter body"
|
|
21285
|
+
}
|
|
21286
|
+
},
|
|
21287
|
+
"required": [
|
|
21288
|
+
"name"
|
|
21289
|
+
],
|
|
21290
|
+
"returns": "void"
|
|
21291
|
+
},
|
|
21292
|
+
"subscribe": {
|
|
21293
|
+
"description": "Subscribe to realtime changes on a Postgres table.",
|
|
21294
|
+
"parameters": {
|
|
21295
|
+
"channelName": {
|
|
21296
|
+
"type": "string",
|
|
21297
|
+
"description": "A name for this subscription channel"
|
|
21298
|
+
},
|
|
21299
|
+
"table": {
|
|
21300
|
+
"type": "string",
|
|
21301
|
+
"description": "The table to listen to"
|
|
21302
|
+
},
|
|
21303
|
+
"callback": {
|
|
21304
|
+
"type": "(payload: any) => void",
|
|
21305
|
+
"description": "Called with the payload on each change"
|
|
21306
|
+
},
|
|
21307
|
+
"event": {
|
|
21308
|
+
"type": "\"INSERT\" | \"UPDATE\" | \"DELETE\" | \"*\"",
|
|
21309
|
+
"description": "The event type to listen for (default: all changes)"
|
|
21310
|
+
}
|
|
21311
|
+
},
|
|
21312
|
+
"required": [
|
|
21313
|
+
"channelName",
|
|
21314
|
+
"table",
|
|
21315
|
+
"callback"
|
|
21316
|
+
],
|
|
21317
|
+
"returns": "RealtimeChannel"
|
|
21318
|
+
},
|
|
21319
|
+
"unsubscribe": {
|
|
21320
|
+
"description": "Unsubscribe and remove a realtime channel by name.",
|
|
21321
|
+
"parameters": {
|
|
21322
|
+
"channelName": {
|
|
21323
|
+
"type": "string",
|
|
21324
|
+
"description": "The channel name to remove"
|
|
21325
|
+
}
|
|
21326
|
+
},
|
|
21327
|
+
"required": [
|
|
21328
|
+
"channelName"
|
|
21329
|
+
],
|
|
21330
|
+
"returns": "void"
|
|
21331
|
+
},
|
|
21332
|
+
"unsubscribeAll": {
|
|
21333
|
+
"description": "Unsubscribe and remove all realtime channels.",
|
|
21334
|
+
"parameters": {},
|
|
21335
|
+
"required": [],
|
|
21336
|
+
"returns": "void"
|
|
21337
|
+
},
|
|
21338
|
+
"connect": {
|
|
21339
|
+
"description": "Connect is a no-op since the Supabase SDK initializes on construction. The client is ready to use immediately after creation.",
|
|
21340
|
+
"parameters": {},
|
|
21341
|
+
"required": [],
|
|
21342
|
+
"returns": "void"
|
|
21343
|
+
},
|
|
21344
|
+
"disconnect": {
|
|
21345
|
+
"description": "Disconnect by signing out and removing all realtime channels.",
|
|
21346
|
+
"parameters": {},
|
|
21347
|
+
"required": [],
|
|
21348
|
+
"returns": "void"
|
|
21349
|
+
}
|
|
21350
|
+
},
|
|
21351
|
+
"getters": {
|
|
21352
|
+
"sdk": {
|
|
21353
|
+
"description": "Returns the raw Supabase SDK client for full access to all SDK methods.",
|
|
21354
|
+
"returns": "SupabaseSDKClient<any, any>"
|
|
21355
|
+
},
|
|
21356
|
+
"storage": {
|
|
21357
|
+
"description": "Returns the Supabase Storage client for managing buckets and files.",
|
|
21358
|
+
"returns": "any"
|
|
21359
|
+
},
|
|
21360
|
+
"functions": {
|
|
21361
|
+
"description": "Returns the Supabase Functions client.",
|
|
21362
|
+
"returns": "any"
|
|
21363
|
+
}
|
|
21364
|
+
},
|
|
21365
|
+
"events": {},
|
|
21366
|
+
"state": {},
|
|
21367
|
+
"options": {},
|
|
21368
|
+
"envVars": [],
|
|
21369
|
+
"examples": [
|
|
21370
|
+
{
|
|
21371
|
+
"language": "ts",
|
|
21372
|
+
"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})"
|
|
21373
|
+
}
|
|
21374
|
+
]
|
|
21375
|
+
},
|
|
21376
21376
|
{
|
|
21377
21377
|
"id": "clients.comfyui",
|
|
21378
21378
|
"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.",
|