Deploy Heim Application to Cloud
deploy_heim_application_to_cloudDeploy backend applications to Heim cloud using the 'heim deploy' command to make them available via console-output paths.
Instructions
Runs 'heim deploy' command to deploy an application to Heim cloud. Which will make the application availible on the path outputted in the console
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | Absolute windows path to the application folder root |
Implementation Reference
- src/tools.ts:160-181 (handler)The handler function that promisifies exec and runs 'heim deploy [path] --cloud', returning stdout/stderr or error.
async (request) => { const execPromise = util.promisify(exec); try { //TODO: Update to use org and project when a user has multiple orgs and projects const { stdout, stderr } = await execPromise( `heim deploy ${request.path} --cloud` ); return { content: [ { type: "text", text: `stdout:\n${stdout}\nstderr:\n${stderr}`, }, ], }; } catch (err: any) { return { content: [{ type: "text", text: `Error: ${err.message}` }], isError: true, }; } } - src/tools.ts:143-159 (schema)Schema definition for the tool, including Zod input schema for 'path' parameter, title, description, and annotations.
{ title: "Deploy Heim Application to Cloud", description: "Runs 'heim deploy' command to deploy an application to Heim cloud. Which will make the application availible on the path outputted in the console", inputSchema: { path: z .string() .describe("Absolute windows path to the application folder root") .optional(), }, annotations: { destructiveHint: false, readOnlyHint: false, idempotentHint: true, openWorldHint: true, }, }, - src/tools.ts:140-182 (registration)Full registration of the 'deploy_heim_application_to_cloud' tool via server.registerTool, including schema and handler.
// TOOL: deploy_heim_application_to_cloud server.registerTool( "deploy_heim_application_to_cloud", { title: "Deploy Heim Application to Cloud", description: "Runs 'heim deploy' command to deploy an application to Heim cloud. Which will make the application availible on the path outputted in the console", inputSchema: { path: z .string() .describe("Absolute windows path to the application folder root") .optional(), }, annotations: { destructiveHint: false, readOnlyHint: false, idempotentHint: true, openWorldHint: true, }, }, async (request) => { const execPromise = util.promisify(exec); try { //TODO: Update to use org and project when a user has multiple orgs and projects const { stdout, stderr } = await execPromise( `heim deploy ${request.path} --cloud` ); return { content: [ { type: "text", text: `stdout:\n${stdout}\nstderr:\n${stderr}`, }, ], }; } catch (err: any) { return { content: [{ type: "text", text: `Error: ${err.message}` }], isError: true, }; } } );