codemini-cli 0.5.0 → 0.5.1
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 +0 -0
- package/OPERATIONS.md +0 -0
- package/README.md +0 -0
- package/bin/coder.js +0 -0
- package/codemini-web/dist/assets/Geist-Italic_wght_-vKc54d3Z.woff2 +0 -0
- package/codemini-web/dist/assets/Geist-Variable-CrgPqtmy.woff2 +0 -0
- package/codemini-web/dist/assets/GeistMono-Variable-BNLlm6Cd.woff2 +0 -0
- package/codemini-web/dist/assets/abap-BRbAAyvE.js +0 -0
- package/codemini-web/dist/assets/actionscript-3-Cj-0sM4g.js +0 -0
- package/codemini-web/dist/assets/ada-DhEA_nP5.js +0 -0
- package/codemini-web/dist/assets/andromeeda-CWmR-N6V.js +0 -0
- package/codemini-web/dist/assets/angular-html-Cde9qVP5.js +0 -0
- package/codemini-web/dist/assets/angular-ts-DefScAWP.js +0 -0
- package/codemini-web/dist/assets/apache-D5R2GKIs.js +0 -0
- package/codemini-web/dist/assets/apex-Qu8W4hal.js +0 -0
- package/codemini-web/dist/assets/apl-w753UHCW.js +0 -0
- package/codemini-web/dist/assets/applescript-CBey3ErE.js +0 -0
- package/codemini-web/dist/assets/ara-CRKnUAN1.js +0 -0
- package/codemini-web/dist/assets/asciidoc-1KYZEB6-.js +0 -0
- package/codemini-web/dist/assets/asm-DAaViY0U.js +0 -0
- package/codemini-web/dist/assets/astro-DBA9Da7s.js +0 -0
- package/codemini-web/dist/assets/aurora-x-LPpmXm4i.js +0 -0
- package/codemini-web/dist/assets/awk-ButuPTaW.js +0 -0
- package/codemini-web/dist/assets/ayu-dark-Dv4ngVMP.js +0 -0
- package/codemini-web/dist/assets/ayu-light-CxeOePuA.js +0 -0
- package/codemini-web/dist/assets/ayu-mirage-i2YLXKmY.js +0 -0
- package/codemini-web/dist/assets/ballerina-DodmBVwR.js +0 -0
- package/codemini-web/dist/assets/bat-jA-YqDhG.js +0 -0
- package/codemini-web/dist/assets/beancount-BCkjWTs-.js +0 -0
- package/codemini-web/dist/assets/berry-DjEHm1kC.js +0 -0
- package/codemini-web/dist/assets/bibtex-aOfmXHFj.js +0 -0
- package/codemini-web/dist/assets/bicep-BZLx0b6B.js +0 -0
- package/codemini-web/dist/assets/bird2-Bs7YDhA3.js +0 -0
- package/codemini-web/dist/assets/blade-B-u5p0Rp.js +0 -0
- package/codemini-web/dist/assets/bsl-CPV9KqsG.js +0 -0
- package/codemini-web/dist/assets/c-Bv0tI3pq.js +0 -0
- package/codemini-web/dist/assets/c3-BDcFIiRd.js +0 -0
- package/codemini-web/dist/assets/cadence-DaglWUgA.js +0 -0
- package/codemini-web/dist/assets/cairo-CyiRuu7R.js +0 -0
- package/codemini-web/dist/assets/catppuccin-frappe-CSAC76is.js +0 -0
- package/codemini-web/dist/assets/catppuccin-latte-Jt6sqtds.js +0 -0
- package/codemini-web/dist/assets/catppuccin-macchiato-HM96_05s.js +0 -0
- package/codemini-web/dist/assets/catppuccin-mocha-CXgIAGBL.js +0 -0
- package/codemini-web/dist/assets/clarity-DS5YLe8G.js +0 -0
- package/codemini-web/dist/assets/clojure-BVGPdaE2.js +0 -0
- package/codemini-web/dist/assets/cmake-CCC7tP43.js +0 -0
- package/codemini-web/dist/assets/cobol-CkQrskif.js +0 -0
- package/codemini-web/dist/assets/codeowners-DXhoR5Ap.js +0 -0
- package/codemini-web/dist/assets/codeql-BGjlu3KC.js +0 -0
- package/codemini-web/dist/assets/coffee-rY-gkJy7.js +0 -0
- package/codemini-web/dist/assets/common-lisp-BE6wRQeA.js +0 -0
- package/codemini-web/dist/assets/coq-CRT8yML1.js +0 -0
- package/codemini-web/dist/assets/cpp-Bw-qV0P6.js +0 -0
- package/codemini-web/dist/assets/crystal-Dh09vXLx.js +0 -0
- package/codemini-web/dist/assets/csharp-Ca2kU4Te.js +0 -0
- package/codemini-web/dist/assets/css-BTi88BmP.js +0 -0
- package/codemini-web/dist/assets/csv-DUpZC5ZD.js +0 -0
- package/codemini-web/dist/assets/cue-DlXQ7arx.js +0 -0
- package/codemini-web/dist/assets/cypher-D6dhuZbo.js +0 -0
- package/codemini-web/dist/assets/d-BUgyoY6k.js +0 -0
- package/codemini-web/dist/assets/dark-plus-DNkJKrcZ.js +0 -0
- package/codemini-web/dist/assets/dart-Czrjv-nr.js +0 -0
- package/codemini-web/dist/assets/dax-sEzq00Tq.js +0 -0
- package/codemini-web/dist/assets/desktop-3VGbzlmJ.js +0 -0
- package/codemini-web/dist/assets/diff-D4HSRbRn.js +0 -0
- package/codemini-web/dist/assets/docker-DkLGgDMo.js +0 -0
- package/codemini-web/dist/assets/dotenv-BWp1FaLo.js +0 -0
- package/codemini-web/dist/assets/dracula-Donvxzd6.js +0 -0
- package/codemini-web/dist/assets/dracula-soft-BqL-kkUg.js +0 -0
- package/codemini-web/dist/assets/dream-maker-DtLD6KM3.js +0 -0
- package/codemini-web/dist/assets/edge-CCRtknu5.js +0 -0
- package/codemini-web/dist/assets/elixir-5EYbFEoC.js +0 -0
- package/codemini-web/dist/assets/elm-Cezz_HNz.js +0 -0
- package/codemini-web/dist/assets/emacs-lisp-D4W-_rAk.js +0 -0
- package/codemini-web/dist/assets/erb-C6pPz4fX.js +0 -0
- package/codemini-web/dist/assets/erlang-BC8wryba.js +0 -0
- package/codemini-web/dist/assets/everforest-dark-pZNhY4MK.js +0 -0
- package/codemini-web/dist/assets/everforest-light-BijKClkf.js +0 -0
- package/codemini-web/dist/assets/fennel-Cd-BhZ0S.js +0 -0
- package/codemini-web/dist/assets/fish-CpsjJ6FK.js +0 -0
- package/codemini-web/dist/assets/fluent-D1peBFgx.js +0 -0
- package/codemini-web/dist/assets/fortran-fixed-form-CyrImzNA.js +0 -0
- package/codemini-web/dist/assets/fortran-free-form-CIAQqF5W.js +0 -0
- package/codemini-web/dist/assets/fsharp-OCW_PZ4J.js +0 -0
- package/codemini-web/dist/assets/gdresource-Cl3bohRI.js +0 -0
- package/codemini-web/dist/assets/gdscript-B_XVILZe.js +0 -0
- package/codemini-web/dist/assets/gdshader-BOrkFM_X.js +0 -0
- package/codemini-web/dist/assets/genie-BE7nKhIq.js +0 -0
- package/codemini-web/dist/assets/gherkin-DzGJhdqS.js +0 -0
- package/codemini-web/dist/assets/git-commit-DJZpdBwB.js +0 -0
- package/codemini-web/dist/assets/git-rebase-BJE30GTP.js +0 -0
- package/codemini-web/dist/assets/github-dark-BB9G20EV.js +0 -0
- package/codemini-web/dist/assets/github-dark-default-CBFNEU03.js +0 -0
- package/codemini-web/dist/assets/github-dark-dimmed-sQhEp72S.js +0 -0
- package/codemini-web/dist/assets/github-dark-high-contrast-C8GVvrcM.js +0 -0
- package/codemini-web/dist/assets/github-light-default-iyEXWnoa.js +0 -0
- package/codemini-web/dist/assets/github-light-high-contrast-DLnsZL7l.js +0 -0
- package/codemini-web/dist/assets/github-light-pT7U8Cnd.js +0 -0
- package/codemini-web/dist/assets/gleam-B9ISJjDl.js +0 -0
- package/codemini-web/dist/assets/glimmer-js-C4PTXfaW.js +0 -0
- package/codemini-web/dist/assets/glimmer-ts-Df1V6YK_.js +0 -0
- package/codemini-web/dist/assets/glsl-C8VPaAWs.js +0 -0
- package/codemini-web/dist/assets/gn-RQRMslrP.js +0 -0
- package/codemini-web/dist/assets/gnuplot-CfIGZWjt.js +0 -0
- package/codemini-web/dist/assets/go-BTh90-YS.js +0 -0
- package/codemini-web/dist/assets/graphql-WZCiqIl-.js +0 -0
- package/codemini-web/dist/assets/groovy-lvGC2zUz.js +0 -0
- package/codemini-web/dist/assets/gruvbox-dark-hard-CC38iqQ4.js +0 -0
- package/codemini-web/dist/assets/gruvbox-dark-medium-DaS0IqFN.js +0 -0
- package/codemini-web/dist/assets/gruvbox-dark-soft-C4niJipy.js +0 -0
- package/codemini-web/dist/assets/gruvbox-light-hard-DTfv4LmB.js +0 -0
- package/codemini-web/dist/assets/gruvbox-light-medium-m1VBpvsE.js +0 -0
- package/codemini-web/dist/assets/gruvbox-light-soft-CiE1IJdk.js +0 -0
- package/codemini-web/dist/assets/hack-zJL_tEH0.js +0 -0
- package/codemini-web/dist/assets/haml-qjVLLTZk.js +0 -0
- package/codemini-web/dist/assets/handlebars-B3RyMMk0.js +0 -0
- package/codemini-web/dist/assets/haskell-DdaZtXdd.js +0 -0
- package/codemini-web/dist/assets/haxe-Df79h8x1.js +0 -0
- package/codemini-web/dist/assets/hcl-BibREsa1.js +0 -0
- package/codemini-web/dist/assets/{highlighted-body-OFNGDK62-CJHWad2r.js → highlighted-body-OFNGDK62-0FuBVb0_.js} +1 -1
- package/codemini-web/dist/assets/hjson-D-iSecYq.js +0 -0
- package/codemini-web/dist/assets/hlsl-CckLjo_3.js +0 -0
- package/codemini-web/dist/assets/horizon-BG-OH9yH.js +0 -0
- package/codemini-web/dist/assets/horizon-bright-CpoqdULz.js +0 -0
- package/codemini-web/dist/assets/houston-C8DdNIgg.js +0 -0
- package/codemini-web/dist/assets/html-DP-V-rfg.js +0 -0
- package/codemini-web/dist/assets/html-derivative-DB9UhNDN.js +0 -0
- package/codemini-web/dist/assets/http-Deln4Vyb.js +0 -0
- package/codemini-web/dist/assets/hurl-CYSuhGkj.js +0 -0
- package/codemini-web/dist/assets/hxml-BmF7ngDz.js +0 -0
- package/codemini-web/dist/assets/hy-6acR1htR.js +0 -0
- package/codemini-web/dist/assets/imba-I9bJJvhi.js +0 -0
- package/codemini-web/dist/assets/index-CSYMjBeT.css +2 -0
- package/codemini-web/dist/assets/{index-BZ01DHrh.js → index-DtiSt5vh.js} +64 -64
- package/codemini-web/dist/assets/ini-ovi-wMtM.js +0 -0
- package/codemini-web/dist/assets/java-X0I2c5Az.js +0 -0
- package/codemini-web/dist/assets/javascript-WC6XFf_S.js +0 -0
- package/codemini-web/dist/assets/jinja-BcRTlqOI.js +0 -0
- package/codemini-web/dist/assets/jison-DuNOGix6.js +0 -0
- package/codemini-web/dist/assets/json-CmuSmrUv.js +0 -0
- package/codemini-web/dist/assets/json5-JNG5kh3j.js +0 -0
- package/codemini-web/dist/assets/jsonc-Bo6bgSpa.js +0 -0
- package/codemini-web/dist/assets/jsonl-eDmbsRcr.js +0 -0
- package/codemini-web/dist/assets/jsonnet-BrmnmEy9.js +0 -0
- package/codemini-web/dist/assets/jssm-C-QfdDgD.js +0 -0
- package/codemini-web/dist/assets/jsx-Bl4e1-KE.js +0 -0
- package/codemini-web/dist/assets/julia-Cqc1ADyw.js +0 -0
- package/codemini-web/dist/assets/just-O9z-zIlY.js +0 -0
- package/codemini-web/dist/assets/kanagawa-dragon-Dc8jzBf8.js +0 -0
- package/codemini-web/dist/assets/kanagawa-lotus-DglQpAHb.js +0 -0
- package/codemini-web/dist/assets/kanagawa-wave-CTxJC692.js +0 -0
- package/codemini-web/dist/assets/kdl-CPujEk7a.js +0 -0
- package/codemini-web/dist/assets/kotlin-GNGS6f4G.js +0 -0
- package/codemini-web/dist/assets/kusto-ByPWIc1b.js +0 -0
- package/codemini-web/dist/assets/laserwave-BLDq6SCM.js +0 -0
- package/codemini-web/dist/assets/latex-BEPTKliI.js +0 -0
- package/codemini-web/dist/assets/lean-CQ4oht2M.js +0 -0
- package/codemini-web/dist/assets/less-DgluPI4Z.js +0 -0
- package/codemini-web/dist/assets/light-plus-Ce6vIMrA.js +0 -0
- package/codemini-web/dist/assets/liquid-BK2PyMjt.js +0 -0
- package/codemini-web/dist/assets/llvm-C_Bk8N51.js +0 -0
- package/codemini-web/dist/assets/log-Cqyx7kYB.js +0 -0
- package/codemini-web/dist/assets/logo-BMyACSNp.js +0 -0
- package/codemini-web/dist/assets/lua-BroxvhVt.js +0 -0
- package/codemini-web/dist/assets/luau-Dw3qkd4h.js +0 -0
- package/codemini-web/dist/assets/make-DRoG6w-e.js +0 -0
- package/codemini-web/dist/assets/markdown-DMIvNSB1.js +0 -0
- package/codemini-web/dist/assets/marko-CTEKS39A.js +0 -0
- package/codemini-web/dist/assets/material-theme-D1yzOeFY.js +0 -0
- package/codemini-web/dist/assets/material-theme-darker-DhWqiNtj.js +0 -0
- package/codemini-web/dist/assets/material-theme-lighter-PKoq0Soa.js +0 -0
- package/codemini-web/dist/assets/material-theme-ocean-TtH-ZZAj.js +0 -0
- package/codemini-web/dist/assets/material-theme-palenight-DPEAidnA.js +0 -0
- package/codemini-web/dist/assets/matlab-Buftnej6.js +0 -0
- package/codemini-web/dist/assets/mdc-BOaCYzzL.js +0 -0
- package/codemini-web/dist/assets/mdx-COL7Vpwq.js +0 -0
- package/codemini-web/dist/assets/mermaid-GHXKKRXX-BQrwnoIu.js +1 -0
- package/codemini-web/dist/assets/mermaid-tvyj1ZQ2.js +0 -0
- package/codemini-web/dist/assets/min-dark-D66g901Q.js +0 -0
- package/codemini-web/dist/assets/min-light-CMnDj2iG.js +0 -0
- package/codemini-web/dist/assets/mipsasm-C6fvALrw.js +0 -0
- package/codemini-web/dist/assets/mojo-B3qnM1a8.js +0 -0
- package/codemini-web/dist/assets/monokai-DCoxt20T.js +0 -0
- package/codemini-web/dist/assets/moonbit-Cjo3d0oi.js +0 -0
- package/codemini-web/dist/assets/move-BZSDQnwS.js +0 -0
- package/codemini-web/dist/assets/narrat-DY5cg5OF.js +0 -0
- package/codemini-web/dist/assets/nextflow-Cto1mpL3.js +0 -0
- package/codemini-web/dist/assets/nextflow-groovy-D1X5Yd05.js +0 -0
- package/codemini-web/dist/assets/nginx-Da_Uewgc.js +0 -0
- package/codemini-web/dist/assets/night-owl-DuMFo77c.js +0 -0
- package/codemini-web/dist/assets/night-owl-light-DihOYNub.js +0 -0
- package/codemini-web/dist/assets/nim-BZyx58NM.js +0 -0
- package/codemini-web/dist/assets/nix-C2G-gZoY.js +0 -0
- package/codemini-web/dist/assets/nord-CqZqLQaJ.js +0 -0
- package/codemini-web/dist/assets/nushell-S11HUHTG.js +0 -0
- package/codemini-web/dist/assets/objective-c-D9GKvYFi.js +0 -0
- package/codemini-web/dist/assets/objective-cpp-SqrtXFXh.js +0 -0
- package/codemini-web/dist/assets/ocaml-C_PTi_Pz.js +0 -0
- package/codemini-web/dist/assets/odin-BWpZDKBG.js +0 -0
- package/codemini-web/dist/assets/one-dark-pro-DpWTHpwg.js +0 -0
- package/codemini-web/dist/assets/one-light-Cu0d64Hp.js +0 -0
- package/codemini-web/dist/assets/openscad-BM4fjXzn.js +0 -0
- package/codemini-web/dist/assets/pascal-DYsRufgb.js +0 -0
- package/codemini-web/dist/assets/perl-BW8t13Xq.js +0 -0
- package/codemini-web/dist/assets/php-Cq5FOhfR.js +0 -0
- package/codemini-web/dist/assets/pkl-Djf8ANrI.js +0 -0
- package/codemini-web/dist/assets/plastic-CmjIC4JL.js +0 -0
- package/codemini-web/dist/assets/plsql-B1bmZxUF.js +0 -0
- package/codemini-web/dist/assets/po-BvnTR3_f.js +0 -0
- package/codemini-web/dist/assets/poimandres-BTndTogr.js +0 -0
- package/codemini-web/dist/assets/polar-CAj5SJyd.js +0 -0
- package/codemini-web/dist/assets/postcss-DrpvRGGG.js +0 -0
- package/codemini-web/dist/assets/powerquery-I1Ei5hrS.js +0 -0
- package/codemini-web/dist/assets/powershell-Coc0WruX.js +0 -0
- package/codemini-web/dist/assets/prisma-Ojgxt2lx.js +0 -0
- package/codemini-web/dist/assets/prolog-C1UOAv4v.js +0 -0
- package/codemini-web/dist/assets/proto-D07RTuB5.js +0 -0
- package/codemini-web/dist/assets/pug-B4WHazil.js +0 -0
- package/codemini-web/dist/assets/puppet-D_zyrMo2.js +0 -0
- package/codemini-web/dist/assets/purescript-CV-DVmZj.js +0 -0
- package/codemini-web/dist/assets/python-DcnbpNOV.js +0 -0
- package/codemini-web/dist/assets/qml-DWxWu28U.js +0 -0
- package/codemini-web/dist/assets/qmldir-BBNnU9RJ.js +0 -0
- package/codemini-web/dist/assets/qss-CC0PKRbL.js +0 -0
- package/codemini-web/dist/assets/r-B4lG5syH.js +0 -0
- package/codemini-web/dist/assets/racket-Cbwns2Cq.js +0 -0
- package/codemini-web/dist/assets/raku-CeV6tH_x.js +0 -0
- package/codemini-web/dist/assets/razor-CQPYUgex.js +0 -0
- package/codemini-web/dist/assets/red-CVEaJbMR.js +0 -0
- package/codemini-web/dist/assets/reg-C_WE1pkC.js +0 -0
- package/codemini-web/dist/assets/regexp-da3KYCEG.js +0 -0
- package/codemini-web/dist/assets/rel-CpHQF4b7.js +0 -0
- package/codemini-web/dist/assets/riscv-Co5eiPIZ.js +0 -0
- package/codemini-web/dist/assets/rolldown-runtime-S-ySWqyJ.js +0 -0
- package/codemini-web/dist/assets/ron-CgTit1dG.js +0 -0
- package/codemini-web/dist/assets/rose-pine-BDTwvYHf.js +0 -0
- package/codemini-web/dist/assets/rose-pine-dawn-CAIk_wLV.js +0 -0
- package/codemini-web/dist/assets/rose-pine-moon-C5gdiznP.js +0 -0
- package/codemini-web/dist/assets/rosmsg-C0tpzWlc.js +0 -0
- package/codemini-web/dist/assets/rst-B-OS2pa5.js +0 -0
- package/codemini-web/dist/assets/ruby-BM15fmxz.js +0 -0
- package/codemini-web/dist/assets/rust-BWAfVMY4.js +0 -0
- package/codemini-web/dist/assets/sas-DYNukvU9.js +0 -0
- package/codemini-web/dist/assets/sass-MovLey2R.js +0 -0
- package/codemini-web/dist/assets/scala-C2w7y2mZ.js +0 -0
- package/codemini-web/dist/assets/scheme-Bf85FNnm.js +0 -0
- package/codemini-web/dist/assets/scss-C0BQ8YVM.js +0 -0
- package/codemini-web/dist/assets/sdbl-DoQ_zDzo.js +0 -0
- package/codemini-web/dist/assets/shaderlab-TbUUdmUb.js +0 -0
- package/codemini-web/dist/assets/shellscript-KUJZnuCi.js +0 -0
- package/codemini-web/dist/assets/shellsession-BeWGuVoR.js +0 -0
- package/codemini-web/dist/assets/slack-dark-BnOYKTBJ.js +0 -0
- package/codemini-web/dist/assets/slack-ochin-43udxtUg.js +0 -0
- package/codemini-web/dist/assets/smalltalk-Mlf5-xbr.js +0 -0
- package/codemini-web/dist/assets/snazzy-light-kw-pZEiM.js +0 -0
- package/codemini-web/dist/assets/solarized-dark-BDezFa9V.js +0 -0
- package/codemini-web/dist/assets/solarized-light-CkoenhS2.js +0 -0
- package/codemini-web/dist/assets/solidity-DYHGECBw.js +0 -0
- package/codemini-web/dist/assets/soy-C6D0Ibo9.js +0 -0
- package/codemini-web/dist/assets/sparql-DIFvSn1n.js +0 -0
- package/codemini-web/dist/assets/splunk-DOdklC0I.js +0 -0
- package/codemini-web/dist/assets/sql-CZAMrWdL.js +0 -0
- package/codemini-web/dist/assets/ssh-config-DwwFW7AS.js +0 -0
- package/codemini-web/dist/assets/stata-C5mLa_ER.js +0 -0
- package/codemini-web/dist/assets/stylus-BO6mlOab.js +0 -0
- package/codemini-web/dist/assets/surrealql-DyoUfV6n.js +0 -0
- package/codemini-web/dist/assets/svelte-DJ-0FpL2.js +0 -0
- package/codemini-web/dist/assets/swift-D9A08YU9.js +0 -0
- package/codemini-web/dist/assets/synthwave-84-C69NN2j9.js +0 -0
- package/codemini-web/dist/assets/system-verilog-DjR3sN6w.js +0 -0
- package/codemini-web/dist/assets/systemd-CJWuVSJU.js +0 -0
- package/codemini-web/dist/assets/talonscript-CXqq0wX-.js +0 -0
- package/codemini-web/dist/assets/tasl-GVNf7pB7.js +0 -0
- package/codemini-web/dist/assets/tcl-DNlfRSl5.js +0 -0
- package/codemini-web/dist/assets/templ-7Bvm-rei.js +0 -0
- package/codemini-web/dist/assets/terraform-DUK0FOOj.js +0 -0
- package/codemini-web/dist/assets/tex-ezg8IclB.js +0 -0
- package/codemini-web/dist/assets/tokyo-night-DWTtuXS3.js +0 -0
- package/codemini-web/dist/assets/toml-X5n3zjEH.js +0 -0
- package/codemini-web/dist/assets/ts-tags-BfuR6EQ0.js +0 -0
- package/codemini-web/dist/assets/tsv-Bqs_rchc.js +0 -0
- package/codemini-web/dist/assets/tsx-CfyUE2pW.js +0 -0
- package/codemini-web/dist/assets/turtle-BsUuoeVK.js +0 -0
- package/codemini-web/dist/assets/twig-_uxJ-QmX.js +0 -0
- package/codemini-web/dist/assets/typescript-C6LvTgbf.js +0 -0
- package/codemini-web/dist/assets/typespec-8nkhqWz6.js +0 -0
- package/codemini-web/dist/assets/typst-CPL77SDw.js +0 -0
- package/codemini-web/dist/assets/v-CoJD3IPx.js +0 -0
- package/codemini-web/dist/assets/vala-C42IfotU.js +0 -0
- package/codemini-web/dist/assets/vb-CVMKTK26.js +0 -0
- package/codemini-web/dist/assets/verilog-P63PhzSt.js +0 -0
- package/codemini-web/dist/assets/vesper-BGr95374.js +0 -0
- package/codemini-web/dist/assets/vhdl-2WwUdgX8.js +0 -0
- package/codemini-web/dist/assets/viml-CGPGWJA6.js +0 -0
- package/codemini-web/dist/assets/vitesse-black-cI0k84-I.js +0 -0
- package/codemini-web/dist/assets/vitesse-dark-SouM0FMW.js +0 -0
- package/codemini-web/dist/assets/vitesse-light-WiCy6lDO.js +0 -0
- package/codemini-web/dist/assets/vue-DkOBu49o.js +0 -0
- package/codemini-web/dist/assets/vue-html-Bx2Sgp8M.js +0 -0
- package/codemini-web/dist/assets/vue-vine-veyFk6GJ.js +0 -0
- package/codemini-web/dist/assets/vyper-DP_vqZO9.js +0 -0
- package/codemini-web/dist/assets/wasm-Db7VBw0n.js +0 -0
- package/codemini-web/dist/assets/wasm-DiIFv9DE.js +0 -0
- package/codemini-web/dist/assets/wenyan-ZEcjghA1.js +0 -0
- package/codemini-web/dist/assets/wgsl-CdusuPLe.js +0 -0
- package/codemini-web/dist/assets/wikitext-CBIB6hmW.js +0 -0
- package/codemini-web/dist/assets/wit-ZhUbVeze.js +0 -0
- package/codemini-web/dist/assets/wolfram-HyMOyERF.js +0 -0
- package/codemini-web/dist/assets/xml-BkdunjRC.js +0 -0
- package/codemini-web/dist/assets/xsl-C66i1pDH.js +0 -0
- package/codemini-web/dist/assets/yaml-D_uvhEF7.js +0 -0
- package/codemini-web/dist/assets/zenscript-C6ZuzgrL.js +0 -0
- package/codemini-web/dist/assets/zig-Do2h8XKj.js +0 -0
- package/codemini-web/dist/index.html +2 -2
- package/codemini-web/lib/approval-manager.js +0 -0
- package/codemini-web/lib/runtime-bridge.js +0 -0
- package/codemini-web/server.js +49 -15
- package/deployment.md +5 -5
- package/package.json +1 -1
- package/skills/brainstorm/SKILL.md +3 -1
- package/skills/grill-me/SKILL.md +0 -0
- package/skills/project-requirements/SKILL.md +293 -291
- package/skills/superpowers-lite/SKILL.md +18 -32
- package/skills/writing-plans/SKILL.md +67 -67
- package/souls/anime.md +0 -0
- package/souls/caveman.md +0 -0
- package/souls/ceo.md +0 -0
- package/souls/default.md +0 -0
- package/souls/pirate.md +0 -0
- package/souls/playful.md +0 -0
- package/souls/professional.md +0 -0
- package/src/cli.js +0 -0
- package/src/commands/chat.js +0 -0
- package/src/commands/config.js +0 -0
- package/src/commands/doctor.js +0 -0
- package/src/commands/run.js +0 -0
- package/src/commands/skill.js +0 -0
- package/src/commands/web.js +0 -0
- package/src/core/agent-loop.js +0 -0
- package/src/core/ast.js +0 -0
- package/src/core/bounded-cache.js +0 -0
- package/src/core/chat-runtime.js +114 -6
- package/src/core/checkpoint-store.js +0 -0
- package/src/core/command-evaluator.js +0 -0
- package/src/core/command-loader.js +0 -0
- package/src/core/command-policy.js +0 -0
- package/src/core/command-risk.js +0 -0
- package/src/core/config-store.js +0 -0
- package/src/core/constants.js +0 -0
- package/src/core/context-compact.js +0 -0
- package/src/core/crypto-utils.js +0 -0
- package/src/core/default-system-prompt.js +0 -0
- package/src/core/dream-audit.js +0 -0
- package/src/core/dream-consolidate.js +0 -0
- package/src/core/dream-evaluator.js +0 -0
- package/src/core/fff-adapter.js +1 -1
- package/src/core/fs-utils.js +0 -0
- package/src/core/input-history-store.js +0 -0
- package/src/core/input-parser.js +0 -0
- package/src/core/memory-policy.js +0 -0
- package/src/core/memory-prompt.js +0 -0
- package/src/core/memory-store.js +0 -0
- package/src/core/paths.js +0 -0
- package/src/core/plan-state.js +0 -0
- package/src/core/project-index.js +0 -0
- package/src/core/provider/anthropic.js +0 -0
- package/src/core/provider/index.js +0 -0
- package/src/core/provider/openai-compatible.js +0 -0
- package/src/core/reflect-skill.js +0 -0
- package/src/core/reply-language.js +10 -1
- package/src/core/session-store.js +0 -0
- package/src/core/shell-profile.js +0 -0
- package/src/core/shell.js +0 -0
- package/src/core/skill-registry.js +0 -0
- package/src/core/soul.js +0 -0
- package/src/core/string-utils.js +0 -0
- package/src/core/todo-state.js +0 -0
- package/src/core/tool-args.js +0 -0
- package/src/core/tool-output.js +0 -0
- package/src/core/tool-result-store.js +0 -0
- package/src/core/tools.js +0 -0
- package/src/tui/chat-app.js +0 -0
- package/src/tui/input-escape.js +0 -0
- package/src/tui/skill-activity/index.js +0 -0
- package/src/tui/tool-activity/common.js +0 -0
- package/src/tui/tool-activity/index.js +0 -0
- package/src/tui/tool-activity/presenters/command.js +0 -0
- package/src/tui/tool-activity/presenters/files.js +0 -0
- package/src/tui/tool-activity/presenters/misc.js +0 -0
- package/src/tui/tool-activity/presenters/system.js +0 -0
- package/src/tui/tool-narration/common.js +0 -0
- package/src/tui/tool-narration/presenters/change.js +0 -0
- package/src/tui/tool-narration/presenters/edit.js +0 -0
- package/src/tui/tool-narration/presenters/generic.js +0 -0
- package/src/tui/tool-narration/presenters/glob.js +0 -0
- package/src/tui/tool-narration/presenters/grep.js +0 -0
- package/src/tui/tool-narration/presenters/list.js +0 -0
- package/src/tui/tool-narration/presenters/read.js +0 -0
- package/src/tui/tool-narration/presenters/run.js +0 -0
- package/src/tui/tool-narration/presenters/write.js +0 -0
- package/src/tui/tool-narration.js +0 -0
- package/templates/project-requirements/report-shell.html +46 -46
- package/codemini-web/dist/assets/index-Dq1mwNaQ.css +0 -2
- package/codemini-web/dist/assets/mermaid-GHXKKRXX-BuB6-G4r.js +0 -1
|
@@ -4,9 +4,9 @@ description: Concise workflow skill tuned for 30B-class models: prefer structure
|
|
|
4
4
|
version: 0.3.0
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
Use this skill as the default
|
|
7
|
+
Use this skill as the default operating style for all coding work, preferring lightweight approaches but invoking specialized skills when needed.
|
|
8
8
|
|
|
9
|
-
This is the default, not an interrogation mode. Keep help calm and direct. For
|
|
9
|
+
This is the default, not an interrogation mode. Keep help calm and direct. For decisions that affect multiple systems, involve irreversible changes, or have significant user impact only, add a light Grill Me pass: ask 1-3 sharp questions about assumptions, failure modes, or verification before proceeding. Challenge the plan, not the person.
|
|
10
10
|
|
|
11
11
|
**Announce when using a skill:** Before following any route below, say "Using [skill name] to [purpose]" in your response. This signals intent and prevents silent skill skipping.
|
|
12
12
|
|
|
@@ -15,6 +15,7 @@ This is the default, not an interrogation mode. Keep help calm and direct. For h
|
|
|
15
15
|
Before responding to ANY user message, check whether a skill applies. If there is even a small chance a skill is relevant, YOU MUST invoke it. This is not optional.
|
|
16
16
|
|
|
17
17
|
**Skill check comes BEFORE:**
|
|
18
|
+
|
|
18
19
|
- Clarifying questions
|
|
19
20
|
- Code exploration
|
|
20
21
|
- Writing code
|
|
@@ -24,43 +25,28 @@ Before responding to ANY user message, check whether a skill applies. If there i
|
|
|
24
25
|
|
|
25
26
|
If you catch yourself thinking any of the following, STOP — you are about to skip a skill incorrectly:
|
|
26
27
|
|
|
27
|
-
| Thought
|
|
28
|
-
|
|
29
|
-
| "This is too simple for a skill"
|
|
30
|
-
| "I need more context first"
|
|
31
|
-
| "The skill is overkill here"
|
|
32
|
-
| "I'll just do this one thing first" | Do the skill check BEFORE anything.
|
|
33
|
-
| "I already know what to do"
|
|
28
|
+
| Thought | Reality |
|
|
29
|
+
| ----------------------------------- | --------------------------------------------------- |
|
|
30
|
+
| "This is too simple for a skill" | Simple tasks derail too. Use the skill. |
|
|
31
|
+
| "I need more context first" | Skills tell you HOW to gather context. Check first. |
|
|
32
|
+
| "The skill is overkill here" | A lightweight pass is cheaper than rework. |
|
|
33
|
+
| "I'll just do this one thing first" | Do the skill check BEFORE anything. |
|
|
34
|
+
| "I already know what to do" | Knowing the concept ≠ following the process. |
|
|
34
35
|
|
|
35
36
|
## Routing
|
|
36
37
|
|
|
37
38
|
Evaluate the user's request and YOU MUST follow exactly one route:
|
|
38
39
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
- Do NOT jump straight into coding
|
|
47
|
-
|
|
48
|
-
3. **Goal is clear but multiple reasonable approaches exist and the missing piece is user preference or tradeoff choice:**
|
|
49
|
-
- YOU MUST invoke `brainstorm` skill
|
|
50
|
-
- Follow brainstorm process — do NOT substitute it with ad-hoc questions
|
|
51
|
-
|
|
52
|
-
4. **Request is missing a key constraint or success condition:**
|
|
53
|
-
- Ask exactly one clarifying question
|
|
54
|
-
- Do NOT give options or write code
|
|
55
|
-
- Stop and wait for the answer
|
|
56
|
-
|
|
57
|
-
5. **Request is greenfield and underspecified** ("build a page", "make a site", "generate an app"):
|
|
58
|
-
- Treat as missing key constraints
|
|
59
|
-
- Ask one high-value question
|
|
60
|
-
- Do NOT assume features, scope, or storage model
|
|
61
|
-
- Stop and wait for the answer
|
|
40
|
+
| Condition | Action |
|
|
41
|
+
| ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
42
|
+
| Task is clear, small, and obvious path | Execute directly. Do NOT invoke brainstorming. |
|
|
43
|
+
| Non-trivial implementation that needs codebase exploration, touches multiple areas, or changes shared behavior | YOU MUST invoke `writing-plans` skill. Inspect first, then present an implementation plan for approval. Do NOT jump straight into coding. |
|
|
44
|
+
| Goal is clear but multiple reasonable approaches exist and the missing piece is user preference or tradeoff choice | YOU MUST invoke `brainstorm` skill. Follow brainstorm process — do NOT substitute it with ad-hoc questions. |
|
|
45
|
+
| Request is missing a key constraint or success condition | Ask exactly one clarifying question. Do NOT give options or write code. Stop and wait for the answer. |
|
|
46
|
+
| Request is greenfield and underspecified ("build a page", "make a site", "generate an app") | Treat as missing key constraints. Ask one high-value question. Do NOT assume features, scope, or storage model. Stop and wait for the answer. |
|
|
62
47
|
|
|
63
48
|
**Decision boundary:**
|
|
49
|
+
|
|
64
50
|
- Use `brainstorm` when one focused user answer will determine the direction.
|
|
65
51
|
- Use `writing-plans` when the task is implementation-shaped but needs a plan before coding.
|
|
66
52
|
- If both could apply, prefer `brainstorm` first when the core uncertainty is user intent; prefer `writing-plans` first when the core uncertainty is codebase impact.
|
|
@@ -1,67 +1,67 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: writing-plans
|
|
3
|
-
description: Use when you have a clear goal or approved design for a non-trivial task, before touching code. Creates a step-by-step implementation plan with exact file paths, code, and verification steps.
|
|
4
|
-
version: 0.1.0
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
Use this skill when the task is implementation-shaped but large enough that jumping straight into coding is risky.
|
|
8
|
-
|
|
9
|
-
**Announce:** When entering writing-plans, say "Using writing-plans to create an implementation plan."
|
|
10
|
-
|
|
11
|
-
## When to Use
|
|
12
|
-
|
|
13
|
-
- Task touches 3+ files or multiple areas of the codebase
|
|
14
|
-
- Task changes shared behavior, APIs, or data flow
|
|
15
|
-
- Task has interdependent steps where order matters
|
|
16
|
-
- You need user sign-off before starting work
|
|
17
|
-
|
|
18
|
-
## When NOT to Use
|
|
19
|
-
|
|
20
|
-
- Single-file fix with a clear solution → just do it
|
|
21
|
-
- Task is a direct extension of an existing pattern → just do it
|
|
22
|
-
- User explicitly says to skip planning → respect that
|
|
23
|
-
|
|
24
|
-
## Plan Format
|
|
25
|
-
|
|
26
|
-
Write the plan as a markdown checklist. Each step is one action (2-5 minutes of work).
|
|
27
|
-
|
|
28
|
-
```markdown
|
|
29
|
-
# [Task Name] Plan
|
|
30
|
-
|
|
31
|
-
**Goal:** [one sentence]
|
|
32
|
-
**Files:** [list files that will be created or modified]
|
|
33
|
-
|
|
34
|
-
### Phase 1: [Phase name]
|
|
35
|
-
|
|
36
|
-
- [ ] **Step N: [action verb + what]**
|
|
37
|
-
- File: `exact/path/to/file.ext`
|
|
38
|
-
- What: [specific change]
|
|
39
|
-
- Verify: [how to confirm it works]
|
|
40
|
-
|
|
41
|
-
### Phase 2: [Phase name]
|
|
42
|
-
|
|
43
|
-
- [ ] ...
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
## Rules
|
|
47
|
-
|
|
48
|
-
1. **Exact file paths always.** No "the relevant file" or "in the component directory".
|
|
49
|
-
2. **Show code in steps that change code.** No "add appropriate error handling" without showing the code.
|
|
50
|
-
3. **No placeholders.** No "TBD", "TODO", "implement later", "similar to step N". If a step needs code, write the code.
|
|
51
|
-
4. **Every step is verifiable.** Include a test command, expected output, or visual check.
|
|
52
|
-
5. **YAGNI.** Only plan what was asked for. Do not add "nice to have" steps.
|
|
53
|
-
6. **DRY.** If two steps share logic, plan the shared piece first.
|
|
54
|
-
|
|
55
|
-
## Self-Review
|
|
56
|
-
|
|
57
|
-
After writing the plan, check:
|
|
58
|
-
- Can you point to a step for every requirement? If not, add the missing step.
|
|
59
|
-
- Any placeholders or vague descriptions? Replace with specifics.
|
|
60
|
-
- Do types and function names match across steps? Fix inconsistencies.
|
|
61
|
-
- Is the order correct? Steps that depend on earlier work must come after.
|
|
62
|
-
|
|
63
|
-
## Exit
|
|
64
|
-
|
|
65
|
-
After the user approves the plan → proceed to implement step by step.
|
|
66
|
-
After each step → verify before moving to the next.
|
|
67
|
-
If a step reveals the plan is wrong → stop, explain, and update the plan before continuing.
|
|
1
|
+
---
|
|
2
|
+
name: writing-plans
|
|
3
|
+
description: Use when you have a clear goal or approved design for a non-trivial task, before touching code. Creates a step-by-step implementation plan with exact file paths, code, and verification steps.
|
|
4
|
+
version: 0.1.0
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Use this skill when the task is implementation-shaped but large enough that jumping straight into coding is risky.
|
|
8
|
+
|
|
9
|
+
**Announce:** When entering writing-plans, say "Using writing-plans to create an implementation plan."
|
|
10
|
+
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
- Task touches 3+ files or multiple areas of the codebase
|
|
14
|
+
- Task changes shared behavior, APIs, or data flow
|
|
15
|
+
- Task has interdependent steps where order matters
|
|
16
|
+
- You need user sign-off before starting work
|
|
17
|
+
|
|
18
|
+
## When NOT to Use
|
|
19
|
+
|
|
20
|
+
- Single-file fix with a clear solution → just do it
|
|
21
|
+
- Task is a direct extension of an existing pattern → just do it
|
|
22
|
+
- User explicitly says to skip planning → respect that
|
|
23
|
+
|
|
24
|
+
## Plan Format
|
|
25
|
+
|
|
26
|
+
Write the plan as a markdown checklist. Each step is one action (2-5 minutes of work).
|
|
27
|
+
|
|
28
|
+
```markdown
|
|
29
|
+
# [Task Name] Plan
|
|
30
|
+
|
|
31
|
+
**Goal:** [one sentence]
|
|
32
|
+
**Files:** [list files that will be created or modified]
|
|
33
|
+
|
|
34
|
+
### Phase 1: [Phase name]
|
|
35
|
+
|
|
36
|
+
- [ ] **Step N: [action verb + what]**
|
|
37
|
+
- File: `exact/path/to/file.ext`
|
|
38
|
+
- What: [specific change]
|
|
39
|
+
- Verify: [how to confirm it works]
|
|
40
|
+
|
|
41
|
+
### Phase 2: [Phase name]
|
|
42
|
+
|
|
43
|
+
- [ ] ...
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Rules
|
|
47
|
+
|
|
48
|
+
1. **Exact file paths always.** No "the relevant file" or "in the component directory".
|
|
49
|
+
2. **Show code in steps that change code.** No "add appropriate error handling" without showing the code.
|
|
50
|
+
3. **No placeholders.** No "TBD", "TODO", "implement later", "similar to step N". If a step needs code, write the code.
|
|
51
|
+
4. **Every step is verifiable.** Include a test command, expected output, or visual check.
|
|
52
|
+
5. **YAGNI.** Only plan what was asked for. Do not add "nice to have" steps.
|
|
53
|
+
6. **DRY.** If two steps share logic, plan the shared piece first.
|
|
54
|
+
|
|
55
|
+
## Self-Review
|
|
56
|
+
|
|
57
|
+
After writing the plan, check:
|
|
58
|
+
- Can you point to a step for every requirement? If not, add the missing step.
|
|
59
|
+
- Any placeholders or vague descriptions? Replace with specifics.
|
|
60
|
+
- Do types and function names match across steps? Fix inconsistencies.
|
|
61
|
+
- Is the order correct? Steps that depend on earlier work must come after.
|
|
62
|
+
|
|
63
|
+
## Exit
|
|
64
|
+
|
|
65
|
+
After the user approves the plan → proceed to implement step by step.
|
|
66
|
+
After each step → verify before moving to the next.
|
|
67
|
+
If a step reveals the plan is wrong → stop, explain, and update the plan before continuing.
|
package/souls/anime.md
CHANGED
|
File without changes
|
package/souls/caveman.md
CHANGED
|
File without changes
|
package/souls/ceo.md
CHANGED
|
File without changes
|
package/souls/default.md
CHANGED
|
File without changes
|
package/souls/pirate.md
CHANGED
|
File without changes
|
package/souls/playful.md
CHANGED
|
File without changes
|
package/souls/professional.md
CHANGED
|
File without changes
|
package/src/cli.js
CHANGED
|
File without changes
|
package/src/commands/chat.js
CHANGED
|
File without changes
|
package/src/commands/config.js
CHANGED
|
File without changes
|
package/src/commands/doctor.js
CHANGED
|
File without changes
|
package/src/commands/run.js
CHANGED
|
File without changes
|
package/src/commands/skill.js
CHANGED
|
File without changes
|
package/src/commands/web.js
CHANGED
|
File without changes
|
package/src/core/agent-loop.js
CHANGED
|
File without changes
|
package/src/core/ast.js
CHANGED
|
File without changes
|
|
File without changes
|
package/src/core/chat-runtime.js
CHANGED
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
estimateMessagesTokens,
|
|
23
23
|
parseCompactArgs
|
|
24
24
|
} from './context-compact.js';
|
|
25
|
-
import { buildSystemPromptWithReplyLanguage } from './reply-language.js';
|
|
25
|
+
import { buildSystemPromptWithReplyLanguage, getReplyLanguage, getReplyLanguageName } from './reply-language.js';
|
|
26
26
|
import { buildSystemPromptWithSoul } from './soul.js';
|
|
27
27
|
import { getProjectPlansDir, getProjectSpecsDir, getProjectWorkspaceDir, getSessionsDir } from './paths.js';
|
|
28
28
|
import { buildProjectContextSnippet, initializeProjectIndex } from './project-index.js';
|
|
@@ -341,6 +341,104 @@ const PROJECT_REQUIREMENTS_SECTION_MARKERS = [
|
|
|
341
341
|
{ key: 'questions', marker: 'REQUIREMENTS_OPEN_QUESTIONS', labels: ['10', 'open questions', 'unknowns', '待确认问题', '待确认', '问题'] },
|
|
342
342
|
{ key: 'evidence', marker: 'REQUIREMENTS_EVIDENCE_INDEX', labels: ['11', 'evidence', 'source evidence', 'source evidence index', '源码证据索引', '证据索引', '源码证据'] }
|
|
343
343
|
];
|
|
344
|
+
const PROJECT_REQUIREMENTS_SHELL_COPY = {
|
|
345
|
+
en: {
|
|
346
|
+
html_lang: 'en',
|
|
347
|
+
title: 'Project Requirements Report',
|
|
348
|
+
meta_workspace: 'Workspace',
|
|
349
|
+
meta_date: 'Date',
|
|
350
|
+
meta_generated: 'Generated',
|
|
351
|
+
nav_label: 'Report sections',
|
|
352
|
+
nav_summary: 'Summary',
|
|
353
|
+
nav_architecture: 'Architecture',
|
|
354
|
+
nav_interfaces: 'Interfaces',
|
|
355
|
+
nav_requirements: 'Requirements',
|
|
356
|
+
nav_flows: 'Flows',
|
|
357
|
+
nav_domain: 'Domain Model',
|
|
358
|
+
nav_security: 'Security',
|
|
359
|
+
nav_errors: 'Errors',
|
|
360
|
+
nav_nonfunctional: 'Non-functional',
|
|
361
|
+
nav_questions: 'Open Questions',
|
|
362
|
+
nav_evidence: 'Evidence',
|
|
363
|
+
search_placeholder: 'Search APIs, modules, evidence...',
|
|
364
|
+
expand_all: 'Expand all',
|
|
365
|
+
collapse_all: 'Collapse all',
|
|
366
|
+
questions_only: 'Questions only',
|
|
367
|
+
show_all_sections: 'Show all sections',
|
|
368
|
+
no_results: 'No matching content found.',
|
|
369
|
+
heading_summary: 'Executive Summary',
|
|
370
|
+
heading_architecture: 'System Architecture',
|
|
371
|
+
heading_interfaces: 'Interface Inventory',
|
|
372
|
+
heading_requirements: 'Requirement Cards',
|
|
373
|
+
heading_flows: 'Core Flows',
|
|
374
|
+
heading_domain: 'Domain Model And Data Ownership',
|
|
375
|
+
heading_security: 'Permissions, Security, And Compliance',
|
|
376
|
+
heading_errors: 'Error Handling And Edge Cases',
|
|
377
|
+
heading_nonfunctional: 'Non-functional Requirements',
|
|
378
|
+
heading_questions: 'Open Questions',
|
|
379
|
+
heading_evidence: 'Source Evidence Index',
|
|
380
|
+
pending_summary: 'Pending summary.',
|
|
381
|
+
pending_architecture: 'Pending architecture map.',
|
|
382
|
+
pending_interfaces: 'Pending interface inventory.',
|
|
383
|
+
pending_requirements: 'Pending requirement cards.',
|
|
384
|
+
pending_flows: 'Pending flow diagrams.',
|
|
385
|
+
pending_domain: 'Pending domain model and data ownership.',
|
|
386
|
+
pending_security: 'Pending permissions, security, and compliance notes.',
|
|
387
|
+
pending_errors: 'Pending error handling and edge cases.',
|
|
388
|
+
pending_nonfunctional: 'Pending non-functional requirements.',
|
|
389
|
+
pending_questions: 'Pending open questions.',
|
|
390
|
+
pending_evidence: 'Pending evidence index.',
|
|
391
|
+
back_to_top: 'Back to top'
|
|
392
|
+
},
|
|
393
|
+
zh: {
|
|
394
|
+
html_lang: 'zh-CN',
|
|
395
|
+
title: '项目需求报告',
|
|
396
|
+
meta_workspace: '工作区',
|
|
397
|
+
meta_date: '日期',
|
|
398
|
+
meta_generated: '生成时间',
|
|
399
|
+
nav_label: '报告章节',
|
|
400
|
+
nav_summary: '摘要',
|
|
401
|
+
nav_architecture: '系统架构',
|
|
402
|
+
nav_interfaces: '接口清单',
|
|
403
|
+
nav_requirements: '需求卡片',
|
|
404
|
+
nav_flows: '核心流程',
|
|
405
|
+
nav_domain: '领域模型',
|
|
406
|
+
nav_security: '权限与安全',
|
|
407
|
+
nav_errors: '异常与边界',
|
|
408
|
+
nav_nonfunctional: '非功能需求',
|
|
409
|
+
nav_questions: '开放问题',
|
|
410
|
+
nav_evidence: '证据索引',
|
|
411
|
+
search_placeholder: '搜索 API、模块、证据...',
|
|
412
|
+
expand_all: '全部展开',
|
|
413
|
+
collapse_all: '全部收起',
|
|
414
|
+
questions_only: '仅看问题',
|
|
415
|
+
show_all_sections: '显示全部章节',
|
|
416
|
+
no_results: '未找到匹配内容。',
|
|
417
|
+
heading_summary: '执行摘要',
|
|
418
|
+
heading_architecture: '系统架构',
|
|
419
|
+
heading_interfaces: '接口清单',
|
|
420
|
+
heading_requirements: '需求卡片',
|
|
421
|
+
heading_flows: '核心流程',
|
|
422
|
+
heading_domain: '领域模型与数据归属',
|
|
423
|
+
heading_security: '权限、安全与合规',
|
|
424
|
+
heading_errors: '异常处理与边界情况',
|
|
425
|
+
heading_nonfunctional: '非功能需求',
|
|
426
|
+
heading_questions: '开放问题',
|
|
427
|
+
heading_evidence: '源码证据索引',
|
|
428
|
+
pending_summary: '等待填写摘要。',
|
|
429
|
+
pending_architecture: '等待填写架构图。',
|
|
430
|
+
pending_interfaces: '等待填写接口清单。',
|
|
431
|
+
pending_requirements: '等待填写需求卡片。',
|
|
432
|
+
pending_flows: '等待填写流程图。',
|
|
433
|
+
pending_domain: '等待填写领域模型与数据归属。',
|
|
434
|
+
pending_security: '等待填写权限、安全与合规说明。',
|
|
435
|
+
pending_errors: '等待填写异常处理与边界情况。',
|
|
436
|
+
pending_nonfunctional: '等待填写非功能需求。',
|
|
437
|
+
pending_questions: '等待填写开放问题。',
|
|
438
|
+
pending_evidence: '等待填写证据索引。',
|
|
439
|
+
back_to_top: '返回顶部'
|
|
440
|
+
}
|
|
441
|
+
};
|
|
344
442
|
const PLAN_MEMORY_MARKERS = {
|
|
345
443
|
findings: ['<!-- plan-findings-start -->', '<!-- plan-findings-end -->'],
|
|
346
444
|
progress: ['<!-- plan-progress-start -->', '<!-- plan-progress-end -->']
|
|
@@ -2150,6 +2248,11 @@ function buildRuntimeStateSnapshot({ currentSession, config, model, executionMod
|
|
|
2150
2248
|
value: currentSession?.planState?.status === 'pending_reflect_skill',
|
|
2151
2249
|
enumerable: false,
|
|
2152
2250
|
writable: false
|
|
2251
|
+
},
|
|
2252
|
+
replyLanguage: {
|
|
2253
|
+
value: getReplyLanguage(config),
|
|
2254
|
+
enumerable: false,
|
|
2255
|
+
writable: false
|
|
2153
2256
|
}
|
|
2154
2257
|
});
|
|
2155
2258
|
return snapshot;
|
|
@@ -3288,15 +3391,17 @@ function renderProjectRequirementsSectionContract(ignoredSections = []) {
|
|
|
3288
3391
|
return lines.join('\n');
|
|
3289
3392
|
}
|
|
3290
3393
|
|
|
3291
|
-
function buildProjectRequirementsSteps(renderedSkillPrompt, args = []) {
|
|
3394
|
+
function buildProjectRequirementsSteps(renderedSkillPrompt, args = [], config = {}) {
|
|
3292
3395
|
const options = parseProjectRequirementsOptions(args);
|
|
3293
3396
|
const userArgs = options.raw;
|
|
3294
3397
|
const requestedFocus = userArgs ? `User request/focus: ${userArgs}` : 'User request/focus: full workspace requirements report.';
|
|
3398
|
+
const replyLanguageName = getReplyLanguageName(config);
|
|
3295
3399
|
const reportDate = formatLocalDate();
|
|
3296
3400
|
const reportPath = `docs/requirements/${reportDate}-project-requirements.html`;
|
|
3297
3401
|
const companionPath = `docs/requirements/${reportDate}-project-requirements.md`;
|
|
3298
3402
|
const reportContract = [
|
|
3299
3403
|
requestedFocus,
|
|
3404
|
+
`Reply language: write generated report prose, UI labels inserted into the report, review notes, and final user-facing status in ${replyLanguageName} unless the user explicitly requested a different language. Do not translate REQUIREMENTS_* marker names or source code identifiers.`,
|
|
3300
3405
|
`Primary report path: ${reportPath}`,
|
|
3301
3406
|
`Optional companion Markdown path: ${companionPath}`,
|
|
3302
3407
|
'A pre-created HTML shell already exists at the primary report path.',
|
|
@@ -3531,7 +3636,8 @@ async function createProjectRequirementsShell({
|
|
|
3531
3636
|
planFile,
|
|
3532
3637
|
goal,
|
|
3533
3638
|
steps,
|
|
3534
|
-
depth = 'standard'
|
|
3639
|
+
depth = 'standard',
|
|
3640
|
+
config = {}
|
|
3535
3641
|
}) {
|
|
3536
3642
|
const workspaceRoot = process.cwd();
|
|
3537
3643
|
const absoluteReportPath = path.resolve(workspaceRoot, reportPath);
|
|
@@ -3539,8 +3645,9 @@ async function createProjectRequirementsShell({
|
|
|
3539
3645
|
await fs.mkdir(path.dirname(absoluteReportPath), { recursive: true });
|
|
3540
3646
|
const template = await fs.readFile(PROJECT_REQUIREMENTS_TEMPLATE, 'utf8');
|
|
3541
3647
|
const now = new Date().toISOString();
|
|
3648
|
+
const shellCopy = PROJECT_REQUIREMENTS_SHELL_COPY[getReplyLanguage(config)] || PROJECT_REQUIREMENTS_SHELL_COPY.zh;
|
|
3542
3649
|
const html = replaceTemplateVariables(template, {
|
|
3543
|
-
|
|
3650
|
+
...shellCopy,
|
|
3544
3651
|
workspace_name: path.basename(workspaceRoot) || workspaceRoot,
|
|
3545
3652
|
date: formatLocalDate(),
|
|
3546
3653
|
generated_at: now
|
|
@@ -3617,7 +3724,7 @@ async function runProjectRequirementsPipeline({
|
|
|
3617
3724
|
const reportPath = `docs/requirements/${reportDate}-project-requirements.html`;
|
|
3618
3725
|
const companionPath = `docs/requirements/${reportDate}-project-requirements.md`;
|
|
3619
3726
|
const manifestPath = `docs/requirements/${reportDate}-project-requirements.manifest.json`;
|
|
3620
|
-
const steps = buildProjectRequirementsSteps(renderedSkillPrompt, parsedInput.args);
|
|
3727
|
+
const steps = buildProjectRequirementsSteps(renderedSkillPrompt, parsedInput.args, config);
|
|
3621
3728
|
const planFile = await writeMarkdownInProjectDir(
|
|
3622
3729
|
'plans',
|
|
3623
3730
|
'project-requirements-pipeline',
|
|
@@ -3632,7 +3739,8 @@ async function runProjectRequirementsPipeline({
|
|
|
3632
3739
|
planFile,
|
|
3633
3740
|
goal,
|
|
3634
3741
|
steps,
|
|
3635
|
-
depth: options.depth
|
|
3742
|
+
depth: options.depth,
|
|
3743
|
+
config
|
|
3636
3744
|
});
|
|
3637
3745
|
const planState = {
|
|
3638
3746
|
status: 'approved',
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/core/command-risk.js
CHANGED
|
File without changes
|
package/src/core/config-store.js
CHANGED
|
File without changes
|
package/src/core/constants.js
CHANGED
|
File without changes
|
|
File without changes
|
package/src/core/crypto-utils.js
CHANGED
|
File without changes
|
|
File without changes
|
package/src/core/dream-audit.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/core/fff-adapter.js
CHANGED
package/src/core/fs-utils.js
CHANGED
|
File without changes
|
|
File without changes
|
package/src/core/input-parser.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/core/memory-store.js
CHANGED
|
File without changes
|
package/src/core/paths.js
CHANGED
|
File without changes
|
package/src/core/plan-state.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -6,8 +6,17 @@ export function normalizeReplyLanguage(value) {
|
|
|
6
6
|
return 'zh';
|
|
7
7
|
}
|
|
8
8
|
|
|
9
|
+
export function getReplyLanguage(config = {}) {
|
|
10
|
+
if (typeof config === 'string') return normalizeReplyLanguage(config);
|
|
11
|
+
return normalizeReplyLanguage(config?.ui?.reply_language);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export function getReplyLanguageName(config = {}) {
|
|
15
|
+
return getReplyLanguage(config) === 'en' ? 'English' : 'Simplified Chinese';
|
|
16
|
+
}
|
|
17
|
+
|
|
9
18
|
export function buildSystemPromptWithReplyLanguage(baseSystemPrompt, config = {}) {
|
|
10
|
-
const replyLanguage =
|
|
19
|
+
const replyLanguage = getReplyLanguage(config);
|
|
11
20
|
const directive =
|
|
12
21
|
replyLanguage === 'en'
|
|
13
22
|
? [
|
|
File without changes
|
|
File without changes
|
package/src/core/shell.js
CHANGED
|
File without changes
|
|
File without changes
|
package/src/core/soul.js
CHANGED
|
File without changes
|
package/src/core/string-utils.js
CHANGED
|
File without changes
|
package/src/core/todo-state.js
CHANGED
|
File without changes
|
package/src/core/tool-args.js
CHANGED
|
File without changes
|
package/src/core/tool-output.js
CHANGED
|
File without changes
|
|
File without changes
|
package/src/core/tools.js
CHANGED
|
File without changes
|
package/src/tui/chat-app.js
CHANGED
|
File without changes
|
package/src/tui/input-escape.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|