@keystrokehq/sensibo 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/README.md +17 -0
  2. package/dist/action.cjs +21 -0
  3. package/dist/action.cjs.map +1 -0
  4. package/dist/action.mjs +21 -0
  5. package/dist/action.mjs.map +1 -0
  6. package/dist/actions/get-all-devices.cjs +66 -0
  7. package/dist/actions/get-all-devices.cjs.map +1 -0
  8. package/dist/actions/get-all-devices.d.cts +9 -0
  9. package/dist/actions/get-all-devices.d.cts.map +1 -0
  10. package/dist/actions/get-all-devices.d.mts +9 -0
  11. package/dist/actions/get-all-devices.d.mts.map +1 -0
  12. package/dist/actions/get-all-devices.mjs +65 -0
  13. package/dist/actions/get-all-devices.mjs.map +1 -0
  14. package/dist/actions/index.cjs +3 -0
  15. package/dist/actions/index.d.cts +2 -0
  16. package/dist/actions/index.d.mts +2 -0
  17. package/dist/actions/index.mjs +2 -0
  18. package/dist/app.cjs +9 -0
  19. package/dist/app.cjs.map +1 -0
  20. package/dist/app.d.cts +5 -0
  21. package/dist/app.d.cts.map +1 -0
  22. package/dist/app.d.mts +5 -0
  23. package/dist/app.d.mts.map +1 -0
  24. package/dist/app.mjs +10 -0
  25. package/dist/app.mjs.map +1 -0
  26. package/dist/catalog.cjs +15 -0
  27. package/dist/catalog.cjs.map +1 -0
  28. package/dist/catalog.d.cts +14 -0
  29. package/dist/catalog.d.cts.map +1 -0
  30. package/dist/catalog.d.mts +14 -0
  31. package/dist/catalog.d.mts.map +1 -0
  32. package/dist/catalog.mjs +15 -0
  33. package/dist/catalog.mjs.map +1 -0
  34. package/dist/execute.cjs +18 -0
  35. package/dist/execute.cjs.map +1 -0
  36. package/dist/execute.mjs +18 -0
  37. package/dist/execute.mjs.map +1 -0
  38. package/dist/index.cjs +8 -0
  39. package/dist/index.d.cts +4 -0
  40. package/dist/index.d.mts +4 -0
  41. package/dist/index.mjs +5 -0
  42. package/package.json +49 -0
