@synergenius/flow-weaver 0.33.1 → 0.44.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/LICENSE +201 -226
- package/NOTICE +13 -0
- package/README.md +152 -244
- package/dist/agent/agent-loop.d.ts +4 -2
- package/dist/agent/cli-session.d.ts +3 -3
- package/dist/agent/cli-session.js +511 -438
- package/dist/agent/cli-spawn-config.d.ts +4 -4
- package/dist/agent/gate.d.ts +164 -0
- package/dist/agent/index.d.ts +4 -4
- package/dist/agent/index.js +174 -28
- package/dist/agent/mcp-bridge.d.ts +1 -1
- package/dist/agent/mcp-bridge.js +114 -128
- package/dist/agent/mcp-tool-server.d.ts +2 -2
- package/dist/agent/mcp-tool-server.js +147 -189
- package/dist/agent/profiles.d.ts +69 -0
- package/dist/agent/providers/anthropic.d.ts +2 -4
- package/dist/agent/providers/claude-cli.d.ts +4 -5
- package/dist/agent/providers/openai-compat.d.ts +8 -1
- package/dist/agent/streaming.d.ts +2 -2
- package/dist/agent/types.d.ts +16 -10
- package/dist/api/builder.d.ts +3 -3
- package/dist/api/compile.d.ts +9 -4
- package/dist/api/durable-validation.d.ts +15 -0
- package/dist/api/generate-in-place.d.ts +21 -19
- package/dist/api/generate.d.ts +21 -16
- package/dist/api/generated-module/local-node-functions.d.ts +24 -0
- package/dist/api/generated-module/module-format.d.ts +23 -0
- package/dist/api/generated-module/module-writer.d.ts +34 -0
- package/dist/api/generated-module/node-type-imports.d.ts +39 -0
- package/dist/api/generated-module/preamble.d.ts +16 -0
- package/dist/api/generated-module/workflow-functions.d.ts +29 -0
- package/dist/api/graph-identity.d.ts +39 -0
- package/dist/api/helpers.d.ts +4 -60
- package/dist/api/in-place/built-in-nodes.d.ts +18 -0
- package/dist/api/in-place/function-body.d.ts +21 -0
- package/dist/api/in-place/fw-imports.d.ts +30 -0
- package/dist/api/in-place/macro-coverage.d.ts +14 -0
- package/dist/api/in-place/node-type-functions.d.ts +18 -0
- package/dist/api/in-place/node-type-jsdoc.d.ts +20 -0
- package/dist/api/in-place/orphaned-node-types.d.ts +16 -0
- package/dist/api/in-place/runtime-section.d.ts +16 -0
- package/dist/api/in-place/signature.d.ts +47 -0
- package/dist/api/in-place/source-file.d.ts +19 -0
- package/dist/api/in-place/workflow-jsdoc.d.ts +19 -0
- package/dist/api/index.d.ts +18 -21
- package/dist/api/index.js +259 -53
- package/dist/api/inline-engine.generated.d.ts +3 -0
- package/dist/api/inline-runtime.d.ts +10 -2
- package/dist/api/manipulation/connections.d.ts +1 -1
- package/dist/api/manipulation/index.d.ts +8 -8
- package/dist/api/manipulation/node-types.d.ts +1 -1
- package/dist/api/manipulation/nodes.d.ts +3 -13
- package/dist/api/manipulation/ports.d.ts +1 -1
- package/dist/api/manipulation/scopes.d.ts +1 -1
- package/dist/api/manipulation/workflow.d.ts +1 -1
- package/dist/api/modify-operation.d.ts +0 -2
- package/dist/api/parse.d.ts +22 -1
- package/dist/api/port-references.d.ts +66 -0
- package/dist/api/query.d.ts +18 -2
- package/dist/api/templates.d.ts +1 -1
- package/dist/api/transform.d.ts +1 -1
- package/dist/api/validate.d.ts +1 -1
- package/dist/api/validation-registry.d.ts +2 -2
- package/dist/artifacts/brief.d.ts +43 -0
- package/dist/artifacts/index.d.ts +31 -0
- package/dist/artifacts/pdf.d.ts +19 -0
- package/dist/ast/builder.d.ts +3 -3
- package/dist/ast/index.d.ts +4 -4
- package/dist/ast/index.js +60 -5
- package/dist/ast/serialization-node.d.ts +1 -1
- package/dist/ast/serialization.d.ts +1 -1
- package/dist/ast/types.d.ts +82 -291
- package/dist/ast/workflow-utils.d.ts +4 -4
- package/dist/built-in-nodes/coercion-types.d.ts +1 -1
- package/dist/built-in-nodes/delay.d.ts +3 -1
- package/dist/built-in-nodes/generated-registry.d.ts +1 -1
- package/dist/built-in-nodes/index.d.ts +6 -5
- package/dist/built-in-nodes/index.js +79 -5
- package/dist/built-in-nodes/invoke-workflow.d.ts +2 -1
- package/dist/built-in-nodes/mock-types.d.ts +45 -14
- package/dist/built-in-nodes/sleep.d.ts +12 -0
- package/dist/built-in-nodes/wait-for-agent.d.ts +2 -1
- package/dist/built-in-nodes/wait-for-event.d.ts +2 -1
- package/dist/chevrotain-parser/coerce-parser.d.ts +1 -1
- package/dist/chevrotain-parser/connect-parser.d.ts +1 -1
- package/dist/chevrotain-parser/grammar-diagrams.d.ts +1 -1
- package/dist/chevrotain-parser/index.d.ts +20 -23
- package/dist/chevrotain-parser/node-parser.d.ts +7 -8
- package/dist/chevrotain-parser/parse-line.d.ts +54 -0
- package/dist/chevrotain-parser/tokens.d.ts +0 -17
- package/dist/chevrotain-parser/trigger-cancel-parser.d.ts +6 -1
- package/dist/chunks/chunk-4EUSHAY6.js +298 -0
- package/dist/chunks/chunk-4KDUEOFD.js +197 -0
- package/dist/chunks/chunk-5Y3AIUWY.js +911 -0
- package/dist/chunks/chunk-6KMVP6AU.js +20 -0
- package/dist/chunks/chunk-6PNJORFL.js +128 -0
- package/dist/chunks/chunk-7AAQNGRH.js +2001 -0
- package/dist/chunks/chunk-7YYKTPJ5.js +22705 -0
- package/dist/chunks/chunk-A5MBOFVY.js +33 -0
- package/dist/chunks/chunk-AXNQRVJB.js +18 -0
- package/dist/chunks/chunk-B6HQ6YS5.js +572 -0
- package/dist/chunks/chunk-CY3RNVML.js +296 -0
- package/dist/chunks/chunk-CYHYDLV4.js +653 -0
- package/dist/chunks/chunk-CZBCCK4Y.js +82 -0
- package/dist/chunks/chunk-DCMGQP5V.js +505 -0
- package/dist/chunks/chunk-DIAA66GL.js +72 -0
- package/dist/chunks/chunk-DUO6H5PR.js +20 -0
- package/dist/chunks/chunk-E5WN7IGO.js +125 -0
- package/dist/chunks/chunk-EFGFXXQF.js +184 -0
- package/dist/chunks/chunk-F3RTZV2A.js +2811 -0
- package/dist/chunks/chunk-FMTLP5ZX.js +1397 -0
- package/dist/chunks/chunk-HKZLQJDV.js +79 -0
- package/dist/chunks/chunk-INDEVYEC.js +146 -0
- package/dist/chunks/chunk-JQTF4R5L.js +390 -0
- package/dist/chunks/chunk-KMCAYNUM.js +331 -0
- package/dist/chunks/chunk-KMWCCOUJ.js +1444 -0
- package/dist/chunks/chunk-KU3CLJI2.js +338 -0
- package/dist/chunks/chunk-NDSTGMKR.js +3300 -0
- package/dist/chunks/chunk-NQNLUAPO.js +505 -0
- package/dist/chunks/chunk-O2U2LO57.js +466 -0
- package/dist/chunks/chunk-OOQG7UPP.js +457 -0
- package/dist/chunks/chunk-OZQAW5ZG.js +112 -0
- package/dist/chunks/chunk-P2CVDGHR.js +487 -0
- package/dist/chunks/chunk-P44RIZ7C.js +592 -0
- package/dist/chunks/chunk-PEZCT37T.js +1475 -0
- package/dist/chunks/chunk-PKWSAW6O.js +152 -0
- package/dist/chunks/chunk-Q6MDDZMT.js +4373 -0
- package/dist/chunks/chunk-QDE4Z7KW.js +6 -0
- package/dist/chunks/chunk-QJDAVSNY.js +8 -0
- package/dist/chunks/chunk-QYPORSLO.js +7552 -0
- package/dist/chunks/chunk-R4QGNK34.js +183 -0
- package/dist/chunks/chunk-REEYC73I.js +3002 -0
- package/dist/chunks/chunk-SEWDMQ6Q.js +46 -0
- package/dist/chunks/chunk-TAIUWKZB.js +3057 -0
- package/dist/chunks/chunk-TN4YZ3O7.js +196 -0
- package/dist/chunks/chunk-TRMFB43C.js +143 -0
- package/dist/chunks/chunk-VO4QXG2X.js +1016 -0
- package/dist/chunks/chunk-VP2P3BPA.js +1002 -0
- package/dist/chunks/chunk-VQ7H33J4.js +2176 -0
- package/dist/chunks/chunk-VWA7MCV2.js +105 -0
- package/dist/chunks/chunk-XAV22WD7.js +253 -0
- package/dist/chunks/chunk-YSPBPZDV.js +148 -0
- package/dist/chunks/chunk-ZKEGXO73.js +282 -0
- package/dist/chunks/chunk-ZMGN6F3S.js +4256 -0
- package/dist/chunks/grammar-diagrams-AI7VDXOM.js +14 -0
- package/dist/chunks/index.min-ECJD6GZC.js +37 -0
- package/dist/chunks/manifest-EPTR5MYH.js +21 -0
- package/dist/chunks/openapi-document-6TCGVDUW.js +69 -0
- package/dist/chunks/registry-K2U5KUTY.js +23 -0
- package/dist/chunks/serialization-node-UGY6CFH6.js +38 -0
- package/dist/chunks/validate-GEKSZPIN.js +24 -0
- package/dist/chunks/validation-registry-IQZX3UE3.js +7 -0
- package/dist/chunks/validator-VXFHLPDW.js +26 -0
- package/dist/chunks/workflow-executor-KBGFKHNR.js +36 -0
- package/dist/cli/commands/agents.d.ts +16 -0
- package/dist/cli/commands/artifact.d.ts +10 -0
- package/dist/cli/commands/compile.d.ts +0 -30
- package/dist/cli/commands/console.d.ts +32 -0
- package/dist/cli/commands/context.d.ts +0 -3
- package/dist/cli/commands/describe.js +386 -352
- package/dist/cli/commands/dev.d.ts +9 -4
- package/dist/cli/commands/diagram.d.ts +3 -5
- package/dist/cli/commands/doctor.d.ts +27 -4
- package/dist/cli/commands/doctor.js +3307 -633
- package/dist/cli/commands/export.d.ts +6 -4
- package/dist/cli/commands/grammar.d.ts +0 -3
- package/dist/cli/commands/implement.d.ts +1 -1
- package/dist/cli/commands/init/agent-handoff.d.ts +28 -0
- package/dist/cli/commands/init/config.d.ts +3 -0
- package/dist/cli/commands/init/files.d.ts +12 -0
- package/dist/cli/commands/init/naming.d.ts +13 -0
- package/dist/cli/commands/init/output.d.ts +12 -0
- package/dist/cli/commands/init/setup.d.ts +21 -0
- package/dist/cli/commands/init/types.d.ts +53 -0
- package/dist/cli/commands/init-personas.d.ts +9 -1
- package/dist/cli/commands/init.d.ts +24 -88
- package/dist/cli/commands/market.d.ts +1 -1
- package/dist/cli/commands/mcp-setup.d.ts +1 -4
- package/dist/cli/commands/modify.d.ts +0 -5
- package/dist/cli/commands/openapi.d.ts +9 -11
- package/dist/cli/commands/run.d.ts +0 -4
- package/dist/cli/commands/serve.d.ts +24 -26
- package/dist/cli/commands/status.d.ts +1 -1
- package/dist/cli/exports.d.ts +3 -4
- package/dist/cli/exports.js +124 -23
- package/dist/cli/flow-weaver-agents-H653446S.mjs +81 -0
- package/dist/cli/flow-weaver-artifact-WBFYTW76.mjs +58 -0
- package/dist/cli/flow-weaver-chunk-265CEK74.mjs +2 -0
- package/dist/cli/flow-weaver-chunk-2C7PZCV5.mjs +186 -0
- package/dist/cli/flow-weaver-chunk-3BSYCWPL.mjs +3109 -0
- package/dist/cli/flow-weaver-chunk-3MKUQP3D.mjs +547 -0
- package/dist/cli/flow-weaver-chunk-3ZLMPQTH.mjs +27 -0
- package/dist/cli/flow-weaver-chunk-4DVY73ML.mjs +280 -0
- package/dist/cli/flow-weaver-chunk-54M4KNEL.mjs +200 -0
- package/dist/cli/flow-weaver-chunk-55QMUZIA.mjs +256 -0
- package/dist/cli/flow-weaver-chunk-6ZUJ7LMX.mjs +2003 -0
- package/dist/cli/flow-weaver-chunk-7ET6N32V.mjs +419 -0
- package/dist/cli/flow-weaver-chunk-7G63RR4K.mjs +8880 -0
- package/dist/cli/flow-weaver-chunk-A6M5K3W7.mjs +4418 -0
- package/dist/cli/flow-weaver-chunk-AA3NATMX.mjs +154 -0
- package/dist/cli/flow-weaver-chunk-APX6MQ5A.mjs +5652 -0
- package/dist/cli/flow-weaver-chunk-BHCC5FE5.mjs +17 -0
- package/dist/cli/flow-weaver-chunk-DM4BBRRU.mjs +35 -0
- package/dist/cli/flow-weaver-chunk-DRN7KPWY.mjs +168 -0
- package/dist/cli/flow-weaver-chunk-EKWF27G6.mjs +23 -0
- package/dist/cli/flow-weaver-chunk-EM5HWQ4R.mjs +338 -0
- package/dist/cli/flow-weaver-chunk-FPPPU2DG.mjs +226 -0
- package/dist/cli/flow-weaver-chunk-GAQXZHNO.mjs +3005 -0
- package/dist/cli/flow-weaver-chunk-GBUNNP33.mjs +1329 -0
- package/dist/cli/flow-weaver-chunk-HMAKDE55.mjs +636 -0
- package/dist/cli/flow-weaver-chunk-HQ3ZAN44.mjs +367 -0
- package/dist/cli/flow-weaver-chunk-I4APCXYN.mjs +21442 -0
- package/dist/cli/flow-weaver-chunk-IJJ4JXTL.mjs +2297 -0
- package/dist/cli/flow-weaver-chunk-J7EPZW2I.mjs +33 -0
- package/dist/cli/flow-weaver-chunk-KOEMJHLG.mjs +83 -0
- package/dist/cli/flow-weaver-chunk-M6CBWQKJ.mjs +271 -0
- package/dist/cli/flow-weaver-chunk-MHJ4N652.mjs +1580 -0
- package/dist/cli/flow-weaver-chunk-MKAFQWLP.mjs +202 -0
- package/dist/cli/flow-weaver-chunk-MMV2XGD3.mjs +3291 -0
- package/dist/cli/flow-weaver-chunk-MSI2UJES.mjs +125 -0
- package/dist/cli/flow-weaver-chunk-N767YRAI.mjs +48 -0
- package/dist/cli/flow-weaver-chunk-NQKKWDGF.mjs +56 -0
- package/dist/cli/flow-weaver-chunk-NYZDQYFU.mjs +45 -0
- package/dist/cli/flow-weaver-chunk-OMVWSNHJ.mjs +14 -0
- package/dist/cli/flow-weaver-chunk-PUWZ47H5.mjs +2188 -0
- package/dist/cli/flow-weaver-chunk-QOPRVDES.mjs +46 -0
- package/dist/cli/flow-weaver-chunk-RIWE7YTR.mjs +216 -0
- package/dist/cli/flow-weaver-chunk-S63Q3JIU.mjs +789 -0
- package/dist/cli/flow-weaver-chunk-T7X5A23H.mjs +558 -0
- package/dist/cli/flow-weaver-chunk-TLV3VZUN.mjs +2 -0
- package/dist/cli/flow-weaver-chunk-TS5P3PIN.mjs +194 -0
- package/dist/cli/flow-weaver-chunk-U3EO3X4B.mjs +649 -0
- package/dist/cli/flow-weaver-chunk-UNFS3NQP.mjs +34 -0
- package/dist/cli/flow-weaver-chunk-V6DHWFQG.mjs +2811 -0
- package/dist/cli/flow-weaver-chunk-VXWNLYQU.mjs +9 -0
- package/dist/cli/flow-weaver-chunk-W3YNK26P.mjs +149 -0
- package/dist/cli/flow-weaver-chunk-XG2WKXYZ.mjs +324 -0
- package/dist/cli/flow-weaver-chunk-YLSRZWFK.mjs +2219 -0
- package/dist/cli/flow-weaver-chunk-YVPURWS6.mjs +40 -0
- package/dist/cli/flow-weaver-chunk-Z44JK332.mjs +582 -0
- package/dist/cli/flow-weaver-chunk-Z5ZJPNSY.mjs +517 -0
- package/dist/cli/flow-weaver-chunk-ZQALO25T.mjs +594 -0
- package/dist/cli/flow-weaver-compile-A2CABDSB.mjs +37 -0
- package/dist/cli/flow-weaver-console-6EBHDBTN.mjs +71 -0
- package/dist/cli/flow-weaver-context-ECLYANFF.mjs +17 -0
- package/dist/cli/flow-weaver-context-ZRUMW2KE.mjs +69 -0
- package/dist/cli/flow-weaver-create-WIP4EFNP.mjs +124 -0
- package/dist/cli/flow-weaver-deployment-WJJRK7NO.mjs +14 -0
- package/dist/cli/flow-weaver-describe-XDIFF5LI.mjs +41 -0
- package/dist/cli/flow-weaver-dev-LG2NSQAU.mjs +196 -0
- package/dist/cli/flow-weaver-diagram-3EVQARQE.mjs +52 -0
- package/dist/cli/flow-weaver-diagram-7LR7O4M2.mjs +44 -0
- package/dist/cli/flow-weaver-diff-USF7DJLU.mjs +85 -0
- package/dist/cli/flow-weaver-docs-QU2ZOXKH.mjs +96 -0
- package/dist/cli/flow-weaver-doctor-K447YWHR.mjs +43 -0
- package/dist/cli/flow-weaver-export-LAS6N56Y.mjs +140 -0
- package/dist/cli/flow-weaver-grammar-RIRUS3Q6.mjs +49 -0
- package/dist/cli/flow-weaver-grammar-diagrams-WXRTW5SK.mjs +15 -0
- package/dist/cli/flow-weaver-implement-5JG6BCFZ.mjs +114 -0
- package/dist/cli/flow-weaver-index.min-OR5SIHXD.mjs +39 -0
- package/dist/cli/flow-weaver-init-34YZNPQX.mjs +972 -0
- package/dist/cli/flow-weaver-init-personas-NOGZTQQ2.mjs +48 -0
- package/dist/cli/flow-weaver-manifest-4JNUSEB3.mjs +18 -0
- package/dist/cli/flow-weaver-market-WA4CKHKV.mjs +444 -0
- package/dist/cli/flow-weaver-mcp-setup-O26MGXSD.mjs +22 -0
- package/dist/cli/flow-weaver-migrate-VFVEUTPH.mjs +119 -0
- package/dist/cli/flow-weaver-modify-VM3JP5K6.mjs +97 -0
- package/dist/cli/flow-weaver-openapi-IRBWI3HM.mjs +71 -0
- package/dist/cli/flow-weaver-openapi-document-7N6YMPG3.mjs +30 -0
- package/dist/cli/flow-weaver-pack-commands-OS2QRXAK.mjs +146 -0
- package/dist/cli/flow-weaver-registry-5MLFRPPT.mjs +25 -0
- package/dist/cli/flow-weaver-run-DSTLSTHR.mjs +555 -0
- package/dist/cli/flow-weaver-serialization-node-LE6PCG4M.mjs +50 -0
- package/dist/cli/flow-weaver-serve-NVLCLSOW.mjs +192 -0
- package/dist/cli/flow-weaver-server-7IERLVXE.mjs +2925 -0
- package/dist/cli/flow-weaver-server-KWF4PXYC.mjs +19112 -0
- package/dist/cli/flow-weaver-status-75W2S3YB.mjs +138 -0
- package/dist/cli/flow-weaver-strip-AZPXUYVA.mjs +79 -0
- package/dist/cli/flow-weaver-templates-DSNMB6K7.mjs +72 -0
- package/dist/cli/flow-weaver-validate-A4UWDQN6.mjs +19 -0
- package/dist/cli/flow-weaver-validate-GRBZ5W4C.mjs +296 -0
- package/dist/cli/flow-weaver-validation-registry-BINGUNXX.mjs +9 -0
- package/dist/cli/flow-weaver-validator-TY56CI42.mjs +21 -0
- package/dist/cli/flow-weaver-watch-OPPERXL6.mjs +114 -0
- package/dist/cli/flow-weaver-workflow-executor-6AHYPXAN.mjs +26 -0
- package/dist/cli/flow-weaver.mjs +3557 -89498
- package/dist/cli/index.d.ts +5 -2
- package/dist/cli/pack-commands-needed.d.ts +12 -0
- package/dist/cli/program.d.ts +14 -0
- package/dist/cli/templates/ai/mock-provider.d.ts +1 -1
- package/dist/cli/templates/index.d.ts +1 -8
- package/dist/cli/templates/nodes/agent-router.d.ts +1 -1
- package/dist/cli/templates/nodes/aggregator.d.ts +1 -1
- package/dist/cli/templates/nodes/conversation-memory.d.ts +1 -1
- package/dist/cli/templates/nodes/http.d.ts +1 -1
- package/dist/cli/templates/nodes/human-approval.d.ts +1 -1
- package/dist/cli/templates/nodes/json-extractor.d.ts +1 -1
- package/dist/cli/templates/nodes/llm-call.d.ts +1 -1
- package/dist/cli/templates/nodes/prompt-template.d.ts +1 -1
- package/dist/cli/templates/nodes/rag-retriever.d.ts +1 -1
- package/dist/cli/templates/nodes/tool-executor.d.ts +1 -1
- package/dist/cli/templates/nodes/transformer.d.ts +1 -1
- package/dist/cli/templates/nodes/validator.d.ts +1 -1
- package/dist/cli/templates/shared/approval-types.d.ts +1 -1
- package/dist/cli/templates/shared/case.d.ts +14 -0
- package/dist/cli/templates/shared/llm-types.d.ts +4 -4
- package/dist/cli/templates/workflows/aggregator.d.ts +1 -1
- package/dist/cli/templates/workflows/ai-agent.d.ts +1 -1
- package/dist/cli/templates/workflows/ai-chat.d.ts +1 -1
- package/dist/cli/templates/workflows/ai-rag.d.ts +1 -1
- package/dist/cli/templates/workflows/ai-react.d.ts +1 -1
- package/dist/cli/templates/workflows/approval.d.ts +10 -0
- package/dist/cli/templates/workflows/conditional.d.ts +2 -2
- package/dist/cli/templates/workflows/error-handler.d.ts +2 -2
- package/dist/cli/templates/workflows/foreach.d.ts +1 -1
- package/dist/cli/templates/workflows/sequential.d.ts +1 -1
- package/dist/cli/templates/workflows/webhook.d.ts +1 -1
- package/dist/cli/utils/interactive.d.ts +6 -0
- package/dist/cli/utils/json-option.d.ts +8 -0
- package/dist/cli/utils/logger.d.ts +2 -0
- package/dist/compiler/durable-source-proof.d.ts +23 -0
- package/dist/compiler/executable-artifact.d.ts +29 -0
- package/dist/compiler/index.d.ts +4 -0
- package/dist/compiler/index.js +36 -0
- package/dist/console/app.js +106 -0
- package/dist/console/assets/synergenius.svg +18 -0
- package/dist/console/author.d.ts +32 -0
- package/dist/console/cli-catalog.d.ts +21 -0
- package/dist/console/cli-run.d.ts +35 -0
- package/dist/console/cli-run.js +46 -0
- package/dist/console/debug.d.ts +67 -0
- package/dist/console/diff-view.d.ts +96 -0
- package/dist/console/export.d.ts +36 -0
- package/dist/console/git.d.ts +27 -0
- package/dist/console/index.d.ts +4 -0
- package/dist/console/index.html +16 -0
- package/dist/console/index.js +203 -0
- package/dist/console/packs.d.ts +100 -0
- package/dist/console/request-guard.d.ts +10 -0
- package/dist/console/respond.d.ts +16 -0
- package/dist/console/router.d.ts +64 -0
- package/dist/console/routes-agents.d.ts +14 -0
- package/dist/console/routes-project.d.ts +3 -0
- package/dist/console/routes-runs.d.ts +3 -0
- package/dist/console/routes-services.d.ts +7 -0
- package/dist/console/routes-tools.d.ts +3 -0
- package/dist/console/runs.d.ts +69 -0
- package/dist/console/scan.d.ts +49 -0
- package/dist/console/schema.d.ts +74 -0
- package/dist/console/server.d.ts +34 -0
- package/dist/console/server.js +43264 -0
- package/dist/console/services.d.ts +119 -0
- package/dist/console/source.d.ts +23 -0
- package/dist/console/status.d.ts +68 -0
- package/dist/console/styles.css +1023 -0
- package/dist/console/terminals.d.ts +22 -0
- package/dist/console/workflow-view.d.ts +153 -0
- package/dist/constants.d.ts +5 -1
- package/dist/constants.js +56 -167
- package/dist/context/index.d.ts +10 -0
- package/dist/context/index.js +14 -191
- package/dist/coordinator/agent-gate.d.ts +107 -0
- package/dist/coordinator/bundle-digest.d.ts +20 -0
- package/dist/coordinator/clock-tick.d.ts +4 -0
- package/dist/coordinator/effect-receipts.d.ts +10 -0
- package/dist/coordinator/errors.d.ts +31 -0
- package/dist/coordinator/file-store.d.ts +3 -0
- package/dist/coordinator/gate-labeling.d.ts +33 -0
- package/dist/coordinator/gate-resolution.d.ts +28 -0
- package/dist/coordinator/index.d.ts +12 -0
- package/dist/coordinator/index.js +107 -0
- package/dist/coordinator/memory-store.d.ts +3 -0
- package/dist/coordinator/params.d.ts +18 -0
- package/dist/coordinator/run-annotations.d.ts +6 -0
- package/dist/coordinator/run-context.d.ts +11 -0
- package/dist/coordinator/run-ending.d.ts +5 -0
- package/dist/coordinator/run-outcome.d.ts +31 -0
- package/dist/coordinator/run-resume.d.ts +6 -0
- package/dist/coordinator/run-start.d.ts +4 -0
- package/dist/coordinator/run-store.d.ts +275 -0
- package/dist/coordinator/run-trace.d.ts +41 -0
- package/dist/coordinator/run-views.d.ts +12 -0
- package/dist/coordinator/runs-dir.d.ts +26 -0
- package/dist/coordinator/store.d.ts +67 -0
- package/dist/coordinator/time.d.ts +39 -0
- package/dist/coordinator/workflow-selection.d.ts +6 -0
- package/dist/deployment/index.d.ts +11 -16
- package/dist/deployment/index.js +541 -50
- package/dist/deployment/targets/base.d.ts +11 -13
- package/dist/deployment/targets/openapi-parts.d.ts +92 -0
- package/dist/diagram/arms.d.ts +70 -0
- package/dist/diagram/ascii-renderer.d.ts +1 -1
- package/dist/diagram/geometry.d.ts +22 -29
- package/dist/diagram/graph/bounds.d.ts +30 -0
- package/dist/diagram/graph/metrics.d.ts +21 -0
- package/dist/diagram/graph/nodes.d.ts +33 -0
- package/dist/diagram/graph/placement.d.ts +22 -0
- package/dist/diagram/graph/ports.d.ts +23 -0
- package/dist/diagram/graph/routing.d.ts +40 -0
- package/dist/diagram/graph/scopes.d.ts +30 -0
- package/dist/diagram/index.d.ts +15 -23
- package/dist/diagram/index.js +632 -111
- package/dist/diagram/labels.d.ts +12 -0
- package/dist/diagram/lanes.d.ts +93 -0
- package/dist/diagram/layout.d.ts +1 -1
- package/dist/diagram/material-symbols.d.ts +7 -0
- package/dist/diagram/orthogonal-router.d.ts +15 -51
- package/dist/diagram/process-view.d.ts +79 -0
- package/dist/diagram/spine.d.ts +25 -0
- package/dist/diagram/theme.d.ts +3 -5
- package/dist/diagram/types.d.ts +6 -20
- package/dist/diff/index.js +53 -9
- package/dist/diff/types.d.ts +1 -5
- package/dist/doc-metadata/extractors/annotations.d.ts +0 -4
- package/dist/doc-metadata/extractors/cli-commands.d.ts +2 -1
- package/dist/doc-metadata/extractors/core-metadata.d.ts +19 -4
- package/dist/doc-metadata/extractors/error-codes.d.ts +1 -1
- package/dist/doc-metadata/extractors/mcp-tools.d.ts +7 -3
- package/dist/doc-metadata/index.d.ts +1 -2
- package/dist/doc-metadata/index.js +2368 -9
- package/dist/doc-metadata/types.d.ts +7 -24
- package/dist/docs/guide.d.ts +33 -0
- package/dist/docs/index.d.ts +7 -4
- package/dist/docs/index.js +298 -298
- package/dist/docs/pack-topics.d.ts +18 -0
- package/dist/editor-completions/annotationValues.d.ts +1 -1
- package/dist/editor-completions/contextParser.d.ts +3 -2
- package/dist/editor-completions/dataTypes.d.ts +1 -1
- package/dist/editor-completions/goToDefinition.d.ts +1 -1
- package/dist/editor-completions/index.d.ts +8 -8
- package/dist/editor-completions/index.js +1244 -175
- package/dist/editor-completions/jsDocAnnotations.d.ts +1 -1
- package/dist/editor-completions/modifierCompletions.d.ts +1 -1
- package/dist/export/index.d.ts +7 -1
- package/dist/generated-branding.js +8 -21
- package/dist/generated-version.d.ts +1 -1
- package/dist/generated-version.js +7 -3
- package/dist/generator/annotation-generator.d.ts +84 -0
- package/dist/generator/async-detection.d.ts +1 -1
- package/dist/{body-generator.d.ts → generator/body-generator.d.ts} +7 -3
- package/dist/generator/code-utils.d.ts +15 -60
- package/dist/generator/connection-reads.d.ts +94 -0
- package/dist/generator/control-flow-plan.d.ts +74 -0
- package/dist/generator/control-flow.d.ts +1 -1
- package/dist/generator/exit-assembly.d.ts +11 -0
- package/dist/generator/index.d.ts +4 -5
- package/dist/generator/index.js +34 -11
- package/dist/generator/input-port-values.d.ts +22 -0
- package/dist/generator/{scope-function-generator.d.ts → node-arguments.d.ts} +76 -1
- package/dist/generator/node-invocation.d.ts +74 -0
- package/dist/{node-types-generator.d.ts → generator/node-types-generator.d.ts} +3 -2
- package/dist/generator/scope-closure.d.ts +23 -0
- package/dist/generator/scoped-child.d.ts +49 -0
- package/dist/{sugar-optimizer.d.ts → generator/sugar-optimizer.d.ts} +1 -1
- package/dist/generator/unified.d.ts +14 -2
- package/dist/generator/workflow-generator.d.ts +37 -0
- package/dist/index.d.ts +29 -26
- package/dist/index.js +1322 -92
- package/dist/jsdoc-port-sync/apply-diff.d.ts +15 -0
- package/dist/jsdoc-port-sync/callback-signature.d.ts +17 -0
- package/dist/jsdoc-port-sync/diff.d.ts +5 -7
- package/dist/jsdoc-port-sync/incomplete-lines.d.ts +41 -0
- package/dist/jsdoc-port-sync/index.d.ts +11 -11
- package/dist/jsdoc-port-sync/index.js +88 -45
- package/dist/jsdoc-port-sync/jsdoc-to-signature.d.ts +66 -0
- package/dist/jsdoc-port-sync/port-parser.d.ts +6 -24
- package/dist/jsdoc-port-sync/port-tag-placement.d.ts +55 -0
- package/dist/jsdoc-port-sync/scoped-ports.d.ts +21 -0
- package/dist/jsdoc-port-sync/signature-parser.d.ts +8 -1
- package/dist/jsdoc-port-sync/signature-to-jsdoc.d.ts +77 -0
- package/dist/jsdoc-port-sync/sync.d.ts +4 -1
- package/dist/marketplace/index.d.ts +5 -3
- package/dist/marketplace/index.js +62 -10
- package/dist/marketplace/install.d.ts +24 -0
- package/dist/marketplace/manifest.d.ts +1 -1
- package/dist/marketplace/npmrc.d.ts +24 -0
- package/dist/marketplace/registry.d.ts +46 -11
- package/dist/marketplace/types.d.ts +41 -24
- package/dist/marketplace/validator.d.ts +1 -1
- package/dist/mcp/debug-session.d.ts +2 -4
- package/dist/mcp/dist-imports.d.ts +12 -0
- package/dist/mcp/response-utils.d.ts +11 -9
- package/dist/mcp/server.d.ts +0 -1
- package/dist/mcp/tools-context.d.ts +11 -0
- package/dist/mcp/tools-diagram.d.ts +1 -2
- package/dist/mcp/tools-export.d.ts +2 -2
- package/dist/mcp/tools-marketplace.d.ts +1 -1
- package/dist/mcp/tools-run.d.ts +17 -0
- package/dist/mcp/tools-workflow.d.ts +3 -0
- package/dist/mcp/types.d.ts +4 -14
- package/dist/mcp/workflow-executor.d.ts +57 -19
- package/dist/npm-packages.d.ts +1 -1
- package/dist/npm-packages.js +10 -473
- package/dist/parser/annotation-parser.d.ts +88 -0
- package/dist/parser/annotation-suggestion.d.ts +23 -0
- package/dist/parser/durable-effect-contract.d.ts +10 -0
- package/dist/parser/expression-references.d.ts +101 -0
- package/dist/parser/external-node-types.d.ts +69 -0
- package/dist/{function-like.d.ts → parser/function-like.d.ts} +10 -3
- package/dist/parser/generated-sections.d.ts +25 -0
- package/dist/parser/import-resolution.d.ts +67 -0
- package/dist/parser/import-stub.d.ts +29 -0
- package/dist/parser/jsdoc/config-types.d.ts +209 -0
- package/dist/parser/jsdoc/graph-tags.d.ts +54 -0
- package/dist/parser/jsdoc/node-type-block.d.ts +23 -0
- package/dist/parser/jsdoc/parse-line-once.d.ts +11 -0
- package/dist/parser/jsdoc/port-tags.d.ts +42 -0
- package/dist/parser/jsdoc/runtime-tags.d.ts +65 -0
- package/dist/parser/jsdoc/signature-types.d.ts +52 -0
- package/dist/parser/jsdoc/workflow-block.d.ts +22 -0
- package/dist/parser/jsdoc-parser.d.ts +23 -0
- package/dist/parser/macro-expansion.d.ts +80 -0
- package/dist/parser/module-resolution.d.ts +38 -0
- package/dist/parser/node-inference.d.ts +39 -0
- package/dist/parser/npm-node-types.d.ts +24 -0
- package/dist/parser/pack-handlers.d.ts +12 -0
- package/dist/parser/path-data-resolution.d.ts +75 -0
- package/dist/parser/port-inference.d.ts +15 -0
- package/dist/{resolve-package-types.d.ts → parser/resolve-package-types.d.ts} +4 -0
- package/dist/parser/serialize-deploy-annotations.d.ts +19 -0
- package/dist/parser/tag-registry.d.ts +22 -0
- package/dist/parser/workflow-extraction.d.ts +39 -0
- package/dist/runtime/ExecutionContext.d.ts +87 -99
- package/dist/runtime/continuation-core.d.ts +147 -0
- package/dist/runtime/continuation.d.ts +48 -0
- package/dist/runtime/debug-controller.d.ts +7 -22
- package/dist/runtime/durable-execution.d.ts +176 -0
- package/dist/runtime/events.d.ts +16 -1
- package/dist/runtime/executable-module-contract.d.ts +16 -0
- package/dist/runtime/index.d.ts +13 -10
- package/dist/runtime/index.js +947 -9
- package/dist/runtime/strict-json.d.ts +15 -0
- package/dist/server/access.d.ts +12 -0
- package/dist/server/api.d.ts +126 -0
- package/dist/server/callback-delivery.d.ts +62 -0
- package/dist/server/callback-url.d.ts +44 -0
- package/dist/server/context.d.ts +35 -0
- package/dist/server/http-error.d.ts +10 -0
- package/dist/server/index.d.ts +7 -1
- package/dist/server/index.js +125 -6
- package/dist/server/openapi-document.d.ts +33 -0
- package/dist/server/openapi.d.ts +32 -0
- package/dist/server/respond.d.ts +35 -0
- package/dist/server/route-params.d.ts +17 -0
- package/dist/server/route-plan.d.ts +41 -0
- package/dist/server/routes-catalog.d.ts +5 -0
- package/dist/server/routes-declared.d.ts +12 -0
- package/dist/server/routes-runs.d.ts +8 -0
- package/dist/server/run-driver.d.ts +58 -0
- package/dist/server/run-view.d.ts +26 -0
- package/dist/server/transport.d.ts +35 -0
- package/dist/server/types.d.ts +143 -52
- package/dist/server/webhook-server.d.ts +12 -38
- package/dist/server/workflow-registry.d.ts +7 -4
- package/dist/service-registry.d.ts +49 -0
- package/dist/service-registry.js +123 -0
- package/dist/testing/assertions.d.ts +2 -2
- package/dist/testing/index.d.ts +14 -13
- package/dist/testing/index.js +582 -24
- package/dist/testing/mock-approval.d.ts +3 -5
- package/dist/testing/mock-llm.d.ts +2 -3
- package/dist/testing/recorder.d.ts +5 -6
- package/dist/testing/replayer.d.ts +6 -7
- package/dist/testing/run-store-check.d.ts +3 -0
- package/dist/testing/token-tracker.d.ts +2 -2
- package/dist/{type-mappings.d.ts → types/type-mappings.d.ts} +13 -1
- package/dist/utils/error-utils.d.ts +4 -2
- package/dist/utils/port-ordering.d.ts +2 -2
- package/dist/utils/port-tag-utils.d.ts +1 -1
- package/dist/validation/agent-detection.d.ts +17 -5
- package/dist/validation/agent-rules.d.ts +6 -7
- package/dist/validation/core-rules.d.ts +49 -0
- package/dist/validation/design-rules.d.ts +9 -3
- package/dist/validation/rule-registry.d.ts +3 -3
- package/dist/validation/rules/connections.d.ts +27 -0
- package/dist/validation/rules/context.d.ts +11 -0
- package/dist/validation/rules/cycles.d.ts +17 -0
- package/dist/validation/rules/data-flow.d.ts +19 -0
- package/dist/validation/rules/scope-topology.d.ts +35 -0
- package/dist/validation/rules/type-compatibility.d.ts +30 -0
- package/dist/validation/type-checker.d.ts +39 -0
- package/dist/validation/validator-helpers.d.ts +31 -0
- package/dist/validation/validator.d.ts +30 -0
- package/docs/reference/advanced-annotations.md +277 -60
- package/docs/reference/built-in-nodes.md +164 -94
- package/docs/reference/cancellation.md +44 -0
- package/docs/reference/cli-reference.md +252 -234
- package/docs/reference/compilation.md +36 -109
- package/docs/reference/concepts.md +80 -63
- package/docs/reference/console.md +169 -0
- package/docs/reference/debugging.md +26 -57
- package/docs/reference/deployment.md +217 -143
- package/docs/reference/durable-gates.md +445 -0
- package/docs/reference/error-codes.md +90 -43
- package/docs/reference/export-interface.md +91 -26
- package/docs/reference/iterative-development.md +50 -28
- package/docs/reference/jsdoc-grammar.md +66 -311
- package/docs/reference/library.md +250 -0
- package/docs/reference/marketplace.md +301 -152
- package/docs/reference/mcp-tools.md +102 -0
- package/docs/reference/node-conversion.md +84 -59
- package/docs/reference/orientation.md +68 -0
- package/docs/reference/scaffold.md +5 -4
- package/docs/reference/tutorial.md +106 -166
- package/docs/reference/visual-reference.md +1 -1
- package/package.json +85 -50
- package/dist/agent/agent-loop.js +0 -156
- package/dist/agent/cli-spawn-config.js +0 -65
- package/dist/agent/device-connection.d.ts +0 -79
- package/dist/agent/device-connection.js +0 -184
- package/dist/agent/env-allowlist.js +0 -60
- package/dist/agent/providers/anthropic.js +0 -198
- package/dist/agent/providers/claude-cli.js +0 -161
- package/dist/agent/providers/openai-compat.js +0 -205
- package/dist/agent/providers/platform.d.ts +0 -23
- package/dist/agent/providers/platform.js +0 -132
- package/dist/agent/streaming.js +0 -186
- package/dist/agent/types.js +0 -20
- package/dist/annotation-generator.d.ts +0 -50
- package/dist/annotation-generator.js +0 -743
- package/dist/api/builder.js +0 -345
- package/dist/api/command-runner.js +0 -787
- package/dist/api/compile.js +0 -148
- package/dist/api/extract-types.js +0 -57
- package/dist/api/generate-in-place.js +0 -1477
- package/dist/api/generate.js +0 -514
- package/dist/api/helpers.js +0 -285
- package/dist/api/inline-runtime.js +0 -526
- package/dist/api/manipulation/connections.js +0 -151
- package/dist/api/manipulation/index.js +0 -41
- package/dist/api/manipulation/node-types.js +0 -200
- package/dist/api/manipulation/nodes.js +0 -355
- package/dist/api/manipulation/ports.js +0 -228
- package/dist/api/manipulation/scopes.js +0 -156
- package/dist/api/manipulation/workflow.js +0 -116
- package/dist/api/modify-operation.js +0 -177
- package/dist/api/parse.js +0 -115
- package/dist/api/patterns.d.ts +0 -112
- package/dist/api/patterns.js +0 -303
- package/dist/api/query.js +0 -840
- package/dist/api/templates.js +0 -117
- package/dist/api/transform.js +0 -40
- package/dist/api/validate.js +0 -64
- package/dist/api/validation-registry.js +0 -10
- package/dist/api/workflow-file-operations.js +0 -180
- package/dist/ast/builder.js +0 -395
- package/dist/ast/serialization-node.js +0 -30
- package/dist/ast/serialization.js +0 -134
- package/dist/ast/types.js +0 -2
- package/dist/ast/workflow-utils.js +0 -114
- package/dist/body-generator.js +0 -35
- package/dist/built-in-nodes/coercion-types.js +0 -61
- package/dist/built-in-nodes/delay.js +0 -29
- package/dist/built-in-nodes/generated-registry.js +0 -299
- package/dist/built-in-nodes/invoke-workflow.js +0 -36
- package/dist/built-in-nodes/mock-types.js +0 -42
- package/dist/built-in-nodes/wait-for-agent.js +0 -31
- package/dist/built-in-nodes/wait-for-event.js +0 -25
- package/dist/chevrotain-parser/coerce-parser.js +0 -103
- package/dist/chevrotain-parser/connect-parser.js +0 -136
- package/dist/chevrotain-parser/fan-parser.js +0 -149
- package/dist/chevrotain-parser/grammar-diagrams.js +0 -273
- package/dist/chevrotain-parser/index.js +0 -31
- package/dist/chevrotain-parser/map-parser.js +0 -130
- package/dist/chevrotain-parser/node-parser.js +0 -558
- package/dist/chevrotain-parser/path-parser.js +0 -140
- package/dist/chevrotain-parser/port-parser.js +0 -519
- package/dist/chevrotain-parser/position-parser.d.ts +0 -20
- package/dist/chevrotain-parser/position-parser.js +0 -83
- package/dist/chevrotain-parser/scope-parser.js +0 -104
- package/dist/chevrotain-parser/tokens.js +0 -429
- package/dist/chevrotain-parser/trigger-cancel-parser.js +0 -291
- package/dist/cli/commands/account.d.ts +0 -4
- package/dist/cli/commands/account.js +0 -50
- package/dist/cli/commands/ai-credentials.d.ts +0 -12
- package/dist/cli/commands/ai-credentials.js +0 -95
- package/dist/cli/commands/apikey.d.ts +0 -4
- package/dist/cli/commands/apikey.js +0 -64
- package/dist/cli/commands/auth.d.ts +0 -9
- package/dist/cli/commands/auth.js +0 -255
- package/dist/cli/commands/compile.js +0 -331
- package/dist/cli/commands/connect.d.ts +0 -4
- package/dist/cli/commands/connect.js +0 -163
- package/dist/cli/commands/context.js +0 -51
- package/dist/cli/commands/create.js +0 -139
- package/dist/cli/commands/deploy.d.ts +0 -6
- package/dist/cli/commands/deploy.js +0 -74
- package/dist/cli/commands/dev.js +0 -227
- package/dist/cli/commands/diagram.js +0 -39
- package/dist/cli/commands/diff.js +0 -57
- package/dist/cli/commands/docs.js +0 -74
- package/dist/cli/commands/export.js +0 -153
- package/dist/cli/commands/grammar.js +0 -40
- package/dist/cli/commands/implement.js +0 -91
- package/dist/cli/commands/init-personas.js +0 -541
- package/dist/cli/commands/init.js +0 -797
- package/dist/cli/commands/market.js +0 -440
- package/dist/cli/commands/mcp-setup.js +0 -433
- package/dist/cli/commands/migrate.js +0 -91
- package/dist/cli/commands/modify.js +0 -58
- package/dist/cli/commands/openapi.js +0 -71
- package/dist/cli/commands/org.d.ts +0 -8
- package/dist/cli/commands/org.js +0 -136
- package/dist/cli/commands/pattern.d.ts +0 -34
- package/dist/cli/commands/pattern.js +0 -186
- package/dist/cli/commands/plugin.d.ts +0 -16
- package/dist/cli/commands/plugin.js +0 -176
- package/dist/cli/commands/run.js +0 -742
- package/dist/cli/commands/serve.js +0 -93
- package/dist/cli/commands/status.js +0 -123
- package/dist/cli/commands/strip.js +0 -61
- package/dist/cli/commands/templates.js +0 -58
- package/dist/cli/commands/validate.js +0 -267
- package/dist/cli/commands/watch.js +0 -71
- package/dist/cli/config/credentials.d.ts +0 -15
- package/dist/cli/config/credentials.js +0 -43
- package/dist/cli/config/platform-client.d.ts +0 -123
- package/dist/cli/config/platform-client.js +0 -248
- package/dist/cli/env-setup.js +0 -12
- package/dist/cli/index.js +0 -850
- package/dist/cli/pack-commands.js +0 -122
- package/dist/cli/postinstall.d.ts +0 -16
- package/dist/cli/postinstall.js +0 -119
- package/dist/cli/templates/ai/mock-provider.js +0 -64
- package/dist/cli/templates/ai/types.js +0 -5
- package/dist/cli/templates/approvals/index.d.ts +0 -15
- package/dist/cli/templates/approvals/index.js +0 -241
- package/dist/cli/templates/index.js +0 -123
- package/dist/cli/templates/nodes/agent-router.js +0 -114
- package/dist/cli/templates/nodes/aggregator.js +0 -63
- package/dist/cli/templates/nodes/conversation-memory.js +0 -85
- package/dist/cli/templates/nodes/http.js +0 -80
- package/dist/cli/templates/nodes/human-approval.js +0 -109
- package/dist/cli/templates/nodes/json-extractor.js +0 -119
- package/dist/cli/templates/nodes/llm-call.js +0 -106
- package/dist/cli/templates/nodes/prompt-template.js +0 -52
- package/dist/cli/templates/nodes/rag-retriever.js +0 -128
- package/dist/cli/templates/nodes/tool-executor.js +0 -108
- package/dist/cli/templates/nodes/transformer.js +0 -68
- package/dist/cli/templates/nodes/validator.js +0 -62
- package/dist/cli/templates/pack-loader.js +0 -58
- package/dist/cli/templates/providers/index.js +0 -239
- package/dist/cli/templates/shared/approval-types.js +0 -31
- package/dist/cli/templates/shared/llm-types.js +0 -109
- package/dist/cli/templates/workflows/aggregator.js +0 -101
- package/dist/cli/templates/workflows/ai-agent.js +0 -326
- package/dist/cli/templates/workflows/ai-chat.js +0 -167
- package/dist/cli/templates/workflows/ai-rag.js +0 -184
- package/dist/cli/templates/workflows/ai-react.js +0 -293
- package/dist/cli/templates/workflows/conditional.js +0 -139
- package/dist/cli/templates/workflows/error-handler.js +0 -145
- package/dist/cli/templates/workflows/foreach.js +0 -140
- package/dist/cli/templates/workflows/sequential.js +0 -200
- package/dist/cli/templates/workflows/webhook.js +0 -158
- package/dist/cli/utils/cli-helpers.d.ts +0 -44
- package/dist/cli/utils/cli-helpers.js +0 -99
- package/dist/cli/utils/logger.js +0 -126
- package/dist/cli/utils/parse-int-strict.js +0 -17
- package/dist/cli/utils/safe-write.js +0 -54
- package/dist/deployment/config/defaults.d.ts +0 -29
- package/dist/deployment/config/defaults.js +0 -98
- package/dist/deployment/config/loader.d.ts +0 -24
- package/dist/deployment/config/loader.js +0 -237
- package/dist/deployment/config/types.d.ts +0 -117
- package/dist/deployment/config/types.js +0 -5
- package/dist/deployment/core/adapters.d.ts +0 -66
- package/dist/deployment/core/adapters.js +0 -156
- package/dist/deployment/core/executor.d.ts +0 -62
- package/dist/deployment/core/executor.js +0 -197
- package/dist/deployment/core/formatters.d.ts +0 -42
- package/dist/deployment/core/formatters.js +0 -146
- package/dist/deployment/openapi/generator.d.ts +0 -146
- package/dist/deployment/openapi/generator.js +0 -347
- package/dist/deployment/openapi/schema-converter.d.ts +0 -49
- package/dist/deployment/openapi/schema-converter.js +0 -192
- package/dist/deployment/targets/base.js +0 -855
- package/dist/deployment/types.d.ts +0 -140
- package/dist/deployment/types.js +0 -8
- package/dist/diagram/ascii-renderer.js +0 -528
- package/dist/diagram/geometry.js +0 -1267
- package/dist/diagram/html-viewer.d.ts +0 -21
- package/dist/diagram/html-viewer.js +0 -1689
- package/dist/diagram/layout.js +0 -143
- package/dist/diagram/orthogonal-router.js +0 -568
- package/dist/diagram/renderer.d.ts +0 -3
- package/dist/diagram/renderer.js +0 -266
- package/dist/diagram/theme.js +0 -282
- package/dist/diagram/types.js +0 -2
- package/dist/diff/WorkflowDiffer.js +0 -429
- package/dist/diff/formatDiff.js +0 -239
- package/dist/diff/impact.js +0 -119
- package/dist/diff/types.js +0 -35
- package/dist/doc-metadata/extractors/annotations.js +0 -638
- package/dist/doc-metadata/extractors/cli-commands.js +0 -326
- package/dist/doc-metadata/extractors/core-metadata.js +0 -61
- package/dist/doc-metadata/extractors/error-codes.js +0 -372
- package/dist/doc-metadata/extractors/grammar-rules.js +0 -51
- package/dist/doc-metadata/extractors/mcp-tools.js +0 -705
- package/dist/doc-metadata/extractors/plugin-api.d.ts +0 -19
- package/dist/doc-metadata/extractors/plugin-api.js +0 -279
- package/dist/doc-metadata/types.js +0 -5
- package/dist/editor-completions/annotationValues.js +0 -146
- package/dist/editor-completions/contextParser.js +0 -410
- package/dist/editor-completions/dataTypes.js +0 -95
- package/dist/editor-completions/goToDefinition.js +0 -112
- package/dist/editor-completions/jsDocAnnotations.js +0 -359
- package/dist/editor-completions/modifierCompletions.js +0 -197
- package/dist/editor-completions/types.js +0 -8
- package/dist/export/index.js +0 -212
- package/dist/extensions/index.d.ts +0 -16
- package/dist/extensions/index.js +0 -17
- package/dist/friendly-errors.js +0 -761
- package/dist/function-like.js +0 -84
- package/dist/generator/async-detection.js +0 -56
- package/dist/generator/code-utils.js +0 -551
- package/dist/generator/compile-target-registry.d.ts +0 -20
- package/dist/generator/compile-target-registry.js +0 -20
- package/dist/generator/control-flow.js +0 -358
- package/dist/generator/dev-mode-registry.d.ts +0 -27
- package/dist/generator/dev-mode-registry.js +0 -20
- package/dist/generator/scope-function-generator.js +0 -397
- package/dist/generator/unified.js +0 -1831
- package/dist/generator.d.ts +0 -54
- package/dist/generator.js +0 -101
- package/dist/jsdoc-parser.d.ts +0 -377
- package/dist/jsdoc-parser.js +0 -1189
- package/dist/jsdoc-port-sync/constants.js +0 -103
- package/dist/jsdoc-port-sync/diff.js +0 -319
- package/dist/jsdoc-port-sync/port-parser.js +0 -579
- package/dist/jsdoc-port-sync/rename.js +0 -256
- package/dist/jsdoc-port-sync/signature-parser.js +0 -559
- package/dist/jsdoc-port-sync/sync.js +0 -653
- package/dist/marketplace/manifest.js +0 -194
- package/dist/marketplace/registry.js +0 -198
- package/dist/marketplace/types.js +0 -9
- package/dist/marketplace/validator.js +0 -150
- package/dist/mcp/agent-channel.d.ts +0 -35
- package/dist/mcp/agent-channel.js +0 -61
- package/dist/mcp/auto-registration.d.ts +0 -3
- package/dist/mcp/auto-registration.js +0 -62
- package/dist/mcp/debug-session.js +0 -25
- package/dist/mcp/index.d.ts +0 -11
- package/dist/mcp/index.js +0 -10
- package/dist/mcp/pack-tools.js +0 -59
- package/dist/mcp/prompts.js +0 -68
- package/dist/mcp/response-utils.js +0 -97
- package/dist/mcp/run-registry.d.ts +0 -29
- package/dist/mcp/run-registry.js +0 -24
- package/dist/mcp/server.js +0 -63
- package/dist/mcp/tools-context.js +0 -51
- package/dist/mcp/tools-debug.js +0 -451
- package/dist/mcp/tools-diagram.js +0 -97
- package/dist/mcp/tools-docs.js +0 -62
- package/dist/mcp/tools-export.js +0 -222
- package/dist/mcp/tools-marketplace.js +0 -132
- package/dist/mcp/tools-model.d.ts +0 -3
- package/dist/mcp/tools-model.js +0 -279
- package/dist/mcp/tools-pattern.d.ts +0 -3
- package/dist/mcp/tools-pattern.js +0 -604
- package/dist/mcp/tools-query.js +0 -377
- package/dist/mcp/tools-resources.js +0 -41
- package/dist/mcp/tools-template.js +0 -119
- package/dist/mcp/tools-workflow-run.d.ts +0 -40
- package/dist/mcp/tools-workflow-run.js +0 -150
- package/dist/mcp/types.js +0 -2
- package/dist/mcp/workflow-executor.js +0 -242
- package/dist/migration/registry.js +0 -29
- package/dist/node-types-generator.js +0 -139
- package/dist/parser/tag-registry.js +0 -57
- package/dist/parser.d.ts +0 -232
- package/dist/parser.js +0 -2500
- package/dist/plugin/PluginPanel.d.ts +0 -12
- package/dist/plugin/PluginPanel.js +0 -5
- package/dist/plugin/index.d.ts +0 -13
- package/dist/plugin/index.js +0 -14
- package/dist/plugin/types.d.ts +0 -75
- package/dist/plugin/types.js +0 -8
- package/dist/resolve-package-types.js +0 -123
- package/dist/runtime/CancellationError.js +0 -20
- package/dist/runtime/ExecutionContext.js +0 -280
- package/dist/runtime/builtin-functions.js +0 -549
- package/dist/runtime/checkpoint.d.ts +0 -84
- package/dist/runtime/checkpoint.js +0 -225
- package/dist/runtime/debug-controller.js +0 -247
- package/dist/runtime/events.js +0 -2
- package/dist/runtime/function-registry.js +0 -66
- package/dist/runtime/parameter-resolver.js +0 -113
- package/dist/server/types.js +0 -5
- package/dist/server/webhook-server.js +0 -269
- package/dist/server/workflow-registry.js +0 -202
- package/dist/shared-project.js +0 -28
- package/dist/sugar-optimizer.js +0 -498
- package/dist/testing/assertions.js +0 -127
- package/dist/testing/mock-approval.js +0 -98
- package/dist/testing/mock-llm.js +0 -119
- package/dist/testing/recorder.js +0 -70
- package/dist/testing/replayer.js +0 -143
- package/dist/testing/token-tracker.js +0 -94
- package/dist/type-checker.d.ts +0 -42
- package/dist/type-checker.js +0 -190
- package/dist/type-mappings.js +0 -131
- package/dist/types/branded-ports.d.ts +0 -151
- package/dist/types/branded-ports.js +0 -121
- package/dist/types/index.d.ts +0 -5
- package/dist/types/index.js +0 -5
- package/dist/types.d.ts +0 -139
- package/dist/types.js +0 -15
- package/dist/utils/error-utils.js +0 -27
- package/dist/utils/lru-cache.js +0 -40
- package/dist/utils/port-ordering.js +0 -81
- package/dist/utils/port-tag-utils.js +0 -41
- package/dist/utils/string-distance.js +0 -56
- package/dist/validation/agent-detection.js +0 -115
- package/dist/validation/agent-rules.js +0 -262
- package/dist/validation/design-rules.js +0 -377
- package/dist/validation/rule-registry.js +0 -37
- package/dist/validator.d.ts +0 -113
- package/dist/validator.js +0 -1631
- package/docs/reference/patterns.md +0 -159
- package/scripts/postinstall.cjs +0 -86
- /package/dist/{shared-project.d.ts → parser/shared-project.d.ts} +0 -0
- /package/dist/{friendly-errors.d.ts → validation/friendly-errors.d.ts} +0 -0
|
@@ -0,0 +1,558 @@
|
|
|
1
|
+
import { createRequire as __createRequire } from "module";
|
|
2
|
+
const require = __createRequire(import.meta.url);
|
|
3
|
+
import {
|
|
4
|
+
getAllWorkflowTemplates
|
|
5
|
+
} from "./flow-weaver-chunk-MMV2XGD3.mjs";
|
|
6
|
+
import {
|
|
7
|
+
buildContext
|
|
8
|
+
} from "./flow-weaver-chunk-MKAFQWLP.mjs";
|
|
9
|
+
import {
|
|
10
|
+
logger
|
|
11
|
+
} from "./flow-weaver-chunk-RIWE7YTR.mjs";
|
|
12
|
+
|
|
13
|
+
// src/cli/commands/init-personas.ts
|
|
14
|
+
import { execSync } from "child_process";
|
|
15
|
+
var PERSONA_CHOICES = [
|
|
16
|
+
{ value: "nocode", name: "AI does everything", description: "Describe in plain language, AI builds the workflow. Guided setup included." },
|
|
17
|
+
{ value: "vibecoder", name: "AI-assisted coding", description: "Collaborate with AI, iterate by describing changes. Hands-on setup with AI." },
|
|
18
|
+
{ value: "lowcode", name: "Template-based", description: "Pick a template, customize the code. AI helps with initial setup." },
|
|
19
|
+
{ value: "expert", name: "Full TypeScript", description: "Write workflows from scratch. Minimal setup, full control." }
|
|
20
|
+
];
|
|
21
|
+
var PERSONA_CONFIRMATIONS = {
|
|
22
|
+
nocode: "AI will handle the code. You describe, it builds.",
|
|
23
|
+
vibecoder: "You and AI will build this together.",
|
|
24
|
+
lowcode: "Starting from a template, you customize from there.",
|
|
25
|
+
expert: null
|
|
26
|
+
};
|
|
27
|
+
var USE_CASE_CHOICES = [
|
|
28
|
+
{ value: "data", name: "Data pipeline", description: "Process, transform, and validate data" },
|
|
29
|
+
{ value: "ai", name: "AI agent", description: "LLM with tools, reasoning, or retrieval" },
|
|
30
|
+
{ value: "api", name: "API / webhook", description: "HTTP endpoints and integrations" },
|
|
31
|
+
{ value: "automation", name: "Automation", description: "Conditional logic, error handling, routing" },
|
|
32
|
+
{ value: "minimal", name: "Something else", description: "Start with a minimal template" }
|
|
33
|
+
];
|
|
34
|
+
var USE_CASE_TEMPLATES = {
|
|
35
|
+
data: { default: "sequential", all: ["sequential", "foreach", "aggregator"] },
|
|
36
|
+
ai: { default: "ai-agent", all: ["ai-agent", "ai-react", "ai-rag", "ai-chat"] },
|
|
37
|
+
api: { default: "webhook", all: ["webhook"] },
|
|
38
|
+
automation: { default: "conditional", all: ["conditional", "error-handler"] },
|
|
39
|
+
minimal: { default: "sequential", all: ["sequential"] }
|
|
40
|
+
};
|
|
41
|
+
function registerPackUseCase(useCase, templates) {
|
|
42
|
+
if (!USE_CASE_CHOICES.some((c) => c.value === useCase.id)) {
|
|
43
|
+
const minimalIdx = USE_CASE_CHOICES.findIndex((c) => c.value === "minimal");
|
|
44
|
+
const entry = { value: useCase.id, name: useCase.name, description: useCase.description };
|
|
45
|
+
if (minimalIdx >= 0) {
|
|
46
|
+
USE_CASE_CHOICES.splice(minimalIdx, 0, entry);
|
|
47
|
+
} else {
|
|
48
|
+
USE_CASE_CHOICES.push(entry);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
if (!USE_CASE_TEMPLATES[useCase.id] && templates.length > 0) {
|
|
52
|
+
USE_CASE_TEMPLATES[useCase.id] = {
|
|
53
|
+
default: templates[0],
|
|
54
|
+
all: templates
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
function selectTemplateForPersona(persona, useCase) {
|
|
59
|
+
const mapping = USE_CASE_TEMPLATES[useCase];
|
|
60
|
+
if (!mapping) {
|
|
61
|
+
return { template: "sequential" };
|
|
62
|
+
}
|
|
63
|
+
if (persona === "lowcode" && mapping.all.length > 1) {
|
|
64
|
+
return { template: mapping.default, choices: mapping.all };
|
|
65
|
+
}
|
|
66
|
+
return { template: mapping.default };
|
|
67
|
+
}
|
|
68
|
+
function getTemplateSubChoices(templateIds) {
|
|
69
|
+
return templateIds.map((id) => {
|
|
70
|
+
const tmpl = getAllWorkflowTemplates().find((t) => t.id === id);
|
|
71
|
+
return {
|
|
72
|
+
value: id,
|
|
73
|
+
name: id,
|
|
74
|
+
description: tmpl?.description ?? ""
|
|
75
|
+
};
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
function extractWorkflowPreview(workflowCode) {
|
|
79
|
+
const pathMatches = workflowCode.match(/@path\s+(.+)/g);
|
|
80
|
+
if (pathMatches && pathMatches.length > 0) {
|
|
81
|
+
const raw = pathMatches[0].replace(/@path\s+/, "").trim();
|
|
82
|
+
const steps = raw.split(/\s*->\s*/);
|
|
83
|
+
const labelMap = buildLabelMap(workflowCode);
|
|
84
|
+
const labeled = steps.map((step) => labelMap.get(step) ?? step);
|
|
85
|
+
return labeled.join(" \u2500\u2500\u25B6 ");
|
|
86
|
+
}
|
|
87
|
+
const nodeAnnotations = workflowCode.match(/@node\s+(\w+)\s+\w+/g);
|
|
88
|
+
if (nodeAnnotations && nodeAnnotations.length > 0) {
|
|
89
|
+
const labelMap = buildLabelMap(workflowCode);
|
|
90
|
+
const names = nodeAnnotations.map((m) => {
|
|
91
|
+
const id = m.replace(/@node\s+/, "").split(/\s+/)[0];
|
|
92
|
+
return labelMap.get(id) ?? id;
|
|
93
|
+
});
|
|
94
|
+
return ["Start", ...names, "Exit"].join(" \u2500\u2500\u25B6 ");
|
|
95
|
+
}
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
function buildLabelMap(code) {
|
|
99
|
+
const map = /* @__PURE__ */ new Map();
|
|
100
|
+
map.set("Start", "Start");
|
|
101
|
+
map.set("Exit", "Exit");
|
|
102
|
+
const nodeRegex = /@node\s+(\w+)\s+(\w+)/g;
|
|
103
|
+
const instanceToType = /* @__PURE__ */ new Map();
|
|
104
|
+
let match;
|
|
105
|
+
while ((match = nodeRegex.exec(code)) !== null) {
|
|
106
|
+
instanceToType.set(match[1], match[2]);
|
|
107
|
+
}
|
|
108
|
+
const labelRegex = /@label\s+(.+)\n[\s\S]*?function\s+(\w+)/g;
|
|
109
|
+
const typeToLabel = /* @__PURE__ */ new Map();
|
|
110
|
+
while ((match = labelRegex.exec(code)) !== null) {
|
|
111
|
+
typeToLabel.set(match[2], match[1].trim());
|
|
112
|
+
}
|
|
113
|
+
for (const [instanceId, typeName] of instanceToType) {
|
|
114
|
+
const label = typeToLabel.get(typeName);
|
|
115
|
+
if (label) {
|
|
116
|
+
map.set(instanceId, label);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return map;
|
|
120
|
+
}
|
|
121
|
+
var FILE_DESCRIPTIONS = {
|
|
122
|
+
"package.json": "Dependencies and npm scripts",
|
|
123
|
+
"tsconfig.json": "TypeScript configuration",
|
|
124
|
+
".gitignore": "Git ignore rules",
|
|
125
|
+
".flowweaver/config.yaml": "Flow Weaver project settings",
|
|
126
|
+
"src/main.ts": "Runs the workflow with sample input"
|
|
127
|
+
};
|
|
128
|
+
function workflowFileDesc(persona) {
|
|
129
|
+
if (persona === "nocode") return "Your workflow (AI will modify this for you)";
|
|
130
|
+
return "Your workflow definition";
|
|
131
|
+
}
|
|
132
|
+
function generateReadme(projectName, persona, _template) {
|
|
133
|
+
const lines = [`# ${projectName}`, ""];
|
|
134
|
+
if (persona === "nocode") {
|
|
135
|
+
lines.push(
|
|
136
|
+
"A Flow Weaver workflow project configured for AI-assisted development.",
|
|
137
|
+
"",
|
|
138
|
+
"## Working with AI",
|
|
139
|
+
"",
|
|
140
|
+
"Open this project in your AI editor (Claude Code, Cursor, VS Code) and describe",
|
|
141
|
+
"what you want to build:",
|
|
142
|
+
"",
|
|
143
|
+
'- "Create a workflow that processes customer orders"',
|
|
144
|
+
'- "Add retry logic to the data pipeline"',
|
|
145
|
+
'- "Show me a diagram of the current workflow"',
|
|
146
|
+
"",
|
|
147
|
+
"Through the Flow Weaver MCP server the AI creates, modifies, validates and runs",
|
|
148
|
+
"workflows for you, and `fw console --open` shows you what it made.",
|
|
149
|
+
""
|
|
150
|
+
);
|
|
151
|
+
} else if (persona === "vibecoder") {
|
|
152
|
+
lines.push(
|
|
153
|
+
"A Flow Weaver workflow project.",
|
|
154
|
+
"",
|
|
155
|
+
"## Development",
|
|
156
|
+
"",
|
|
157
|
+
"```sh",
|
|
158
|
+
"npm run dev # Compile and run",
|
|
159
|
+
"npm run compile # Compile only",
|
|
160
|
+
"npm run validate # Check for errors",
|
|
161
|
+
"```",
|
|
162
|
+
"",
|
|
163
|
+
"## AI-Assisted Editing",
|
|
164
|
+
"",
|
|
165
|
+
"With your AI editor connected, you can describe changes in plain language:",
|
|
166
|
+
"",
|
|
167
|
+
'- "Add error handling to the pipeline"',
|
|
168
|
+
'- "Replace the mock LLM with OpenAI"',
|
|
169
|
+
'- "Add a validation step before processing"',
|
|
170
|
+
""
|
|
171
|
+
);
|
|
172
|
+
} else if (persona === "lowcode") {
|
|
173
|
+
lines.push(
|
|
174
|
+
"A Flow Weaver workflow project.",
|
|
175
|
+
"",
|
|
176
|
+
"## Development",
|
|
177
|
+
"",
|
|
178
|
+
"```sh",
|
|
179
|
+
"npm run dev # Compile and run",
|
|
180
|
+
"npm run compile # Compile only",
|
|
181
|
+
"npm run validate # Check for errors",
|
|
182
|
+
"```",
|
|
183
|
+
"",
|
|
184
|
+
"## Templates",
|
|
185
|
+
"",
|
|
186
|
+
"Browse and add more workflows:",
|
|
187
|
+
"",
|
|
188
|
+
"```sh",
|
|
189
|
+
"fw templates # List all templates",
|
|
190
|
+
"fw create workflow <template> <file> # Add a workflow",
|
|
191
|
+
"fw describe src/*.ts --format ascii # See workflow structure",
|
|
192
|
+
"```",
|
|
193
|
+
""
|
|
194
|
+
);
|
|
195
|
+
} else {
|
|
196
|
+
lines.push(
|
|
197
|
+
"A Flow Weaver workflow project.",
|
|
198
|
+
"",
|
|
199
|
+
"## Commands",
|
|
200
|
+
"",
|
|
201
|
+
"```sh",
|
|
202
|
+
"npm run dev # Compile and run",
|
|
203
|
+
"npm run compile # Compile only",
|
|
204
|
+
"npm run validate # Check for errors",
|
|
205
|
+
"```",
|
|
206
|
+
""
|
|
207
|
+
);
|
|
208
|
+
}
|
|
209
|
+
lines.push(
|
|
210
|
+
"## Learn more",
|
|
211
|
+
"",
|
|
212
|
+
"- `fw console --open` to see the workflow as a process, run it and watch it from the browser",
|
|
213
|
+
"- `fw docs` to browse reference documentation",
|
|
214
|
+
"- `fw mcp-setup` to connect AI editors",
|
|
215
|
+
""
|
|
216
|
+
);
|
|
217
|
+
return lines.join("\n");
|
|
218
|
+
}
|
|
219
|
+
function generateExampleWorkflow(projectName) {
|
|
220
|
+
const name = projectName.replace(/[-_.]+(.)?/g, (_, c) => c ? c.toUpperCase() : "").replace(/^[^a-zA-Z_$]+/, "").replace(/^./, (c) => c.toLowerCase());
|
|
221
|
+
const fnName = (name || "example") + "Example";
|
|
222
|
+
return `/**
|
|
223
|
+
* Example: a minimal workflow to study and experiment with.
|
|
224
|
+
* Copy patterns from here into your main workflow.
|
|
225
|
+
*/
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* @flowWeaver nodeType
|
|
229
|
+
* @expression
|
|
230
|
+
* @label Greet
|
|
231
|
+
* @input name [order:0] - Name to greet
|
|
232
|
+
* @output greeting [order:0] - Greeting message
|
|
233
|
+
*/
|
|
234
|
+
function greet(name: string): { greeting: string } {
|
|
235
|
+
return { greeting: \`Hello, \${name}!\` };
|
|
236
|
+
}
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* @flowWeaver nodeType
|
|
240
|
+
* @expression
|
|
241
|
+
* @label Uppercase
|
|
242
|
+
* @input text [order:0] - Text to uppercase
|
|
243
|
+
* @output result [order:0] - Uppercased text
|
|
244
|
+
*/
|
|
245
|
+
function uppercase(text: string): { result: string } {
|
|
246
|
+
return { result: text.toUpperCase() };
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
/**
|
|
250
|
+
* @flowWeaver workflow
|
|
251
|
+
* @node greeter greet
|
|
252
|
+
* @node upper uppercase
|
|
253
|
+
* @path Start -> greeter -> upper -> Exit
|
|
254
|
+
* @connect greeter.greeting -> upper.text
|
|
255
|
+
* @param execute [order:0] - Execute
|
|
256
|
+
* @param name [order:1] - Name to greet
|
|
257
|
+
* @returns onSuccess [order:0] - On Success
|
|
258
|
+
* @returns onFailure [order:1] - On Failure
|
|
259
|
+
* @returns result [order:2] - Final greeting
|
|
260
|
+
*/
|
|
261
|
+
export function ${fnName}(
|
|
262
|
+
execute: boolean,
|
|
263
|
+
params: { name: string }
|
|
264
|
+
): { onSuccess: boolean; onFailure: boolean; result: string } {
|
|
265
|
+
throw new Error("Compile with: fw compile <file>");
|
|
266
|
+
}
|
|
267
|
+
`;
|
|
268
|
+
}
|
|
269
|
+
function printNextSteps(opts) {
|
|
270
|
+
const { projectName, persona, displayDir, installSkipped, workflowCode, workflowFile, agentLaunched, compiled } = opts;
|
|
271
|
+
if (workflowCode) {
|
|
272
|
+
const preview = extractWorkflowPreview(workflowCode);
|
|
273
|
+
if (preview) {
|
|
274
|
+
logger.newline();
|
|
275
|
+
logger.log(` ${logger.bold("Your workflow")}`);
|
|
276
|
+
logger.newline();
|
|
277
|
+
logger.log(` ${logger.dim(preview)}`);
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
if (persona !== "expert") {
|
|
281
|
+
logger.newline();
|
|
282
|
+
logger.log(` ${logger.bold("Project files")}`);
|
|
283
|
+
logger.newline();
|
|
284
|
+
const wfDesc = workflowFileDesc(persona);
|
|
285
|
+
logger.log(` ${logger.highlight(`src/${workflowFile}`)}${pad(`src/${workflowFile}`, 32)}${wfDesc}`);
|
|
286
|
+
logger.log(` ${logger.highlight("src/main.ts")}${pad("src/main.ts", 32)}${FILE_DESCRIPTIONS["src/main.ts"]}`);
|
|
287
|
+
logger.log(` ${logger.highlight("package.json")}${pad("package.json", 32)}${FILE_DESCRIPTIONS["package.json"]}`);
|
|
288
|
+
logger.log(` ${logger.highlight("tsconfig.json")}${pad("tsconfig.json", 32)}${FILE_DESCRIPTIONS["tsconfig.json"]}`);
|
|
289
|
+
}
|
|
290
|
+
logger.newline();
|
|
291
|
+
logger.log(` ${logger.bold("Next steps")}`);
|
|
292
|
+
logger.newline();
|
|
293
|
+
if (displayDir) {
|
|
294
|
+
logger.log(` cd ${displayDir}`);
|
|
295
|
+
}
|
|
296
|
+
if (installSkipped) {
|
|
297
|
+
logger.log(" npm install");
|
|
298
|
+
}
|
|
299
|
+
if (compiled) {
|
|
300
|
+
logger.log(` npm start${" ".repeat(14)}${logger.dim("Run your compiled workflow")}`);
|
|
301
|
+
logger.log(` npm run dev${" ".repeat(12)}${logger.dim("Recompile + run (after editing)")}`);
|
|
302
|
+
} else {
|
|
303
|
+
logger.log(" npm run dev");
|
|
304
|
+
}
|
|
305
|
+
logger.log(` npx fw console --open${" ".repeat(2)}${logger.dim("See it as a process. Run it and watch it from the browser")}`);
|
|
306
|
+
if (!agentLaunched) {
|
|
307
|
+
if (persona === "nocode") {
|
|
308
|
+
printNocodeGuidance(projectName);
|
|
309
|
+
} else if (persona === "vibecoder") {
|
|
310
|
+
printVibecoderGuidance();
|
|
311
|
+
} else if (persona === "lowcode") {
|
|
312
|
+
printLowcodeGuidance();
|
|
313
|
+
} else {
|
|
314
|
+
printExpertGuidance();
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
logger.newline();
|
|
318
|
+
}
|
|
319
|
+
function printNocodeGuidance(_projectName) {
|
|
320
|
+
logger.newline();
|
|
321
|
+
logger.log(` ${logger.bold("Your project is ready for AI-assisted building.")}`);
|
|
322
|
+
logger.log(" Open it in your AI editor and describe what you want:");
|
|
323
|
+
logger.newline();
|
|
324
|
+
logger.log(` ${logger.dim('"Change this to fetch data from an API and validate the response"')}`);
|
|
325
|
+
logger.log(` ${logger.dim('"Add error handling so failures get logged and retried"')}`);
|
|
326
|
+
logger.log(` ${logger.dim('"Show me a diagram of my workflow"')}`);
|
|
327
|
+
logger.newline();
|
|
328
|
+
logger.log(` ${logger.bold("Useful commands")}`);
|
|
329
|
+
logger.newline();
|
|
330
|
+
logger.log(` npx fw run src/*.ts ${logger.dim("Run your workflow")}`);
|
|
331
|
+
logger.log(` npx fw diagram src/*.ts ${logger.dim("See a visual diagram")}`);
|
|
332
|
+
logger.log(` npx fw mcp-setup ${logger.dim("Connect more AI editors")}`);
|
|
333
|
+
}
|
|
334
|
+
function printVibecoderGuidance() {
|
|
335
|
+
logger.newline();
|
|
336
|
+
logger.log(` ${logger.bold("Describe what you want, AI handles the code.")}`);
|
|
337
|
+
logger.newline();
|
|
338
|
+
logger.log(` ${logger.dim('"Add a retry loop when the model call fails"')}`);
|
|
339
|
+
logger.log(` ${logger.dim('"Connect this to a Postgres database"')}`);
|
|
340
|
+
logger.log(` ${logger.dim('"Show me a diagram of the current workflow"')}`);
|
|
341
|
+
logger.newline();
|
|
342
|
+
logger.log(` ${logger.bold("When you want to see the structure")}`);
|
|
343
|
+
logger.newline();
|
|
344
|
+
logger.log(` npm run diagram ${logger.dim("Visual diagram of your workflow")}`);
|
|
345
|
+
}
|
|
346
|
+
function printLowcodeGuidance() {
|
|
347
|
+
logger.newline();
|
|
348
|
+
logger.log(` ${logger.bold("Explore and customize")}`);
|
|
349
|
+
logger.newline();
|
|
350
|
+
logger.log(` npx fw templates ${logger.dim("List the workflow and node templates")}`);
|
|
351
|
+
logger.log(` npx fw describe src/*.ts ${logger.dim("See the workflow structure")}`);
|
|
352
|
+
logger.log(` npx fw docs annotations ${logger.dim("Annotation reference")}`);
|
|
353
|
+
logger.newline();
|
|
354
|
+
logger.log(` Your project includes an example in ${logger.highlight("examples/")} to study.`);
|
|
355
|
+
logger.log(` With MCP connected, AI can help modify nodes and connections.`);
|
|
356
|
+
}
|
|
357
|
+
function printExpertGuidance() {
|
|
358
|
+
logger.newline();
|
|
359
|
+
logger.log(` npx fw mcp-setup ${logger.dim("Connect AI editors (Claude, Cursor, VS Code)")}`);
|
|
360
|
+
logger.log(` npx fw docs ${logger.dim("Browse reference docs")}`);
|
|
361
|
+
}
|
|
362
|
+
function pad(displayName, width) {
|
|
363
|
+
const padding = Math.max(1, width - displayName.length);
|
|
364
|
+
return " ".repeat(padding);
|
|
365
|
+
}
|
|
366
|
+
var AGENT_CONTEXT_PRESETS = {
|
|
367
|
+
nocode: "core",
|
|
368
|
+
vibecoder: "core",
|
|
369
|
+
lowcode: "core",
|
|
370
|
+
expert: "core"
|
|
371
|
+
};
|
|
372
|
+
var BOOTSTRAP = 'Before doing anything else, call fw_context(preset="core", profile="assistant"). It is a short map of Flow Weaver. When a task needs more, load the topic it points to with fw_docs rather than reading everything up front.';
|
|
373
|
+
var AGENT_PROMPTS = {
|
|
374
|
+
nocode: `${BOOTSTRAP}
|
|
375
|
+
|
|
376
|
+
I just created a new Flow Weaver project called "{name}" using the {template} template.
|
|
377
|
+
Help me set it up step by step:
|
|
378
|
+
|
|
379
|
+
1. Show the current workflow as a diagram (use fw_diagram, ascii-compact)
|
|
380
|
+
2. Walk me through what each step does in plain language
|
|
381
|
+
3. Ask me what I want this workflow to do
|
|
382
|
+
4. Based on my answer:
|
|
383
|
+
- Customize the workflow (add/remove/rename steps with fw_modify)
|
|
384
|
+
- Implement each step with real working code in its node function
|
|
385
|
+
- Set up supporting files if needed (.env template, basic tests)
|
|
386
|
+
5. Show the final result as a step list and diagram
|
|
387
|
+
|
|
388
|
+
Keep everything in plain language. Don't show code unless I ask.`,
|
|
389
|
+
vibecoder: `${BOOTSTRAP}
|
|
390
|
+
|
|
391
|
+
I just created a new Flow Weaver project called "{name}" using the {template} template.
|
|
392
|
+
Let's set it up together:
|
|
393
|
+
|
|
394
|
+
1. Show the workflow diagram and briefly explain the structure
|
|
395
|
+
2. Ask what I want to build, then iterate with me
|
|
396
|
+
3. Customize the workflow, implement the nodes, add supporting files
|
|
397
|
+
4. Show code when it's relevant, I'm comfortable reading and tweaking it
|
|
398
|
+
5. Show the final diagram when we're done`,
|
|
399
|
+
lowcode: `${BOOTSTRAP}
|
|
400
|
+
|
|
401
|
+
I just created a new Flow Weaver project called "{name}" using the {template} template.
|
|
402
|
+
Help me customize it:
|
|
403
|
+
|
|
404
|
+
1. Show the workflow diagram and explain what the template gives me
|
|
405
|
+
2. Ask what I want this workflow to do
|
|
406
|
+
3. Customize: rename nodes, adjust connections, implement the functions
|
|
407
|
+
4. Add supporting files if needed (.env, tests)
|
|
408
|
+
5. Show the final diagram
|
|
409
|
+
|
|
410
|
+
I prefer working from templates and making targeted changes.`,
|
|
411
|
+
expert: `${BOOTSTRAP}
|
|
412
|
+
|
|
413
|
+
New Flow Weaver project "{name}" (template: {template}).
|
|
414
|
+
Show the workflow diagram (fw_diagram, ascii-compact) and validate it (fw_validate).
|
|
415
|
+
Then ask what I'd like to build.`
|
|
416
|
+
};
|
|
417
|
+
function generateAgentPrompt(projectName, persona, template, useCaseDescription) {
|
|
418
|
+
let prompt = AGENT_PROMPTS[persona].replace(/\{name\}/g, projectName).replace(/\{template\}/g, template);
|
|
419
|
+
if (useCaseDescription) {
|
|
420
|
+
prompt = prompt.replace(
|
|
421
|
+
/(using the .+ template\.?\n)/,
|
|
422
|
+
`$1The user wants to build: ${useCaseDescription}
|
|
423
|
+
`
|
|
424
|
+
);
|
|
425
|
+
}
|
|
426
|
+
return prompt;
|
|
427
|
+
}
|
|
428
|
+
function generateEditorPrompt(projectName, persona, template, useCaseDescription) {
|
|
429
|
+
const preset = AGENT_CONTEXT_PRESETS[persona];
|
|
430
|
+
const bootstrap = `Start by calling fw_context(preset="${preset}", profile="assistant") for a short map of Flow Weaver, then read further topics with fw_docs as the task needs them.`;
|
|
431
|
+
const desc = useCaseDescription ? ` I want to build: ${useCaseDescription}.` : "";
|
|
432
|
+
if (persona === "nocode") {
|
|
433
|
+
return `${bootstrap}
|
|
434
|
+
This is a Flow Weaver project called "${projectName}" using the ${template} template.${desc} Show me the workflow diagram, walk me through what each step does in plain language, then ask me what I want to build. Keep it simple, no code.`;
|
|
435
|
+
}
|
|
436
|
+
if (persona === "vibecoder") {
|
|
437
|
+
return `${bootstrap}
|
|
438
|
+
This is a Flow Weaver project called "${projectName}" using the ${template} template.${desc} Show me the workflow diagram, then let's iterate on it together. I'll describe what I want and you handle the implementation.`;
|
|
439
|
+
}
|
|
440
|
+
if (persona === "lowcode") {
|
|
441
|
+
return `${bootstrap}
|
|
442
|
+
This is a Flow Weaver project called "${projectName}" using the ${template} template.${desc} Show me the workflow diagram and explain the template, then help me customize it for my use case.`;
|
|
443
|
+
}
|
|
444
|
+
return `${bootstrap}
|
|
445
|
+
Flow Weaver project "${projectName}" (template: ${template}). Show the workflow diagram and implementation status.`;
|
|
446
|
+
}
|
|
447
|
+
function generateSetupPromptFile(projectName, persona, template, filesCreated, useCaseDescription) {
|
|
448
|
+
const prompt = generateAgentPrompt(projectName, persona, template, useCaseDescription);
|
|
449
|
+
const contextResult = buildContext({ preset: "core", profile: "assistant" });
|
|
450
|
+
const lines = [
|
|
451
|
+
`# ${projectName} Setup`,
|
|
452
|
+
"",
|
|
453
|
+
'Paste this into your AI editor chat, or ask it to "follow the instructions in PROJECT_SETUP.md".',
|
|
454
|
+
"",
|
|
455
|
+
"---",
|
|
456
|
+
"",
|
|
457
|
+
prompt,
|
|
458
|
+
"",
|
|
459
|
+
"---",
|
|
460
|
+
"",
|
|
461
|
+
"## Flow Weaver Reference",
|
|
462
|
+
"",
|
|
463
|
+
"The following is embedded Flow Weaver documentation so you can work with this project",
|
|
464
|
+
"even before MCP tools are connected. For deeper topics, call `fw_docs` once MCP is available.",
|
|
465
|
+
"",
|
|
466
|
+
contextResult.content,
|
|
467
|
+
"",
|
|
468
|
+
"---",
|
|
469
|
+
"",
|
|
470
|
+
"## Project context",
|
|
471
|
+
"",
|
|
472
|
+
`- **Template**: ${template}`,
|
|
473
|
+
`- **Persona**: ${persona}`,
|
|
474
|
+
"",
|
|
475
|
+
"### Files created",
|
|
476
|
+
"",
|
|
477
|
+
...filesCreated.map((f) => `- \`${f}\``),
|
|
478
|
+
"",
|
|
479
|
+
"### Available Flow Weaver MCP tools",
|
|
480
|
+
"",
|
|
481
|
+
"Your AI editor has access to the Flow Weaver MCP tools, including:",
|
|
482
|
+
'- `fw_diagram` - Generate workflow diagrams (use format "ascii-compact" in chat)',
|
|
483
|
+
"- `fw_modify` / `fw_modify_batch` - Add/remove/rename nodes and connections",
|
|
484
|
+
"- `fw_validate` - Check for errors",
|
|
485
|
+
"- `fw_compile` - Generate executable code",
|
|
486
|
+
"- `fw_describe` - Inspect workflow structure",
|
|
487
|
+
"- `fw_run` / `fw_resume` - Run a workflow and answer any gate it pauses at",
|
|
488
|
+
"- `fw_docs` - Look up any topic; `fw_docs read mcp-tools` lists every tool",
|
|
489
|
+
"",
|
|
490
|
+
"*Delete this file after your initial setup is complete.*",
|
|
491
|
+
""
|
|
492
|
+
];
|
|
493
|
+
return lines.join("\n");
|
|
494
|
+
}
|
|
495
|
+
function printCopyablePrompt(prompt) {
|
|
496
|
+
const maxInner = 70;
|
|
497
|
+
const wrapped = [];
|
|
498
|
+
for (const raw of prompt.split("\n")) {
|
|
499
|
+
if (raw.length <= maxInner) {
|
|
500
|
+
wrapped.push(raw);
|
|
501
|
+
} else {
|
|
502
|
+
let remaining = raw;
|
|
503
|
+
while (remaining.length > maxInner) {
|
|
504
|
+
let breakAt = remaining.lastIndexOf(" ", maxInner);
|
|
505
|
+
if (breakAt <= 0) breakAt = maxInner;
|
|
506
|
+
wrapped.push(remaining.slice(0, breakAt));
|
|
507
|
+
remaining = remaining.slice(breakAt).replace(/^ /, "");
|
|
508
|
+
}
|
|
509
|
+
if (remaining) wrapped.push(remaining);
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
const width = maxInner + 2;
|
|
513
|
+
logger.newline();
|
|
514
|
+
logger.log(` ${logger.bold("Paste this into your AI editor to get started:")}`);
|
|
515
|
+
logger.newline();
|
|
516
|
+
logger.log(` ${"\u250C" + "\u2500".repeat(width) + "\u2510"}`);
|
|
517
|
+
for (const line of wrapped) {
|
|
518
|
+
const padded = line + " ".repeat(Math.max(0, maxInner - line.length));
|
|
519
|
+
logger.log(` \u2502 ${padded} \u2502`);
|
|
520
|
+
}
|
|
521
|
+
logger.log(` ${"\u2514" + "\u2500".repeat(width) + "\u2518"}`);
|
|
522
|
+
try {
|
|
523
|
+
const clipCmd = process.platform === "darwin" ? "pbcopy" : process.platform === "linux" ? "xclip -selection clipboard" : null;
|
|
524
|
+
if (clipCmd) {
|
|
525
|
+
execSync(clipCmd, { input: prompt, stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 });
|
|
526
|
+
logger.newline();
|
|
527
|
+
logger.success("Copied to clipboard");
|
|
528
|
+
}
|
|
529
|
+
} catch {
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
var AGENT_LAUNCH_DEFAULTS = {
|
|
533
|
+
nocode: true,
|
|
534
|
+
vibecoder: true,
|
|
535
|
+
lowcode: true,
|
|
536
|
+
expert: false
|
|
537
|
+
};
|
|
538
|
+
|
|
539
|
+
export {
|
|
540
|
+
PERSONA_CHOICES,
|
|
541
|
+
PERSONA_CONFIRMATIONS,
|
|
542
|
+
USE_CASE_CHOICES,
|
|
543
|
+
USE_CASE_TEMPLATES,
|
|
544
|
+
registerPackUseCase,
|
|
545
|
+
selectTemplateForPersona,
|
|
546
|
+
getTemplateSubChoices,
|
|
547
|
+
extractWorkflowPreview,
|
|
548
|
+
FILE_DESCRIPTIONS,
|
|
549
|
+
generateReadme,
|
|
550
|
+
generateExampleWorkflow,
|
|
551
|
+
printNextSteps,
|
|
552
|
+
AGENT_CONTEXT_PRESETS,
|
|
553
|
+
generateAgentPrompt,
|
|
554
|
+
generateEditorPrompt,
|
|
555
|
+
generateSetupPromptFile,
|
|
556
|
+
printCopyablePrompt,
|
|
557
|
+
AGENT_LAUNCH_DEFAULTS
|
|
558
|
+
};
|