@shllg/emend 0.0.0-stage → 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/LICENSE +21 -0
- package/README.md +104 -2
- package/bin/emend +27 -0
- package/dist/emend.mjs +83650 -0
- package/dist/publish-worker.mjs +56021 -0
- package/dist/skills/emend-feedback/SKILL.md +242 -0
- package/dist/skills/emend-publish/SKILL.md +82 -0
- package/dist/skills/emend-review/SKILL.md +404 -0
- package/dist/skills/emend-review/references/manifest.md +272 -0
- package/dist/web/assets/App-DPbforeN.js +4 -0
- package/dist/web/assets/DiffPane-Ck50eAdK.js +238 -0
- package/dist/web/assets/abap-CLvhMVsD.js +1 -0
- package/dist/web/assets/actionscript-3-Cs6JJXT5.js +1 -0
- package/dist/web/assets/ada-X3Y2mlq2.js +1 -0
- package/dist/web/assets/ahk-DwADkxyd.js +1 -0
- package/dist/web/assets/ahk2-_6rzW9BS.js +1 -0
- package/dist/web/assets/andromeeda-vGVdxbeo.js +1 -0
- package/dist/web/assets/angular-html-BswFT_28.js +1 -0
- package/dist/web/assets/angular-html-DOLkzBtu.js +1 -0
- package/dist/web/assets/angular-ts-DOMhGxLQ.js +1 -0
- package/dist/web/assets/apache-U0d_L8uA.js +1 -0
- package/dist/web/assets/apex-KFGFyKwG.js +1 -0
- package/dist/web/assets/apl-Dio8Ke0X.js +1 -0
- package/dist/web/assets/app-BrSxOaSi.js +10 -0
- package/dist/web/assets/app-RgxpbwFB.css +2 -0
- package/dist/web/assets/applescript-CCn79oCD.js +1 -0
- package/dist/web/assets/ara-4CJ0cIlV.js +1 -0
- package/dist/web/assets/asciidoc-SCjQUq34.js +1 -0
- package/dist/web/assets/asm-Cmm7eHzH.js +1 -0
- package/dist/web/assets/astro-CN6YWUG3.js +1 -0
- package/dist/web/assets/aurora-x-CDeNXAV0.js +1 -0
- package/dist/web/assets/awk-BWXHIvNe.js +1 -0
- package/dist/web/assets/ayu-dark-DluEY0Gj.js +1 -0
- package/dist/web/assets/ayu-light-C3h-C4tm.js +1 -0
- package/dist/web/assets/ayu-mirage-Bqwy1Gya.js +1 -0
- package/dist/web/assets/ballerina-B7ZEbQpA.js +1 -0
- package/dist/web/assets/bat-C7sJWglS.js +1 -0
- package/dist/web/assets/bat-HFWzIrao.js +1 -0
- package/dist/web/assets/beancount-C2IN4Vk8.js +1 -0
- package/dist/web/assets/berry-DKpUyyne.js +1 -0
- package/dist/web/assets/bibtex-Conh3HYz.js +1 -0
- package/dist/web/assets/bibtex-DUQXB5kJ.js +1 -0
- package/dist/web/assets/bicep-CUHmPFLl.js +1 -0
- package/dist/web/assets/bird2-CYIUgYqB.js +1 -0
- package/dist/web/assets/blade-BrDpNfUX.js +1 -0
- package/dist/web/assets/bsl-gRq8cI6V.js +1 -0
- package/dist/web/assets/c-Cz4nF6n_.js +1 -0
- package/dist/web/assets/c-SSSlmE39.js +1 -0
- package/dist/web/assets/c3-D0apG41V.js +1 -0
- package/dist/web/assets/cadence-CQ2zXKGN.js +1 -0
- package/dist/web/assets/cairo-D66nqRlU.js +1 -0
- package/dist/web/assets/catppuccin-frappe-C9Q5zVZY.js +1 -0
- package/dist/web/assets/catppuccin-latte-CtsyrtPq.js +1 -0
- package/dist/web/assets/catppuccin-macchiato-R8nAf1vR.js +1 -0
- package/dist/web/assets/catppuccin-mocha-DjuaAJKi.js +1 -0
- package/dist/web/assets/chapel-C1sUNn9S.js +1 -0
- package/dist/web/assets/clarity-CtfBBspg.js +1 -0
- package/dist/web/assets/clojure-CAE6QLVB.js +1 -0
- package/dist/web/assets/clojure-zIjcJonk.js +1 -0
- package/dist/web/assets/cmake-Cpsd-0Y4.js +1 -0
- package/dist/web/assets/cmake-T_kMSWuN.js +1 -0
- package/dist/web/assets/cobol-BvqUwMCV.js +1 -0
- package/dist/web/assets/codeowners-C8r90Shi.js +1 -0
- package/dist/web/assets/codeql-oeQT6MSM.js +1 -0
- package/dist/web/assets/coffee-BSYIIMkB.js +1 -0
- package/dist/web/assets/coffee-NEqv5HL5.js +1 -0
- package/dist/web/assets/common-lisp-Cv5bFMCO.js +1 -0
- package/dist/web/assets/coq-CGaSfhwR.js +1 -0
- package/dist/web/assets/core-DeNxjJfs.js +4 -0
- package/dist/web/assets/core-Do9T5j9E.js +1 -0
- package/dist/web/assets/core-pJdRfnbv.js +1 -0
- package/dist/web/assets/cpp-BDT6bThX.js +1 -0
- package/dist/web/assets/cpp-vothkh01.js +1 -0
- package/dist/web/assets/crystal-DEF7AEJQ.js +1 -0
- package/dist/web/assets/csharp-B3DbjJyj.js +1 -0
- package/dist/web/assets/csharp-CFKDkFDZ.js +1 -0
- package/dist/web/assets/css-BGIxQoYs.js +1 -0
- package/dist/web/assets/css-DgaLhXQH.js +1 -0
- package/dist/web/assets/csv-B_R7vXwK.js +1 -0
- package/dist/web/assets/csv-k4CB9lhx.js +1 -0
- package/dist/web/assets/cue-CE9AQfxI.js +1 -0
- package/dist/web/assets/cypher-ClKdZ_lG.js +1 -0
- package/dist/web/assets/d-qD-0Kul2.js +1 -0
- package/dist/web/assets/dark-plus-Cs2F2srj.js +1 -0
- package/dist/web/assets/dart-DjhkpiWP.js +1 -0
- package/dist/web/assets/dart-_dH3dQdM.js +1 -0
- package/dist/web/assets/dax-BkyTk9wS.js +1 -0
- package/dist/web/assets/desktop-Dlh5hvp9.js +1 -0
- package/dist/web/assets/diff-CR4ZX0DC.js +1 -0
- package/dist/web/assets/diff-counts-CdprTo7g.css +1 -0
- package/dist/web/assets/diff-counts-MdwymqCR.js +95 -0
- package/dist/web/assets/diff-eeGLjE2V.js +1 -0
- package/dist/web/assets/docker-CAzcIhYn.js +1 -0
- package/dist/web/assets/docker-D0LTq72f.js +1 -0
- package/dist/web/assets/dotenv-CuH5my32.js +1 -0
- package/dist/web/assets/dracula-BHWKrbxM.js +1 -0
- package/dist/web/assets/dracula-soft-5eyTD99u.js +1 -0
- package/dist/web/assets/dream-maker-DW3nJb8Q.js +1 -0
- package/dist/web/assets/edge-B_SBzXGF.js +1 -0
- package/dist/web/assets/elixir-BL8v4QDr.js +1 -0
- package/dist/web/assets/elixir-BN3BkYei.js +1 -0
- package/dist/web/assets/elm-CC1TmzeR.js +1 -0
- package/dist/web/assets/emacs-lisp-DR2vtWaj.js +1 -0
- package/dist/web/assets/engine-javascript-DKxkqixV.js +141 -0
- package/dist/web/assets/engine-javascript-DgfjoSY2.js +141 -0
- package/dist/web/assets/erb-BjlLGk-_.js +1 -0
- package/dist/web/assets/erlang-CCXss5H6.js +1 -0
- package/dist/web/assets/erlang-ir39Pet8.js +1 -0
- package/dist/web/assets/everforest-dark-sB-x3p7T.js +1 -0
- package/dist/web/assets/everforest-light-Df2xbC6M.js +1 -0
- package/dist/web/assets/fennel-DQxkIbk2.js +1 -0
- package/dist/web/assets/fish-BJitypiv.js +1 -0
- package/dist/web/assets/fluent-C03EYrpw.js +1 -0
- package/dist/web/assets/fortran-fixed-form-1cK5gXa1.js +1 -0
- package/dist/web/assets/fortran-free-form-C5q_0aPq.js +1 -0
- package/dist/web/assets/fortran-free-form-uHOymLAb.js +1 -0
- package/dist/web/assets/fsharp-C37UASp4.js +1 -0
- package/dist/web/assets/fsharp-SO2Zcqp5.js +1 -0
- package/dist/web/assets/gdresource-LxjHb83i.js +1 -0
- package/dist/web/assets/gdscript-CJEqcM-5.js +1 -0
- package/dist/web/assets/gdscript-DJFPOtzS.js +1 -0
- package/dist/web/assets/gdshader-BNp4G147.js +1 -0
- package/dist/web/assets/gdshader-kiBtQlv1.js +1 -0
- package/dist/web/assets/genie-CV2tkWYe.js +1 -0
- package/dist/web/assets/gherkin-DExj1W_8.js +1 -0
- package/dist/web/assets/git-commit-BAuDFD-1.js +1 -0
- package/dist/web/assets/git-commit-DaNUDv1O.js +1 -0
- package/dist/web/assets/git-rebase-Bh7mDoAc.js +1 -0
- package/dist/web/assets/git-rebase-qxk4jQ_Z.js +1 -0
- package/dist/web/assets/github-dark-C-LZuMrd.js +1 -0
- package/dist/web/assets/github-dark-default-DXG-b-1a.js +1 -0
- package/dist/web/assets/github-dark-dimmed-Bx1FflLF.js +1 -0
- package/dist/web/assets/github-dark-high-contrast-B_tTalzw.js +1 -0
- package/dist/web/assets/github-light-EUqPIrTm.js +1 -0
- package/dist/web/assets/github-light-default-BXViO-2h.js +1 -0
- package/dist/web/assets/github-light-high-contrast-B68TUdTA.js +1 -0
- package/dist/web/assets/gleam-CSRkHgEL.js +1 -0
- package/dist/web/assets/glimmer-js-CIdbWayl.js +1 -0
- package/dist/web/assets/glimmer-ts-B16xCo2k.js +1 -0
- package/dist/web/assets/glsl-CaPTrB3a.js +1 -0
- package/dist/web/assets/glsl-D01ELkOo.js +1 -0
- package/dist/web/assets/gn-CAXYAgV-.js +1 -0
- package/dist/web/assets/gnuplot-7GGW24-e.js +1 -0
- package/dist/web/assets/go-CC6EVc1J.js +1 -0
- package/dist/web/assets/go-CFMhVTkq.js +1 -0
- package/dist/web/assets/graphql-BZEhxNwM.js +1 -0
- package/dist/web/assets/graphql-DEIChqxY.js +1 -0
- package/dist/web/assets/groovy-Dj7WCBJM.js +1 -0
- package/dist/web/assets/groovy-_MokPXAr.js +1 -0
- package/dist/web/assets/gruvbox-dark-hard-C820rvS2.js +1 -0
- package/dist/web/assets/gruvbox-dark-medium-BPjhmG05.js +1 -0
- package/dist/web/assets/gruvbox-dark-soft-MrdJrrXF.js +1 -0
- package/dist/web/assets/gruvbox-light-hard-BC_s9l72.js +1 -0
- package/dist/web/assets/gruvbox-light-medium-BAWPOn9u.js +1 -0
- package/dist/web/assets/gruvbox-light-soft-BSMLrYjP.js +1 -0
- package/dist/web/assets/hack-C30D-q0p.js +1 -0
- package/dist/web/assets/haml-BU6KMePS.js +1 -0
- package/dist/web/assets/haml-C1zHJAQt.js +1 -0
- package/dist/web/assets/handlebars-WZCg7K7Q.js +1 -0
- package/dist/web/assets/handlebars-g-3gLrXt.js +1 -0
- package/dist/web/assets/hanken-grotesk-latin-ext-wght-normal-Dg-wlmqe.woff2 +0 -0
- package/dist/web/assets/hanken-grotesk-latin-wght-italic-ChtpyDsL.woff2 +0 -0
- package/dist/web/assets/hanken-grotesk-latin-wght-normal-CaVRRdDk.woff2 +0 -0
- package/dist/web/assets/haskell-D8IpX4py.js +1 -0
- package/dist/web/assets/hastToHtml-ptNQFKyE.js +3 -0
- package/dist/web/assets/haxe-B0BMDyun.js +1 -0
- package/dist/web/assets/haxe-CD8O8Ul0.js +1 -0
- package/dist/web/assets/hcl-Dh228itO.js +1 -0
- package/dist/web/assets/hjson-CxZEssPk.js +1 -0
- package/dist/web/assets/hlsl-DQJgUA8P.js +1 -0
- package/dist/web/assets/hlsl-ajL2FB-w.js +1 -0
- package/dist/web/assets/horizon-CE9ld1lL.js +1 -0
- package/dist/web/assets/horizon-bright-DSNQnXHK.js +1 -0
- package/dist/web/assets/houston-CsvMBhTu.js +1 -0
- package/dist/web/assets/html-BCy9P6D2.js +1 -0
- package/dist/web/assets/html-DSw1lh5G.js +1 -0
- package/dist/web/assets/html-derivative-DyzJkWO6.js +1 -0
- package/dist/web/assets/html-derivative-ekTk9Unt.js +1 -0
- package/dist/web/assets/http-BjrBtiM6.js +1 -0
- package/dist/web/assets/hurl-B4P9s9G3.js +1 -0
- package/dist/web/assets/hxml-DPF7XkXa.js +1 -0
- package/dist/web/assets/hy-CZbG8q4J.js +1 -0
- package/dist/web/assets/imba-DsUTQ-LC.js +1 -0
- package/dist/web/assets/ini-0B7NLFlx.js +1 -0
- package/dist/web/assets/ini-DiZ1IqbV.js +1 -0
- package/dist/web/assets/java-BtIQNnN0.js +1 -0
- package/dist/web/assets/java-_ATy9zCa.js +1 -0
- package/dist/web/assets/javascript-BzbQS41l.js +1 -0
- package/dist/web/assets/javascript-CpIGwZ_Y.js +1 -0
- package/dist/web/assets/jinja-dRcm23Ea.js +1 -0
- package/dist/web/assets/jison-D3aJooqo.js +1 -0
- package/dist/web/assets/json-B88Oqtu5.js +1 -0
- package/dist/web/assets/json-C3WlssX3.js +1 -0
- package/dist/web/assets/json5-BR5RXkoi.js +1 -0
- package/dist/web/assets/jsonc-BzJ54Uh_.js +1 -0
- package/dist/web/assets/jsonc-dcnCvL0G.js +1 -0
- package/dist/web/assets/jsonl-CmCQp5Yx.js +1 -0
- package/dist/web/assets/jsonnet-CJTPZ8u_.js +1 -0
- package/dist/web/assets/jssm-DXw9l8Rf.js +1 -0
- package/dist/web/assets/jsx-C4yDKi0A.js +1 -0
- package/dist/web/assets/jsx-D3KKoC5L.js +1 -0
- package/dist/web/assets/jsx-runtime-BwolrYx8.js +1 -0
- package/dist/web/assets/julia-C8a5hZkp.js +1 -0
- package/dist/web/assets/julia-hqywDEUR.js +1 -0
- package/dist/web/assets/just-CP_wDfXI.js +1 -0
- package/dist/web/assets/kanagawa-dragon-Bozd7klA.js +1 -0
- package/dist/web/assets/kanagawa-lotus-BmuOG9ZW.js +1 -0
- package/dist/web/assets/kanagawa-wave-BML5mF2J.js +1 -0
- package/dist/web/assets/kdl-CsD5j6eV.js +1 -0
- package/dist/web/assets/kotlin-DhhofPvG.js +1 -0
- package/dist/web/assets/kusto-C7mF5XQf.js +1 -0
- package/dist/web/assets/langs-XfjJeIZX.js +2 -0
- package/dist/web/assets/laserwave-C_8bwKvT.js +1 -0
- package/dist/web/assets/latex-B_Ztlc7G.js +1 -0
- package/dist/web/assets/latex-Bn9nYtub.js +1 -0
- package/dist/web/assets/lean-CewbzKMR.js +1 -0
- package/dist/web/assets/less-B64L-FWb.js +1 -0
- package/dist/web/assets/less-CXhFgJ4v.js +1 -0
- package/dist/web/assets/lib-6HYXi0_j.js +9 -0
- package/dist/web/assets/light-plus-DVQuIRkW.js +1 -0
- package/dist/web/assets/liquid-CQNtsgCr.js +1 -0
- package/dist/web/assets/llvm-DqHOMS-s.js +1 -0
- package/dist/web/assets/log-Bu1ZtrH6.js +1 -0
- package/dist/web/assets/log-BvtJ4bSl.js +1 -0
- package/dist/web/assets/logo-Cluzi2Zq.js +1 -0
- package/dist/web/assets/lua-DjuecEsk.js +1 -0
- package/dist/web/assets/lua-fPRBWD-V.js +1 -0
- package/dist/web/assets/luau-VGWVLoqX.js +1 -0
- package/dist/web/assets/make-B54cR2A1.js +1 -0
- package/dist/web/assets/make-URElk0GJ.js +1 -0
- package/dist/web/assets/markdown-CboqBxpY.js +1 -0
- package/dist/web/assets/markdown-CjQmuOi1.js +1 -0
- package/dist/web/assets/marko-DPS0EkZ1.js +1 -0
- package/dist/web/assets/martian-mono-latin-ext-standard-normal-DeTdBbNh.woff2 +0 -0
- package/dist/web/assets/martian-mono-latin-standard-normal-1TqSgyfh.woff2 +0 -0
- package/dist/web/assets/material-theme-Bm3Qr25_.js +1 -0
- package/dist/web/assets/material-theme-darker-2IIEA8gg.js +1 -0
- package/dist/web/assets/material-theme-lighter-uhdI0v04.js +1 -0
- package/dist/web/assets/material-theme-ocean-CHQ94UKr.js +1 -0
- package/dist/web/assets/material-theme-palenight-B5W6OYN7.js +1 -0
- package/dist/web/assets/matlab-D7qyCx1q.js +1 -0
- package/dist/web/assets/mdc-C6srEd4p.js +1 -0
- package/dist/web/assets/mdx-DQZ5AkYe.js +1 -0
- package/dist/web/assets/mermaid-BxpfTIzt.js +1 -0
- package/dist/web/assets/mermaid-frame-CynTjgCI.js +4255 -0
- package/dist/web/assets/min-dark-BSWPekZh.js +1 -0
- package/dist/web/assets/min-light-DDpmG2fV.js +1 -0
- package/dist/web/assets/mipsasm-BMqwQI7S.js +1 -0
- package/dist/web/assets/mojo-fg40_ntQ.js +1 -0
- package/dist/web/assets/monokai-BscAjiQZ.js +1 -0
- package/dist/web/assets/moonbit-D9W784E_.js +1 -0
- package/dist/web/assets/move-BYnGhZoM.js +1 -0
- package/dist/web/assets/narrat-_X_XdTYD.js +1 -0
- package/dist/web/assets/nextflow-groovy-C770ykRh.js +1 -0
- package/dist/web/assets/nextflow-groovy-D5vAge1Z.js +1 -0
- package/dist/web/assets/nextflow-uA5IJerx.js +1 -0
- package/dist/web/assets/nginx-BxRBJ-Af.js +1 -0
- package/dist/web/assets/night-owl-DhmEMT88.js +1 -0
- package/dist/web/assets/night-owl-light-eJ-hLW7d.js +1 -0
- package/dist/web/assets/nim-DN3EGtL-.js +1 -0
- package/dist/web/assets/nim-ZjzS1dcU.js +1 -0
- package/dist/web/assets/nix-IvuFDN5E.js +1 -0
- package/dist/web/assets/nord-Cb4Vim4T.js +1 -0
- package/dist/web/assets/nsis-CjNLYCLg.js +1 -0
- package/dist/web/assets/nushell--0fT3PI1.js +1 -0
- package/dist/web/assets/objective-c-CsonrGpd.js +1 -0
- package/dist/web/assets/objective-c-D_ECFp-D.js +1 -0
- package/dist/web/assets/objective-cpp-BsSzOQcm.js +1 -0
- package/dist/web/assets/ocaml-BuP2SoBQ.js +1 -0
- package/dist/web/assets/ocaml-D6dNsUd0.js +1 -0
- package/dist/web/assets/odin-B1RWQWA5.js +1 -0
- package/dist/web/assets/one-dark-pro-C6YyR8OD.js +1 -0
- package/dist/web/assets/one-light-D7Lr4KcI.js +1 -0
- package/dist/web/assets/openscad-BUDT5pXO.js +1 -0
- package/dist/web/assets/org-BRAbLUOJ.js +1 -0
- package/dist/web/assets/pairing-secret-YzFjEOKw.js +2 -0
- package/dist/web/assets/parse.worker-DkIMf7Rx.js +23 -0
- package/dist/web/assets/pascal-4ZHwLPI5.js +1 -0
- package/dist/web/assets/perl-Ciba4h2-.js +1 -0
- package/dist/web/assets/perl-sgZsTtaf.js +1 -0
- package/dist/web/assets/php-D9QpVhjP.js +1 -0
- package/dist/web/assets/php-DBfnyu6d.js +1 -0
- package/dist/web/assets/pierre-dark-CpLgRqie.js +1 -0
- package/dist/web/assets/pierre-dark-protanopia-deuteranopia-B35FxJx-.js +1 -0
- package/dist/web/assets/pierre-dark-soft-kZQmAZld.js +1 -0
- package/dist/web/assets/pierre-dark-tritanopia-CpjhbsIL.js +1 -0
- package/dist/web/assets/pierre-dark-vibrant-CpQYzh95.js +1 -0
- package/dist/web/assets/pierre-light-CoaEpmwp.js +1 -0
- package/dist/web/assets/pierre-light-protanopia-deuteranopia-0fSaH845.js +1 -0
- package/dist/web/assets/pierre-light-soft-lWLdNTOI.js +1 -0
- package/dist/web/assets/pierre-light-tritanopia-CEbqgOJL.js +1 -0
- package/dist/web/assets/pierre-light-vibrant-D80Fkn33.js +1 -0
- package/dist/web/assets/pkl-ot-7Btpt.js +1 -0
- package/dist/web/assets/plastic-DQwYfKfQ.js +1 -0
- package/dist/web/assets/plsql-DGHpHOYJ.js +1 -0
- package/dist/web/assets/po-BiJDBrnU.js +1 -0
- package/dist/web/assets/poimandres-DRFjx7u4.js +1 -0
- package/dist/web/assets/polar-C7UOKdEL.js +1 -0
- package/dist/web/assets/postcss-D_Wz94rJ.js +1 -0
- package/dist/web/assets/postcss-DkKB82OS.js +1 -0
- package/dist/web/assets/powerquery-DNMTfnFr.js +1 -0
- package/dist/web/assets/powershell-Blb2ISmZ.js +1 -0
- package/dist/web/assets/powershell-CItYMEtV.js +1 -0
- package/dist/web/assets/preload-helper-BLdHbfdN.js +1 -0
- package/dist/web/assets/prisma-DMgNhnYS.js +1 -0
- package/dist/web/assets/prolog-iXnhIJG7.js +1 -0
- package/dist/web/assets/proto-DB4EqR-F.js +1 -0
- package/dist/web/assets/pug-C_nSP9Mg.js +1 -0
- package/dist/web/assets/pug-nGRwXpob.js +1 -0
- package/dist/web/assets/puppet-CDv2pdJW.js +1 -0
- package/dist/web/assets/purescript-9MfHhQsQ.js +1 -0
- package/dist/web/assets/python-C5TF47hQ.js +1 -0
- package/dist/web/assets/python-CzFU0dpx.js +1 -0
- package/dist/web/assets/qml-BxleM7bJ.js +1 -0
- package/dist/web/assets/qmldir-DCQb3MpD.js +1 -0
- package/dist/web/assets/qss-Fe1Jh2GI.js +1 -0
- package/dist/web/assets/r-BXEss897.js +1 -0
- package/dist/web/assets/r-DWzjseEo.js +1 -0
- package/dist/web/assets/racket-DcIDlBhZ.js +1 -0
- package/dist/web/assets/raku-BtFKomnU.js +1 -0
- package/dist/web/assets/raku-Cj6OV6qV.js +1 -0
- package/dist/web/assets/razor-UAq-8THt.js +1 -0
- package/dist/web/assets/rbs-C0MpOrj4.js +1 -0
- package/dist/web/assets/red-CYlAq2b0.js +1 -0
- package/dist/web/assets/reg-CRGYupPL.js +1 -0
- package/dist/web/assets/regexp-BWpGejPw.js +1 -0
- package/dist/web/assets/regexp-wOX-4MEz.js +1 -0
- package/dist/web/assets/rel-BtDbiS_P.js +1 -0
- package/dist/web/assets/riscv-Ckw8ddFX.js +1 -0
- package/dist/web/assets/rolldown-runtime-XKyaHtl9.js +1 -0
- package/dist/web/assets/ron-VUp2lXgN.js +1 -0
- package/dist/web/assets/rose-pine-aMsaMD1D.js +1 -0
- package/dist/web/assets/rose-pine-dawn-8PwUyIlP.js +1 -0
- package/dist/web/assets/rose-pine-moon-DO-qXg-I.js +1 -0
- package/dist/web/assets/rosmsg-CAekHB0j.js +1 -0
- package/dist/web/assets/rst-BCaXiUC4.js +1 -0
- package/dist/web/assets/ruby-C4ARPOX3.js +1 -0
- package/dist/web/assets/ruby-Dl3oLoVp.js +1 -0
- package/dist/web/assets/rust-Ch0zZBV0.js +1 -0
- package/dist/web/assets/rust-DBZE5Si3.js +1 -0
- package/dist/web/assets/sas-BowjnAvi.js +1 -0
- package/dist/web/assets/sass-DXrisJhu.js +1 -0
- package/dist/web/assets/scala-CTTBu_35.js +1 -0
- package/dist/web/assets/scala-o2NiCLJc.js +1 -0
- package/dist/web/assets/scheme-DQCgrYNe.js +1 -0
- package/dist/web/assets/scss-CWs8DVSa.js +1 -0
- package/dist/web/assets/scss-D3wBkj3d.js +1 -0
- package/dist/web/assets/sdbl-CpzYUp7e.js +1 -0
- package/dist/web/assets/sdbl-CyKdwm0B.js +1 -0
- package/dist/web/assets/shaderlab-DY7g_Ava.js +1 -0
- package/dist/web/assets/shellscript-CVTB3cr6.js +1 -0
- package/dist/web/assets/shellscript-CqHdAlCp.js +1 -0
- package/dist/web/assets/shellsession-DDrivR0a.js +1 -0
- package/dist/web/assets/shiki-Ci4cdHsM-CaeoOzAb.js +15 -0
- package/dist/web/assets/shiki-Clxf4L3p.js +4 -0
- package/dist/web/assets/slack-dark-DnToyrRv.js +1 -0
- package/dist/web/assets/slack-ochin-B2OO5cIa.js +1 -0
- package/dist/web/assets/smalltalk-BHpQb5nM.js +1 -0
- package/dist/web/assets/smithy-Dgaz7aur.js +1 -0
- package/dist/web/assets/snazzy-light-4G7pJPwS.js +1 -0
- package/dist/web/assets/solarized-dark-b97czJOk.js +1 -0
- package/dist/web/assets/solarized-light-DFPxpIYQ.js +1 -0
- package/dist/web/assets/solidity-Bj7E1mRn.js +1 -0
- package/dist/web/assets/soy-CUUUw2U6.js +1 -0
- package/dist/web/assets/sparql-Dy5Sx-zJ.js +1 -0
- package/dist/web/assets/splunk-BC2Px7Mm.js +1 -0
- package/dist/web/assets/sql-CNu3Or2W.js +1 -0
- package/dist/web/assets/sql-CfM2IJm3.js +1 -0
- package/dist/web/assets/ssh-config-BgfXC-Er.js +1 -0
- package/dist/web/assets/stata-Dj4sbAEx.js +1 -0
- package/dist/web/assets/stylus-LiTfbrWi.js +1 -0
- package/dist/web/assets/stylus-y-ZXgJGq.js +1 -0
- package/dist/web/assets/surrealql-NoXzmj18.js +1 -0
- package/dist/web/assets/svelte-BaCIHHWd.js +1 -0
- package/dist/web/assets/swift-CCLoYZtx.js +1 -0
- package/dist/web/assets/swift-DQ24oLw9.js +1 -0
- package/dist/web/assets/synthwave-84-nFMaYfgc.js +1 -0
- package/dist/web/assets/system-verilog-DFpyZzg3.js +1 -0
- package/dist/web/assets/system-verilog-Dp2k_mze.js +1 -0
- package/dist/web/assets/systemd-BxMlprV5.js +1 -0
- package/dist/web/assets/talonscript-CohzipZa.js +1 -0
- package/dist/web/assets/tasl-DMoTqEGO.js +1 -0
- package/dist/web/assets/tcl-CZd0xW_V.js +1 -0
- package/dist/web/assets/templ-BfgLc4ra.js +1 -0
- package/dist/web/assets/terraform-DswuEJGm.js +1 -0
- package/dist/web/assets/tex-C9L8xJex.js +1 -0
- package/dist/web/assets/tex-CNYz7bLJ.js +1 -0
- package/dist/web/assets/themes-DmprMKgK.js +2 -0
- package/dist/web/assets/tokyo-night-oM2G3aXe.js +1 -0
- package/dist/web/assets/toml-CcmNWLt0.js +1 -0
- package/dist/web/assets/ts-tags-DLz2GTd3.js +1 -0
- package/dist/web/assets/tsv-sltzmVWM.js +1 -0
- package/dist/web/assets/tsx-BOvsFOI6.js +1 -0
- package/dist/web/assets/tsx-CGosfAUg.js +1 -0
- package/dist/web/assets/turtle-CQ9kcy0m.js +1 -0
- package/dist/web/assets/turtle-CcN57yC0.js +1 -0
- package/dist/web/assets/twig-HaHkB3PH.js +1 -0
- package/dist/web/assets/twig-lMQ09cjh.js +1 -0
- package/dist/web/assets/typescript-Bb1J8qyy.js +1 -0
- package/dist/web/assets/typescript-j_1H8WHN.js +1 -0
- package/dist/web/assets/typespec-BGhR2SqG.js +1 -0
- package/dist/web/assets/typst-DDNSzYFN.js +1 -0
- package/dist/web/assets/unused-diff-backend-D509CnpY.js +1 -0
- package/dist/web/assets/unwrapDefault-ByDmBtHB.js +1 -0
- package/dist/web/assets/v-DBj4K9d_.js +1 -0
- package/dist/web/assets/vala-zf12oZj6.js +1 -0
- package/dist/web/assets/vb-3nVziYZS.js +1 -0
- package/dist/web/assets/vb-CP6Ec8nh.js +1 -0
- package/dist/web/assets/verilog-1j7BQk-h.js +1 -0
- package/dist/web/assets/verilog-kL8Dwv27.js +1 -0
- package/dist/web/assets/vesper-DdrHHSXu.js +1 -0
- package/dist/web/assets/vhdl-BroJfC0k.js +1 -0
- package/dist/web/assets/viml-DvXPmvsu.js +1 -0
- package/dist/web/assets/vitesse-black-fwtXNY1n.js +1 -0
- package/dist/web/assets/vitesse-dark-BZCL-v6S.js +1 -0
- package/dist/web/assets/vitesse-light-VbXTXTou.js +1 -0
- package/dist/web/assets/vue-html-CGMs_6qn.js +1 -0
- package/dist/web/assets/vue-qH43U_rv.js +1 -0
- package/dist/web/assets/vue-vine-6XI2pIvQ.js +1 -0
- package/dist/web/assets/vyper-CgoNMtux.js +1 -0
- package/dist/web/assets/wasm-ByWQv1Qj.js +1 -0
- package/dist/web/assets/wenyan-C8pVoKbM.js +1 -0
- package/dist/web/assets/wgsl-BsKzXJz4.js +1 -0
- package/dist/web/assets/wikitext-ClFFjSW2.js +1 -0
- package/dist/web/assets/wit-DdvCle-K.js +1 -0
- package/dist/web/assets/wolfram-DLL8P-h_.js +1 -0
- package/dist/web/assets/worker-DL-XNG9N.js +13 -0
- package/dist/web/assets/worker-registries-DNgFn7hx.js +1 -0
- package/dist/web/assets/xml-DuKfbPI6.js +1 -0
- package/dist/web/assets/xml-WY0zc4PG.js +1 -0
- package/dist/web/assets/xsl-CW58cerL.js +1 -0
- package/dist/web/assets/xsl-Czhm44Ae.js +1 -0
- package/dist/web/assets/yaml-DDA_XMNu.js +1 -0
- package/dist/web/assets/yaml-DijMHRDA.js +1 -0
- package/dist/web/assets/zenscript-BnlCZFoB.js +1 -0
- package/dist/web/assets/zig-B7sSDI6F.js +1 -0
- package/dist/web/assets/zig-cFafUZna.js +1 -0
- package/dist/web/icons/apple-touch-icon.png +0 -0
- package/dist/web/icons/icon-192.png +0 -0
- package/dist/web/icons/icon-512.png +0 -0
- package/dist/web/index.html +20 -0
- package/dist/web/licenses/hanken-grotesk-OFL.txt +93 -0
- package/dist/web/licenses/martian-mono-OFL.txt +93 -0
- package/dist/web/manifest.webmanifest +13 -0
- package/dist/web/mermaid-frame.html +13 -0
- package/dist/web/sw.js +1 -0
- package/package.json +31 -3
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 shllg
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,105 @@
|
|
|
1
|
-
#
|
|
1
|
+
# emend
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Open-source, local-first review for work done by coding agents: plans, docs and code. Read the
|
|
4
|
+
agent's writeup next to its diff, comment on any of it, press Send, and the waiting agent gets your
|
|
5
|
+
feedback. emend starts on your machine with one command. Machines can attach to a hub, so that you
|
|
6
|
+
review from any device, your phone included.
|
|
7
|
+
|
|
8
|
+
[VISION.md](https://github.com/shllg/emend/blob/main/VISION.md) says what emend is for, and what it
|
|
9
|
+
is not.
|
|
10
|
+
|
|
11
|
+
emend grew out of [hunk-review-skill](https://github.com/vendis-ai/hunk-review-skill), which stays
|
|
12
|
+
maintained alongside it.
|
|
13
|
+
|
|
14
|
+
## Requirements
|
|
15
|
+
|
|
16
|
+
Linux or macOS, Node.js 24.18 or newer and git 2.44 or newer.
|
|
17
|
+
|
|
18
|
+
## Quick start (one machine)
|
|
19
|
+
|
|
20
|
+
On macOS, install Node.js and git from Homebrew first:
|
|
21
|
+
|
|
22
|
+
```sh
|
|
23
|
+
brew install node git
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Then install emend, start it and add its skills:
|
|
27
|
+
|
|
28
|
+
```sh
|
|
29
|
+
npm install -g @shllg/emend
|
|
30
|
+
emend --version
|
|
31
|
+
emend service install
|
|
32
|
+
emend
|
|
33
|
+
claude plugin marketplace add shllg/emend@release
|
|
34
|
+
claude plugin install emend@emend
|
|
35
|
+
emend skills install
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
With mise activated in your shell, install with `mise use -g npm:@shllg/emend` instead of the
|
|
39
|
+
`npm` line. `emend service install` runs the server at login, which is recommended. `emend` prints a
|
|
40
|
+
one-time sign-in link. The two `claude plugin` lines add the skills to Claude Code, and
|
|
41
|
+
`emend skills install` adds them for Codex and other agents that read `~/.agents/skills`.
|
|
42
|
+
|
|
43
|
+
If `node --version` is older than 24.18 or `git --version` older than 2.44, as on many Linux
|
|
44
|
+
distributions and with Apple's git on macOS, follow step 1 of
|
|
45
|
+
[local.md](https://github.com/shllg/emend/blob/release/docs/setup/local.md#1-install-nodejs-and-git)
|
|
46
|
+
first.
|
|
47
|
+
|
|
48
|
+
The full walkthrough, with a prompt that lets Claude Code or Codex do it with you, is
|
|
49
|
+
[docs/setup/local.md](https://github.com/shllg/emend/blob/release/docs/setup/local.md).
|
|
50
|
+
|
|
51
|
+
## Pick your setup
|
|
52
|
+
|
|
53
|
+
Each setup has its own page for Linux and macOS, with a copy-paste prompt for your agent.
|
|
54
|
+
[docs/setup.md](https://github.com/shllg/emend/blob/release/docs/setup.md) is the index, with the
|
|
55
|
+
one-prompt setup.
|
|
56
|
+
|
|
57
|
+
| Setup | Suits you if |
|
|
58
|
+
|---|---|
|
|
59
|
+
| [One machine](https://github.com/shllg/emend/blob/release/docs/setup/local.md) | You try emend or review agent work on the machine where the agents run. |
|
|
60
|
+
| [Your own hub on Tailscale](https://github.com/shllg/emend/blob/release/docs/setup/hub-tailscale.md) | You have an always-on machine and want to review from your phone and other devices. |
|
|
61
|
+
| [Attach more machines](https://github.com/shllg/emend/blob/release/docs/setup/attach.md) | You run a hub and want the agents on your other machines to publish to it. |
|
|
62
|
+
| [Set up your agents](https://github.com/shllg/emend/blob/release/docs/setup/agents.md) | emend runs and you want Claude Code, Codex or others to use it. |
|
|
63
|
+
| [Develop emend from a checkout](https://github.com/shllg/emend/blob/release/docs/setup/development.md) | You change emend itself or run it from a clone. |
|
|
64
|
+
| [Update](https://github.com/shllg/emend/blob/release/docs/setup/update.md) | A new version is out. |
|
|
65
|
+
| [Troubleshooting](https://github.com/shllg/emend/blob/release/docs/setup/troubleshooting.md) | A setup or update step fails. |
|
|
66
|
+
| A hub on your own network (a LAN address or your own HTTPS proxy) | Not supported yet; planned. Today Tailscale is the supported way to reach a hub from other devices. |
|
|
67
|
+
|
|
68
|
+
## Update
|
|
69
|
+
|
|
70
|
+
```sh
|
|
71
|
+
npm install -g @shllg/emend@latest
|
|
72
|
+
claude plugin marketplace update emend
|
|
73
|
+
claude plugin update emend@emend
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
With mise, run `mise upgrade npm:@shllg/emend` instead of the `npm` line. If you installed the
|
|
77
|
+
service, run `emend service install` again; it keeps its options. If you ran `emend skills install`
|
|
78
|
+
before, run it again. Then restart Claude Code. After `brew upgrade node` or `mise upgrade node`,
|
|
79
|
+
run `emend service install` again too.
|
|
80
|
+
|
|
81
|
+
[docs/setup/update.md](https://github.com/shllg/emend/blob/release/docs/setup/update.md) covers the
|
|
82
|
+
order for a hub and its machines, Node.js upgrades and the phone app.
|
|
83
|
+
|
|
84
|
+
## Uninstall
|
|
85
|
+
|
|
86
|
+
Remove what a setup added with its Undo section: [one machine](https://github.com/shllg/emend/blob/release/docs/setup/local.md#undo)
|
|
87
|
+
and [your agents](https://github.com/shllg/emend/blob/release/docs/setup/agents.md#undo). The Undo
|
|
88
|
+
sections of the hub and attach pages cover those setups.
|
|
89
|
+
|
|
90
|
+
## Usage
|
|
91
|
+
|
|
92
|
+
[docs/usage.md](https://github.com/shllg/emend/blob/release/docs/usage.md) covers `emend config`
|
|
93
|
+
and publishing docs for review.
|
|
94
|
+
|
|
95
|
+
## Development
|
|
96
|
+
|
|
97
|
+
[Develop emend from a checkout](https://github.com/shllg/emend/blob/release/docs/setup/development.md)
|
|
98
|
+
covers installing from a checkout, the plugin from a checkout and the checks.
|
|
99
|
+
[AGENTS.md](https://github.com/shllg/emend/blob/main/AGENTS.md) holds the working rules.
|
|
100
|
+
Maintainers: [docs/releasing.md](https://github.com/shllg/emend/blob/main/docs/releasing.md) holds
|
|
101
|
+
the release policy and checklist.
|
|
102
|
+
|
|
103
|
+
## License
|
|
104
|
+
|
|
105
|
+
MIT. See [LICENSE](https://github.com/shllg/emend/blob/main/LICENSE).
|
package/bin/emend
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
set -eu
|
|
3
|
+
|
|
4
|
+
script="$0"
|
|
5
|
+
hops=0
|
|
6
|
+
while :; do
|
|
7
|
+
directory=$(CDPATH= cd -P -- "$(dirname -- "$script")" && pwd)
|
|
8
|
+
script="$directory/$(basename -- "$script")"
|
|
9
|
+
[ -L "$script" ] || break
|
|
10
|
+
if [ "$hops" -ge 40 ]; then
|
|
11
|
+
printf 'emend: too many levels of symlinks\n' >&2
|
|
12
|
+
exit 1
|
|
13
|
+
fi
|
|
14
|
+
hops=$((hops + 1))
|
|
15
|
+
link=$(readlink "$script")
|
|
16
|
+
case "$link" in
|
|
17
|
+
/*) script="$link" ;;
|
|
18
|
+
*) script="$directory/$link" ;;
|
|
19
|
+
esac
|
|
20
|
+
done
|
|
21
|
+
|
|
22
|
+
if [ ! -f "$directory/../dist/emend.mjs" ]; then
|
|
23
|
+
printf 'emend: not built; run pnpm build in the emend checkout\n' >&2
|
|
24
|
+
exit 1
|
|
25
|
+
fi
|
|
26
|
+
|
|
27
|
+
exec node "$directory/../dist/emend.mjs" "$@"
|