neon 8.13.1 → 8.14.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.
- package/README.md +2 -0
- package/dist/_chunks/{api-GbEaBZJ5.js → api-1MKsfpY3.js} +2 -3
- package/dist/_chunks/{api_keys-CNnnugbQ.js → api_keys-6Xnxl7a8.js} +2 -3
- package/dist/_chunks/{ask-DVwy0eUL.js → ask-Xlek1Pxh.js} +2 -3
- package/dist/_chunks/{auth-CIUtXByB.js → auth-DPSDYYtG.js} +6 -7
- package/dist/_chunks/{auth_selection-YX5_KZgD.js → auth_selection-CwGLN9Qz.js} +2 -3
- package/dist/_chunks/{bootstrap-wPZWa1sT.js → bootstrap-BDkvsAVJ.js} +2 -3
- package/dist/_chunks/{branches-BNa1xX1L.js → branches-Bp-5z1lM.js} +2 -3
- package/dist/_chunks/{bucket-BCdryTkD.js → bucket-D06bvDSa.js} +2 -3
- package/dist/_chunks/{checkout-CXIOydqZ.js → checkout-C6VMMgY6.js} +5 -6
- package/dist/_chunks/{claim-DqAvAvDm.js → claim-DlLZmcq0.js} +4 -5
- package/dist/_chunks/{cmd_pipeline-CEk93dGN.js → cmd_pipeline-BDE-TGto.js} +3 -6
- package/dist/_chunks/{config-BH_qRHiG.js → config-7SIE_C5O.js} +3 -4
- package/dist/_chunks/{connection_string-DB4awPzZ.js → connection_string-C9e7N4xk.js} +3 -4
- package/dist/_chunks/{credential_io-BS-0Pmwc.js → credential_io-DbeSh3Pl.js} +6 -9
- package/dist/_chunks/{credentials-BSjE9fRR.js → credentials-BMBNmW0t.js} +2 -3
- package/dist/_chunks/{data_api-Djxj5ZQD.js → data_api-CHDwvMTG.js} +2 -3
- package/dist/_chunks/{databases-Dok4wru7.js → databases-DC2h6IW2.js} +2 -3
- package/dist/_chunks/{deploy-D7B0Xfjg.js → deploy-DmKZcAnR.js} +3 -4
- package/dist/_chunks/{dev-CSvxAecE.js → dev-Dv0HKcFF.js} +7 -8
- package/dist/_chunks/{diff-DhxxbdQE.js → diff-dnxneH0u.js} +2 -3
- package/dist/_chunks/{docs-CrVybkTP.js → docs-CClmgj_Z.js} +2 -3
- package/dist/_chunks/{env-5HS5qQGd.js → env-BOt9AZ1j.js} +4 -5
- package/dist/_chunks/{env-BNm69Qh8.js → env-CIFMBEon.js} +3 -5
- package/dist/_chunks/{env-BpP3Dqpe.js → env-JgoSsmyt.js} +2 -3
- package/dist/_chunks/{feedback-CMayyTa8.js → feedback-mQmdTRFn.js} +2 -3
- package/dist/_chunks/{functions-Q0zuvtnk.js → functions-3ypiRwZK.js} +2 -3
- package/dist/_chunks/{git-H32TNt6M.js → git-Dxw9w9dK.js} +4 -5
- package/dist/_chunks/{init-BkA6RilG.js → init-BOOGv-mD.js} +2 -3
- package/dist/_chunks/{inspect-g0wekylj.js → inspect-yFAb61qo.js} +2 -3
- package/dist/_chunks/{ip_allow-5lLFvIuE.js → ip_allow-DBdxNEUa.js} +2 -3
- package/dist/_chunks/{link-BgtkOBws.js → link-CcwTXRny.js} +6 -7
- package/dist/_chunks/{logs-DWkpjzIH.js → logs-BB4uvblR.js} +2 -3
- package/dist/_chunks/{mcp-Bo-7TKc7.js → mcp-BznTRK3w.js} +2 -3
- package/dist/_chunks/{neon_auth-DpF83S24.js → neon_auth-Dw-ucM5Y.js} +102 -28
- package/dist/_chunks/{open-CX3BT3Tp.js → open-T2nI89Oh.js} +2 -3
- package/dist/_chunks/{operations-D4I-AxVs.js → operations-CzaR_uqx.js} +2 -3
- package/dist/_chunks/{orgs-xGfANwHQ.js → orgs-Dpbr-K0A.js} +2 -3
- package/dist/_chunks/{paths-DMq0Lt7a.js → paths-B55ZfOg1.js} +1 -2
- package/dist/_chunks/{plugins-DqD7BDO1.js → plugins-CKOcBuuP.js} +3 -4
- package/dist/_chunks/{profile-yXOiKk9R.js → profile-H0d7gFrX.js} +9 -10
- package/dist/_chunks/{profiles-DIB1av2Q.js → profiles-DTazQtjK.js} +4 -6
- package/dist/_chunks/{projects-BwI2Uo0z.js → projects-a3X4OFEJ.js} +2 -3
- package/dist/_chunks/{psql-BM-doe8e.js → psql-Bce4X0NG.js} +3 -4
- package/dist/_chunks/{psql-BNljLda2.js → psql-DwGeP0IV.js} +2 -4
- package/dist/_chunks/{realtime-BRqIyGR-.js → realtime-BwtzYf5a.js} +2 -3
- package/dist/_chunks/{roles-C3M4q9DS.js → roles-Bd9r8_pX.js} +1 -2
- package/dist/_chunks/{roles-B4w3YT_7.js → roles-xRuu0462.js} +2 -3
- package/dist/_chunks/{rolldown-runtime-8H4AJuhK.js → rolldown-runtime-BJohB4LM.js} +1 -2
- package/dist/_chunks/{secure_file-BucZj4yQ.js → secure_file-Caskdohg.js} +1 -2
- package/dist/_chunks/{set_context-DbrwoImy.js → set_context-ompB6d2D.js} +2 -3
- package/dist/_chunks/{skills-BP6pIm7O.js → skills-DKgafm65.js} +2 -3
- package/dist/_chunks/{snapshots-RJBzW8GM.js → snapshots-DxNhjcco.js} +3 -4
- package/dist/_chunks/{status-DV8Z2kw3.js → status-DS_yUXFo.js} +3 -4
- package/dist/_chunks/{triggers-BrRo1z4b.js → triggers-BfvyeJUC.js} +2 -3
- package/dist/_chunks/{user-dlOGXbX9.js → user-D9mC430O.js} +2 -3
- package/dist/_chunks/{vpc_endpoints-CNb0YfMo.js → vpc_endpoints-C-Y4WK2M.js} +3 -4
- package/dist/_shared/auth_selection.js +1 -2
- package/dist/_shared/credentials.js +1 -2
- package/dist/_shared/paths.js +1 -2
- package/dist/_shared/profiles.js +1 -2
- package/dist/_shared/secure_file.js +1 -2
- package/dist/analytics.js +4 -5
- package/dist/anonymous_id.js +2 -3
- package/dist/api.js +1 -2
- package/dist/auth.js +1 -2
- package/dist/auth_context.js +1 -2
- package/dist/auth_recovery.js +3 -4
- package/dist/claimable/api.js +1 -2
- package/dist/claimable/state.js +2 -3
- package/dist/cli.js +1 -2
- package/dist/commands/api.js +1 -1
- package/dist/commands/api_keys.js +1 -1
- package/dist/commands/ask.js +1 -1
- package/dist/commands/ask_sse.js +1 -2
- package/dist/commands/auth.js +1 -1
- package/dist/commands/bootstrap.js +1 -1
- package/dist/commands/branches.js +1 -1
- package/dist/commands/bucket.js +1 -1
- package/dist/commands/checkout.js +1 -1
- package/dist/commands/claim.js +1 -1
- package/dist/commands/config.js +1 -1
- package/dist/commands/connection_string.js +1 -1
- package/dist/commands/credentials.js +1 -1
- package/dist/commands/data_api.js +1 -1
- package/dist/commands/databases.js +1 -1
- package/dist/commands/deploy.js +1 -1
- package/dist/commands/deploy_help.js +1 -2
- package/dist/commands/dev.js +1 -1
- package/dist/commands/diff.js +1 -1
- package/dist/commands/docs.js +1 -1
- package/dist/commands/env.js +1 -1
- package/dist/commands/env_output.js +2 -3
- package/dist/commands/feedback.js +1 -1
- package/dist/commands/functions.js +1 -1
- package/dist/commands/functions_new.js +2 -3
- package/dist/commands/git.js +1 -1
- package/dist/commands/index.js +46 -47
- package/dist/commands/init.js +1 -1
- package/dist/commands/inspect.js +1 -1
- package/dist/commands/ip_allow.js +1 -1
- package/dist/commands/link.js +1 -1
- package/dist/commands/link_output.js +1 -2
- package/dist/commands/logs.js +1 -1
- package/dist/commands/manifest.js +1 -2
- package/dist/commands/mcp.js +1 -1
- package/dist/commands/neon_auth.js +1 -1
- package/dist/commands/open.js +1 -1
- package/dist/commands/operations.js +1 -1
- package/dist/commands/orgs.js +1 -1
- package/dist/commands/plugins.js +1 -1
- package/dist/commands/profile.js +1 -1
- package/dist/commands/projects.js +1 -1
- package/dist/commands/psql.js +1 -1
- package/dist/commands/realtime.js +1 -1
- package/dist/commands/roles.js +1 -1
- package/dist/commands/schema_diff.js +1 -2
- package/dist/commands/set_context.js +1 -1
- package/dist/commands/skills.js +1 -1
- package/dist/commands/snapshots.js +1 -1
- package/dist/commands/status.js +1 -1
- package/dist/commands/subscribe.js +2 -3
- package/dist/commands/thinking_spinner.js +1 -2
- package/dist/commands/triggers.js +1 -1
- package/dist/commands/user.js +1 -1
- package/dist/commands/vpc_endpoints.js +1 -1
- package/dist/config.js +2 -3
- package/dist/config_edit.js +1 -2
- package/dist/config_format.js +1 -2
- package/dist/config_services.js +1 -2
- package/dist/config_source.js +1 -2
- package/dist/config_template.js +1 -2
- package/dist/context.js +1 -2
- package/dist/credential_io.js +1 -1
- package/dist/current_branch_fast_path.js +1 -2
- package/dist/custom_domains_api.js +1 -2
- package/dist/dev/env.js +1 -1
- package/dist/dev/functions.js +1 -2
- package/dist/dev/inputs.js +1 -2
- package/dist/dev/runtime.js +1 -2
- package/dist/dev/websocket.js +1 -2
- package/dist/env.js +1 -2
- package/dist/env_file.js +1 -2
- package/dist/env_services.js +2 -3
- package/dist/error_reporting.js +80 -160
- package/dist/errors.js +1 -2
- package/dist/functions/registry.js +1 -2
- package/dist/functions/scaffold.js +1 -2
- package/dist/functions/source.js +1 -2
- package/dist/functions_api.js +1 -2
- package/dist/help.js +1 -2
- package/dist/human_table.js +1 -2
- package/dist/index.js +3 -4
- package/dist/init/agents.js +1 -2
- package/dist/init/auth.js +5 -6
- package/dist/init/bootstrap.js +1 -2
- package/dist/init/build_config.js +1 -2
- package/dist/init/cancelled.js +1 -2
- package/dist/init/choices.js +2 -3
- package/dist/init/chrome.js +1 -2
- package/dist/init/copy.js +13 -3
- package/dist/init/detect.js +4 -5
- package/dist/init/detect_host.js +1 -2
- package/dist/init/funnel.js +63 -16
- package/dist/init/link.js +4 -5
- package/dist/init/mode.js +1 -2
- package/dist/init/plan.js +1 -2
- package/dist/init/run.js +152 -98
- package/dist/init/template_title.js +1 -2
- package/dist/init/tooling.js +6 -7
- package/dist/init/wizard.js +1 -2
- package/dist/keyring.js +1 -2
- package/dist/log.js +1 -2
- package/dist/mcp/agents.js +1 -2
- package/dist/mcp/install.js +1 -2
- package/dist/mcp/mint.js +2 -3
- package/dist/mcp/plan.js +1 -2
- package/dist/mcp/targets.js +1 -2
- package/dist/mcp/wizard.js +1 -2
- package/dist/neon_services.js +1 -2
- package/dist/node_version.js +1 -2
- package/dist/notices.js +1 -2
- package/dist/parameters.gen.js +1 -2
- package/dist/pkg.js +1 -2
- package/dist/plugins/plan.js +1 -2
- package/dist/plugins/run.js +1 -2
- package/dist/plugins/targets.js +1 -2
- package/dist/profile_keys.js +1 -2
- package/dist/project.js +1 -2
- package/dist/psql/cli.js +2 -3
- package/dist/psql/command/cmd_cond.js +1 -2
- package/dist/psql/command/cmd_connect.js +1 -2
- package/dist/psql/command/cmd_copy.js +2 -3
- package/dist/psql/command/cmd_describe.js +1 -2
- package/dist/psql/command/cmd_format.js +1 -2
- package/dist/psql/command/cmd_io.js +1 -1
- package/dist/psql/command/cmd_lo.js +1 -2
- package/dist/psql/command/cmd_meta.js +1 -2
- package/dist/psql/command/cmd_misc.js +1 -2
- package/dist/psql/command/cmd_pipeline.js +1 -1
- package/dist/psql/command/cmd_restrict.js +1 -2
- package/dist/psql/command/cmd_show.js +1 -2
- package/dist/psql/command/dispatch.js +2 -3
- package/dist/psql/command/inputQueue.js +1 -2
- package/dist/psql/command/shared.js +1 -2
- package/dist/psql/complete/filenames.js +1 -2
- package/dist/psql/complete/index.js +1 -2
- package/dist/psql/complete/matcher.js +1 -2
- package/dist/psql/complete/psqlVars.js +1 -2
- package/dist/psql/complete/queries.js +1 -2
- package/dist/psql/complete/rules.js +1 -2
- package/dist/psql/core/common.js +1 -1
- package/dist/psql/core/help.js +1 -2
- package/dist/psql/core/mainloop.js +2 -3
- package/dist/psql/core/prompt.js +1 -2
- package/dist/psql/core/settings.js +1 -2
- package/dist/psql/core/sqlHelp.js +1 -2
- package/dist/psql/core/startup.js +1 -1
- package/dist/psql/core/syncVars.js +1 -2
- package/dist/psql/core/variables.js +1 -2
- package/dist/psql/describe/formatters.js +1 -2
- package/dist/psql/describe/processNamePattern.js +1 -2
- package/dist/psql/describe/queries.js +1 -2
- package/dist/psql/describe/versionGate.js +1 -2
- package/dist/psql/index.js +1 -1
- package/dist/psql/io/history.js +1 -2
- package/dist/psql/io/input.js +1 -2
- package/dist/psql/io/lineEditor/buffer.js +1 -2
- package/dist/psql/io/lineEditor/complete.js +1 -2
- package/dist/psql/io/lineEditor/filename.js +1 -2
- package/dist/psql/io/lineEditor/index.js +1 -2
- package/dist/psql/io/lineEditor/keymap.js +1 -2
- package/dist/psql/io/lineEditor/vt100.js +1 -2
- package/dist/psql/io/pgpass.js +1 -2
- package/dist/psql/io/pgservice.js +1 -2
- package/dist/psql/io/psqlrc.js +2 -3
- package/dist/psql/print/aligned.js +1 -2
- package/dist/psql/print/asciidoc.js +1 -2
- package/dist/psql/print/crosstab.js +1 -2
- package/dist/psql/print/csv.js +1 -2
- package/dist/psql/print/html.js +1 -2
- package/dist/psql/print/json.js +1 -2
- package/dist/psql/print/latex.js +1 -2
- package/dist/psql/print/pager.js +1 -2
- package/dist/psql/print/troff.js +1 -2
- package/dist/psql/print/unaligned.js +1 -2
- package/dist/psql/print/units.js +1 -2
- package/dist/psql/scanner/slash.js +1 -2
- package/dist/psql/scanner/sql.js +1 -2
- package/dist/psql/scanner/stringutils.js +1 -2
- package/dist/psql/types/scanner.js +1 -2
- package/dist/psql/wire/connection.js +1 -2
- package/dist/psql/wire/copy.js +1 -2
- package/dist/psql/wire/notify.js +1 -2
- package/dist/psql/wire/pipeline.js +1 -2
- package/dist/psql/wire/protocol.js +1 -2
- package/dist/psql/wire/sasl.js +1 -2
- package/dist/psql/wire/tls.js +1 -2
- package/dist/refresh_lock.js +1 -2
- package/dist/retire_credential.js +2 -3
- package/dist/skills/catalog.js +1 -2
- package/dist/skills/check_worker.js +1 -2
- package/dist/skills/freshness.js +1 -2
- package/dist/skills/plan.js +1 -2
- package/dist/skills/run.js +1 -2
- package/dist/skills/targets.js +1 -2
- package/dist/skills/wizard.js +1 -2
- package/dist/sso_recovery.js +1 -2
- package/dist/storage_api.js +1 -2
- package/dist/test_utils/fixtures.js +1 -2
- package/dist/test_utils/neon_api_server.js +1 -2
- package/dist/test_utils/npm_env.js +1 -2
- package/dist/test_utils/oauth_server.js +1 -2
- package/dist/test_utils/project_dir.js +1 -2
- package/dist/test_utils/registry.js +1 -2
- package/dist/test_utils/rotating_oauth_server.js +1 -2
- package/dist/update_check_worker.js +1 -2
- package/dist/update_notifier.js +1 -2
- package/dist/utils/agent_flag.js +1 -2
- package/dist/utils/agent_picker.js +1 -2
- package/dist/utils/ai_gateway_notice.js +1 -2
- package/dist/utils/api_enums.js +3 -3
- package/dist/utils/auth.js +1 -2
- package/dist/utils/branch_name.js +1 -2
- package/dist/utils/branch_notice.js +1 -2
- package/dist/utils/branch_picker.js +1 -2
- package/dist/utils/cli_name.js +1 -2
- package/dist/utils/compute_units.js +1 -2
- package/dist/utils/config_diff.js +1 -2
- package/dist/utils/enrichers.js +1 -2
- package/dist/utils/esbuild.js +1 -2
- package/dist/utils/flags.js +1 -2
- package/dist/utils/formats.js +1 -2
- package/dist/utils/function_slug.js +1 -2
- package/dist/utils/git.js +1 -2
- package/dist/utils/git_diff.js +1 -2
- package/dist/utils/help_text.js +1 -2
- package/dist/utils/hooks.js +2 -3
- package/dist/utils/inspect_db.js +3 -4
- package/dist/utils/inspect_queries.js +1 -2
- package/dist/utils/json_file.js +1 -2
- package/dist/utils/middlewares.js +2 -3
- package/dist/utils/openapi.js +1 -2
- package/dist/utils/package_manager.js +1 -2
- package/dist/utils/point_in_time.js +1 -2
- package/dist/utils/psql.js +1 -2
- package/dist/utils/repeated_flags.js +1 -2
- package/dist/utils/service_picker.js +1 -2
- package/dist/utils/staging.js +1 -2
- package/dist/utils/string.js +1 -2
- package/dist/utils/ui.js +1 -2
- package/dist/utils/write_sync.js +1 -2
- package/dist/utils/zip.js +1 -2
- package/dist/vendor/postgres-meta/constants.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMeta.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaColumnPrivileges.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaColumns.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaConfig.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaExtensions.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaForeignTables.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaFunctions.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaIndexes.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaMaterializedViews.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaPolicies.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaPublications.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaRelationships.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaRoles.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaSchemas.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaTablePrivileges.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaTables.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaTriggers.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaTypes.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaVersion.js +1 -2
- package/dist/vendor/postgres-meta/lib/PostgresMetaViews.js +1 -2
- package/dist/vendor/postgres-meta/lib/constants.js +1 -2
- package/dist/vendor/postgres-meta/lib/db.js +1 -2
- package/dist/vendor/postgres-meta/lib/generators.js +1 -2
- package/dist/vendor/postgres-meta/lib/helpers.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/column_privileges.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/columns.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/config.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/extensions.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/foreign_tables.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/functions.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/indexes.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/materialized_views.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/policies.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/publications.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/roles.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/schemas.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/table.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/table_privileges.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/table_relationships.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/triggers.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/types.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/version.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/views.sql.js +1 -2
- package/dist/vendor/postgres-meta/lib/sql/views_key_dependencies.sql.js +1 -2
- package/dist/vendor/postgres-meta/templates/typescript.js +1 -2
- package/dist/writer.js +1 -2
- package/package.json +6 -6
package/dist/init/run.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { log } from "../log.js";
|
|
2
|
-
import { r as defaultDir } from "../_chunks/paths-
|
|
2
|
+
import { r as defaultDir } from "../_chunks/paths-B55ZfOg1.js";
|
|
3
3
|
import "../config.js";
|
|
4
4
|
import { contextBranch, readContextFile } from "../context.js";
|
|
5
5
|
import { recordCommandSuccessExtras, takeCommandSuccessExtras } from "../analytics.js";
|
|
@@ -15,23 +15,23 @@ import { missingPluginsCommands, pluginsInstallableAgents } from "../plugins/tar
|
|
|
15
15
|
import { skillsInstallableAgents } from "../skills/targets.js";
|
|
16
16
|
import { FALLBACK_SKILLS_AGENTS, assertNamedAgentTooling, funnelAgentSetup, planInitToolingSteps, recommendedTooling, resolveNamedAgents, splitInitTooling } from "./plan.js";
|
|
17
17
|
import { inferPackageManager, resolvePackageManager } from "../utils/package_manager.js";
|
|
18
|
-
import { CANCELLED_BODY, CLAIMABLE_ACCOUNT_FLAGS, CLAIMABLE_ALREADY_LINKED, CLAIMABLE_MCP_API_KEY, CLAIMABLE_NO_LINK, MCP_API_KEY_NEEDS_AUTH, MCP_SCOPED_NEEDS_PROJECT, NON_TTY_LINK_NEEDS_AUTH, NO_AGENTS_FALLBACK_STATUS, PROGRESS, PROJECT_PINNED_OFFLINE, claimableNext, claimableThenServicesNext, configInitNext, envPullFailedNext, existingConfigNext, installFailedNext, mcpAfterLinkNext, mcpConfigLocationSkipped, mcpConfigLocationUnavailable, mcpKeyFailedNext, namedAgentsUnavailable, newConfigNext, offlinePinNext, skippedLinkNext, unattendedUnauthedNext } from "./copy.js";
|
|
18
|
+
import { AGENTS_NOT_INSTALLED, CANCELLED_BODY, CLAIMABLE_ACCOUNT_FLAGS, CLAIMABLE_ALREADY_LINKED, CLAIMABLE_MCP_API_KEY, CLAIMABLE_NO_LINK, MCP_API_KEY_NEEDS_AUTH, MCP_SCOPED_NEEDS_PROJECT, NON_TTY_LINK_NEEDS_AUTH, NO_AGENTS_FALLBACK_STATUS, PROGRESS, PROJECT_PINNED_OFFLINE, claimableNext, claimableThenServicesNext, configInitNext, envPullFailedNext, existingConfigNext, installFailedNext, mcpAfterLinkNext, mcpConfigLocationSkipped, mcpConfigLocationUnavailable, mcpKeyFailedNext, namedAgentsUnavailable, newConfigNext, offlinePinNext, skippedLinkNext, toolingFailedNext, unattendedUnauthedNext } from "./copy.js";
|
|
19
19
|
import { agentsRowValue, configRowValue, formatInitDone, headingForKind, printInitBanner, printInitDone, printInitProgress, projectRowValue, shouldPrintInitBanner } from "./chrome.js";
|
|
20
|
-
import { h as initCmd, t as ConfigInstallFailed } from "../_chunks/config-
|
|
21
|
-
import { o as quoteFlagValue, s as runLink } from "../_chunks/link-
|
|
20
|
+
import { h as initCmd, t as ConfigInstallFailed } from "../_chunks/config-7SIE_C5O.js";
|
|
21
|
+
import { o as quoteFlagValue, s as runLink } from "../_chunks/link-CcwTXRny.js";
|
|
22
22
|
import { runAuthenticatedLink } from "./link.js";
|
|
23
23
|
import { CannotMintApiKeyError } from "../mcp/mint.js";
|
|
24
24
|
import { pullInitEnv } from "./auth.js";
|
|
25
25
|
import { InitCancelled, raceSigint, restoreCursor } from "./cancelled.js";
|
|
26
26
|
import { pickAgentSetupInteractively, pickInitAgentsInteractively, pickInitConfigInteractively, pickInitMcpAuthInteractively, pickInitMcpConfigLocationInteractively, pickInitModeInteractively, pickInitPackageManagerInteractively, pickInitProjectSetupInteractively, pickInitServicesInteractively, pickInitSkillsInteractively } from "./wizard.js";
|
|
27
|
-
import { runToolingSteps } from "./tooling.js";
|
|
28
|
-
import { l as create } from "../_chunks/claim-
|
|
27
|
+
import { runToolingSteps, toolingStepCommandText } from "./tooling.js";
|
|
28
|
+
import { l as create } from "../_chunks/claim-DlLZmcq0.js";
|
|
29
29
|
import { INIT_CONFIG_SERVICES_CONFLICT, configPlanFromResolution, initEnvPullAfterConfig, resolveInitConfigChoice } from "./choices.js";
|
|
30
30
|
import { detectInitEnvironment } from "./detect.js";
|
|
31
|
-
import { createInitFunnel, emitInitStart, finishInitFunnel, initStartProperties } from "./funnel.js";
|
|
31
|
+
import { createInitFunnel, emitInitStart, finishInitFunnel, initStartProperties, recordInitError, recordInitExit } from "./funnel.js";
|
|
32
32
|
import { assertAgentSetupFlags, hasInitMcpFlags, inferInitAgentSetup, resolveInitMode } from "./mode.js";
|
|
33
33
|
import { resolve } from "node:path";
|
|
34
|
-
|
|
34
|
+
// src/init/run.ts
|
|
35
35
|
const isLinked = (contextFile) => {
|
|
36
36
|
const projectId = readContextFile(contextFile).projectId;
|
|
37
37
|
return typeof projectId === "string" && projectId.length > 0;
|
|
@@ -197,6 +197,8 @@ const runInit = async (props) => {
|
|
|
197
197
|
const funnel = createInitFunnel();
|
|
198
198
|
let outcome = "error";
|
|
199
199
|
let printed = false;
|
|
200
|
+
let step = "setup";
|
|
201
|
+
let deferredFailureNext = () => [];
|
|
200
202
|
try {
|
|
201
203
|
const detectOpts = {
|
|
202
204
|
cwd,
|
|
@@ -332,7 +334,23 @@ const runInit = async (props) => {
|
|
|
332
334
|
const mcpOauth = mcpAuth === "oauth";
|
|
333
335
|
const earlyTooling = delayMcp ? withoutMcp(tooling) : tooling;
|
|
334
336
|
const mcpState = {};
|
|
335
|
-
const
|
|
337
|
+
const toolingFailures = [];
|
|
338
|
+
const reportedTooling = () => {
|
|
339
|
+
const dropped = new Set(toolingFailures.map((failure) => failure.kind));
|
|
340
|
+
if (mcpState.error !== void 0 || mcpState.deferredPin !== void 0) dropped.add("mcp");
|
|
341
|
+
return withoutKinds(tooling, dropped);
|
|
342
|
+
};
|
|
343
|
+
const agentsRow = () => {
|
|
344
|
+
const reported = reportedTooling();
|
|
345
|
+
return toolingFailures.length > 0 && reported.setup === "skip" ? AGENTS_NOT_INSTALLED : agentsRowValue({
|
|
346
|
+
tooling: reported,
|
|
347
|
+
installed: funnel.agentsInstalled
|
|
348
|
+
});
|
|
349
|
+
};
|
|
350
|
+
const toolingFailedNextLines = () => toolingFailedNext(toolingFailures.map((failure) => ({
|
|
351
|
+
kind: failure.kind,
|
|
352
|
+
command: failure.command
|
|
353
|
+
})));
|
|
336
354
|
const mcpCommand = (projectIdArg) => [
|
|
337
355
|
`${getCliName()} mcp -y`,
|
|
338
356
|
...mcpConfigLocation === "project" ? ["--project"] : [],
|
|
@@ -340,25 +358,35 @@ const runInit = async (props) => {
|
|
|
340
358
|
...("mcpAgents" in tooling ? tooling.mcpAgents : []).map((agent) => `--agent ${agent}`)
|
|
341
359
|
].join(" ");
|
|
342
360
|
const mcpFailedNext = () => mcpState.error === void 0 ? [] : mcpKeyFailedNext(mcpState.reason ?? "cannot-mint", mcpCommand(mcpState.pinId !== void 0 ? quoteFlagValue(mcpState.pinId) : void 0));
|
|
361
|
+
deferredFailureNext = () => joinNext(toolingFailedNextLines(), mcpFailedNext());
|
|
343
362
|
const mcpDeferredNext = () => mcpState.deferredPin === void 0 ? [] : mcpAfterLinkNext(`${mcpCommand(mcpState.deferredPin)}${mcpOauth ? " --oauth" : ""}`);
|
|
344
363
|
const runTooling = async (steps, plan) => {
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
364
|
+
for (const toolingStep of steps) {
|
|
365
|
+
let completed;
|
|
366
|
+
try {
|
|
367
|
+
completed = await runToolingSteps([toolingStep], {
|
|
368
|
+
cwd,
|
|
369
|
+
output: props.output,
|
|
370
|
+
auth,
|
|
371
|
+
operations: props.operations,
|
|
372
|
+
narrate: "human",
|
|
373
|
+
mcpOauthFallback: !mcpAuthChosen
|
|
374
|
+
});
|
|
375
|
+
} catch (error) {
|
|
376
|
+
if (error instanceof InitCancelled) throw error;
|
|
377
|
+
if (error instanceof CannotMintApiKeyError) {
|
|
378
|
+
mcpState.error = error;
|
|
379
|
+
mcpState.reason = "cannot-mint";
|
|
380
|
+
} else toolingFailures.push({
|
|
381
|
+
kind: toolingStep.kind,
|
|
382
|
+
command: `${getCliName()} ${toolingStepCommandText(toolingStep)}`,
|
|
383
|
+
error
|
|
384
|
+
});
|
|
385
|
+
recordInitError(funnel, toolingStep.kind, error);
|
|
386
|
+
continue;
|
|
387
|
+
}
|
|
388
|
+
if (completed.includes(toolingStep.kind)) funnel.agentsInstalled = uniqueAgents([...funnel.agentsInstalled, ...agentsForStep(plan, toolingStep.kind)]);
|
|
360
389
|
}
|
|
361
|
-
funnel.agentsInstalled = uniqueAgents([...funnel.agentsInstalled, ...agentsFromTooling(ran)]);
|
|
362
390
|
};
|
|
363
391
|
const toolingSteps = planInitToolingSteps({
|
|
364
392
|
tooling: earlyTooling,
|
|
@@ -370,6 +398,7 @@ const runInit = async (props) => {
|
|
|
370
398
|
...selectedSkills !== void 0 ? { skills: selectedSkills } : {}
|
|
371
399
|
});
|
|
372
400
|
if (toolingSteps.length > 0) await runTooling(toolingSteps, earlyTooling);
|
|
401
|
+
step = "link";
|
|
373
402
|
let projectSetup = "skip";
|
|
374
403
|
let claimExpiresAt;
|
|
375
404
|
const noLink = props.link === false;
|
|
@@ -419,6 +448,7 @@ const runInit = async (props) => {
|
|
|
419
448
|
};
|
|
420
449
|
if (usesMcp && mcpAuth === "api-key" && (projectSetup === "claimable" || props.claimable === true)) throw new Error(CLAIMABLE_MCP_API_KEY);
|
|
421
450
|
if (projectSetup === "claimable") {
|
|
451
|
+
step = "claimable";
|
|
422
452
|
printInitProgress(PROGRESS.claim);
|
|
423
453
|
await (props.createClaimable ?? defaultCreateClaimable)({
|
|
424
454
|
cwd,
|
|
@@ -432,12 +462,14 @@ const runInit = async (props) => {
|
|
|
432
462
|
funnel.link = "claimable";
|
|
433
463
|
claimExpiresAt = readLinkedClaimableCredentials(configDir, readContextFile(contextFile))?.expiresAt;
|
|
434
464
|
} else if (projectSetup === "link") {
|
|
465
|
+
step = "link";
|
|
435
466
|
printInitProgress(detection.authenticated ? PROGRESS.link : PROGRESS.auth);
|
|
436
467
|
await (props.linkProject ?? runAuthenticatedLink)(linkProps);
|
|
437
468
|
funnel.link = "linked";
|
|
438
469
|
}
|
|
439
470
|
const pinnedOffline = funnel.link === "skipped" && !noLink && linkInputs.orgId !== void 0 && linkInputs.projectId !== void 0 && linkInputs.branch !== void 0 && linkInputs.projectName === void 0 && linkInputs.regionId === void 0;
|
|
440
471
|
if (pinnedOffline) {
|
|
472
|
+
step = "link";
|
|
441
473
|
await runLink({
|
|
442
474
|
...linkProps,
|
|
443
475
|
checks: false,
|
|
@@ -449,9 +481,11 @@ const runInit = async (props) => {
|
|
|
449
481
|
else if (delayMcp && tooling.setup !== "skip" && mcpAuth === "api-key" && yes && !detection.authenticated) {
|
|
450
482
|
mcpState.error = new Error(MCP_API_KEY_NEEDS_AUTH);
|
|
451
483
|
mcpState.reason = "signed-out";
|
|
484
|
+
recordInitError(funnel, "mcp", mcpState.error);
|
|
452
485
|
const linkedId = readContextFile(contextFile).projectId;
|
|
453
486
|
if (props.mcpProjectScoped === true && typeof linkedId === "string") mcpState.pinId = linkedId;
|
|
454
487
|
} else if (delayMcp && tooling.setup !== "skip") {
|
|
488
|
+
step = "mcp";
|
|
455
489
|
const linkedId = readContextFile(contextFile).projectId;
|
|
456
490
|
let pinId;
|
|
457
491
|
if (props.mcpProjectScoped === true) {
|
|
@@ -479,6 +513,7 @@ const runInit = async (props) => {
|
|
|
479
513
|
mcpState.pinId = pinId;
|
|
480
514
|
if (mcpSteps.length > 0) await runTooling(mcpSteps, mcpOnly);
|
|
481
515
|
}
|
|
516
|
+
step = "config";
|
|
482
517
|
const canAskConfig = props.pickConfig !== void 0 || detection.interactive;
|
|
483
518
|
const configResolution = resolveInitConfigChoice({
|
|
484
519
|
flag: recommended ? props.config ?? true : props.config,
|
|
@@ -536,7 +571,7 @@ const runInit = async (props) => {
|
|
|
536
571
|
heading: failed.heading,
|
|
537
572
|
body: failed.body,
|
|
538
573
|
rows: [],
|
|
539
|
-
next: joinNext(failed.next, mcpFailedNext())
|
|
574
|
+
next: joinNext(failed.next, joinNext(toolingFailedNextLines(), mcpFailedNext()))
|
|
540
575
|
}));
|
|
541
576
|
printed = true;
|
|
542
577
|
outcome = "error";
|
|
@@ -557,48 +592,48 @@ const runInit = async (props) => {
|
|
|
557
592
|
...typeof context.projectId === "string" ? { projectId: context.projectId } : {},
|
|
558
593
|
...branch !== void 0 ? { branch } : {}
|
|
559
594
|
});
|
|
560
|
-
if (envPullPlan.kind !== "skip")
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
}
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
595
|
+
if (envPullPlan.kind !== "skip") {
|
|
596
|
+
step = "env_pull";
|
|
597
|
+
try {
|
|
598
|
+
if (typeof context.projectId !== "string" || typeof branch !== "string") throw new Error("Env pull requires a linked project and branch.");
|
|
599
|
+
printInitProgress(PROGRESS.env);
|
|
600
|
+
await raceSigint((props.envPull ?? pullInitEnv)({
|
|
601
|
+
...auth,
|
|
602
|
+
output: props.output,
|
|
603
|
+
cwd,
|
|
604
|
+
projectId: context.projectId,
|
|
605
|
+
branch,
|
|
606
|
+
...envPullPlan.kind === "services" ? {
|
|
607
|
+
services: envPullPlan.services,
|
|
608
|
+
envKeys: envPullPlan.envKeys
|
|
609
|
+
} : {}
|
|
610
|
+
}));
|
|
611
|
+
} catch (error) {
|
|
612
|
+
if (error instanceof InitCancelled) throw error;
|
|
613
|
+
const failed = envPullFailedNext();
|
|
614
|
+
printInitDone(formatInitDone({
|
|
615
|
+
heading: failed.heading,
|
|
616
|
+
body: failed.body,
|
|
617
|
+
rows: [
|
|
618
|
+
{
|
|
619
|
+
label: "Agents",
|
|
620
|
+
value: agentsRow()
|
|
621
|
+
},
|
|
622
|
+
{
|
|
623
|
+
label: "Project",
|
|
624
|
+
value: projectRowValue(funnel.link)
|
|
625
|
+
},
|
|
626
|
+
{
|
|
627
|
+
label: "Config",
|
|
628
|
+
value: configRowValue(funnel.config, existingFilename)
|
|
629
|
+
}
|
|
630
|
+
],
|
|
631
|
+
next: joinNext(failed.next, joinNext(toolingFailedNextLines(), mcpFailedNext()))
|
|
632
|
+
}));
|
|
633
|
+
printed = true;
|
|
634
|
+
outcome = "error";
|
|
635
|
+
throw error;
|
|
636
|
+
}
|
|
602
637
|
}
|
|
603
638
|
const pendingUnauthed = funnel.link === "skipped" && !noLink;
|
|
604
639
|
const pendingServices = extraServices && linked;
|
|
@@ -640,16 +675,14 @@ const runInit = async (props) => {
|
|
|
640
675
|
outcome = pending && !pendingUnauthed && noLink ? "success" : pending ? "pending" : "success";
|
|
641
676
|
if (pendingUnauthed) outcome = "pending";
|
|
642
677
|
if (noLink && !pendingUnauthed && !pendingServices && !pendingExisting) outcome = "success";
|
|
643
|
-
|
|
678
|
+
const deferredError = toolingFailures[0]?.error ?? mcpState.error;
|
|
679
|
+
if (deferredError !== void 0) outcome = "error";
|
|
644
680
|
printInitDone(formatInitDone({
|
|
645
681
|
heading: headingForKind(outcome),
|
|
646
682
|
rows: [
|
|
647
683
|
{
|
|
648
684
|
label: "Agents",
|
|
649
|
-
value:
|
|
650
|
-
tooling: reportedTooling(),
|
|
651
|
-
installed: funnel.agentsInstalled
|
|
652
|
-
})
|
|
685
|
+
value: agentsRow()
|
|
653
686
|
},
|
|
654
687
|
{
|
|
655
688
|
label: "Project",
|
|
@@ -660,10 +693,10 @@ const runInit = async (props) => {
|
|
|
660
693
|
value: configRowValue(funnel.config, existingFilename)
|
|
661
694
|
}
|
|
662
695
|
],
|
|
663
|
-
next: joinNext(mcpFailedNext(), next)
|
|
696
|
+
next: joinNext(joinNext(toolingFailedNextLines(), mcpFailedNext()), next)
|
|
664
697
|
}));
|
|
665
698
|
printed = true;
|
|
666
|
-
if (
|
|
699
|
+
if (deferredError !== void 0) throw deferredError;
|
|
667
700
|
takeCommandSuccessExtras();
|
|
668
701
|
recordCommandSuccessExtras({
|
|
669
702
|
init_kind: detection.emptyDirectory ? "empty-skip" : "existing",
|
|
@@ -682,6 +715,13 @@ const runInit = async (props) => {
|
|
|
682
715
|
throw error;
|
|
683
716
|
}
|
|
684
717
|
outcome = "error";
|
|
718
|
+
recordInitExit(funnel, step, error);
|
|
719
|
+
const deferred = deferredFailureNext();
|
|
720
|
+
if (!printed && deferred.length > 0) printInitDone(formatInitDone({
|
|
721
|
+
heading: headingForKind("error"),
|
|
722
|
+
rows: [],
|
|
723
|
+
next: deferred
|
|
724
|
+
}));
|
|
685
725
|
throw error;
|
|
686
726
|
} finally {
|
|
687
727
|
finishInitFunnel(funnel, outcome, analytics);
|
|
@@ -702,32 +742,46 @@ const joinNext = (first, second) => first.length === 0 || second.length === 0 ?
|
|
|
702
742
|
"",
|
|
703
743
|
...second
|
|
704
744
|
];
|
|
705
|
-
const
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
745
|
+
const withoutKinds = (tooling, kinds) => {
|
|
746
|
+
switch (tooling.setup) {
|
|
747
|
+
case "skip": return tooling;
|
|
748
|
+
case "plugin": return kinds.has("plugins") ? { setup: "skip" } : tooling;
|
|
749
|
+
case "skills": return kinds.has("skills") ? { setup: "skip" } : tooling;
|
|
750
|
+
case "skills-mcp": {
|
|
751
|
+
const skillsAgents = kinds.has("skills") ? [] : tooling.skillsAgents;
|
|
752
|
+
const mcpAgents = kinds.has("mcp") ? [] : tooling.mcpAgents;
|
|
753
|
+
return skillsAgents.length === 0 && mcpAgents.length === 0 ? { setup: "skip" } : {
|
|
754
|
+
...tooling,
|
|
755
|
+
skillsAgents,
|
|
756
|
+
mcpAgents
|
|
757
|
+
};
|
|
758
|
+
}
|
|
759
|
+
case "mixed": {
|
|
760
|
+
const skillsAgents = kinds.has("skills") ? [] : tooling.skillsAgents;
|
|
761
|
+
const mcpAgents = kinds.has("mcp") ? [] : tooling.mcpAgents;
|
|
762
|
+
if (!kinds.has("plugins")) return {
|
|
763
|
+
...tooling,
|
|
764
|
+
skillsAgents,
|
|
765
|
+
mcpAgents
|
|
766
|
+
};
|
|
767
|
+
return skillsAgents.length === 0 && mcpAgents.length === 0 ? { setup: "skip" } : {
|
|
768
|
+
setup: "skills-mcp",
|
|
769
|
+
skillsAgents,
|
|
770
|
+
mcpAgents
|
|
771
|
+
};
|
|
772
|
+
}
|
|
773
|
+
default: return tooling;
|
|
774
|
+
}
|
|
715
775
|
};
|
|
776
|
+
const withoutMcp = (tooling) => withoutKinds(tooling, /* @__PURE__ */ new Set(["mcp"]));
|
|
716
777
|
/** The Neon plugin bundles the skills. */
|
|
717
778
|
const installsSkills = (tooling) => tooling.setup === "skills-mcp" ? tooling.skillsAgents.length > 0 : tooling.setup !== "skip";
|
|
718
|
-
const
|
|
719
|
-
switch (
|
|
720
|
-
case "
|
|
721
|
-
case "
|
|
722
|
-
case "
|
|
723
|
-
|
|
724
|
-
case "mixed": return uniqueAgents([
|
|
725
|
-
...tooling.pluginAgents,
|
|
726
|
-
...tooling.skillsAgents,
|
|
727
|
-
...tooling.mcpAgents
|
|
728
|
-
]);
|
|
729
|
-
default: return tooling;
|
|
779
|
+
const agentsForStep = (tooling, kind) => {
|
|
780
|
+
switch (kind) {
|
|
781
|
+
case "plugins": return tooling.setup === "plugin" ? [...tooling.agents] : tooling.setup === "mixed" ? [...tooling.pluginAgents] : [];
|
|
782
|
+
case "skills": return tooling.setup === "skills" ? [...tooling.agents] : tooling.setup === "skills-mcp" || tooling.setup === "mixed" ? [...tooling.skillsAgents] : [];
|
|
783
|
+
case "mcp": return tooling.setup === "skills-mcp" || tooling.setup === "mixed" ? [...tooling.mcpAgents] : [];
|
|
784
|
+
default: return kind;
|
|
730
785
|
}
|
|
731
786
|
};
|
|
732
|
-
//#endregion
|
|
733
787
|
export { runInit };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import chalk from "chalk";
|
|
2
|
-
|
|
2
|
+
// src/init/template_title.ts
|
|
3
3
|
const SKIP_TEMPLATE_VALUE = "skip";
|
|
4
4
|
/**
|
|
5
5
|
* The picker label for a template: the title first, then the Neon services it
|
|
@@ -11,5 +11,4 @@ const formatTemplateTitle = (template) => {
|
|
|
11
11
|
if (!template.services || template.services.length === 0) return template.title;
|
|
12
12
|
return `${template.title} ${chalk.dim.italic(template.services.join(" · "))}`;
|
|
13
13
|
};
|
|
14
|
-
//#endregion
|
|
15
14
|
export { SKIP_TEMPLATE_VALUE, formatTemplateTitle };
|
package/dist/init/tooling.js
CHANGED
|
@@ -5,21 +5,21 @@ import { MCP_OAUTH_FALLBACK, PROGRESS } from "./copy.js";
|
|
|
5
5
|
import { CannotMintApiKeyError } from "../mcp/mint.js";
|
|
6
6
|
import { detectAgent } from "./detect_host.js";
|
|
7
7
|
import { AgentSelectionSkipped, canPickAgentsInteractively } from "../utils/agent_picker.js";
|
|
8
|
-
import { a as mcpInstallError, s as reportMcpInstall } from "../_chunks/mcp-
|
|
9
|
-
import { l as reportPluginsInstall, o as installPlugins, s as pluginsInstallError } from "../_chunks/plugins-
|
|
10
|
-
import { c as skillsInstallError, o as installSkills, s as reportSkillsInstall } from "../_chunks/skills-
|
|
8
|
+
import { a as mcpInstallError, s as reportMcpInstall } from "../_chunks/mcp-BznTRK3w.js";
|
|
9
|
+
import { l as reportPluginsInstall, o as installPlugins, s as pluginsInstallError } from "../_chunks/plugins-CKOcBuuP.js";
|
|
10
|
+
import { c as skillsInstallError, o as installSkills, s as reportSkillsInstall } from "../_chunks/skills-DKgafm65.js";
|
|
11
11
|
import { runAuthenticatedMcp } from "./auth.js";
|
|
12
12
|
import { raceSigint } from "./cancelled.js";
|
|
13
13
|
import { pickAgentSetupInteractively } from "./wizard.js";
|
|
14
14
|
import { detectProjectAgents } from "add-mcp";
|
|
15
|
-
|
|
15
|
+
// src/init/tooling.ts
|
|
16
16
|
const defaultProjectAgents = (cwd) => detectProjectAgents(cwd);
|
|
17
17
|
const TOOLING_STEP_LABELS = {
|
|
18
18
|
plugins: PROGRESS.plugins,
|
|
19
19
|
skills: PROGRESS.skills,
|
|
20
20
|
mcp: PROGRESS.mcp
|
|
21
21
|
};
|
|
22
|
-
/**
|
|
22
|
+
/** The `<command> <flags>` a user can run to repeat this step on its own. Never executed here. */
|
|
23
23
|
const toolingStepCommandText = (step) => {
|
|
24
24
|
const flags = [];
|
|
25
25
|
switch (step.kind) {
|
|
@@ -184,5 +184,4 @@ const runAgentTooling = async (options) => {
|
|
|
184
184
|
agentSetup
|
|
185
185
|
}));
|
|
186
186
|
};
|
|
187
|
-
|
|
188
|
-
export { runAgentTooling, runToolingSteps };
|
|
187
|
+
export { runAgentTooling, runToolingSteps, toolingStepCommandText };
|
package/dist/init/wizard.js
CHANGED
|
@@ -9,7 +9,7 @@ import { NEON_SKILL_CATALOG, listSkillIds } from "../skills/catalog.js";
|
|
|
9
9
|
import { InitCancelled, restoreCursorVisibilityOnAbort } from "./cancelled.js";
|
|
10
10
|
import chalk from "chalk";
|
|
11
11
|
import prompts from "prompts";
|
|
12
|
-
|
|
12
|
+
// src/init/wizard.ts
|
|
13
13
|
const restoreCursorOnAbort = (state) => {
|
|
14
14
|
restoreCursorVisibilityOnAbort(state);
|
|
15
15
|
};
|
|
@@ -261,5 +261,4 @@ const pickInitLinkInteractively = async () => {
|
|
|
261
261
|
return value === true;
|
|
262
262
|
};
|
|
263
263
|
const initAgentIds = () => listMcpAgentIds();
|
|
264
|
-
//#endregion
|
|
265
264
|
export { initAgentIds, pickAgentSetupInteractively, pickInitAgentsInteractively, pickInitConfigInteractively, pickInitLinkInteractively, pickInitMcpAuthInteractively, pickInitMcpConfigLocationInteractively, pickInitModeInteractively, pickInitPackageManagerInteractively, pickInitProjectSetupInteractively, pickInitServicesInteractively, pickInitSkillsInteractively };
|
package/dist/keyring.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createRequire } from "node:module";
|
|
2
|
-
|
|
2
|
+
// src/keyring.ts
|
|
3
3
|
/** Windows Credential Manager stores at most 2560 bytes per item: 1280 UTF-16 code units. */
|
|
4
4
|
const keyringPasswordLimit = (platform) => platform === "win32" ? 1280 : void 0;
|
|
5
5
|
const isPackaged = () => process.pkg !== void 0;
|
|
@@ -42,5 +42,4 @@ const tryLoadKeyring = () => {
|
|
|
42
42
|
return null;
|
|
43
43
|
}
|
|
44
44
|
};
|
|
45
|
-
//#endregion
|
|
46
45
|
export { keyringPasswordLimit, tryLoadKeyring };
|
package/dist/log.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { isDebug } from "./env.js";
|
|
2
2
|
import { format } from "node:util";
|
|
3
|
-
|
|
3
|
+
// src/log.ts
|
|
4
4
|
const log = {
|
|
5
5
|
debug: (...args) => {
|
|
6
6
|
if (isDebug()) process.stderr.write(`DEBUG: ${format(...args)}\n`);
|
|
@@ -15,5 +15,4 @@ const log = {
|
|
|
15
15
|
process.stderr.write(`ERROR: ${format(...args)}\n`);
|
|
16
16
|
}
|
|
17
17
|
};
|
|
18
|
-
//#endregion
|
|
19
18
|
export { log };
|
package/dist/mcp/agents.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { agents, detectGlobalAgents, getAgentTypes } from "add-mcp";
|
|
2
|
-
|
|
2
|
+
// src/mcp/agents.ts
|
|
3
3
|
const AGENT_ALIASES = {
|
|
4
4
|
cursor: "cursor",
|
|
5
5
|
copilot: "vscode",
|
|
@@ -60,5 +60,4 @@ function uniqueAgentIds(ids) {
|
|
|
60
60
|
}
|
|
61
61
|
return out;
|
|
62
62
|
}
|
|
63
|
-
//#endregion
|
|
64
63
|
export { agentSupportsHttpMcp, agentSupportsProjectMcp, detectInstalledAgents, getAgentDisplayName, listMcpAgentIds, resolveAddMcpAgentId, tryResolveAddMcpAgentId, uniqueAgentIds };
|
package/dist/mcp/install.js
CHANGED
|
@@ -2,7 +2,7 @@ import { chmodSync, existsSync, readFileSync, writeFileSync } from "node:fs";
|
|
|
2
2
|
import { basename, dirname, join } from "node:path";
|
|
3
3
|
import { agents, upsertServer } from "add-mcp";
|
|
4
4
|
import { execFileSync } from "node:child_process";
|
|
5
|
-
|
|
5
|
+
// src/mcp/install.ts
|
|
6
6
|
const NEON_MCP_URL = "https://mcp.neon.tech/mcp";
|
|
7
7
|
const NEON_MCP_NAME = "Neon";
|
|
8
8
|
const NEON_MCP_CATEGORIES = [
|
|
@@ -212,5 +212,4 @@ function installNeonMcpServer(options) {
|
|
|
212
212
|
error: redactSecrets(result.error ?? "Failed to write Neon MCP server config")
|
|
213
213
|
};
|
|
214
214
|
}
|
|
215
|
-
//#endregion
|
|
216
215
|
export { NEON_MCP_CATEGORIES, NEON_MCP_NAME, NEON_MCP_URL, existingNeonApiKey, installNeonMcpServer, isMcpCategory, isNeonMcpUrl, mcpUnsupportedReason, neonMcpUrl, parseMcpCategories, trackedProjectMcpConfig };
|
package/dist/mcp/mint.js
CHANGED
|
@@ -2,8 +2,8 @@ import { log } from "../log.js";
|
|
|
2
2
|
import { isNeonApiError } from "../api.js";
|
|
3
3
|
import { getCliName } from "../utils/cli_name.js";
|
|
4
4
|
import { mintedKeyName } from "../profile_keys.js";
|
|
5
|
-
import { s as orgIdForProject } from "../_chunks/api_keys-
|
|
6
|
-
|
|
5
|
+
import { s as orgIdForProject } from "../_chunks/api_keys-6Xnxl7a8.js";
|
|
6
|
+
// src/mcp/mint.ts
|
|
7
7
|
var CannotMintApiKeyError = class extends Error {
|
|
8
8
|
constructor() {
|
|
9
9
|
super("This CLI credential cannot mint API keys. Organization and project-scoped keys cannot create other keys. Sign in with `neon login` or pass a personal API key.");
|
|
@@ -71,5 +71,4 @@ async function mintMcpApiKey(options) {
|
|
|
71
71
|
async function withdrawMintedKey(apiClient, key) {
|
|
72
72
|
return withdraw(apiClient, key.id, key.orgId);
|
|
73
73
|
}
|
|
74
|
-
//#endregion
|
|
75
74
|
export { CannotMintApiKeyError, mintMcpApiKey, mintedKeyRevokeCommand, withdrawMintedKey };
|
package/dist/mcp/plan.js
CHANGED
|
@@ -4,7 +4,7 @@ import { collectYesAgents, noDetectedAgentsMessage } from "../init/plan.js";
|
|
|
4
4
|
import { detectAgent } from "../init/detect_host.js";
|
|
5
5
|
import { agentChoicesFrom, pickAgentsInteractively, resolveAgentSelection } from "../utils/agent_picker.js";
|
|
6
6
|
import { pickMcpAuth, pickMcpProjectPin, pickMcpScope } from "./wizard.js";
|
|
7
|
-
|
|
7
|
+
// src/mcp/plan.ts
|
|
8
8
|
async function resolveMcpPlan(options) {
|
|
9
9
|
const prompt = options.interactive && !options.yes;
|
|
10
10
|
const scope = options.project ? "project" : prompt ? await (options.pickScope ?? pickMcpScope)() : "global";
|
|
@@ -52,5 +52,4 @@ async function resolveMcpPlan(options) {
|
|
|
52
52
|
categories: options.categories
|
|
53
53
|
};
|
|
54
54
|
}
|
|
55
|
-
//#endregion
|
|
56
55
|
export { resolveMcpPlan };
|
package/dist/mcp/targets.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { detectInstalledAgents, listMcpAgentIds, resolveAddMcpAgentId, uniqueAgentIds } from "./agents.js";
|
|
2
2
|
import { mcpUnsupportedReason } from "./install.js";
|
|
3
3
|
import { detectProjectAgents } from "add-mcp";
|
|
4
|
-
|
|
4
|
+
// src/mcp/targets.ts
|
|
5
5
|
function mcpInstallableAgents(scope) {
|
|
6
6
|
return listMcpAgentIds().filter((id) => mcpUnsupportedReason(id, scope) === void 0);
|
|
7
7
|
}
|
|
@@ -30,5 +30,4 @@ function resolveInstallTargets(options) {
|
|
|
30
30
|
skipped
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
|
-
//#endregion
|
|
34
33
|
export { detectMcpAgents, mcpInstallableAgents, resolveInstallTargets };
|
package/dist/mcp/wizard.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { canPickAgentsInteractively } from "../utils/agent_picker.js";
|
|
2
2
|
import prompts from "prompts";
|
|
3
|
-
|
|
3
|
+
// src/mcp/wizard.ts
|
|
4
4
|
const restoreCursorOnAbort = (state) => {
|
|
5
5
|
if (state.aborted) {
|
|
6
6
|
process.stdout.write("\x1B[?25h");
|
|
@@ -61,5 +61,4 @@ const pickMcpProjectPin = async (linkedProjectId, willMintKey = false) => {
|
|
|
61
61
|
});
|
|
62
62
|
return pin === true;
|
|
63
63
|
};
|
|
64
|
-
//#endregion
|
|
65
64
|
export { pickMcpAuth, pickMcpProjectPin, pickMcpScope };
|
package/dist/neon_services.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/neon_services.ts
|
|
2
2
|
/**
|
|
3
3
|
* Every Neon service a `--service` flag can name, spelled the way a user types it — one
|
|
4
4
|
* vocabulary for the whole CLI.
|
|
@@ -114,5 +114,4 @@ const servicesOption = (params) => ({
|
|
|
114
114
|
* element type when the flag was actually parsed as an array.
|
|
115
115
|
*/
|
|
116
116
|
const servicesFlagValue = (value) => Array.isArray(value) ? value.map(String) : void 0;
|
|
117
|
-
//#endregion
|
|
118
117
|
export { NEON_SERVICES, NEON_SERVICE_LABELS, deprecatedServiceMessage, parseServices, servicesFlagValue, servicesOption };
|
package/dist/node_version.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getCliName } from "./utils/cli_name.js";
|
|
2
|
-
|
|
2
|
+
// src/node_version.ts
|
|
3
3
|
/** Matches `engines.node` in package.json; npm only warns when it isn't met. */
|
|
4
4
|
const MIN_NODE_VERSION = [
|
|
5
5
|
20,
|
|
@@ -21,5 +21,4 @@ if (message) {
|
|
|
21
21
|
process.stderr.write(`${message}\n`);
|
|
22
22
|
process.exit(1);
|
|
23
23
|
}
|
|
24
|
-
//#endregion
|
|
25
24
|
export { MIN_NODE_VERSION, unsupportedNodeMessage };
|
package/dist/notices.js
CHANGED
|
@@ -2,7 +2,7 @@ import { log } from "./log.js";
|
|
|
2
2
|
import { writeJsonFile } from "./utils/json_file.js";
|
|
3
3
|
import { readFileSync } from "node:fs";
|
|
4
4
|
import { join } from "node:path";
|
|
5
|
-
|
|
5
|
+
// src/notices.ts
|
|
6
6
|
/**
|
|
7
7
|
* When each terminal notice was last shown, so a notice repeats on its own interval rather
|
|
8
8
|
* than on every command. Kept apart from the update cache: that cache is tied to one install
|
|
@@ -43,5 +43,4 @@ const showNotice = ({ configDir, id, intervalMs, message, now = Date.now() }) =>
|
|
|
43
43
|
[id]: now
|
|
44
44
|
}, "CLI notice log");
|
|
45
45
|
};
|
|
46
|
-
//#endregion
|
|
47
46
|
export { isNoticeDue, parseNoticeLog, showNotice };
|
package/dist/parameters.gen.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
// src/parameters.gen.ts
|
|
2
2
|
const projectCreateRequest = {
|
|
3
3
|
"project.settings.quota.active_time_seconds": {
|
|
4
4
|
type: "number",
|
|
@@ -496,5 +496,4 @@ const roleCreateRequest = {
|
|
|
496
496
|
demandOption: false
|
|
497
497
|
}
|
|
498
498
|
};
|
|
499
|
-
//#endregion
|
|
500
499
|
export { branchCreateRequest, branchCreateRequestEndpointOptions, branchUpdateRequest, databaseCreateRequest, endpointCreateRequest, endpointUpdateRequest, projectCreateRequest, projectUpdateRequest, roleCreateRequest };
|
package/dist/pkg.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { readFileSync } from "node:fs";
|
|
2
2
|
import { dirname, join } from "node:path";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
|
-
|
|
4
|
+
// src/pkg.ts
|
|
5
5
|
/**
|
|
6
6
|
* Load the CLI's package.json for version metadata. In the built CLI it sits right next to
|
|
7
7
|
* this module (the build copies it into `dist`); when running from source (tests, `tsx`) it
|
|
@@ -19,5 +19,4 @@ const loadPkg = () => {
|
|
|
19
19
|
}
|
|
20
20
|
};
|
|
21
21
|
var pkg_default = loadPkg();
|
|
22
|
-
//#endregion
|
|
23
22
|
export { pkg_default as default };
|