@axhub/genie 0.1.8 → 0.2.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 +1 -1
- package/dist/api-docs.html +6 -6
- package/dist/assets/App-BfaNALgf.js +504 -0
- package/dist/assets/App-qxJ8_QYu.css +32 -0
- package/dist/assets/ReviewApp-DIT2yWk-.js +1 -0
- package/dist/assets/_basePickBy-Dz3NcIVK.js +1 -0
- package/dist/assets/_baseUniq-DON_Sg7x.js +1 -0
- package/dist/assets/abap-BdImnpbu.js +1 -0
- package/dist/assets/actionscript-3-CoDkCxhg.js +1 -0
- package/dist/assets/ada-bCR0ucgS.js +1 -0
- package/dist/assets/andromeeda-C4gqWexZ.js +1 -0
- package/dist/assets/angular-html-CU67Zn6k.js +1 -0
- package/dist/assets/angular-ts-BwZT4LLn.js +1 -0
- package/dist/assets/apache-Pmp26Uib.js +1 -0
- package/dist/assets/apex-D8_7TLub.js +1 -0
- package/dist/assets/apl-dKokRX4l.js +1 -0
- package/dist/assets/applescript-Co6uUVPk.js +1 -0
- package/dist/assets/ara-BRHolxvo.js +1 -0
- package/dist/assets/arc-Y4G80q-l.js +1 -0
- package/dist/assets/architectureDiagram-2XIMDMQ5-D_qR4657.js +36 -0
- package/dist/assets/asciidoc-Ve4PFQV2.js +1 -0
- package/dist/assets/asm-D_Q5rh1f.js +1 -0
- package/dist/assets/astro-CbQHKStN.js +1 -0
- package/dist/assets/aurora-x-D-2ljcwZ.js +1 -0
- package/dist/assets/awk-DMzUqQB5.js +1 -0
- package/dist/assets/ayu-dark-DYE7WIF3.js +1 -0
- package/dist/assets/ayu-light-BA47KaF1.js +1 -0
- package/dist/assets/ayu-mirage-32ctXXKs.js +1 -0
- package/dist/assets/ballerina-BFfxhgS-.js +1 -0
- package/dist/assets/bat-BkioyH1T.js +1 -0
- package/dist/assets/beancount-k_qm7-4y.js +1 -0
- package/dist/assets/berry-uYugtg8r.js +1 -0
- package/dist/assets/bibtex-CHM0blh-.js +1 -0
- package/dist/assets/bicep-Bmn6On1c.js +1 -0
- package/dist/assets/bird2-DPOp833l.js +1 -0
- package/dist/assets/blade-D4QpJJKB.js +1 -0
- package/dist/assets/blockDiagram-WCTKOSBZ-NsmAlV5_.js +132 -0
- package/dist/assets/bsl-BO_Y6i37.js +1 -0
- package/dist/assets/c-BIGW1oBm.js +1 -0
- package/dist/assets/c3-eo99z4R2.js +1 -0
- package/dist/assets/c4Diagram-IC4MRINW-cbOJM4yr.js +10 -0
- package/dist/assets/cadence-Bv_4Rxtq.js +1 -0
- package/dist/assets/cairo-KRGpt6FW.js +1 -0
- package/dist/assets/catppuccin-frappe-DFWUc33u.js +1 -0
- package/dist/assets/catppuccin-latte-C9dUb6Cb.js +1 -0
- package/dist/assets/catppuccin-macchiato-DQyhUUbL.js +1 -0
- package/dist/assets/catppuccin-mocha-D87Tk5Gz.js +1 -0
- package/dist/assets/channel-C6KNnXlA.js +1 -0
- package/dist/assets/chunk-4BX2VUAB-bLBhl74J.js +1 -0
- package/dist/assets/chunk-55IACEB6-D8kNkDUO.js +1 -0
- package/dist/assets/chunk-FMBD7UC4-BjR6UbXB.js +15 -0
- package/dist/assets/chunk-JSJVCQXG-luNqWn64.js +1 -0
- package/dist/assets/chunk-KX2RTZJC-CNnKm6dK.js +1 -0
- package/dist/assets/chunk-NQ4KR5QH-Cp9gb43u.js +220 -0
- package/dist/assets/chunk-QZHKN3VN-HlVYo2Oq.js +1 -0
- package/dist/assets/chunk-WL4C6EOR-CjSZoOGO.js +189 -0
- package/dist/assets/clarity-D53aC0YG.js +1 -0
- package/dist/assets/classDiagram-VBA2DB6C-BQlzzlH7.js +1 -0
- package/dist/assets/classDiagram-v2-RAHNMMFH-BQlzzlH7.js +1 -0
- package/dist/assets/clojure-P80f7IUj.js +1 -0
- package/dist/assets/clone-DMxS3qWP.js +1 -0
- package/dist/assets/cmake-D1j8_8rp.js +1 -0
- package/dist/assets/cobol-nwyudZeR.js +1 -0
- package/dist/assets/codeowners-Bp6g37R7.js +1 -0
- package/dist/assets/codeql-DsOJ9woJ.js +1 -0
- package/dist/assets/coffee-Ch7k5sss.js +1 -0
- package/dist/assets/common-lisp-Cg-RD9OK.js +1 -0
- package/dist/assets/coq-DkFqJrB1.js +1 -0
- package/dist/assets/cose-bilkent-S5V4N54A-DZWRjeEd.js +1 -0
- package/dist/assets/cpp-CofmeUqb.js +1 -0
- package/dist/assets/crystal-tKQVLTB8.js +1 -0
- package/dist/assets/csharp-COcwbKMJ.js +1 -0
- package/dist/assets/css-DPfMkruS.js +1 -0
- package/dist/assets/csv-fuZLfV_i.js +1 -0
- package/dist/assets/cue-D82EKSYY.js +1 -0
- package/dist/assets/cypher-COkxafJQ.js +1 -0
- package/dist/assets/cytoscape.esm-2ZfV8NB5.js +331 -0
- package/dist/assets/d-85-TOEBH.js +1 -0
- package/dist/assets/dagre-KLK3FWXG-yAzUmqI7.js +4 -0
- package/dist/assets/dark-plus-C3mMm8J8.js +1 -0
- package/dist/assets/dart-CF10PKvl.js +1 -0
- package/dist/assets/dax-CEL-wOlO.js +1 -0
- package/dist/assets/defaultLocale-DX6XiGOO.js +1 -0
- package/dist/assets/desktop-BmXAJ9_W.js +1 -0
- package/dist/assets/diagram-E7M64L7V-CvzlIvDJ.js +24 -0
- package/dist/assets/diagram-IFDJBPK2-DFMIJpuM.js +43 -0
- package/dist/assets/diagram-P4PSJMXO-KL-J3gyb.js +24 -0
- package/dist/assets/diff-D97Zzqfu.js +1 -0
- package/dist/assets/docker-BcOcwvcX.js +1 -0
- package/dist/assets/dotenv-Da5cRb03.js +1 -0
- package/dist/assets/dracula-BzJJZx-M.js +1 -0
- package/dist/assets/dracula-soft-BXkSAIEj.js +1 -0
- package/dist/assets/dream-maker-BtqSS_iP.js +1 -0
- package/dist/assets/edge-BkV0erSs.js +1 -0
- package/dist/assets/elixir-CDX3lj18.js +1 -0
- package/dist/assets/elm-DbKCFpqz.js +1 -0
- package/dist/assets/emacs-lisp-C9XAeP06.js +1 -0
- package/dist/assets/erDiagram-INFDFZHY-BXszHbTM.js +70 -0
- package/dist/assets/erb-B12qg9BL.js +1 -0
- package/dist/assets/erlang-DsQrWhSR.js +1 -0
- package/dist/assets/everforest-dark-BgDCqdQA.js +1 -0
- package/dist/assets/everforest-light-C8M2exoo.js +1 -0
- package/dist/assets/fennel-BYunw83y.js +1 -0
- package/dist/assets/fish-BvzEVeQv.js +1 -0
- package/dist/assets/flowDiagram-PKNHOUZH-Ba43NVp6.js +162 -0
- package/dist/assets/fluent-C4IJs8-o.js +1 -0
- package/dist/assets/fortran-fixed-form-CkoXwp7k.js +1 -0
- package/dist/assets/fortran-free-form-BxgE0vQu.js +1 -0
- package/dist/assets/fsharp-CXgrBDvD.js +1 -0
- package/dist/assets/ganttDiagram-A5KZAMGK-uLHfhCrg.js +292 -0
- package/dist/assets/gdresource-BOOCDP_w.js +1 -0
- package/dist/assets/gdscript-C5YyOfLZ.js +1 -0
- package/dist/assets/gdshader-DkwncUOv.js +1 -0
- package/dist/assets/genie-D0YGMca9.js +1 -0
- package/dist/assets/gherkin-DyxjwDmM.js +1 -0
- package/dist/assets/git-commit-F4YmCXRG.js +1 -0
- package/dist/assets/git-rebase-r7XF79zn.js +1 -0
- package/dist/assets/gitGraphDiagram-K3NZZRJ6-BTEuFaiL.js +65 -0
- package/dist/assets/github-dark-DHJKELXO.js +1 -0
- package/dist/assets/github-dark-default-Cuk6v7N8.js +1 -0
- package/dist/assets/github-dark-dimmed-DH5Ifo-i.js +1 -0
- package/dist/assets/github-dark-high-contrast-E3gJ1_iC.js +1 -0
- package/dist/assets/github-light-DAi9KRSo.js +1 -0
- package/dist/assets/github-light-default-D7oLnXFd.js +1 -0
- package/dist/assets/github-light-high-contrast-BfjtVDDH.js +1 -0
- package/dist/assets/gleam-BspZqrRM.js +1 -0
- package/dist/assets/glimmer-js-Rg0-pVw9.js +1 -0
- package/dist/assets/glimmer-ts-U6CK756n.js +1 -0
- package/dist/assets/glsl-DplSGwfg.js +1 -0
- package/dist/assets/gn-n2N0HUVH.js +1 -0
- package/dist/assets/gnuplot-DdkO51Og.js +1 -0
- package/dist/assets/go-CxLEBnE3.js +1 -0
- package/dist/assets/graph-h2nuWjx4.js +1 -0
- package/dist/assets/graphql-ChdNCCLP.js +1 -0
- package/dist/assets/groovy-gcz8RCvz.js +1 -0
- package/dist/assets/gruvbox-dark-hard-CFHQjOhq.js +1 -0
- package/dist/assets/gruvbox-dark-medium-GsRaNv29.js +1 -0
- package/dist/assets/gruvbox-dark-soft-CVdnzihN.js +1 -0
- package/dist/assets/gruvbox-light-hard-CH1njM8p.js +1 -0
- package/dist/assets/gruvbox-light-medium-DRw_LuNl.js +1 -0
- package/dist/assets/gruvbox-light-soft-hJgmCMqR.js +1 -0
- package/dist/assets/hack-CaT9iCJl.js +1 -0
- package/dist/assets/haml-B8DHNrY2.js +1 -0
- package/dist/assets/handlebars-BL8al0AC.js +1 -0
- package/dist/assets/haskell-Df6bDoY_.js +1 -0
- package/dist/assets/haxe-CzTSHFRz.js +1 -0
- package/dist/assets/hcl-BWvSN4gD.js +1 -0
- package/dist/assets/highlighted-body-TPN3WLV5-C6BY7XZJ.js +1 -0
- package/dist/assets/hjson-D5-asLiD.js +1 -0
- package/dist/assets/hlsl-D3lLCCz7.js +1 -0
- package/dist/assets/horizon-BUw7H-hv.js +1 -0
- package/dist/assets/horizon-bright-Cn-bp-IR.js +1 -0
- package/dist/assets/houston-DnULxvSX.js +1 -0
- package/dist/assets/html-GMplVEZG.js +1 -0
- package/dist/assets/html-derivative-BFtXZ54Q.js +1 -0
- package/dist/assets/http-jrhK8wxY.js +1 -0
- package/dist/assets/hurl-irOxFIW8.js +1 -0
- package/dist/assets/hxml-Bvhsp5Yf.js +1 -0
- package/dist/assets/hy-DFXneXwc.js +1 -0
- package/dist/assets/imba-DGztddWO.js +1 -0
- package/dist/assets/index-2198VgsK.css +1 -0
- package/dist/assets/index-C6Bb2jGF.js +2 -0
- package/dist/assets/infoDiagram-LFFYTUFH-BOLfvCIq.js +2 -0
- package/dist/assets/ini-BEwlwnbL.js +1 -0
- package/dist/assets/init-Gi6I4Gst.js +1 -0
- package/dist/assets/ishikawaDiagram-PHBUUO56-BRzQ1ee5.js +70 -0
- package/dist/assets/java-CylS5w8V.js +1 -0
- package/dist/assets/javascript-wDzz0qaB.js +1 -0
- package/dist/assets/jinja-4LBKfQ-Z.js +1 -0
- package/dist/assets/jison-wvAkD_A8.js +1 -0
- package/dist/assets/journeyDiagram-4ABVD52K-DXm_VcMy.js +139 -0
- package/dist/assets/json-Cp-IABpG.js +1 -0
- package/dist/assets/json5-C9tS-k6U.js +1 -0
- package/dist/assets/jsonc-Des-eS-w.js +1 -0
- package/dist/assets/jsonl-DcaNXYhu.js +1 -0
- package/dist/assets/jsonnet-DFQXde-d.js +1 -0
- package/dist/assets/jssm-C2t-YnRu.js +1 -0
- package/dist/assets/jsx-g9-lgVsj.js +1 -0
- package/dist/assets/julia-CxzCAyBv.js +1 -0
- package/dist/assets/just-Cw27pwNe.js +1 -0
- package/dist/assets/kanagawa-dragon-CkXjmgJE.js +1 -0
- package/dist/assets/kanagawa-lotus-CfQXZHmo.js +1 -0
- package/dist/assets/kanagawa-wave-DWedfzmr.js +1 -0
- package/dist/assets/kanban-definition-K7BYSVSG-D_oyzopl.js +89 -0
- package/dist/assets/kdl-DV7GczEv.js +1 -0
- package/dist/assets/kotlin-BdnUsdx6.js +1 -0
- package/dist/assets/kusto-DZf3V79B.js +1 -0
- package/dist/assets/laserwave-DUszq2jm.js +1 -0
- package/dist/assets/latex-CWtU0Tv5.js +1 -0
- package/dist/assets/layout-Q8YoR_E1.js +1 -0
- package/dist/assets/lean-BZvkOJ9d.js +1 -0
- package/dist/assets/less-B1dDrJ26.js +1 -0
- package/dist/assets/light-plus-B7mTdjB0.js +1 -0
- package/dist/assets/linear-B3qNg7di.js +1 -0
- package/dist/assets/liquid-DYVedYrR.js +1 -0
- package/dist/assets/llvm-DjAJT7YJ.js +1 -0
- package/dist/assets/log-2UxHyX5q.js +1 -0
- package/dist/assets/logo-BtOb2qkB.js +1 -0
- package/dist/assets/lua-BaeVxFsk.js +1 -0
- package/dist/assets/luau-C-HG3fhB.js +1 -0
- package/dist/assets/make-CHLpvVh8.js +1 -0
- package/dist/assets/markdown-Cvjx9yec.js +1 -0
- package/dist/assets/marko-CnJfTvn9.js +1 -0
- package/dist/assets/material-theme-D5KoaKCx.js +1 -0
- package/dist/assets/material-theme-darker-BfHTSMKl.js +1 -0
- package/dist/assets/material-theme-lighter-B0m2ddpp.js +1 -0
- package/dist/assets/material-theme-ocean-CyktbL80.js +1 -0
- package/dist/assets/material-theme-palenight-Csfq5Kiy.js +1 -0
- package/dist/assets/matlab-D7o27uSR.js +1 -0
- package/dist/assets/mdc-BMNejdWA.js +1 -0
- package/dist/assets/mdx-Cmh6b_Ma.js +1 -0
- package/dist/assets/mermaid-O7DHMXV3-BVZ_4MKo.js +988 -0
- package/dist/assets/mermaid-mWjccvbQ.js +1 -0
- package/dist/assets/min-dark-CafNBF8u.js +1 -0
- package/dist/assets/min-light-CTRr51gU.js +1 -0
- package/dist/assets/mindmap-definition-YRQLILUH-CjulgYdi.js +68 -0
- package/dist/assets/mipsasm-CKIfxQSi.js +1 -0
- package/dist/assets/mojo-rZm6bMo-.js +1 -0
- package/dist/assets/monokai-D4h5O-jR.js +1 -0
- package/dist/assets/moonbit-_H4v1dQx.js +1 -0
- package/dist/assets/move-IF9eRakj.js +1 -0
- package/dist/assets/narrat-DRg8JJMk.js +1 -0
- package/dist/assets/nextflow-Zz6hmt5N.js +1 -0
- package/dist/assets/nextflow-groovy-BeH2EWoN.js +1 -0
- package/dist/assets/nginx-BpAMiNFr.js +1 -0
- package/dist/assets/night-owl-C39BiMTA.js +1 -0
- package/dist/assets/night-owl-light-CMTm3GFP.js +1 -0
- package/dist/assets/nim-CVrawwO9.js +1 -0
- package/dist/assets/nix-CwoSXNpI.js +1 -0
- package/dist/assets/nord-Ddv68eIx.js +1 -0
- package/dist/assets/nushell-Cz2AlsmD.js +1 -0
- package/dist/assets/objective-c-DXmwc3jG.js +1 -0
- package/dist/assets/objective-cpp-CLxacb5B.js +1 -0
- package/dist/assets/ocaml-C0hk2d4L.js +1 -0
- package/dist/assets/odin-BBf5iR-q.js +1 -0
- package/dist/assets/one-dark-pro-DVMEJ2y_.js +1 -0
- package/dist/assets/one-light-C3Wv6jpd.js +1 -0
- package/dist/assets/openscad-C4EeE6gA.js +1 -0
- package/dist/assets/ordinal-Cboi1Yqb.js +1 -0
- package/dist/assets/pascal-D93ZcfNL.js +1 -0
- package/dist/assets/perl-C0TMdlhV.js +1 -0
- package/dist/assets/php-Dhbhpdrm.js +1 -0
- package/dist/assets/pieDiagram-SKSYHLDU-8VzrefxA.js +30 -0
- package/dist/assets/pkl-u5AG7uiY.js +1 -0
- package/dist/assets/plastic-3e1v2bzS.js +1 -0
- package/dist/assets/plsql-ChMvpjG-.js +1 -0
- package/dist/assets/po-BTJTHyun.js +1 -0
- package/dist/assets/poimandres-CS3Unz2-.js +1 -0
- package/dist/assets/polar-C0HS_06l.js +1 -0
- package/dist/assets/postcss-CXtECtnM.js +1 -0
- package/dist/assets/powerquery-CEu0bR-o.js +1 -0
- package/dist/assets/powershell-Dpen1YoG.js +1 -0
- package/dist/assets/prisma-Dd19v3D-.js +1 -0
- package/dist/assets/prolog-CbFg5uaA.js +1 -0
- package/dist/assets/proto-C7zT0LnQ.js +1 -0
- package/dist/assets/pug-CGlum2m_.js +1 -0
- package/dist/assets/puppet-BMWR74SV.js +1 -0
- package/dist/assets/purescript-CklMAg4u.js +1 -0
- package/dist/assets/python-B6aJPvgy.js +1 -0
- package/dist/assets/qml-3beO22l8.js +1 -0
- package/dist/assets/qmldir-C8lEn-DE.js +1 -0
- package/dist/assets/qss-IeuSbFQv.js +1 -0
- package/dist/assets/quadrantDiagram-337W2JSQ-CFh-ijm2.js +7 -0
- package/dist/assets/r-Dspwwk_N.js +1 -0
- package/dist/assets/racket-BqYA7rlc.js +1 -0
- package/dist/assets/raku-DXvB9xmW.js +1 -0
- package/dist/assets/razor-Uh8Bk_45.js +1 -0
- package/dist/assets/red-bN70gL4F.js +1 -0
- package/dist/assets/reg-C-SQnVFl.js +1 -0
- package/dist/assets/regexp-CDVJQ6XC.js +1 -0
- package/dist/assets/rel-C3B-1QV4.js +1 -0
- package/dist/assets/requirementDiagram-Z7DCOOCP-BNPlTs5Q.js +73 -0
- package/dist/assets/riscv-BM1_JUlF.js +1 -0
- package/dist/assets/ron-D8l8udqQ.js +1 -0
- package/dist/assets/rose-pine-dawn-DHQR4-dF.js +1 -0
- package/dist/assets/rose-pine-moon-D4_iv3hh.js +1 -0
- package/dist/assets/rose-pine-qdsjHGoJ.js +1 -0
- package/dist/assets/rosmsg-BJDFO7_C.js +1 -0
- package/dist/assets/rst-BrH8l1NY.js +1 -0
- package/dist/assets/ruby-Dw2BHqvy.js +1 -0
- package/dist/assets/rust-B1yitclQ.js +1 -0
- package/dist/assets/sankeyDiagram-WA2Y5GQK-C5l_hYst.js +10 -0
- package/dist/assets/sas-cz2c8ADy.js +1 -0
- package/dist/assets/sass-Cj5Yp3dK.js +1 -0
- package/dist/assets/scala-C151Ov-r.js +1 -0
- package/dist/assets/scheme-C98Dy4si.js +1 -0
- package/dist/assets/scss-OYdSNvt2.js +1 -0
- package/dist/assets/sdbl-DVxCFoDh.js +1 -0
- package/dist/assets/sequenceDiagram-2WXFIKYE-B4a_rQw8.js +145 -0
- package/dist/assets/shaderlab-Dg9Lc6iA.js +1 -0
- package/dist/assets/shellscript-Yzrsuije.js +1 -0
- package/dist/assets/shellsession-BADoaaVG.js +1 -0
- package/dist/assets/slack-dark-BthQWCQV.js +1 -0
- package/dist/assets/slack-ochin-DqwNpetd.js +1 -0
- package/dist/assets/smalltalk-BERRCDM3.js +1 -0
- package/dist/assets/snazzy-light-Bw305WKR.js +1 -0
- package/dist/assets/solarized-dark-DXbdFlpD.js +1 -0
- package/dist/assets/solarized-light-L9t79GZl.js +1 -0
- package/dist/assets/solidity-rGO070M0.js +1 -0
- package/dist/assets/soy-Brmx7dQM.js +1 -0
- package/dist/assets/sparql-rVzFXLq3.js +1 -0
- package/dist/assets/splunk-BtCnVYZw.js +1 -0
- package/dist/assets/sql-BLtJtn59.js +1 -0
- package/dist/assets/ssh-config-_ykCGR6B.js +1 -0
- package/dist/assets/stata-BH5u7GGu.js +1 -0
- package/dist/assets/stateDiagram-RAJIS63D-Bt4mMmKB.js +1 -0
- package/dist/assets/stateDiagram-v2-FVOUBMTO-6NYMazfq.js +1 -0
- package/dist/assets/stylus-BEDo0Tqx.js +1 -0
- package/dist/assets/surrealql-Bq5Q-fJD.js +1 -0
- package/dist/assets/svelte-C_ipcX3V.js +1 -0
- package/dist/assets/swift-D82vCrfD.js +1 -0
- package/dist/assets/synthwave-84-CbfX1IO0.js +1 -0
- package/dist/assets/system-verilog-CnnmHF94.js +1 -0
- package/dist/assets/systemd-4A_iFExJ.js +1 -0
- package/dist/assets/talonscript-CkByrt1z.js +1 -0
- package/dist/assets/tasl-QIJgUcNo.js +1 -0
- package/dist/assets/tcl-dwOrl1Do.js +1 -0
- package/dist/assets/templ-P3uqSqPl.js +1 -0
- package/dist/assets/terraform-BETggiCN.js +1 -0
- package/dist/assets/tex-idrVyKtj.js +1 -0
- package/dist/assets/timeline-definition-YZTLITO2-CLYvSw_R.js +61 -0
- package/dist/assets/tokyo-night-hegEt444.js +1 -0
- package/dist/assets/toml-vGWfd6FD.js +1 -0
- package/dist/assets/treemap-KZPCXAKY-ksND0hZK.js +162 -0
- package/dist/assets/ts-tags-zn1MmPIZ.js +1 -0
- package/dist/assets/tsv-B_m7g4N7.js +1 -0
- package/dist/assets/tsx-COt5Ahok.js +1 -0
- package/dist/assets/turtle-BsS91CYL.js +1 -0
- package/dist/assets/twig-DNn4PbVi.js +1 -0
- package/dist/assets/typescript-BPQ3VLAy.js +1 -0
- package/dist/assets/typespec-BGHnOYBU.js +1 -0
- package/dist/assets/typst-DHCkPAjA.js +1 -0
- package/dist/assets/v-BcVCzyr7.js +1 -0
- package/dist/assets/vala-CsfeWuGM.js +1 -0
- package/dist/assets/vb-D17OF-Vu.js +1 -0
- package/dist/assets/{vendor-codemirror-B88_OPWf.js → vendor-codemirror-Dz7_EqNA.js} +3 -3
- package/dist/assets/{vendor-react-C3RJLQGO.js → vendor-react-Cpt6D04s.js} +11 -11
- package/dist/assets/vennDiagram-LZ73GAT5-CaQg4oZK.js +34 -0
- package/dist/assets/verilog-BQ8w6xss.js +1 -0
- package/dist/assets/vesper-DU1UobuO.js +1 -0
- package/dist/assets/vhdl-CeAyd5Ju.js +1 -0
- package/dist/assets/viml-CJc9bBzg.js +1 -0
- package/dist/assets/vitesse-black-Bkuqu6BP.js +1 -0
- package/dist/assets/vitesse-dark-D0r3Knsf.js +1 -0
- package/dist/assets/vitesse-light-CVO1_9PV.js +1 -0
- package/dist/assets/vue-DN_0RTcg.js +1 -0
- package/dist/assets/vue-html-AaS7Mt5G.js +1 -0
- package/dist/assets/vue-vine-CQOfvN7w.js +1 -0
- package/dist/assets/vyper-CDx5xZoG.js +1 -0
- package/dist/assets/wasm-CG6Dc4jp.js +1 -0
- package/dist/assets/wasm-MzD3tlZU.js +1 -0
- package/dist/assets/wenyan-BV7otONQ.js +1 -0
- package/dist/assets/wgsl-Dx-B1_4e.js +1 -0
- package/dist/assets/wikitext-BhOHFoWU.js +1 -0
- package/dist/assets/wit-5i3qLPDT.js +1 -0
- package/dist/assets/wolfram-lXgVvXCa.js +1 -0
- package/dist/assets/xml-sdJ4AIDG.js +1 -0
- package/dist/assets/xsl-CtQFsRM5.js +1 -0
- package/dist/assets/xychartDiagram-JWTSCODW-C8dCbTeM.js +7 -0
- package/dist/assets/yaml-Buea-lGh.js +1 -0
- package/dist/assets/zenscript-DVFEvuxE.js +1 -0
- package/dist/assets/zig-VOosw3JB.js +1 -0
- package/dist/index.html +35 -21
- package/dist/manifest.json +1 -1
- package/dist/sw.js +18 -46
- package/package.json +12 -8
- package/server/bin/codex-sdk-wrapper.js +49 -0
- package/server/channels/runtime/AgentRuntimeAdapter.js +2 -5
- package/server/channels/store/ChannelStore.js +73 -107
- package/server/claude-sdk.js +160 -6
- package/server/cli.js +590 -32
- package/server/cli.test.js +76 -0
- package/server/database/db.js +438 -372
- package/server/external-agent/auth.js +88 -0
- package/server/external-agent/service.js +1052 -0
- package/server/external-agent/service.test.js +41 -0
- package/server/external-agent/ws.js +1526 -0
- package/server/external-agent/ws.test.js +289 -0
- package/server/gemini-cli.js +108 -20
- package/server/index.js +115 -121
- package/server/load-env.js +16 -13
- package/server/openai-codex.js +165 -11
- package/server/opencode-cli.js +3 -2
- package/server/projects.js +432 -338
- package/server/routes/agent.js +347 -459
- package/server/routes/auth.js +14 -36
- package/server/routes/cli-auth.js +60 -113
- package/server/routes/commands.js +16 -26
- package/server/routes/git.js +5 -16
- package/server/routes/projects.js +2 -7
- package/server/routes/session-core.js +177 -0
- package/server/session-core/abortSession.js +48 -0
- package/server/session-core/eventStore.js +139 -0
- package/server/session-core/providerAdapters.js +84 -0
- package/server/session-core/providerDiscovery.js +235 -0
- package/server/session-core/runtimeState.js +390 -0
- package/server/session-core/runtimeWriter.js +59 -0
- package/server/utils/agentCallback.js +273 -0
- package/server/utils/agentImages.js +253 -0
- package/server/utils/codexPath.js +47 -0
- package/server/utils/defaultWorkingDirectory.js +34 -0
- package/shared/conversationEvents.js +1071 -0
- package/shared/modelConstants.js +18 -24
- package/dist/assets/index-CVjMty4a.js +0 -902
- package/dist/assets/index-eo5scY_Z.css +0 -32
- package/server/cursor-cli.js +0 -276
- package/server/database/init.sql +0 -98
- package/server/routes/cursor.js +0 -795
package/server/openai-codex.js
CHANGED
|
@@ -15,9 +15,18 @@
|
|
|
15
15
|
|
|
16
16
|
import { Codex } from '@openai/codex-sdk';
|
|
17
17
|
import { parseCodexTurnUsage } from './utils/codexTokenUsage.js';
|
|
18
|
+
import { getCodexPathOverride } from './utils/codexPath.js';
|
|
19
|
+
import { cleanupMaterializedImages, materializeImagesToTempFiles } from './utils/agentImages.js';
|
|
20
|
+
import { resolveWorkingDirectory } from './utils/defaultWorkingDirectory.js';
|
|
18
21
|
|
|
19
22
|
// Track active sessions
|
|
20
23
|
const activeCodexSessions = new Map();
|
|
24
|
+
const CODEX_STREAM_START_TIMEOUT_MS = parseInt(process.env.CODEX_STREAM_START_TIMEOUT_MS, 10) || 20000;
|
|
25
|
+
const CODEX_MEANINGFUL_EVENT_TIMEOUT_MS = parseInt(process.env.CODEX_MEANINGFUL_EVENT_TIMEOUT_MS, 10) || 60000;
|
|
26
|
+
|
|
27
|
+
function isCodexPlaceholderSessionId(sessionId) {
|
|
28
|
+
return typeof sessionId === 'string' && /^codex-\d+$/.test(sessionId.trim());
|
|
29
|
+
}
|
|
21
30
|
|
|
22
31
|
/**
|
|
23
32
|
* Transform Codex SDK event to WebSocket message format
|
|
@@ -233,10 +242,11 @@ export async function queryCodex(command, options = {}, ws) {
|
|
|
233
242
|
projectPath,
|
|
234
243
|
model,
|
|
235
244
|
permissionMode = 'default',
|
|
236
|
-
modelReasoningEffort
|
|
245
|
+
modelReasoningEffort,
|
|
246
|
+
images
|
|
237
247
|
} = options;
|
|
238
248
|
|
|
239
|
-
const workingDirectory = cwd
|
|
249
|
+
const workingDirectory = resolveWorkingDirectory({ cwd, projectPath });
|
|
240
250
|
const { sandboxMode, approvalPolicy } = mapPermissionModeToCodexOptions(permissionMode);
|
|
241
251
|
|
|
242
252
|
let codex;
|
|
@@ -244,6 +254,75 @@ export async function queryCodex(command, options = {}, ws) {
|
|
|
244
254
|
let currentSessionId = sessionId;
|
|
245
255
|
let resolvedSessionIdFromEvent = null;
|
|
246
256
|
const streamedTextByItemId = new Map();
|
|
257
|
+
const streamAbortController = new AbortController();
|
|
258
|
+
let hasStreamEvent = false;
|
|
259
|
+
let startupTimeoutId = null;
|
|
260
|
+
let meaningfulEventTimeoutId = null;
|
|
261
|
+
let timeoutErrorMessage = null;
|
|
262
|
+
let terminalStatus = 'completed';
|
|
263
|
+
let shouldSendCompletionEvent = true;
|
|
264
|
+
let tempImagePaths = [];
|
|
265
|
+
let tempImageDir = null;
|
|
266
|
+
|
|
267
|
+
const clearStartupTimeout = () => {
|
|
268
|
+
if (startupTimeoutId) {
|
|
269
|
+
clearTimeout(startupTimeoutId);
|
|
270
|
+
startupTimeoutId = null;
|
|
271
|
+
}
|
|
272
|
+
};
|
|
273
|
+
|
|
274
|
+
const clearMeaningfulEventTimeout = () => {
|
|
275
|
+
if (meaningfulEventTimeoutId) {
|
|
276
|
+
clearTimeout(meaningfulEventTimeoutId);
|
|
277
|
+
meaningfulEventTimeoutId = null;
|
|
278
|
+
}
|
|
279
|
+
};
|
|
280
|
+
|
|
281
|
+
const armStartupTimeout = () => {
|
|
282
|
+
clearStartupTimeout();
|
|
283
|
+
|
|
284
|
+
if (!Number.isFinite(CODEX_STREAM_START_TIMEOUT_MS) || CODEX_STREAM_START_TIMEOUT_MS <= 0) {
|
|
285
|
+
return;
|
|
286
|
+
}
|
|
287
|
+
|
|
288
|
+
startupTimeoutId = setTimeout(() => {
|
|
289
|
+
if (hasStreamEvent) {
|
|
290
|
+
return;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
timeoutErrorMessage =
|
|
294
|
+
`Codex did not produce any stream events within ${Math.round(CODEX_STREAM_START_TIMEOUT_MS / 1000)} seconds. ` +
|
|
295
|
+
'This usually means the Codex client or upstream service is unavailable.';
|
|
296
|
+
streamAbortController.abort();
|
|
297
|
+
}, CODEX_STREAM_START_TIMEOUT_MS);
|
|
298
|
+
};
|
|
299
|
+
|
|
300
|
+
const armMeaningfulEventTimeout = () => {
|
|
301
|
+
clearMeaningfulEventTimeout();
|
|
302
|
+
|
|
303
|
+
if (!Number.isFinite(CODEX_MEANINGFUL_EVENT_TIMEOUT_MS) || CODEX_MEANINGFUL_EVENT_TIMEOUT_MS <= 0) {
|
|
304
|
+
return;
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
meaningfulEventTimeoutId = setTimeout(() => {
|
|
308
|
+
timeoutErrorMessage =
|
|
309
|
+
`Codex stopped emitting progress events for ${Math.round(CODEX_MEANINGFUL_EVENT_TIMEOUT_MS / 1000)} seconds. ` +
|
|
310
|
+
'The upstream Codex service may be unavailable or stalled.';
|
|
311
|
+
streamAbortController.abort();
|
|
312
|
+
}, CODEX_MEANINGFUL_EVENT_TIMEOUT_MS);
|
|
313
|
+
};
|
|
314
|
+
|
|
315
|
+
const markStreamEventObserved = (options = {}) => {
|
|
316
|
+
const { keepProgressWatch = true } = options;
|
|
317
|
+
hasStreamEvent = true;
|
|
318
|
+
clearStartupTimeout();
|
|
319
|
+
|
|
320
|
+
if (keepProgressWatch) {
|
|
321
|
+
armMeaningfulEventTimeout();
|
|
322
|
+
} else {
|
|
323
|
+
clearMeaningfulEventTimeout();
|
|
324
|
+
}
|
|
325
|
+
};
|
|
247
326
|
|
|
248
327
|
const syncResolvedSessionId = (broadcastUpdate = false) => {
|
|
249
328
|
const resolvedThreadId = typeof thread?.id === 'string' && thread.id.trim()
|
|
@@ -283,7 +362,9 @@ export async function queryCodex(command, options = {}, ws) {
|
|
|
283
362
|
|
|
284
363
|
try {
|
|
285
364
|
// Initialize Codex SDK
|
|
286
|
-
codex = new Codex(
|
|
365
|
+
codex = new Codex({
|
|
366
|
+
codexPathOverride: getCodexPathOverride()
|
|
367
|
+
});
|
|
287
368
|
|
|
288
369
|
// Thread options with sandbox and approval settings
|
|
289
370
|
const threadOptions = {
|
|
@@ -304,6 +385,7 @@ export async function queryCodex(command, options = {}, ws) {
|
|
|
304
385
|
|
|
305
386
|
// Get the thread ID
|
|
306
387
|
currentSessionId = thread.id || sessionId || `codex-${Date.now()}`;
|
|
388
|
+
const shouldBroadcastInitialSessionId = !isCodexPlaceholderSessionId(currentSessionId);
|
|
307
389
|
|
|
308
390
|
if (ws?.setSessionId && typeof ws.setSessionId === 'function') {
|
|
309
391
|
ws.setSessionId(currentSessionId);
|
|
@@ -313,22 +395,45 @@ export async function queryCodex(command, options = {}, ws) {
|
|
|
313
395
|
activeCodexSessions.set(currentSessionId, {
|
|
314
396
|
thread,
|
|
315
397
|
codex,
|
|
398
|
+
abortController: streamAbortController,
|
|
316
399
|
status: 'running',
|
|
317
400
|
startedAt: new Date().toISOString()
|
|
318
401
|
});
|
|
319
402
|
|
|
320
403
|
// Send session created event
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
404
|
+
if (shouldBroadcastInitialSessionId) {
|
|
405
|
+
sendMessage(ws, {
|
|
406
|
+
type: 'session-created',
|
|
407
|
+
sessionId: currentSessionId,
|
|
408
|
+
provider: 'codex'
|
|
409
|
+
});
|
|
410
|
+
}
|
|
326
411
|
|
|
327
412
|
// Execute with streaming
|
|
328
|
-
|
|
413
|
+
armStartupTimeout();
|
|
414
|
+
|
|
415
|
+
if (Array.isArray(images) && images.length > 0) {
|
|
416
|
+
const materializedImages = await materializeImagesToTempFiles(images, workingDirectory, 'codex-images');
|
|
417
|
+
tempImagePaths = materializedImages.tempImagePaths;
|
|
418
|
+
tempImageDir = materializedImages.tempDir;
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
const runInput = tempImagePaths.length > 0
|
|
422
|
+
? [
|
|
423
|
+
{ type: 'text', text: command },
|
|
424
|
+
...tempImagePaths.map((imagePath) => ({ type: 'local_image', path: imagePath }))
|
|
425
|
+
]
|
|
426
|
+
: command;
|
|
427
|
+
|
|
428
|
+
const streamedTurn = await thread.runStreamed(runInput, {
|
|
429
|
+
signal: streamAbortController.signal
|
|
430
|
+
});
|
|
329
431
|
syncResolvedSessionId(true);
|
|
330
432
|
|
|
331
433
|
for await (const event of streamedTurn.events) {
|
|
434
|
+
const isTerminalEvent = event?.type === 'turn.completed' || event?.type === 'turn.failed';
|
|
435
|
+
markStreamEventObserved({ keepProgressWatch: !isTerminalEvent });
|
|
436
|
+
|
|
332
437
|
if (event?.type === 'thread.started') {
|
|
333
438
|
const eventThreadId = getThreadIdFromEvent(event);
|
|
334
439
|
if (eventThreadId) {
|
|
@@ -341,6 +446,38 @@ export async function queryCodex(command, options = {}, ws) {
|
|
|
341
446
|
// Check if session was aborted
|
|
342
447
|
const session = activeCodexSessions.get(currentSessionId);
|
|
343
448
|
if (!session || session.status === 'aborted') {
|
|
449
|
+
terminalStatus = 'aborted';
|
|
450
|
+
shouldSendCompletionEvent = false;
|
|
451
|
+
break;
|
|
452
|
+
}
|
|
453
|
+
|
|
454
|
+
if (event.type === 'error') {
|
|
455
|
+
const errorMessage = typeof event.message === 'string' ? event.message.trim() : '';
|
|
456
|
+
if (errorMessage) {
|
|
457
|
+
sendMessage(ws, {
|
|
458
|
+
type: 'codex-response',
|
|
459
|
+
data: {
|
|
460
|
+
type: 'provider_notice',
|
|
461
|
+
message: errorMessage
|
|
462
|
+
},
|
|
463
|
+
sessionId: currentSessionId
|
|
464
|
+
});
|
|
465
|
+
}
|
|
466
|
+
continue;
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
if (event.type === 'turn.failed') {
|
|
470
|
+
terminalStatus = 'errored';
|
|
471
|
+
shouldSendCompletionEvent = false;
|
|
472
|
+
clearStartupTimeout();
|
|
473
|
+
clearMeaningfulEventTimeout();
|
|
474
|
+
|
|
475
|
+
const transformed = transformCodexEvent(event);
|
|
476
|
+
sendMessage(ws, {
|
|
477
|
+
type: 'codex-response',
|
|
478
|
+
data: transformed,
|
|
479
|
+
sessionId: currentSessionId
|
|
480
|
+
});
|
|
344
481
|
break;
|
|
345
482
|
}
|
|
346
483
|
|
|
@@ -423,6 +560,10 @@ export async function queryCodex(command, options = {}, ws) {
|
|
|
423
560
|
syncResolvedSessionId(true);
|
|
424
561
|
|
|
425
562
|
// Send completion event
|
|
563
|
+
if (!shouldSendCompletionEvent) {
|
|
564
|
+
return;
|
|
565
|
+
}
|
|
566
|
+
|
|
426
567
|
const finalSessionId = (typeof thread?.id === 'string' && thread.id.trim())
|
|
427
568
|
? thread.id.trim()
|
|
428
569
|
: currentSessionId;
|
|
@@ -441,18 +582,28 @@ export async function queryCodex(command, options = {}, ws) {
|
|
|
441
582
|
} catch (error) {
|
|
442
583
|
console.error('[Codex] Error:', error);
|
|
443
584
|
|
|
585
|
+
const trackedSession = currentSessionId ? activeCodexSessions.get(currentSessionId) : null;
|
|
586
|
+
if (trackedSession?.status === 'aborted') {
|
|
587
|
+
terminalStatus = 'aborted';
|
|
588
|
+
return;
|
|
589
|
+
}
|
|
590
|
+
|
|
591
|
+
terminalStatus = 'errored';
|
|
444
592
|
sendMessage(ws, {
|
|
445
593
|
type: 'codex-error',
|
|
446
|
-
error: error.message,
|
|
594
|
+
error: timeoutErrorMessage || error.message,
|
|
447
595
|
sessionId: currentSessionId
|
|
448
596
|
});
|
|
449
597
|
|
|
450
598
|
} finally {
|
|
599
|
+
clearStartupTimeout();
|
|
600
|
+
clearMeaningfulEventTimeout();
|
|
601
|
+
await cleanupMaterializedImages(tempImagePaths, tempImageDir);
|
|
451
602
|
// Update session status
|
|
452
603
|
if (currentSessionId) {
|
|
453
604
|
const session = activeCodexSessions.get(currentSessionId);
|
|
454
605
|
if (session) {
|
|
455
|
-
session.status =
|
|
606
|
+
session.status = terminalStatus;
|
|
456
607
|
}
|
|
457
608
|
}
|
|
458
609
|
}
|
|
@@ -471,6 +622,9 @@ export function abortCodexSession(sessionId) {
|
|
|
471
622
|
}
|
|
472
623
|
|
|
473
624
|
session.status = 'aborted';
|
|
625
|
+
if (session.abortController && !session.abortController.signal.aborted) {
|
|
626
|
+
session.abortController.abort();
|
|
627
|
+
}
|
|
474
628
|
|
|
475
629
|
// The SDK doesn't have a direct abort method, but marking status
|
|
476
630
|
// will cause the streaming loop to exit
|
package/server/opencode-cli.js
CHANGED
|
@@ -6,6 +6,7 @@ import fetch from 'node-fetch';
|
|
|
6
6
|
import { promises as fs } from 'fs';
|
|
7
7
|
import path from 'path';
|
|
8
8
|
import os from 'os';
|
|
9
|
+
import { resolveWorkingDirectory } from './utils/defaultWorkingDirectory.js';
|
|
9
10
|
|
|
10
11
|
const spawnFunction = process.platform === 'win32' ? crossSpawn : spawn;
|
|
11
12
|
|
|
@@ -295,7 +296,7 @@ async function requestJson(baseUrl, path, { method = 'GET', headers = {}, body,
|
|
|
295
296
|
|
|
296
297
|
export async function listOpencodeModels(options = {}) {
|
|
297
298
|
const { cwd, projectPath } = options;
|
|
298
|
-
const workingDir = cwd
|
|
299
|
+
const workingDir = resolveWorkingDirectory({ cwd, projectPath });
|
|
299
300
|
let server = null;
|
|
300
301
|
|
|
301
302
|
try {
|
|
@@ -536,7 +537,7 @@ export async function queryOpencode(command, options = {}, ws) {
|
|
|
536
537
|
permissionMode = 'default'
|
|
537
538
|
} = options;
|
|
538
539
|
|
|
539
|
-
const workingDir = cwd
|
|
540
|
+
const workingDir = resolveWorkingDirectory({ cwd, projectPath });
|
|
540
541
|
const abortController = new AbortController();
|
|
541
542
|
let server = null;
|
|
542
543
|
let resolvedSessionId = sessionId || null;
|