package/README.md ADDED
@@ -0,0 +1,17 @@
1
+ # @keystrokehq/sensibo
2
+
3
+ Keystroke-managed integration.
4
+
5
+ **App:** `sensibo`
6
+ **Version:** `20260615_00`
7
+ **Actions:** 1
8
+
9
+ ```ts
10
+ import { defineAgent } from "@keystrokehq/keystroke/agent";
11
+ import { sensiboGetAllDevices } from "@keystrokehq/sensibo/actions";
12
+
13
+ export default defineAgent({
14
+ key: "sensibo-agent",
15
+ tools: [sensiboGetAllDevices],
16
+ });
17
+ ```
@@ -0,0 +1,21 @@
1
+ const require_app = require("./app.cjs");
2
+ const require_execute = require("./execute.cjs");
3
+ require("zod");
4
+ //#region src/action.ts
5
+ /** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */
6
+ function action(tool, def) {
7
+ return require_app.sensibo.action({
8
+ slug: def.slug,
9
+ name: def.name,
10
+ description: def.description,
11
+ input: def.input,
12
+ output: def.output,
13
+ async run(input) {
14
+ return def.output.parse(await require_execute.executeSensiboTool(tool, input));
15
+ }
16
+ });
17
+ }
18
+ //#endregion
19
+ exports.action = action;
20
+
21
+ //# sourceMappingURL=action.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.cjs","names":["sensibo","executeSensiboTool"],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { sensibo } from \"./app\";\nimport { executeSensiboTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: z.ZodTypeAny;\n output: z.ZodTypeAny;\n },\n) {\n return sensibo.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output,\n async run(input) {\n return def.output.parse(await executeSensiboTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAOA,YAAAA,QAAQ,OAAO;EACpB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAMC,gBAAAA,mBAAmB,MAAM,KAAgC,CAAC;EAC1F;CACF,CAAC;AACH"}
@@ -0,0 +1,21 @@
1
+ import { sensibo } from "./app.mjs";
2
+ import { executeSensiboTool } from "./execute.mjs";
3
+ import "zod";
4
+ //#region src/action.ts
5
+ /** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */
6
+ function action(tool, def) {
7
+ return sensibo.action({
8
+ slug: def.slug,
9
+ name: def.name,
10
+ description: def.description,
11
+ input: def.input,
12
+ output: def.output,
13
+ async run(input) {
14
+ return def.output.parse(await executeSensiboTool(tool, input));
15
+ }
16
+ });
17
+ }
18
+ //#endregion
19
+ export { action };
20
+
21
+ //# sourceMappingURL=action.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.mjs","names":[],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { sensibo } from \"./app\";\nimport { executeSensiboTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: z.ZodTypeAny;\n output: z.ZodTypeAny;\n },\n) {\n return sensibo.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output,\n async run(input) {\n return def.output.parse(await executeSensiboTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAO,QAAQ,OAAO;EACpB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAM,mBAAmB,MAAM,KAAgC,CAAC;EAC1F;CACF,CAAC;AACH"}
@@ -0,0 +1,66 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/get-all-devices.ts
4
+ const SensiboGetAllDevicesInput = zod.z.object({ fields: zod.z.string().describe("Comma-separated list of fields to include in the response, defaults to '*'").optional() });
5
+ const SensiboGetAllDevices_RoomSchema = zod.z.object({
6
+ id: zod.z.string().describe("Unique identifier of the room"),
7
+ uid: zod.z.string().describe("Unique uid of the room").nullable().optional(),
8
+ name: zod.z.string().describe("Name of the room").nullable().optional()
9
+ });
10
+ const SensiboGetAllDevices_AcStateSchema = zod.z.object({
11
+ on: zod.z.boolean().describe("AC power status"),
12
+ mode: zod.z.string().describe("AC operating mode, e.g., 'cool', 'heat'"),
13
+ swing: zod.z.string().describe("Swing setting").nullable().optional(),
14
+ fanLevel: zod.z.string().describe("Fan level setting"),
15
+ targetTemperature: zod.z.number().describe("Target temperature setpoint")
16
+ });
17
+ const SensiboGetAllDevices_FeaturesSchema = zod.z.object({
18
+ cooling: zod.z.boolean().describe("Whether cooling is supported"),
19
+ heating: zod.z.boolean().describe("Whether heating is supported"),
20
+ sensors: zod.z.array(zod.z.string()).describe("List of available sensors"),
21
+ scheduling: zod.z.boolean().describe("Whether scheduling is supported"),
22
+ humidityControl: zod.z.boolean().describe("Whether humidity control is supported")
23
+ });
24
+ const SensiboGetAllDevices_MeasurementsSchema = zod.z.object({
25
+ co2: zod.z.number().int().describe("CO2 level in ppm").nullable().optional(),
26
+ tvoc: zod.z.number().int().describe("Total volatile organic compounds level").nullable().optional(),
27
+ humidity: zod.z.number().describe("Current humidity percentage"),
28
+ temperature: zod.z.number().describe("Current temperature in Celsius")
29
+ });
30
+ const SensiboGetAllDevices_ConnectionStatusSchema = zod.z.object({
31
+ since: zod.z.string().describe("ISO timestamp when status last changed"),
32
+ status: zod.z.string().describe("Connection status, e.g., 'ONLINE' or 'OFFLINE'")
33
+ });
34
+ const SensiboGetAllDevices_PodSchema = zod.z.object({
35
+ id: zod.z.string().describe("Unique pod identifier"),
36
+ name: zod.z.string().describe("Name assigned to the pod").nullable().optional(),
37
+ room: SensiboGetAllDevices_RoomSchema.nullable(),
38
+ model: zod.z.string().describe("Model of the pod device").nullable().optional(),
39
+ acState: SensiboGetAllDevices_AcStateSchema.nullable(),
40
+ battery: zod.z.object({}).describe("Battery information if applicable, values may include battery level or type").nullable().optional(),
41
+ podType: zod.z.string().describe("Type of pod").nullable().optional(),
42
+ features: SensiboGetAllDevices_FeaturesSchema.nullable().optional(),
43
+ timezone: zod.z.string().describe("Timezone of the pod location").nullable().optional(),
44
+ createdAt: zod.z.string().describe("Timestamp when the pod was created").nullable().optional(),
45
+ osVersion: zod.z.string().describe("Operating system version").nullable().optional(),
46
+ updatedAt: zod.z.string().describe("Timestamp when the pod was last updated").nullable().optional(),
47
+ macAddress: zod.z.string().describe("MAC address of the pod"),
48
+ measurements: SensiboGetAllDevices_MeasurementsSchema.nullable(),
49
+ connectionStatus: SensiboGetAllDevices_ConnectionStatusSchema.nullable()
50
+ });
51
+ const SensiboGetAllDevicesOutput = zod.z.object({
52
+ result: zod.z.array(SensiboGetAllDevices_PodSchema).describe("List of pods associated with user"),
53
+ status: zod.z.string().describe("API result status, e.g., 'success'"),
54
+ message: zod.z.string().describe("Error message if the call failed").nullable().optional()
55
+ });
56
+ const sensiboGetAllDevices = require_action.action("SENSIBO_GET_ALL_DEVICES", {
57
+ slug: "sensibo-get-all-devices",
58
+ name: "Get All Sensibo Devices",
59
+ description: "Tool to retrieve all Sensibo pods for the authenticated user. Use when you need an up-to-date list of all devices linked to your Sensibo account.",
60
+ input: SensiboGetAllDevicesInput,
61
+ output: SensiboGetAllDevicesOutput
62
+ });
63
+ //#endregion
64
+ exports.sensiboGetAllDevices = sensiboGetAllDevices;
65
+
66
+ //# sourceMappingURL=get-all-devices.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-all-devices.cjs","names":["z","action"],"sources":["../../src/actions/get-all-devices.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SensiboGetAllDevicesInput: z.ZodTypeAny = z.object({\n fields: z.string().describe(\"Comma-separated list of fields to include in the response, defaults to '*'\").optional(),\n});\nconst SensiboGetAllDevices_RoomSchema: z.ZodTypeAny = z.object({\n id: z.string().describe(\"Unique identifier of the room\"),\n uid: z.string().describe(\"Unique uid of the room\").nullable().optional(),\n name: z.string().describe(\"Name of the room\").nullable().optional(),\n});\nconst SensiboGetAllDevices_AcStateSchema: z.ZodTypeAny = z.object({\n on: z.boolean().describe(\"AC power status\"),\n mode: z.string().describe(\"AC operating mode, e.g., 'cool', 'heat'\"),\n swing: z.string().describe(\"Swing setting\").nullable().optional(),\n fanLevel: z.string().describe(\"Fan level setting\"),\n targetTemperature: z.number().describe(\"Target temperature setpoint\"),\n});\nconst SensiboGetAllDevices_FeaturesSchema: z.ZodTypeAny = z.object({\n cooling: z.boolean().describe(\"Whether cooling is supported\"),\n heating: z.boolean().describe(\"Whether heating is supported\"),\n sensors: z.array(z.string()).describe(\"List of available sensors\"),\n scheduling: z.boolean().describe(\"Whether scheduling is supported\"),\n humidityControl: z.boolean().describe(\"Whether humidity control is supported\"),\n});\nconst SensiboGetAllDevices_MeasurementsSchema: z.ZodTypeAny = z.object({\n co2: z.number().int().describe(\"CO2 level in ppm\").nullable().optional(),\n tvoc: z.number().int().describe(\"Total volatile organic compounds level\").nullable().optional(),\n humidity: z.number().describe(\"Current humidity percentage\"),\n temperature: z.number().describe(\"Current temperature in Celsius\"),\n});\nconst SensiboGetAllDevices_ConnectionStatusSchema: z.ZodTypeAny = z.object({\n since: z.string().describe(\"ISO timestamp when status last changed\"),\n status: z.string().describe(\"Connection status, e.g., 'ONLINE' or 'OFFLINE'\"),\n});\nconst SensiboGetAllDevices_PodSchema: z.ZodTypeAny = z.object({\n id: z.string().describe(\"Unique pod identifier\"),\n name: z.string().describe(\"Name assigned to the pod\").nullable().optional(),\n room: SensiboGetAllDevices_RoomSchema.nullable(),\n model: z.string().describe(\"Model of the pod device\").nullable().optional(),\n acState: SensiboGetAllDevices_AcStateSchema.nullable(),\n battery: z.object({}).describe(\"Battery information if applicable, values may include battery level or type\").nullable().optional(),\n podType: z.string().describe(\"Type of pod\").nullable().optional(),\n features: SensiboGetAllDevices_FeaturesSchema.nullable().optional(),\n timezone: z.string().describe(\"Timezone of the pod location\").nullable().optional(),\n createdAt: z.string().describe(\"Timestamp when the pod was created\").nullable().optional(),\n osVersion: z.string().describe(\"Operating system version\").nullable().optional(),\n updatedAt: z.string().describe(\"Timestamp when the pod was last updated\").nullable().optional(),\n macAddress: z.string().describe(\"MAC address of the pod\"),\n measurements: SensiboGetAllDevices_MeasurementsSchema.nullable(),\n connectionStatus: SensiboGetAllDevices_ConnectionStatusSchema.nullable(),\n});\nexport const SensiboGetAllDevicesOutput: z.ZodTypeAny = z.object({\n result: z.array(SensiboGetAllDevices_PodSchema).describe(\"List of pods associated with user\"),\n status: z.string().describe(\"API result status, e.g., 'success'\"),\n message: z.string().describe(\"Error message if the call failed\").nullable().optional(),\n});\n\nexport const sensiboGetAllDevices = action(\"SENSIBO_GET_ALL_DEVICES\", {\n slug: \"sensibo-get-all-devices\",\n name: \"Get All Sensibo Devices\",\n description: \"Tool to retrieve all Sensibo pods for the authenticated user. Use when you need an up-to-date list of all devices linked to your Sensibo account.\",\n input: SensiboGetAllDevicesInput,\n output: SensiboGetAllDevicesOutput,\n});\n"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/get-all-devices.d.ts
4
+ declare const SensiboGetAllDevicesInput: z.ZodTypeAny;
5
+ declare const SensiboGetAllDevicesOutput: z.ZodTypeAny;
6
+ declare const sensiboGetAllDevices: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { sensiboGetAllDevices };
9
+ //# sourceMappingURL=get-all-devices.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-all-devices.d.cts","names":[],"sources":["../../src/actions/get-all-devices.ts"],"mappings":";;;cAIa,yBAAA,EAA2B,CAAA,CAAE,UAExC;AAAA,cA+CW,0BAAA,EAA4B,CAAA,CAAE,UAIzC;AAAA,cAEW,oBAAA,gCAAoB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/get-all-devices.d.ts
4
+ declare const SensiboGetAllDevicesInput: z.ZodTypeAny;
5
+ declare const SensiboGetAllDevicesOutput: z.ZodTypeAny;
6
+ declare const sensiboGetAllDevices: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { sensiboGetAllDevices };
9
+ //# sourceMappingURL=get-all-devices.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-all-devices.d.mts","names":[],"sources":["../../src/actions/get-all-devices.ts"],"mappings":";;;cAIa,yBAAA,EAA2B,CAAA,CAAE,UAExC;AAAA,cA+CW,0BAAA,EAA4B,CAAA,CAAE,UAIzC;AAAA,cAEW,oBAAA,gCAAoB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,65 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ //#region src/actions/get-all-devices.ts
4
+ const SensiboGetAllDevicesInput = z.object({ fields: z.string().describe("Comma-separated list of fields to include in the response, defaults to '*'").optional() });
5
+ const SensiboGetAllDevices_RoomSchema = z.object({
6
+ id: z.string().describe("Unique identifier of the room"),
7
+ uid: z.string().describe("Unique uid of the room").nullable().optional(),
8
+ name: z.string().describe("Name of the room").nullable().optional()
9
+ });
10
+ const SensiboGetAllDevices_AcStateSchema = z.object({
11
+ on: z.boolean().describe("AC power status"),
12
+ mode: z.string().describe("AC operating mode, e.g., 'cool', 'heat'"),
13
+ swing: z.string().describe("Swing setting").nullable().optional(),
14
+ fanLevel: z.string().describe("Fan level setting"),
15
+ targetTemperature: z.number().describe("Target temperature setpoint")
16
+ });
17
+ const SensiboGetAllDevices_FeaturesSchema = z.object({
18
+ cooling: z.boolean().describe("Whether cooling is supported"),
19
+ heating: z.boolean().describe("Whether heating is supported"),
20
+ sensors: z.array(z.string()).describe("List of available sensors"),
21
+ scheduling: z.boolean().describe("Whether scheduling is supported"),
22
+ humidityControl: z.boolean().describe("Whether humidity control is supported")
23
+ });
24
+ const SensiboGetAllDevices_MeasurementsSchema = z.object({
25
+ co2: z.number().int().describe("CO2 level in ppm").nullable().optional(),
26
+ tvoc: z.number().int().describe("Total volatile organic compounds level").nullable().optional(),
27
+ humidity: z.number().describe("Current humidity percentage"),
28
+ temperature: z.number().describe("Current temperature in Celsius")
29
+ });
30
+ const SensiboGetAllDevices_ConnectionStatusSchema = z.object({
31
+ since: z.string().describe("ISO timestamp when status last changed"),
32
+ status: z.string().describe("Connection status, e.g., 'ONLINE' or 'OFFLINE'")
33
+ });
34
+ const SensiboGetAllDevices_PodSchema = z.object({
35
+ id: z.string().describe("Unique pod identifier"),
36
+ name: z.string().describe("Name assigned to the pod").nullable().optional(),
37
+ room: SensiboGetAllDevices_RoomSchema.nullable(),
38
+ model: z.string().describe("Model of the pod device").nullable().optional(),
39
+ acState: SensiboGetAllDevices_AcStateSchema.nullable(),
40
+ battery: z.object({}).describe("Battery information if applicable, values may include battery level or type").nullable().optional(),
41
+ podType: z.string().describe("Type of pod").nullable().optional(),
42
+ features: SensiboGetAllDevices_FeaturesSchema.nullable().optional(),
43
+ timezone: z.string().describe("Timezone of the pod location").nullable().optional(),
44
+ createdAt: z.string().describe("Timestamp when the pod was created").nullable().optional(),
45
+ osVersion: z.string().describe("Operating system version").nullable().optional(),
46
+ updatedAt: z.string().describe("Timestamp when the pod was last updated").nullable().optional(),
47
+ macAddress: z.string().describe("MAC address of the pod"),
48
+ measurements: SensiboGetAllDevices_MeasurementsSchema.nullable(),
49
+ connectionStatus: SensiboGetAllDevices_ConnectionStatusSchema.nullable()
50
+ });
51
+ const sensiboGetAllDevices = action("SENSIBO_GET_ALL_DEVICES", {
52
+ slug: "sensibo-get-all-devices",
53
+ name: "Get All Sensibo Devices",
54
+ description: "Tool to retrieve all Sensibo pods for the authenticated user. Use when you need an up-to-date list of all devices linked to your Sensibo account.",
55
+ input: SensiboGetAllDevicesInput,
56
+ output: z.object({
57
+ result: z.array(SensiboGetAllDevices_PodSchema).describe("List of pods associated with user"),
58
+ status: z.string().describe("API result status, e.g., 'success'"),
59
+ message: z.string().describe("Error message if the call failed").nullable().optional()
60
+ })
61
+ });
62
+ //#endregion
63
+ export { sensiboGetAllDevices };
64
+
65
+ //# sourceMappingURL=get-all-devices.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-all-devices.mjs","names":[],"sources":["../../src/actions/get-all-devices.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const SensiboGetAllDevicesInput: z.ZodTypeAny = z.object({\n fields: z.string().describe(\"Comma-separated list of fields to include in the response, defaults to '*'\").optional(),\n});\nconst SensiboGetAllDevices_RoomSchema: z.ZodTypeAny = z.object({\n id: z.string().describe(\"Unique identifier of the room\"),\n uid: z.string().describe(\"Unique uid of the room\").nullable().optional(),\n name: z.string().describe(\"Name of the room\").nullable().optional(),\n});\nconst SensiboGetAllDevices_AcStateSchema: z.ZodTypeAny = z.object({\n on: z.boolean().describe(\"AC power status\"),\n mode: z.string().describe(\"AC operating mode, e.g., 'cool', 'heat'\"),\n swing: z.string().describe(\"Swing setting\").nullable().optional(),\n fanLevel: z.string().describe(\"Fan level setting\"),\n targetTemperature: z.number().describe(\"Target temperature setpoint\"),\n});\nconst SensiboGetAllDevices_FeaturesSchema: z.ZodTypeAny = z.object({\n cooling: z.boolean().describe(\"Whether cooling is supported\"),\n heating: z.boolean().describe(\"Whether heating is supported\"),\n sensors: z.array(z.string()).describe(\"List of available sensors\"),\n scheduling: z.boolean().describe(\"Whether scheduling is supported\"),\n humidityControl: z.boolean().describe(\"Whether humidity control is supported\"),\n});\nconst SensiboGetAllDevices_MeasurementsSchema: z.ZodTypeAny = z.object({\n co2: z.number().int().describe(\"CO2 level in ppm\").nullable().optional(),\n tvoc: z.number().int().describe(\"Total volatile organic compounds level\").nullable().optional(),\n humidity: z.number().describe(\"Current humidity percentage\"),\n temperature: z.number().describe(\"Current temperature in Celsius\"),\n});\nconst SensiboGetAllDevices_ConnectionStatusSchema: z.ZodTypeAny = z.object({\n since: z.string().describe(\"ISO timestamp when status last changed\"),\n status: z.string().describe(\"Connection status, e.g., 'ONLINE' or 'OFFLINE'\"),\n});\nconst SensiboGetAllDevices_PodSchema: z.ZodTypeAny = z.object({\n id: z.string().describe(\"Unique pod identifier\"),\n name: z.string().describe(\"Name assigned to the pod\").nullable().optional(),\n room: SensiboGetAllDevices_RoomSchema.nullable(),\n model: z.string().describe(\"Model of the pod device\").nullable().optional(),\n acState: SensiboGetAllDevices_AcStateSchema.nullable(),\n battery: z.object({}).describe(\"Battery information if applicable, values may include battery level or type\").nullable().optional(),\n podType: z.string().describe(\"Type of pod\").nullable().optional(),\n features: SensiboGetAllDevices_FeaturesSchema.nullable().optional(),\n timezone: z.string().describe(\"Timezone of the pod location\").nullable().optional(),\n createdAt: z.string().describe(\"Timestamp when the pod was created\").nullable().optional(),\n osVersion: z.string().describe(\"Operating system version\").nullable().optional(),\n updatedAt: z.string().describe(\"Timestamp when the pod was last updated\").nullable().optional(),\n macAddress: z.string().describe(\"MAC address of the pod\"),\n measurements: SensiboGetAllDevices_MeasurementsSchema.nullable(),\n connectionStatus: SensiboGetAllDevices_ConnectionStatusSchema.nullable(),\n});\nexport const SensiboGetAllDevicesOutput: z.ZodTypeAny = z.object({\n result: z.array(SensiboGetAllDevices_PodSchema).describe(\"List of pods associated with user\"),\n status: z.string().describe(\"API result status, e.g., 'success'\"),\n message: z.string().describe(\"Error message if the call failed\").nullable().optional(),\n});\n\nexport const sensiboGetAllDevices = action(\"SENSIBO_GET_ALL_DEVICES\", {\n slug: \"sensibo-get-all-devices\",\n name: \"Get All Sensibo Devices\",\n description: \"Tool to retrieve all Sensibo pods for the authenticated user. Use when you need an up-to-date list of all devices linked to your Sensibo account.\",\n input: SensiboGetAllDevicesInput,\n output: SensiboGetAllDevicesOutput,\n});\n"],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_get_all_devices = require("./get-all-devices.cjs");
3
+ exports.sensiboGetAllDevices = require_get_all_devices.sensiboGetAllDevices;
@@ -0,0 +1,2 @@
1
+ import { sensiboGetAllDevices } from "./get-all-devices.cjs";
2
+ export { sensiboGetAllDevices };
@@ -0,0 +1,2 @@
1
+ import { sensiboGetAllDevices } from "./get-all-devices.mjs";
2
+ export { sensiboGetAllDevices };
@@ -0,0 +1,2 @@
1
+ import { sensiboGetAllDevices } from "./get-all-devices.mjs";
2
+ export { sensiboGetAllDevices };
package/dist/app.cjs ADDED
@@ -0,0 +1,9 @@
1
+ //#region src/app.ts
2
+ const sensibo = (0, require("@keystrokehq/keystroke/app").defineApp)({
3
+ slug: "sensibo",
4
+ auth: "keystroke"
5
+ });
6
+ //#endregion
7
+ exports.sensibo = sensibo;
8
+
9
+ //# sourceMappingURL=app.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.cjs","names":[],"sources":["../src/app.ts"],"sourcesContent":["import { defineApp } from \"@keystrokehq/keystroke/app\";\n\nexport const sensibo = defineApp({\n slug: \"sensibo\",\n auth: \"keystroke\",\n});\n"],"mappings":";AAEA,MAAa,WAAA,uCAAA,CAAA,CAAA,UAAA,CAAoB;CAC/B,MAAM;CACN,MAAM;AACR,CAAC"}
package/dist/app.d.cts ADDED
@@ -0,0 +1,5 @@
1
+ //#region src/app.d.ts
2
+ declare const sensibo: import("@keystrokehq/app").App<import("@keystrokehq/shared").Credential>;
3
+ //#endregion
4
+ export { sensibo };
5
+ //# sourceMappingURL=app.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.d.cts","names":[],"sources":["../src/app.ts"],"mappings":";cAEa,OAAA,6BAAO,GAAA,+BAAA,UAAA"}
package/dist/app.d.mts ADDED
@@ -0,0 +1,5 @@
1
+ //#region src/app.d.ts
2
+ declare const sensibo: import("@keystrokehq/app").App<import("@keystrokehq/shared").Credential>;
3
+ //#endregion
4
+ export { sensibo };
5
+ //# sourceMappingURL=app.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.d.mts","names":[],"sources":["../src/app.ts"],"mappings":";cAEa,OAAA,6BAAO,GAAA,+BAAA,UAAA"}
package/dist/app.mjs ADDED
@@ -0,0 +1,10 @@
1
+ import { defineApp } from "@keystrokehq/keystroke/app";
2
+ //#region src/app.ts
3
+ const sensibo = defineApp({
4
+ slug: "sensibo",
5
+ auth: "keystroke"
6
+ });
7
+ //#endregion
8
+ export { sensibo };
9
+
10
+ //# sourceMappingURL=app.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.mjs","names":[],"sources":["../src/app.ts"],"sourcesContent":["import { defineApp } from \"@keystrokehq/keystroke/app\";\n\nexport const sensibo = defineApp({\n slug: \"sensibo\",\n auth: \"keystroke\",\n});\n"],"mappings":";;AAEA,MAAa,UAAU,UAAU;CAC/B,MAAM;CACN,MAAM;AACR,CAAC"}
@@ -0,0 +1,15 @@
1
+ //#region src/catalog.ts
2
+ /** Generated — kept in sync with src/app.ts. */
3
+ const sensiboCatalog = {
4
+ "slug": "sensibo",
5
+ "name": "Sensibo",
6
+ "description": "Sensibo offers smart controllers that connect air conditioners and heat pumps to the internet, enabling remote control and automation.",
7
+ "category": "Internet of Things",
8
+ "logo": "https://logos.composio.dev/api/sensibo",
9
+ "authKind": "keystroke",
10
+ "oauthScopes": []
11
+ };
12
+ //#endregion
13
+ exports.sensiboCatalog = sensiboCatalog;
14
+
15
+ //# sourceMappingURL=catalog.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.cjs","names":[],"sources":["../src/catalog.ts"],"sourcesContent":["/** Generated — kept in sync with src/app.ts. */\nexport const sensiboCatalog = {\n \"slug\": \"sensibo\",\n \"name\": \"Sensibo\",\n \"description\": \"Sensibo offers smart controllers that connect air conditioners and heat pumps to the internet, enabling remote control and automation.\",\n \"category\": \"Internet of Things\",\n \"logo\": \"https://logos.composio.dev/api/sensibo\",\n \"authKind\": \"keystroke\",\n \"oauthScopes\": []\n} as const;\n"],"mappings":";;AACA,MAAa,iBAAiB;CAC5B,QAAQ;CACR,QAAQ;CACR,eAAe;CACf,YAAY;CACZ,QAAQ;CACR,YAAY;CACZ,eAAe,CAAC;AAClB"}
@@ -0,0 +1,14 @@
1
+ //#region src/catalog.d.ts
2
+ /** Generated — kept in sync with src/app.ts. */
3
+ declare const sensiboCatalog: {
4
+ readonly slug: "sensibo";
5
+ readonly name: "Sensibo";
6
+ readonly description: "Sensibo offers smart controllers that connect air conditioners and heat pumps to the internet, enabling remote control and automation.";
7
+ readonly category: "Internet of Things";
8
+ readonly logo: "https://logos.composio.dev/api/sensibo";
9
+ readonly authKind: "keystroke";
10
+ readonly oauthScopes: readonly [];
11
+ };
12
+ //#endregion
13
+ export { sensiboCatalog };
14
+ //# sourceMappingURL=catalog.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.cts","names":[],"sources":["../src/catalog.ts"],"mappings":";;cACa,cAAA;EAAA"}
@@ -0,0 +1,14 @@
1
+ //#region src/catalog.d.ts
2
+ /** Generated — kept in sync with src/app.ts. */
3
+ declare const sensiboCatalog: {
4
+ readonly slug: "sensibo";
5
+ readonly name: "Sensibo";
6
+ readonly description: "Sensibo offers smart controllers that connect air conditioners and heat pumps to the internet, enabling remote control and automation.";
7
+ readonly category: "Internet of Things";
8
+ readonly logo: "https://logos.composio.dev/api/sensibo";
9
+ readonly authKind: "keystroke";
10
+ readonly oauthScopes: readonly [];
11
+ };
12
+ //#endregion
13
+ export { sensiboCatalog };
14
+ //# sourceMappingURL=catalog.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.mts","names":[],"sources":["../src/catalog.ts"],"mappings":";;cACa,cAAA;EAAA"}
@@ -0,0 +1,15 @@
1
+ //#region src/catalog.ts
2
+ /** Generated — kept in sync with src/app.ts. */
3
+ const sensiboCatalog = {
4
+ "slug": "sensibo",
5
+ "name": "Sensibo",
6
+ "description": "Sensibo offers smart controllers that connect air conditioners and heat pumps to the internet, enabling remote control and automation.",
7
+ "category": "Internet of Things",
8
+ "logo": "https://logos.composio.dev/api/sensibo",
9
+ "authKind": "keystroke",
10
+ "oauthScopes": []
11
+ };
12
+ //#endregion
13
+ export { sensiboCatalog };
14
+
15
+ //# sourceMappingURL=catalog.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.mjs","names":[],"sources":["../src/catalog.ts"],"sourcesContent":["/** Generated — kept in sync with src/app.ts. */\nexport const sensiboCatalog = {\n \"slug\": \"sensibo\",\n \"name\": \"Sensibo\",\n \"description\": \"Sensibo offers smart controllers that connect air conditioners and heat pumps to the internet, enabling remote control and automation.\",\n \"category\": \"Internet of Things\",\n \"logo\": \"https://logos.composio.dev/api/sensibo\",\n \"authKind\": \"keystroke\",\n \"oauthScopes\": []\n} as const;\n"],"mappings":";;AACA,MAAa,iBAAiB;CAC5B,QAAQ;CACR,QAAQ;CACR,eAAe;CACf,YAAY;CACZ,QAAQ;CACR,YAAY;CACZ,eAAe,CAAC;AAClB"}
@@ -0,0 +1,18 @@
1
+ let _keystrokehq_keystroke_client = require("@keystrokehq/keystroke/client");
2
+ //#region src/execute.ts
3
+ const APP_SLUG = "sensibo";
4
+ /** Pinned app version — updated on regeneration. */
5
+ const APP_VERSION = "20260615_00";
6
+ async function executeSensiboTool(tool, args) {
7
+ const { result } = await (0, _keystrokehq_keystroke_client.createKeystrokeClient)().tools.execute({
8
+ app: APP_SLUG,
9
+ tool,
10
+ arguments: args,
11
+ version: APP_VERSION
12
+ });
13
+ return result;
14
+ }
15
+ //#endregion
16
+ exports.executeSensiboTool = executeSensiboTool;
17
+
18
+ //# sourceMappingURL=execute.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.cjs","names":[],"sources":["../src/execute.ts"],"sourcesContent":["import { createKeystrokeClient } from \"@keystrokehq/keystroke/client\";\n\nconst APP_SLUG = \"sensibo\";\n/** Pinned app version — updated on regeneration. */\nconst APP_VERSION = \"20260615_00\";\n\nexport async function executeSensiboTool(\n tool: string,\n args: Record<string, unknown>,\n): Promise<unknown> {\n const { result } = await createKeystrokeClient().tools.execute({\n app: APP_SLUG,\n tool,\n arguments: args,\n version: APP_VERSION,\n });\n return result;\n}\n"],"mappings":";;AAEA,MAAM,WAAW;;AAEjB,MAAM,cAAc;AAEpB,eAAsB,mBACpB,MACA,MACkB;CAClB,MAAM,EAAE,WAAW,OAAA,GAAA,8BAAA,sBAAA,CAA4B,CAAC,CAAC,MAAM,QAAQ;EAC7D,KAAK;EACL;EACA,WAAW;EACX,SAAS;CACX,CAAC;CACD,OAAO;AACT"}
@@ -0,0 +1,18 @@
1
+ import { createKeystrokeClient } from "@keystrokehq/keystroke/client";
2
+ //#region src/execute.ts
3
+ const APP_SLUG = "sensibo";
4
+ /** Pinned app version — updated on regeneration. */
5
+ const APP_VERSION = "20260615_00";
6
+ async function executeSensiboTool(tool, args) {
7
+ const { result } = await createKeystrokeClient().tools.execute({
8
+ app: APP_SLUG,
9
+ tool,
10
+ arguments: args,
11
+ version: APP_VERSION
12
+ });
13
+ return result;
14
+ }
15
+ //#endregion
16
+ export { executeSensiboTool };
17
+
18
+ //# sourceMappingURL=execute.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.mjs","names":[],"sources":["../src/execute.ts"],"sourcesContent":["import { createKeystrokeClient } from \"@keystrokehq/keystroke/client\";\n\nconst APP_SLUG = \"sensibo\";\n/** Pinned app version — updated on regeneration. */\nconst APP_VERSION = \"20260615_00\";\n\nexport async function executeSensiboTool(\n tool: string,\n args: Record<string, unknown>,\n): Promise<unknown> {\n const { result } = await createKeystrokeClient().tools.execute({\n app: APP_SLUG,\n tool,\n arguments: args,\n version: APP_VERSION,\n });\n return result;\n}\n"],"mappings":";;AAEA,MAAM,WAAW;;AAEjB,MAAM,cAAc;AAEpB,eAAsB,mBACpB,MACA,MACkB;CAClB,MAAM,EAAE,WAAW,MAAM,sBAAsB,CAAC,CAAC,MAAM,QAAQ;EAC7D,KAAK;EACL;EACA,WAAW;EACX,SAAS;CACX,CAAC;CACD,OAAO;AACT"}
package/dist/index.cjs ADDED
@@ -0,0 +1,8 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_app = require("./app.cjs");
3
+ const require_catalog = require("./catalog.cjs");
4
+ const require_get_all_devices = require("./actions/get-all-devices.cjs");
5
+ require("./actions/index.cjs");
6
+ exports.sensibo = require_app.sensibo;
7
+ exports.sensiboCatalog = require_catalog.sensiboCatalog;
8
+ exports.sensiboGetAllDevices = require_get_all_devices.sensiboGetAllDevices;
@@ -0,0 +1,4 @@
1
+ import { sensiboGetAllDevices } from "./actions/get-all-devices.cjs";
2
+ import { sensibo } from "./app.cjs";
3
+ import { sensiboCatalog } from "./catalog.cjs";
4
+ export { sensibo, sensiboCatalog, sensiboGetAllDevices };
@@ -0,0 +1,4 @@
1
+ import { sensiboGetAllDevices } from "./actions/get-all-devices.mjs";
2
+ import { sensibo } from "./app.mjs";
3
+ import { sensiboCatalog } from "./catalog.mjs";
4
+ export { sensibo, sensiboCatalog, sensiboGetAllDevices };
package/dist/index.mjs ADDED
@@ -0,0 +1,5 @@
1
+ import { sensibo } from "./app.mjs";
2
+ import { sensiboCatalog } from "./catalog.mjs";
3
+ import { sensiboGetAllDevices } from "./actions/get-all-devices.mjs";
4
+ import "./actions/index.mjs";
5
+ export { sensibo, sensiboCatalog, sensiboGetAllDevices };
package/package.json ADDED
@@ -0,0 +1,49 @@
1
+ {
2
+ "name": "@keystrokehq/sensibo",
3
+ "version": "0.1.0",
4
+ "publishConfig": {
5
+ "access": "public",
6
+ "registry": "https://registry.npmjs.org"
7
+ },
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/keystrokehq/keystroke.git",
11
+ "directory": "packages/integrations/sensibo"
12
+ },
13
+ "files": [
14
+ "dist"
15
+ ],
16
+ "sideEffects": false,
17
+ "type": "module",
18
+ "main": "./dist/index.cjs",
19
+ "module": "./dist/index.mjs",
20
+ "types": "./dist/index.d.mts",
21
+ "exports": {
22
+ ".": {
23
+ "types": "./dist/index.d.mts",
24
+ "import": "./dist/index.mjs",
25
+ "require": "./dist/index.cjs"
26
+ },
27
+ "./actions": {
28
+ "types": "./dist/actions/index.d.mts",
29
+ "import": "./dist/actions/index.mjs",
30
+ "require": "./dist/actions/index.cjs"
31
+ }
32
+ },
33
+ "peerDependencies": {
34
+ "@keystrokehq/keystroke": "^0.1.4",
35
+ "zod": "^4.4.3"
36
+ },
37
+ "devDependencies": {
38
+ "@keystrokehq/keystroke": "link:../../keystroke",
39
+ "@types/node": "^25.9.1",
40
+ "tsdown": "^0.22.0",
41
+ "typescript": "^6.0.3",
42
+ "zod": "^4.4.3"
43
+ },
44
+ "scripts": {
45
+ "build": "tsdown",
46
+ "dev": "tsdown --watch --no-clean",
47
+ "typecheck": "tsc --noEmit"
48
+ }
49
+ }