@pikku/cli 0.12.20 → 0.12.22
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/cli.schema.json +1 -1
- package/console-app/assets/index-C52h1B_L.css +1 -0
- package/console-app/assets/index-CAk106ji.js +232 -0
- package/console-app/index.html +3 -6
- package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +1 -1
- package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +3 -3
- package/dist/.pikku/channel/pikku-channel-types.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-channel.d.ts +6 -6
- package/dist/.pikku/cli/pikku-cli-channel.js +280 -1
- package/dist/.pikku/cli/pikku-cli-types.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-types.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli-wirings-meta.gen.json +792 -8
- package/dist/.pikku/cli/pikku-cli-wirings.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli-wirings.gen.js +1 -1
- package/dist/.pikku/cli/pikku-cli.gen.d.ts +1 -1
- package/dist/.pikku/cli/pikku-cli.gen.js +1 -1
- package/dist/.pikku/console/pikku-node-types.gen.d.ts +1 -1
- package/dist/.pikku/function/pikku-function-types.gen.d.ts +44 -70
- package/dist/.pikku/function/pikku-function-types.gen.js +33 -40
- package/dist/.pikku/function/pikku-functions-meta.gen.js +1 -1
- package/dist/.pikku/function/pikku-functions-meta.gen.json +1439 -316
- package/dist/.pikku/function/pikku-functions.gen.js +21 -9
- package/dist/.pikku/http/pikku-http-types.gen.d.ts +1 -1
- package/dist/.pikku/http/pikku-http-types.gen.js +1 -1
- package/dist/.pikku/http/pikku-http-wirings-meta.gen.js +1 -1
- package/dist/.pikku/http/pikku-http-wirings.gen.d.ts +1 -1
- package/dist/.pikku/http/pikku-http-wirings.gen.js +1 -1
- package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +1 -1
- package/dist/.pikku/mcp/pikku-mcp-types.gen.js +1 -1
- package/dist/.pikku/pikku-bootstrap.gen.d.ts +3 -1
- package/dist/.pikku/pikku-bootstrap.gen.js +3 -1
- package/dist/.pikku/pikku-meta-service.gen.d.ts +1 -1
- package/dist/.pikku/pikku-meta-service.gen.js +1 -1
- package/dist/.pikku/pikku-services.gen.d.ts +2 -1
- package/dist/.pikku/pikku-services.gen.js +1 -0
- package/dist/.pikku/pikku-types.gen.d.ts +1 -1
- package/dist/.pikku/pikku-types.gen.js +1 -1
- package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +1 -1
- package/dist/.pikku/queue/pikku-queue-types.gen.js +1 -1
- package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.d.ts +1 -0
- package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.js +6 -0
- package/dist/.pikku/queue/pikku-queue-workers-wirings-meta.gen.json +250 -0
- package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.d.ts +4 -0
- package/dist/.pikku/queue/pikku-queue-workers-wirings.gen.js +5 -0
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +1 -1
- package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +66 -10
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +1 -1
- package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +1 -1
- package/dist/.pikku/schemas/register.gen.js +157 -11
- package/dist/.pikku/schemas/schemas/BinaryInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/DbMigrateInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/DbResetInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/DbSeedInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDbSchemaInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDbSchemaOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDeployApplyInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDeployApplyOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDeployListInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDeployListOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDeployPlanInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDeployPlanOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDeployUnitsInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDeployUnitsOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDomainsAddInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDomainsAddOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDomainsListInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDomainsListOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDomainsRemoveInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricDomainsRemoveOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricErrorsInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricErrorsOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricInitInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricInitOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricLLMKeyInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricLLMKeyOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricLinkInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricLinkOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricLoginInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricLoginOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricLogsInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricLogsOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricMetricsInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricMetricsOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricRollbackInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricRollbackOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricSecretsListInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricSecretsListOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricSecretsSetInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricSecretsSetOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricStatusInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricStatusOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricTraceInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricTraceOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricValidateInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/FabricValidateOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuCLIConfig.schema.json +1 -1
- package/dist/.pikku/schemas/schemas/PikkuCommandChannelsOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuCommandHTTPOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuCommandQueueOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuEventsScaffoldOutput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaClientsInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaContextInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaFunctionsGetInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaFunctionsListInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaMiddlewareGetInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaMiddlewareListInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaPermissionsGetInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaPermissionsListInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaSchemasGetInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaSchemasListInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaWiresChannelInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaWiresHttpInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaWiresListInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaWiresQueueInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaWiresSchedulerInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaWiresTriggerInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaWiresTypeInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaWorkflowsGetInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuMetaWorkflowsListInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuSkillsInstallInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuSkillsListInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuTestsCoverageInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/PikkuTestsInitInput.schema.json +1 -0
- package/dist/.pikku/schemas/schemas/WorkflowRunStatus.schema.json +1 -1
- package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +1 -1
- package/dist/.pikku/secrets/pikku-secret-types.gen.js +1 -1
- package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +1 -1
- package/dist/.pikku/secrets/pikku-secrets.gen.js +1 -1
- package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +1 -1
- package/dist/.pikku/trigger/pikku-trigger-types.gen.js +1 -1
- package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +1 -1
- package/dist/.pikku/variables/pikku-variable-types.gen.js +1 -1
- package/dist/.pikku/variables/pikku-variables.gen.d.ts +1 -1
- package/dist/.pikku/variables/pikku-variables.gen.js +1 -1
- package/dist/.pikku/workflow/meta/allWorkflow.gen.json +237 -629
- package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +1 -1
- package/dist/.pikku/workflow/pikku-workflow-types.gen.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +1 -1
- package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +1 -1
- package/dist/bin/pikku-bin.mjs +23 -0
- package/dist/bin/pikku.js +28 -1
- package/dist/src/cli.wiring.js +286 -10
- package/dist/src/deploy/analyzer/analyzer.d.ts +16 -1
- package/dist/src/deploy/analyzer/analyzer.js +83 -43
- package/dist/src/deploy/analyzer/manifest.d.ts +10 -0
- package/dist/src/deploy/build-pipeline.d.ts +2 -0
- package/dist/src/deploy/build-pipeline.js +123 -19
- package/dist/src/deploy/bundler/bundler.d.ts +3 -1
- package/dist/src/deploy/bundler/bundler.js +40 -9
- package/dist/src/deploy/bundler/dep-extractor.d.ts +5 -2
- package/dist/src/deploy/bundler/dep-extractor.js +103 -23
- package/dist/src/deploy/bundler/types.d.ts +5 -1
- package/dist/src/deploy/codegen/per-unit-codegen.d.ts +11 -1
- package/dist/src/deploy/codegen/per-unit-codegen.js +49 -6
- package/dist/src/deploy/plan/planner.js +25 -3
- package/dist/src/deploy/plan/provider.d.ts +2 -0
- package/dist/src/deploy/provider-adapter.d.ts +34 -0
- package/dist/src/deploy/server-entry.d.ts +16 -0
- package/dist/src/deploy/server-entry.js +81 -0
- package/dist/src/fabric/fabric-commands.d.ts +522 -0
- package/dist/src/fabric/fabric-commands.js +299 -0
- package/dist/src/fabric/functions/db-schema.function.d.ts +35 -0
- package/dist/src/fabric/functions/db-schema.function.js +37 -0
- package/dist/src/fabric/functions/deploy-list.function.d.ts +41 -0
- package/dist/src/fabric/functions/deploy-list.function.js +43 -0
- package/dist/src/fabric/functions/deploy-units.function.d.ts +35 -0
- package/dist/src/fabric/functions/deploy-units.function.js +41 -0
- package/dist/src/fabric/functions/deploy.function.d.ts +105 -0
- package/dist/src/fabric/functions/deploy.function.js +122 -0
- package/dist/src/fabric/functions/domains-add.function.d.ts +35 -0
- package/dist/src/fabric/functions/domains-add.function.js +46 -0
- package/dist/src/fabric/functions/domains-list.function.d.ts +20 -0
- package/dist/src/fabric/functions/domains-list.function.js +50 -0
- package/dist/src/fabric/functions/domains-remove.function.d.ts +24 -0
- package/dist/src/fabric/functions/domains-remove.function.js +44 -0
- package/dist/src/fabric/functions/errors.function.d.ts +44 -0
- package/dist/src/fabric/functions/errors.function.js +50 -0
- package/dist/src/fabric/functions/init.function.d.ts +51 -0
- package/dist/src/fabric/functions/init.function.js +54 -0
- package/dist/src/fabric/functions/link.function.d.ts +28 -0
- package/dist/src/fabric/functions/link.function.js +77 -0
- package/dist/src/fabric/functions/llm-key.function.d.ts +46 -0
- package/dist/src/fabric/functions/llm-key.function.js +76 -0
- package/dist/src/fabric/functions/login.function.d.ts +42 -0
- package/dist/src/fabric/functions/login.function.js +68 -0
- package/dist/src/fabric/functions/logs.function.d.ts +40 -0
- package/dist/src/fabric/functions/logs.function.js +84 -0
- package/dist/src/fabric/functions/metrics.function.d.ts +32 -0
- package/dist/src/fabric/functions/metrics.function.js +49 -0
- package/dist/src/fabric/functions/rollback.function.d.ts +76 -0
- package/dist/src/fabric/functions/rollback.function.js +69 -0
- package/dist/src/fabric/functions/secrets-list.function.d.ts +24 -0
- package/dist/src/fabric/functions/secrets-list.function.js +37 -0
- package/dist/src/fabric/functions/secrets-set.function.d.ts +32 -0
- package/dist/src/fabric/functions/secrets-set.function.js +36 -0
- package/dist/src/fabric/functions/status.function.d.ts +34 -0
- package/dist/src/fabric/functions/status.function.js +43 -0
- package/dist/src/fabric/functions/trace.function.d.ts +28 -0
- package/dist/src/fabric/functions/trace.function.js +45 -0
- package/dist/src/fabric/functions/validate.function.d.ts +50 -0
- package/dist/src/fabric/functions/validate.function.js +363 -0
- package/dist/src/fabric/lib/config.d.ts +64 -0
- package/dist/src/fabric/lib/config.js +62 -0
- package/dist/src/fabric/lib/console-url.d.ts +5 -0
- package/dist/src/fabric/lib/console-url.js +13 -0
- package/dist/src/fabric/lib/git.d.ts +53 -0
- package/dist/src/fabric/lib/git.js +151 -0
- package/dist/src/fabric/lib/http.d.ts +4 -0
- package/dist/src/fabric/lib/http.js +12 -0
- package/dist/src/fabric/lib/not-implemented.d.ts +5 -0
- package/dist/src/fabric/lib/not-implemented.js +8 -0
- package/dist/src/fabric/lib/output.d.ts +23 -0
- package/dist/src/fabric/lib/output.js +39 -0
- package/dist/src/fabric/lib/prompt.d.ts +12 -0
- package/dist/src/fabric/lib/prompt.js +32 -0
- package/dist/src/fabric/lib/stage.d.ts +7 -0
- package/dist/src/fabric/lib/stage.js +14 -0
- package/dist/src/fabric/sdk/pikku-fetch.gen.d.ts +14 -0
- package/dist/src/fabric/sdk/pikku-fetch.gen.js +30 -0
- package/dist/src/fabric/sdk/pikku-rpc.gen.d.ts +105 -0
- package/dist/src/fabric/sdk/pikku-rpc.gen.js +126 -0
- package/dist/src/functions/commands/all.d.ts +1 -1
- package/dist/src/functions/commands/binary.d.ts +7 -0
- package/dist/src/functions/commands/binary.js +40 -0
- package/dist/src/functions/commands/bootstrap.d.ts +1 -1
- package/dist/src/functions/commands/bootstrap.js +7 -4
- package/dist/src/functions/commands/console.d.ts +3 -3
- package/dist/src/functions/commands/db-migrate.d.ts +1 -0
- package/dist/src/functions/commands/db-migrate.js +35 -0
- package/dist/src/functions/commands/db-reset.d.ts +1 -0
- package/dist/src/functions/commands/db-reset.js +36 -0
- package/dist/src/functions/commands/db-seed.d.ts +1 -0
- package/dist/src/functions/commands/db-seed.js +27 -0
- package/dist/src/functions/commands/db-shared.d.ts +32 -0
- package/dist/src/functions/commands/db-shared.js +26 -0
- package/dist/src/functions/commands/deploy-apply.d.ts +3 -3
- package/dist/src/functions/commands/deploy-apply.js +6 -4
- package/dist/src/functions/commands/deploy-info.d.ts +1 -1
- package/dist/src/functions/commands/deploy-plan.d.ts +3 -3
- package/dist/src/functions/commands/deploy-plan.js +7 -1
- package/dist/src/functions/commands/dev.d.ts +3 -3
- package/dist/src/functions/commands/dev.js +142 -86
- package/dist/src/functions/commands/enable.d.ts +5 -4
- package/dist/src/functions/commands/enable.js +4 -0
- package/dist/src/functions/commands/info.d.ts +4 -4
- package/dist/src/functions/commands/load-user-project.d.ts +11 -0
- package/dist/src/functions/commands/load-user-project.js +40 -0
- package/dist/src/functions/commands/meta.d.ts +82 -0
- package/dist/src/functions/commands/meta.js +454 -0
- package/dist/src/functions/commands/new-addon.d.ts +3 -3
- package/dist/src/functions/commands/new-function.d.ts +3 -3
- package/dist/src/functions/commands/new-middleware.d.ts +3 -3
- package/dist/src/functions/commands/new-permission.d.ts +3 -3
- package/dist/src/functions/commands/new-wiring.d.ts +3 -3
- package/dist/src/functions/commands/pikku-command-bootstrap.d.ts +1 -1
- package/dist/src/functions/commands/pikku-command-bootstrap.js +15 -1
- package/dist/src/functions/commands/pikku-command-summary.d.ts +1 -1
- package/dist/src/functions/commands/pikku-command-summary.js +7 -1
- package/dist/src/functions/commands/skills.d.ts +26 -0
- package/dist/src/functions/commands/skills.js +184 -0
- package/dist/src/functions/commands/tests-coverage.d.ts +7 -0
- package/dist/src/functions/commands/tests-coverage.js +231 -0
- package/dist/src/functions/commands/tests-init.d.ts +7 -0
- package/dist/src/functions/commands/tests-init.js +225 -0
- package/dist/src/functions/commands/versions-check.d.ts +1 -1
- package/dist/src/functions/commands/versions-init.d.ts +3 -3
- package/dist/src/functions/commands/versions-update.d.ts +1 -1
- package/dist/src/functions/commands/versions-update.js +4 -2
- package/dist/src/functions/commands/watch.d.ts +3 -3
- package/dist/src/functions/commands/watch.js +1 -1
- package/dist/src/functions/db/local-db.d.ts +48 -0
- package/dist/src/functions/db/local-db.js +106 -0
- package/dist/src/functions/db/seed.d.ts +11 -0
- package/dist/src/functions/db/seed.js +22 -0
- package/dist/src/functions/db/sql-migrator.d.ts +26 -0
- package/dist/src/functions/db/sql-migrator.js +104 -0
- package/dist/src/functions/db/sqlite-codegen.d.ts +45 -0
- package/dist/src/functions/db/sqlite-codegen.js +294 -0
- package/dist/src/functions/db/zod-codegen.d.ts +10 -0
- package/dist/src/functions/db/zod-codegen.js +109 -0
- package/dist/src/functions/runtimes/fetch/index.d.ts +1 -1
- package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.d.ts +1 -1
- package/dist/src/functions/runtimes/nextjs/pikku-command-nextjs.js +21 -2
- package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-worker-rpc-wrapper.d.ts +1 -0
- package/dist/src/functions/runtimes/nextjs/serialize-nextjs-backend-worker-rpc-wrapper.js +163 -0
- package/dist/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.d.ts +1 -1
- package/dist/src/functions/runtimes/nextjs/serialize-nextjs-http-wrapper.js +5 -2
- package/dist/src/functions/runtimes/tanstack-start/pikku-command-tanstack-start.d.ts +1 -0
- package/dist/src/functions/runtimes/tanstack-start/pikku-command-tanstack-start.js +32 -0
- package/dist/src/functions/runtimes/tanstack-start/serialize-tanstack-start-shim.d.ts +11 -0
- package/dist/src/functions/runtimes/tanstack-start/serialize-tanstack-start-shim.js +36 -0
- package/dist/src/functions/runtimes/websocket/pikku-command-websocket-typed.d.ts +1 -1
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent-types.d.ts +1 -1
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.d.ts +1 -1
- package/dist/src/functions/wirings/ai-agent/pikku-command-ai-agent.js +1 -10
- package/dist/src/functions/wirings/ai-agent/pikku-command-public-agent.d.ts +1 -1
- package/dist/src/functions/wirings/ai-agent/serialize-public-agent.js +76 -1
- package/dist/src/functions/wirings/channels/pikku-channels.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channel-types.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channels-map.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channels.d.ts +1 -1
- package/dist/src/functions/wirings/channels/pikku-command-channels.js +1 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli-entry.d.ts +1 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli-entry.js +5 -2
- package/dist/src/functions/wirings/cli/pikku-command-cli-types.d.ts +5 -1
- package/dist/src/functions/wirings/cli/pikku-command-cli-types.js +8 -2
- package/dist/src/functions/wirings/cli/pikku-command-cli.d.ts +1 -1
- package/dist/src/functions/wirings/cli/serialize-channel-cli-client.js +27 -9
- package/dist/src/functions/wirings/cli/serialize-channel-cli.d.ts +5 -1
- package/dist/src/functions/wirings/cli/serialize-channel-cli.js +13 -3
- package/dist/src/functions/wirings/console/pikku-command-console-functions.d.ts +1 -1
- package/dist/src/functions/wirings/console/pikku-command-console-functions.js +5 -1
- package/dist/src/functions/wirings/console/pikku-command-node-types.d.ts +1 -1
- package/dist/src/functions/wirings/console/pikku-command-nodes-meta.d.ts +1 -1
- package/dist/src/functions/wirings/console/serialize-console-functions.js +5 -0
- package/dist/src/functions/wirings/credentials/pikku-command-credentials.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-addon-types.d.ts +5 -1
- package/dist/src/functions/wirings/functions/pikku-command-addon-types.js +7 -2
- package/dist/src/functions/wirings/functions/pikku-command-function-types-split.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-function-types-split.js +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-function-types.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-functions.d.ts +1 -1
- package/dist/src/functions/wirings/functions/pikku-command-services.d.ts +1 -1
- package/dist/src/functions/wirings/functions/schemas.d.ts +1 -1
- package/dist/src/functions/wirings/functions/serialize-function-types.js +105 -80
- package/dist/src/functions/wirings/gateway/pikku-command-gateway.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-http-map.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-http-routes.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-http-routes.js +1 -1
- package/dist/src/functions/wirings/http/pikku-command-http-types.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-command-openapi.d.ts +1 -1
- package/dist/src/functions/wirings/http/pikku-http-routes.d.ts +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-json.d.ts +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp-types.d.ts +1 -1
- package/dist/src/functions/wirings/mcp/pikku-command-mcp.d.ts +1 -1
- package/dist/src/functions/wirings/middleware/pikku-command-middleware.d.ts +1 -1
- package/dist/src/functions/wirings/package/pikku-command-package-types.d.ts +2 -2
- package/dist/src/functions/wirings/package/pikku-command-package.d.ts +1 -1
- package/dist/src/functions/wirings/permissions/pikku-command-permissions.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-map.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-map.js +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-service.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue-types.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-command-queue.js +1 -1
- package/dist/src/functions/wirings/queue/pikku-queue-map.d.ts +1 -1
- package/dist/src/functions/wirings/queue/pikku-queue.d.ts +1 -1
- package/dist/src/functions/wirings/realtime/pikku-command-events-scaffold.d.ts +1 -0
- package/dist/src/functions/wirings/realtime/pikku-command-events-scaffold.js +26 -0
- package/dist/src/functions/wirings/realtime/pikku-command-realtime.d.ts +1 -0
- package/dist/src/functions/wirings/realtime/pikku-command-realtime.js +35 -0
- package/dist/src/functions/wirings/realtime/serialize-events-scaffold.d.ts +23 -0
- package/dist/src/functions/wirings/realtime/serialize-events-scaffold.js +98 -0
- package/dist/src/functions/wirings/realtime/serialize-realtime-client.d.ts +22 -0
- package/dist/src/functions/wirings/realtime/serialize-realtime-client.js +337 -0
- package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-public-rpc.js +5 -1
- package/dist/src/functions/wirings/rpc/pikku-command-react-query.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-remote-rpc.js +5 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.d.ts +1 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-client.js +3 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc-map.d.ts +2 -2
- package/dist/src/functions/wirings/rpc/pikku-command-rpc.d.ts +2 -1
- package/dist/src/functions/wirings/rpc/pikku-command-rpc.js +13 -7
- package/dist/src/functions/wirings/rpc/serialize-public-rpc.js +1 -0
- package/dist/src/functions/wirings/rpc/serialize-react-query-hooks.js +1 -1
- package/dist/src/functions/wirings/rpc/serialize-remote-rpc.js +7 -1
- package/dist/src/functions/wirings/rpc/serialize-typed-rpc-map.js +16 -2
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler-types.d.ts +1 -1
- package/dist/src/functions/wirings/scheduler/pikku-command-scheduler.d.ts +1 -1
- package/dist/src/functions/wirings/secrets/pikku-command-secrets.d.ts +1 -1
- package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.d.ts +1 -1
- package/dist/src/functions/wirings/triggers/pikku-command-trigger-types.js +1 -1
- package/dist/src/functions/wirings/triggers/pikku-command-trigger.d.ts +1 -1
- package/dist/src/functions/wirings/variables/pikku-command-variables.d.ts +1 -1
- package/dist/src/functions/wirings/workflow/pikku-command-workflow-routes.d.ts +1 -1
- package/dist/src/functions/wirings/workflow/pikku-command-workflow-routes.js +1 -1
- package/dist/src/functions/wirings/workflow/pikku-command-workflow.d.ts +5 -1
- package/dist/src/functions/wirings/workflow/pikku-command-workflow.js +18 -4
- package/dist/src/functions/wirings/workflow/serialize-workflow-bootstrap-map.d.ts +3 -0
- package/dist/src/functions/wirings/workflow/serialize-workflow-bootstrap-map.js +40 -0
- package/dist/src/functions/wirings/workflow/serialize-workflow-routes.js +56 -2
- package/dist/src/functions/workflows/all.workflow.js +45 -12
- package/dist/src/scaffold/rpc-remote.gen.d.ts +3 -3
- package/dist/src/scaffold/rpc-remote.gen.js +7 -2
- package/dist/src/scaffold/workflow-routes.gen.d.ts +18 -18
- package/dist/src/scaffold/workflow-routes.gen.js +33 -1
- package/dist/src/services/cli-logger.service.d.ts +22 -3
- package/dist/src/services/cli-logger.service.js +107 -41
- package/dist/src/services.js +32 -67
- package/dist/src/utils/generate-bootstrap-file.js +3 -0
- package/dist/src/utils/parse-cli-filters.d.ts +18 -0
- package/dist/src/utils/parse-cli-filters.js +99 -0
- package/dist/src/utils/pikku-cli-config.js +29 -9
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +9 -4
- package/skills/pikku-addon/SKILL.md +330 -0
- package/skills/pikku-ai-agent/SKILL.md +227 -0
- package/skills/pikku-ai-vercel/SKILL.md +78 -0
- package/skills/pikku-ai-voice/SKILL.md +85 -0
- package/skills/pikku-auth-js/SKILL.md +106 -0
- package/skills/pikku-aws/SKILL.md +107 -0
- package/skills/pikku-backblaze/SKILL.md +70 -0
- package/skills/pikku-cli/SKILL.md +281 -0
- package/skills/pikku-concepts/SKILL.md +281 -0
- package/skills/pikku-concepts/references/concept-mapping.md +528 -0
- package/skills/pikku-config/SKILL.md +208 -0
- package/skills/pikku-cron/SKILL.md +211 -0
- package/skills/pikku-deploy-azure/SKILL.md +69 -0
- package/skills/pikku-deploy-cloudflare/SKILL.md +80 -0
- package/skills/pikku-deploy-express/SKILL.md +83 -0
- package/skills/pikku-deploy-fastify/SKILL.md +70 -0
- package/skills/pikku-deploy-lambda/SKILL.md +107 -0
- package/skills/pikku-deploy-nextjs/SKILL.md +76 -0
- package/skills/pikku-deploy-uws/SKILL.md +85 -0
- package/skills/pikku-fabric/SKILL.md +245 -0
- package/skills/pikku-feature/SKILL.md +258 -0
- package/skills/pikku-gateway-slack/SKILL.md +112 -0
- package/skills/pikku-http/SKILL.md +317 -0
- package/skills/pikku-i18n/SKILL.md +208 -0
- package/skills/pikku-info/SKILL.md +95 -0
- package/skills/pikku-jose/SKILL.md +102 -0
- package/skills/pikku-kysely/SKILL.md +145 -0
- package/skills/pikku-mcp/SKILL.md +237 -0
- package/skills/pikku-mongodb/SKILL.md +102 -0
- package/skills/pikku-n8n-addon-map/SKILL.md +178 -0
- package/skills/pikku-n8n-code-translate/SKILL.md +166 -0
- package/skills/pikku-pino/SKILL.md +77 -0
- package/skills/pikku-queue/SKILL.md +237 -0
- package/skills/pikku-react/SKILL.md +183 -0
- package/skills/pikku-react-query/SKILL.md +205 -0
- package/skills/pikku-realtime/SKILL.md +285 -0
- package/skills/pikku-redis/SKILL.md +87 -0
- package/skills/pikku-rpc/SKILL.md +168 -0
- package/skills/pikku-rtl/SKILL.md +205 -0
- package/skills/pikku-schedule/SKILL.md +54 -0
- package/skills/pikku-schema-ajv/SKILL.md +60 -0
- package/skills/pikku-schema-cfworker/SKILL.md +60 -0
- package/skills/pikku-security/SKILL.md +243 -0
- package/skills/pikku-services/SKILL.md +247 -0
- package/skills/pikku-template-clone/SKILL.md +39 -0
- package/skills/pikku-testing/SKILL.md +428 -0
- package/skills/pikku-trigger/SKILL.md +177 -0
- package/skills/pikku-versioning/SKILL.md +169 -0
- package/skills/pikku-websocket/SKILL.md +239 -0
- package/skills/pikku-workflow/SKILL.md +283 -0
- package/skills/pikku-workflows-client/SKILL.md +150 -0
- package/skills/pikku-ws/SKILL.md +45 -0
- package/console-app/assets/index-BpY2pSuA.css +0 -10
- package/console-app/assets/index-DXLy-_D4.js +0 -717
- package/dist/.pikku/cli/pikku-cli-client.gen.d.ts +0 -10
- package/dist/.pikku/cli/pikku-cli-client.gen.js +0 -44
- /package/dist/.pikku/schemas/schemas/{PikkuChannelsOutput.schema.json → PikkuCLIEntryOutput.schema.json} +0 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { pikkuSessionlessFunc } from '#pikku';
|
|
2
|
+
import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
|
|
3
|
+
import { writeFileInDir } from '../../../utils/file-writer.js';
|
|
4
|
+
import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
|
|
5
|
+
import { serializeTanStackStartShim } from './serialize-tanstack-start-shim.js';
|
|
6
|
+
export const pikkuTanStackStart = pikkuSessionlessFunc({
|
|
7
|
+
func: async ({ logger, config }) => {
|
|
8
|
+
const startServerFnsFile = config.clientFiles?.startServerFnsFile;
|
|
9
|
+
const rpcWiringsFile = config.clientFiles?.rpcWiringsFile;
|
|
10
|
+
const { packageMappings } = config;
|
|
11
|
+
if (!startServerFnsFile) {
|
|
12
|
+
logger.debug({
|
|
13
|
+
message: "Skipping generating TanStack Start shim since startServerFnsFile isn't set in the pikku config.",
|
|
14
|
+
type: 'skip',
|
|
15
|
+
});
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
if (!rpcWiringsFile) {
|
|
19
|
+
logger.warn("Skipping TanStack Start shim: startServerFnsFile is set but rpcWiringsFile is not — the shim imports the PikkuRPC class from rpcWiringsFile.");
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
const rpcWiringsPath = getFileImportRelativePath(startServerFnsFile, rpcWiringsFile, packageMappings);
|
|
23
|
+
const content = serializeTanStackStartShim(rpcWiringsPath);
|
|
24
|
+
await writeFileInDir(logger, startServerFnsFile, content);
|
|
25
|
+
},
|
|
26
|
+
middleware: [
|
|
27
|
+
logCommandInfoAndTime({
|
|
28
|
+
commandStart: 'Generating TanStack Start shim',
|
|
29
|
+
commandEnd: 'Generated TanStack Start shim',
|
|
30
|
+
}),
|
|
31
|
+
],
|
|
32
|
+
});
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Serialize the TanStack Start server-function shim.
|
|
3
|
+
*
|
|
4
|
+
* The "server function" is a Pikku function; this shim is a typed *caller* over
|
|
5
|
+
* the generated RPC map (`PikkuRPC`) for use in Start loaders, actions and
|
|
6
|
+
* components. The API base URL comes from `import.meta.env.VITE_API_URL` and the
|
|
7
|
+
* shim throws if it is unset — never hardcode a host.
|
|
8
|
+
*
|
|
9
|
+
* @param rpcWiringsPath - import path to the file exporting the `PikkuRPC` class
|
|
10
|
+
*/
|
|
11
|
+
export declare const serializeTanStackStartShim: (rpcWiringsPath: string) => string;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Serialize the TanStack Start server-function shim.
|
|
3
|
+
*
|
|
4
|
+
* The "server function" is a Pikku function; this shim is a typed *caller* over
|
|
5
|
+
* the generated RPC map (`PikkuRPC`) for use in Start loaders, actions and
|
|
6
|
+
* components. The API base URL comes from `import.meta.env.VITE_API_URL` and the
|
|
7
|
+
* shim throws if it is unset — never hardcode a host.
|
|
8
|
+
*
|
|
9
|
+
* @param rpcWiringsPath - import path to the file exporting the `PikkuRPC` class
|
|
10
|
+
*/
|
|
11
|
+
export const serializeTanStackStartShim = (rpcWiringsPath) => {
|
|
12
|
+
return `/**
|
|
13
|
+
* This file was generated by the @pikku/cli
|
|
14
|
+
*
|
|
15
|
+
* TanStack Start server-function shim. \`makeApi()\` returns a typed PikkuRPC
|
|
16
|
+
* caller; use it in loaders/actions/components, e.g.
|
|
17
|
+
*
|
|
18
|
+
* loader: () => makeApi().invoke('listCards', {})
|
|
19
|
+
*
|
|
20
|
+
* The API base URL is read from \`import.meta.env.VITE_API_URL\`.
|
|
21
|
+
*/
|
|
22
|
+
import { PikkuRPC } from '${rpcWiringsPath}'
|
|
23
|
+
|
|
24
|
+
export function makeApi(): PikkuRPC {
|
|
25
|
+
const serverUrl = import.meta.env.VITE_API_URL
|
|
26
|
+
if (!serverUrl) {
|
|
27
|
+
throw new Error(
|
|
28
|
+
'VITE_API_URL is not set — point it at the Pikku API base URL'
|
|
29
|
+
)
|
|
30
|
+
}
|
|
31
|
+
const rpc = new PikkuRPC()
|
|
32
|
+
rpc.setServerUrl(serverUrl)
|
|
33
|
+
return rpc
|
|
34
|
+
}
|
|
35
|
+
`;
|
|
36
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuWebSocketTyped: import("#pikku").PikkuFunctionConfig<void, void, "
|
|
1
|
+
export declare const pikkuWebSocketTyped: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuAIAgentTypes: import("#pikku").PikkuFunctionConfig<void, void, "
|
|
1
|
+
export declare const pikkuAIAgentTypes: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuAIAgent: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "
|
|
1
|
+
export declare const pikkuAIAgent: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -45,19 +45,10 @@ export const pikkuAIAgent = pikkuSessionlessFunc({
|
|
|
45
45
|
const importStatement = supportsImportAttributes
|
|
46
46
|
? `import metaData from '${jsonImportPath}' with { type: 'json' }`
|
|
47
47
|
: `import metaData from '${jsonImportPath}'`;
|
|
48
|
-
const modelConfigLines = [];
|
|
49
|
-
if (!addonName &&
|
|
50
|
-
(config.models || config.agentDefaults || config.agentOverrides)) {
|
|
51
|
-
modelConfigLines.push(`\npikkuState(null, 'models', 'config', ${JSON.stringify({
|
|
52
|
-
models: config.models,
|
|
53
|
-
agentDefaults: config.agentDefaults,
|
|
54
|
-
agentOverrides: config.agentOverrides,
|
|
55
|
-
})} as any)`);
|
|
56
|
-
}
|
|
57
48
|
await writeFileInDir(logger, agentWiringMetaFile, `import { pikkuState } from '@pikku/core/internal'
|
|
58
49
|
import type { AIAgentMeta } from '@pikku/core/ai-agent'
|
|
59
50
|
${importStatement}
|
|
60
|
-
pikkuState(${addonName ? `'${addonName}'` : 'null'}, 'agent', 'agentsMeta', metaData.agentsMeta as AIAgentMeta)
|
|
51
|
+
pikkuState(${addonName ? `'${addonName}'` : 'null'}, 'agent', 'agentsMeta', metaData.agentsMeta as AIAgentMeta)`);
|
|
61
52
|
await writeFileInDir(logger, agentMapDeclarationFile, serializeAgentMap(logger, agentMapDeclarationFile, packageMappings, functions.typesMap, agents.agentsMeta));
|
|
62
53
|
return true;
|
|
63
54
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuPublicAgent: import("#pikku").PikkuFunctionConfig<void, boolean, "
|
|
1
|
+
export declare const pikkuPublicAgent: import("#pikku").PikkuFunctionConfig<void, boolean, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, boolean, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
export const serializePublicAgent = (pathToPikkuTypes, requireAuth = true, globalHTTPPrefix = '') => {
|
|
2
2
|
const authFlag = requireAuth ? 'true' : 'false';
|
|
3
|
-
return `import {
|
|
3
|
+
return `import { MissingServiceError } from '@pikku/core/errors'
|
|
4
|
+
import { pikkuSessionlessFunc, defineHTTPRoutes, wireHTTPRoutes } from '${pathToPikkuTypes}'
|
|
4
5
|
|
|
5
6
|
export const agentCaller = pikkuSessionlessFunc<
|
|
6
7
|
{ agentName: string; message: string; threadId: string; resourceId: string },
|
|
7
8
|
unknown
|
|
8
9
|
>({
|
|
10
|
+
tags: ['pikku'],
|
|
9
11
|
auth: ${authFlag},
|
|
10
12
|
func: async (_services, data, { rpc }) => {
|
|
11
13
|
return await rpc.agent.run(data.agentName as any, {
|
|
@@ -20,6 +22,7 @@ export const agentStreamCaller = pikkuSessionlessFunc<
|
|
|
20
22
|
{ agentName: string; message: string; threadId: string; resourceId: string },
|
|
21
23
|
void
|
|
22
24
|
>({
|
|
25
|
+
tags: ['pikku'],
|
|
23
26
|
auth: ${authFlag},
|
|
24
27
|
func: async (_services, data, { rpc }) => {
|
|
25
28
|
await rpc.agent.stream(data.agentName as any, {
|
|
@@ -34,6 +37,7 @@ export const agentApproveCaller = pikkuSessionlessFunc<
|
|
|
34
37
|
{ agentName: string; runId: string; approvals: { toolCallId: string; approved: boolean }[] },
|
|
35
38
|
unknown
|
|
36
39
|
>({
|
|
40
|
+
tags: ['pikku'],
|
|
37
41
|
auth: ${authFlag},
|
|
38
42
|
func: async (_services, { runId, approvals, agentName }, { rpc }) => {
|
|
39
43
|
return await rpc.agent.approve(runId, approvals, agentName)
|
|
@@ -44,6 +48,7 @@ export const agentResumeCaller = pikkuSessionlessFunc<
|
|
|
44
48
|
{ agentName: string; runId: string; toolCallId: string; approved: boolean },
|
|
45
49
|
void
|
|
46
50
|
>({
|
|
51
|
+
tags: ['pikku'],
|
|
47
52
|
auth: ${authFlag},
|
|
48
53
|
func: async (_services, data, { rpc }) => {
|
|
49
54
|
await rpc.agent.resume(data.runId, {
|
|
@@ -53,6 +58,76 @@ export const agentResumeCaller = pikkuSessionlessFunc<
|
|
|
53
58
|
},
|
|
54
59
|
})
|
|
55
60
|
|
|
61
|
+
export const getAgentThreads = pikkuSessionlessFunc<
|
|
62
|
+
{ agentName?: string; resourceId?: string; limit?: number; offset?: number },
|
|
63
|
+
any[]
|
|
64
|
+
>({
|
|
65
|
+
tags: ['pikku', 'pikku:agent'],
|
|
66
|
+
title: 'Get Agent Threads',
|
|
67
|
+
description:
|
|
68
|
+
'Returns a list of AI agent threads from storage. Accepts optional filters: agentName, resourceId, limit, and offset for pagination.',
|
|
69
|
+
expose: true,
|
|
70
|
+
auth: ${authFlag},
|
|
71
|
+
func: async ({ agentRunService }, input) => {
|
|
72
|
+
if (!agentRunService) throw new MissingServiceError('agentRunService is not available')
|
|
73
|
+
return await agentRunService.listThreads({
|
|
74
|
+
agentName: input?.agentName,
|
|
75
|
+
resourceId: input?.resourceId,
|
|
76
|
+
limit: input?.limit,
|
|
77
|
+
offset: input?.offset,
|
|
78
|
+
})
|
|
79
|
+
},
|
|
80
|
+
})
|
|
81
|
+
|
|
82
|
+
export const getAgentThreadMessages = pikkuSessionlessFunc<
|
|
83
|
+
{ threadId: string; resourceId?: string },
|
|
84
|
+
any[]
|
|
85
|
+
>({
|
|
86
|
+
tags: ['pikku', 'pikku:agent'],
|
|
87
|
+
title: 'Get Agent Thread Messages',
|
|
88
|
+
description:
|
|
89
|
+
'Returns all messages for a given AI agent thread, ordered by creation time.',
|
|
90
|
+
expose: true,
|
|
91
|
+
auth: ${authFlag},
|
|
92
|
+
func: async ({ agentRunService }, input) => {
|
|
93
|
+
if (!agentRunService) throw new MissingServiceError('agentRunService is not available')
|
|
94
|
+
return await agentRunService.getThreadMessages(input.threadId)
|
|
95
|
+
},
|
|
96
|
+
})
|
|
97
|
+
|
|
98
|
+
export const getAgentThreadRuns = pikkuSessionlessFunc<
|
|
99
|
+
{ threadId: string; resourceId?: string },
|
|
100
|
+
any[]
|
|
101
|
+
>({
|
|
102
|
+
tags: ['pikku', 'pikku:agent'],
|
|
103
|
+
title: 'Get Agent Thread Runs',
|
|
104
|
+
description:
|
|
105
|
+
'Returns the run history for a given AI agent thread, ordered by creation time.',
|
|
106
|
+
expose: true,
|
|
107
|
+
auth: ${authFlag},
|
|
108
|
+
func: async ({ agentRunService }, input) => {
|
|
109
|
+
if (!agentRunService) throw new MissingServiceError('agentRunService is not available')
|
|
110
|
+
return await agentRunService.getThreadRuns(input.threadId)
|
|
111
|
+
},
|
|
112
|
+
})
|
|
113
|
+
|
|
114
|
+
export const deleteAgentThread = pikkuSessionlessFunc<
|
|
115
|
+
{ threadId: string; resourceId?: string },
|
|
116
|
+
{ deleted: boolean }
|
|
117
|
+
>({
|
|
118
|
+
tags: ['pikku', 'pikku:agent'],
|
|
119
|
+
title: 'Delete Agent Thread',
|
|
120
|
+
description:
|
|
121
|
+
'Deletes an AI agent thread and all of its persisted state.',
|
|
122
|
+
expose: true,
|
|
123
|
+
auth: ${authFlag},
|
|
124
|
+
func: async ({ agentRunService }, input) => {
|
|
125
|
+
if (!agentRunService) throw new MissingServiceError('agentRunService is not available')
|
|
126
|
+
const deleted = await agentRunService.deleteThread(input.threadId)
|
|
127
|
+
return { deleted }
|
|
128
|
+
},
|
|
129
|
+
})
|
|
130
|
+
|
|
56
131
|
export const agentRoutes = defineHTTPRoutes({
|
|
57
132
|
auth: ${authFlag},
|
|
58
133
|
tags: ['pikku:public'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuChannels: import("#pikku").PikkuFunctionConfig<void, void, "
|
|
1
|
+
export declare const pikkuChannels: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuChannelTypes: import("#pikku").PikkuFunctionConfig<void, void, "
|
|
1
|
+
export declare const pikkuChannelTypes: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuChannelsMap: import("#pikku").PikkuFunctionConfig<void, void, "
|
|
1
|
+
export declare const pikkuChannelsMap: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const
|
|
1
|
+
export declare const pikkuCommandChannels: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -4,7 +4,7 @@ import { writeFileInDir } from '../../../utils/file-writer.js';
|
|
|
4
4
|
import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
|
|
5
5
|
import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
|
|
6
6
|
import { stripVerboseFields, hasVerboseFields, } from '../../../utils/strip-verbose-meta.js';
|
|
7
|
-
export const
|
|
7
|
+
export const pikkuCommandChannels = pikkuSessionlessFunc({
|
|
8
8
|
func: async ({ logger, config, getInspectorState }) => {
|
|
9
9
|
const visitState = await getInspectorState();
|
|
10
10
|
const { channelsWiringFile, channelsWiringMetaFile, channelsWiringMetaJsonFile, packageMappings, schema, } = config;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuCLIEntry: import("#pikku").PikkuFunctionConfig<void,
|
|
1
|
+
export declare const pikkuCLIEntry: import("#pikku").PikkuFunctionConfig<void, boolean, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, boolean, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -12,6 +12,7 @@ import { ErrorCode } from '@pikku/inspector';
|
|
|
12
12
|
export const pikkuCLIEntry = pikkuSessionlessFunc({
|
|
13
13
|
func: async ({ logger, config, getInspectorState }) => {
|
|
14
14
|
const visitState = await getInspectorState();
|
|
15
|
+
let channelWireGenerated = false;
|
|
15
16
|
// Check if CLI entrypoints are configured
|
|
16
17
|
if (!config.cli?.entrypoints ||
|
|
17
18
|
Object.keys(config.cli.entrypoints).length === 0) {
|
|
@@ -19,7 +20,7 @@ export const pikkuCLIEntry = pikkuSessionlessFunc({
|
|
|
19
20
|
message: 'No CLI entrypoints configured in config.cli.entrypoints, skipping CLI bootstrap generation',
|
|
20
21
|
type: 'skip',
|
|
21
22
|
});
|
|
22
|
-
return;
|
|
23
|
+
return false;
|
|
23
24
|
}
|
|
24
25
|
// Generate bootstrap files for each configured entrypoint
|
|
25
26
|
for (const [programName, entrypointConfigs] of Object.entries(config.cli.entrypoints)) {
|
|
@@ -56,8 +57,9 @@ export const pikkuCLIEntry = pikkuSessionlessFunc({
|
|
|
56
57
|
`Move it to a source directory like "src/wirings/cli-channel.gen.ts".`);
|
|
57
58
|
}
|
|
58
59
|
const channelWireFile = resolvedWirePath;
|
|
59
|
-
const channelCode = serializeChannelCLI(programName, programMeta, channelWireFile, visitState.functions.files, config.packageMappings, config.channelsTypesFile, config.functionTypesFile, channelName, channelRoute, config.globalHTTPPrefix || '');
|
|
60
|
+
const channelCode = serializeChannelCLI(programName, programMeta, channelWireFile, visitState.functions.files, config.packageMappings, config.channelsTypesFile, config.functionTypesFile, channelName, channelRoute, config.globalHTTPPrefix || '', visitState.rpc?.wireAddonDeclarations);
|
|
60
61
|
await writeFileInDir(logger, channelWireFile, channelCode);
|
|
62
|
+
channelWireGenerated = true;
|
|
61
63
|
logger.debug(`Serialized CLI channel for ${programName}: ${channelWireFile}`);
|
|
62
64
|
// Generate client code if clientPath is provided
|
|
63
65
|
if (channelClientPath) {
|
|
@@ -117,6 +119,7 @@ export const pikkuCLIEntry = pikkuSessionlessFunc({
|
|
|
117
119
|
logger.debug(`Serialized CLI bootstrap for ${programName}: ${bootstrapFile}`);
|
|
118
120
|
}
|
|
119
121
|
}
|
|
122
|
+
return channelWireGenerated;
|
|
120
123
|
},
|
|
121
124
|
middleware: [
|
|
122
125
|
logCommandInfoAndTime({
|
|
@@ -1 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
type CLITypesCommandInput = {
|
|
2
|
+
bootstrap?: boolean;
|
|
3
|
+
};
|
|
4
|
+
export declare const pikkuCLITypes: import("#pikku").PikkuFunctionConfig<CLITypesCommandInput, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<CLITypesCommandInput, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<CLITypesCommandInput, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
5
|
+
export {};
|
|
@@ -5,9 +5,15 @@ import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-
|
|
|
5
5
|
import { serializeCLITypes } from './serialize-cli-types.js';
|
|
6
6
|
import { checkRequiredTypes } from '../../../utils/check-required-types.js';
|
|
7
7
|
export const pikkuCLITypes = pikkuSessionlessFunc({
|
|
8
|
-
func: async ({ logger, config, getInspectorState }) => {
|
|
8
|
+
func: async ({ logger, config, getInspectorState }, input) => {
|
|
9
9
|
const { cliTypesFile, functionTypesFile, packageMappings } = config;
|
|
10
|
-
const
|
|
10
|
+
const bootstrap = input?.bootstrap === true;
|
|
11
|
+
// In bootstrap mode we only need filesAndMethods (userSession/singleton
|
|
12
|
+
// services types) — skip schema generation. Full mode would dynamic-import
|
|
13
|
+
// pikku-types.gen.ts, which re-exports the not-yet-written cli-types file.
|
|
14
|
+
const visitState = bootstrap
|
|
15
|
+
? await getInspectorState(false, true, false)
|
|
16
|
+
: await getInspectorState();
|
|
11
17
|
const functionTypesImportPath = getFileImportRelativePath(cliTypesFile, functionTypesFile, packageMappings);
|
|
12
18
|
// Check for required types
|
|
13
19
|
checkRequiredTypes(visitState.filesAndMethodsErrors, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuCLI: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "
|
|
1
|
+
export declare const pikkuCLI: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -26,16 +26,27 @@ export function collectRendererNames(programMeta) {
|
|
|
26
26
|
}
|
|
27
27
|
return rendererNames;
|
|
28
28
|
}
|
|
29
|
+
/**
|
|
30
|
+
* Resolve a renderer name (e.g. `cli-render:kanban:list`) to the JS identifier
|
|
31
|
+
* actually imported into the client file. Returns null when the name has no
|
|
32
|
+
* importable binding so callers can skip it rather than emit invalid JS.
|
|
33
|
+
*/
|
|
34
|
+
function resolveRendererBinding(renderName, renderersMeta) {
|
|
35
|
+
return renderersMeta?.[renderName]?.exportedName ?? null;
|
|
36
|
+
}
|
|
29
37
|
/**
|
|
30
38
|
* Build a renderers map for CLI commands
|
|
31
39
|
*/
|
|
32
|
-
function buildRenderersMap(programMeta) {
|
|
40
|
+
function buildRenderersMap(programMeta, renderersMeta) {
|
|
33
41
|
const entries = [];
|
|
34
|
-
// Build map entries for each command that has
|
|
42
|
+
// Build map entries for each command that has an importable renderer
|
|
35
43
|
function addCommandRenderer(command, path) {
|
|
36
44
|
const commandId = path.join('.');
|
|
37
45
|
if (command.renderName) {
|
|
38
|
-
|
|
46
|
+
const binding = resolveRendererBinding(command.renderName, renderersMeta);
|
|
47
|
+
if (binding) {
|
|
48
|
+
entries.push(` '${commandId}': ${binding}`);
|
|
49
|
+
}
|
|
39
50
|
}
|
|
40
51
|
// Recursively process subcommands
|
|
41
52
|
if (command.subcommands) {
|
|
@@ -75,7 +86,11 @@ export function serializeChannelCLIClient(programName, programMeta, clientFile,
|
|
|
75
86
|
if (!importsByFile.has(relativePath)) {
|
|
76
87
|
importsByFile.set(relativePath, []);
|
|
77
88
|
}
|
|
78
|
-
importsByFile.get(relativePath)
|
|
89
|
+
const names = importsByFile.get(relativePath);
|
|
90
|
+
// Distinct renderer names can share an exported binding — import once.
|
|
91
|
+
if (!names.includes(meta.exportedName)) {
|
|
92
|
+
names.push(meta.exportedName);
|
|
93
|
+
}
|
|
79
94
|
}
|
|
80
95
|
}
|
|
81
96
|
// Generate import statements
|
|
@@ -83,11 +98,14 @@ export function serializeChannelCLIClient(programName, programMeta, clientFile,
|
|
|
83
98
|
rendererImports += `import { ${names.join(', ')} } from '${path}'\n`;
|
|
84
99
|
}
|
|
85
100
|
}
|
|
86
|
-
// Build renderers map
|
|
87
|
-
const renderersMap = buildRenderersMap(programMeta);
|
|
88
|
-
// Determine default renderer
|
|
89
|
-
const
|
|
90
|
-
?
|
|
101
|
+
// Build renderers map (keyed by command id → imported renderer binding)
|
|
102
|
+
const renderersMap = buildRenderersMap(programMeta, renderersMeta);
|
|
103
|
+
// Determine default renderer — only when it resolves to an imported binding
|
|
104
|
+
const defaultRendererBinding = programMeta.defaultRenderName
|
|
105
|
+
? resolveRendererBinding(programMeta.defaultRenderName, renderersMeta)
|
|
106
|
+
: null;
|
|
107
|
+
const defaultRendererCode = defaultRendererBinding
|
|
108
|
+
? `,\n defaultRenderer: ${defaultRendererBinding}`
|
|
91
109
|
: '';
|
|
92
110
|
return `
|
|
93
111
|
import { executeCLIViaChannel } from '@pikku/core/cli/channel'
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import type { CLIProgramMeta } from '@pikku/core/cli';
|
|
2
|
+
type WireAddonDeclarations = Map<string, {
|
|
3
|
+
package: string;
|
|
4
|
+
}>;
|
|
2
5
|
/**
|
|
3
6
|
* Serializes a wireChannel call from CLI metadata
|
|
4
7
|
* This creates a WebSocket backend for all CLI commands
|
|
@@ -6,4 +9,5 @@ import type { CLIProgramMeta } from '@pikku/core/cli';
|
|
|
6
9
|
export declare function serializeChannelCLI(programName: string, programMeta: CLIProgramMeta, channelFile: string, functionFiles: Map<string, {
|
|
7
10
|
path: string;
|
|
8
11
|
exportedName: string;
|
|
9
|
-
}>, packageMappings: Record<string, string>, channelTypesFile: string, functionTypesFile: string, channelName?: string, channelRoute?: string, globalHTTPPrefix?: string): string;
|
|
12
|
+
}>, packageMappings: Record<string, string>, channelTypesFile: string, functionTypesFile: string, channelName?: string, channelRoute?: string, globalHTTPPrefix?: string, wireAddonDeclarations?: WireAddonDeclarations): string;
|
|
13
|
+
export {};
|
|
@@ -3,7 +3,13 @@ import { getFileImportRelativePath } from '../../../utils/file-import-path.js';
|
|
|
3
3
|
* Serializes a wireChannel call from CLI metadata
|
|
4
4
|
* This creates a WebSocket backend for all CLI commands
|
|
5
5
|
*/
|
|
6
|
-
export function serializeChannelCLI(programName, programMeta, channelFile, functionFiles, packageMappings, channelTypesFile, functionTypesFile, channelName, channelRoute, globalHTTPPrefix = '') {
|
|
6
|
+
export function serializeChannelCLI(programName, programMeta, channelFile, functionFiles, packageMappings, channelTypesFile, functionTypesFile, channelName, channelRoute, globalHTTPPrefix = '', wireAddonDeclarations) {
|
|
7
|
+
const packageToNamespace = new Map();
|
|
8
|
+
if (wireAddonDeclarations) {
|
|
9
|
+
for (const [namespace, decl] of wireAddonDeclarations.entries()) {
|
|
10
|
+
packageToNamespace.set(decl.package, namespace);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
7
13
|
const finalChannelName = channelName || `${programName}-cli`;
|
|
8
14
|
const finalChannelRoute = channelRoute || `${globalHTTPPrefix}/cli/${programName}`;
|
|
9
15
|
// Flatten all commands into a single routing map
|
|
@@ -13,9 +19,13 @@ export function serializeChannelCLI(programName, programMeta, channelFile, funct
|
|
|
13
19
|
const fullPath = [...path, name];
|
|
14
20
|
const commandKey = fullPath.join('.');
|
|
15
21
|
if (cmd.pikkuFuncId) {
|
|
22
|
+
const addonNamespace = cmd.packageName
|
|
23
|
+
? packageToNamespace.get(cmd.packageName)
|
|
24
|
+
: undefined;
|
|
16
25
|
commandMap[commandKey] = {
|
|
17
26
|
pikkuFuncId: cmd.pikkuFuncId,
|
|
18
27
|
isAddon: !!cmd.packageName,
|
|
28
|
+
addonNamespace,
|
|
19
29
|
};
|
|
20
30
|
}
|
|
21
31
|
// Recursively process subcommands
|
|
@@ -113,9 +123,9 @@ wireChannel({
|
|
|
113
123
|
middleware: [cliCloseOnComplete],
|
|
114
124
|
},
|
|
115
125
|
${Object.entries(commandMap)
|
|
116
|
-
.map(([commandKey, { pikkuFuncId, isAddon }]) => {
|
|
126
|
+
.map(([commandKey, { pikkuFuncId, isAddon, addonNamespace }]) => {
|
|
117
127
|
const funcRef = isAddon
|
|
118
|
-
? `ref('${pikkuFuncId}')`
|
|
128
|
+
? `ref('${addonNamespace ? `${addonNamespace}:${pikkuFuncId}` : pikkuFuncId}')`
|
|
119
129
|
: (functionFiles.get(pikkuFuncId)?.exportedName ?? pikkuFuncId);
|
|
120
130
|
return ` '${commandKey}': {
|
|
121
131
|
func: ${funcRef},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuConsoleFunctions: import("#pikku").PikkuFunctionConfig<void, boolean, "
|
|
1
|
+
export declare const pikkuConsoleFunctions: import("#pikku").PikkuFunctionConfig<void, boolean, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, boolean, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -4,7 +4,11 @@ import { writeFileInDir } from '../../../utils/file-writer.js';
|
|
|
4
4
|
import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
|
|
5
5
|
import { serializeConsoleFunctions } from './serialize-console-functions.js';
|
|
6
6
|
export const pikkuConsoleFunctions = pikkuSessionlessFunc({
|
|
7
|
-
func: async ({ logger, config }) => {
|
|
7
|
+
func: async ({ logger, config, variables }) => {
|
|
8
|
+
const deployCodegenFlag = await variables.get('PIKKU_DEPLOY_CODEGEN');
|
|
9
|
+
if (deployCodegenFlag === '1') {
|
|
10
|
+
return false;
|
|
11
|
+
}
|
|
8
12
|
if (config.scaffold?.console) {
|
|
9
13
|
const pathToPikkuTypes = getFileImportRelativePath(config.consoleFunctionsFile, config.typesDeclarationFile, config.packageMappings);
|
|
10
14
|
const pathToAgentTypes = getFileImportRelativePath(config.consoleFunctionsFile, config.agentTypesFile, config.packageMappings);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuNodeTypes: import("#pikku").PikkuFunctionConfig<void, void, "
|
|
1
|
+
export declare const pikkuNodeTypes: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuNodesMeta: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "
|
|
1
|
+
export declare const pikkuNodesMeta: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -7,6 +7,7 @@ export const pikkuConsoleSetSecret = pikkuSessionlessFunc<{
|
|
|
7
7
|
}, {
|
|
8
8
|
success: boolean
|
|
9
9
|
}>({
|
|
10
|
+
tags: ['pikku'],
|
|
10
11
|
description: 'Set the value of a secret',
|
|
11
12
|
expose: true,
|
|
12
13
|
auth: false,
|
|
@@ -20,6 +21,7 @@ export const pikkuConsoleGetVariable = pikkuSessionlessFunc<
|
|
|
20
21
|
{ variableId: string },
|
|
21
22
|
{ exists: boolean; value: unknown | null }
|
|
22
23
|
>({
|
|
24
|
+
tags: ['pikku'],
|
|
23
25
|
description: 'Get the current value of a variable',
|
|
24
26
|
expose: true,
|
|
25
27
|
auth: false,
|
|
@@ -42,6 +44,7 @@ export const pikkuConsoleSetVariable = pikkuSessionlessFunc<
|
|
|
42
44
|
{ variableId: string; value: unknown },
|
|
43
45
|
{ success: boolean }
|
|
44
46
|
>({
|
|
47
|
+
tags: ['pikku'],
|
|
45
48
|
description: 'Set the value of a variable',
|
|
46
49
|
expose: true,
|
|
47
50
|
auth: false,
|
|
@@ -59,6 +62,7 @@ export const pikkuConsoleHasSecret = pikkuSessionlessFunc<
|
|
|
59
62
|
{ secretId: string },
|
|
60
63
|
{ exists: boolean }
|
|
61
64
|
>({
|
|
65
|
+
tags: ['pikku'],
|
|
62
66
|
description: 'Check if a secret exists without reading its value',
|
|
63
67
|
expose: true,
|
|
64
68
|
auth: false,
|
|
@@ -72,6 +76,7 @@ export const pikkuConsoleGetSecret = pikkuSessionlessFunc<
|
|
|
72
76
|
{ secretId: string },
|
|
73
77
|
{ exists: boolean; value: unknown | null }
|
|
74
78
|
>({
|
|
79
|
+
tags: ['pikku'],
|
|
75
80
|
description: 'Get the current value of a secret',
|
|
76
81
|
expose: true,
|
|
77
82
|
auth: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuCredentials: import("#pikku").PikkuFunctionConfig<void, void, "
|
|
1
|
+
export declare const pikkuCredentials: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1 +1,5 @@
|
|
|
1
|
-
|
|
1
|
+
type AddonTypesCommandInput = {
|
|
2
|
+
bootstrap?: boolean;
|
|
3
|
+
};
|
|
4
|
+
export declare const pikkuAddonTypes: import("#pikku").PikkuFunctionConfig<AddonTypesCommandInput, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<AddonTypesCommandInput, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<AddonTypesCommandInput, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
5
|
+
export {};
|
|
@@ -5,12 +5,17 @@ import { writeFileInDir } from '../../../utils/file-writer.js';
|
|
|
5
5
|
import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-time.js';
|
|
6
6
|
import { serializeAddonTypes } from './serialize-addon-types.js';
|
|
7
7
|
export const pikkuAddonTypes = pikkuSessionlessFunc({
|
|
8
|
-
func: async ({ logger, config, getInspectorState }) => {
|
|
8
|
+
func: async ({ logger, config, getInspectorState }, input) => {
|
|
9
9
|
if (!config.addon) {
|
|
10
10
|
return;
|
|
11
11
|
}
|
|
12
|
-
const visitState = await getInspectorState();
|
|
13
12
|
const { addonTypesFile, packageMappings, servicesFile, secretsFile, credentialsFile, variablesFile, } = config;
|
|
13
|
+
const bootstrap = input?.bootstrap === true;
|
|
14
|
+
if (bootstrap) {
|
|
15
|
+
await writeFileInDir(logger, addonTypesFile, 'export {}\n');
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const visitState = await getInspectorState();
|
|
14
19
|
checkRequiredTypes(visitState.filesAndMethodsErrors, {
|
|
15
20
|
singletonServicesType: true,
|
|
16
21
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuFunctionTypesSplit: import("#pikku").PikkuFunctionConfig<void, void, "
|
|
1
|
+
export declare const pikkuFunctionTypesSplit: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -6,7 +6,7 @@ import { logCommandInfoAndTime } from '../../../middleware/log-command-info-and-
|
|
|
6
6
|
import { serializeFunctionTypes } from './serialize-function-types.js';
|
|
7
7
|
export const pikkuFunctionTypesSplit = pikkuSessionlessFunc({
|
|
8
8
|
func: async ({ logger, config, getInspectorState }) => {
|
|
9
|
-
const visitState = await getInspectorState();
|
|
9
|
+
const visitState = await getInspectorState(false, true);
|
|
10
10
|
const { functionTypesFile, packageMappings, rpcInternalMapDeclarationFile, servicesFile, } = config;
|
|
11
11
|
// Check for required types
|
|
12
12
|
checkRequiredTypes(visitState.filesAndMethodsErrors, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuFunctionTypes: import("#pikku").PikkuFunctionConfig<void, void, "
|
|
1
|
+
export declare const pikkuFunctionTypes: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuFunctions: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "
|
|
1
|
+
export declare const pikkuFunctions: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export declare const serializeServicesMap: (allSingletonServices: string[], allWireServices: string[], requiredServices: Set<string>, forceRequiredServices: string[] | undefined, servicesImport: string, wireServicesImport: string, addonRequiredParentServices?: string[]) => string;
|
|
2
|
-
export declare const pikkuServices: import("#pikku").PikkuFunctionConfig<void, void, "
|
|
2
|
+
export declare const pikkuServices: import("#pikku").PikkuFunctionConfig<void, void, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, void, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, void, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const pikkuSchemas: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "
|
|
1
|
+
export declare const pikkuSchemas: import("#pikku").PikkuFunctionConfig<void, boolean | undefined, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<void, boolean | undefined, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<void, boolean | undefined, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
|