@linghun/tui 0.1.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 +190 -0
- package/dist/agent-completion-finalizer.d.ts +31 -0
- package/dist/agent-completion-finalizer.d.ts.map +1 -0
- package/dist/agent-completion-finalizer.js +20 -0
- package/dist/agent-handoff-safety.d.ts +13 -0
- package/dist/agent-handoff-safety.d.ts.map +1 -0
- package/dist/agent-handoff-safety.js +43 -0
- package/dist/agent-workflow-registry.d.ts +45 -0
- package/dist/agent-workflow-registry.d.ts.map +1 -0
- package/dist/agent-workflow-registry.js +12 -0
- package/dist/architecture-boundary.d.ts +151 -0
- package/dist/architecture-boundary.d.ts.map +1 -0
- package/dist/architecture-boundary.js +24 -0
- package/dist/architecture-runtime.d.ts +56 -0
- package/dist/architecture-runtime.d.ts.map +1 -0
- package/dist/architecture-runtime.js +18 -0
- package/dist/background-control-runtime.d.ts +29 -0
- package/dist/background-control-runtime.d.ts.map +1 -0
- package/dist/background-control-runtime.js +148 -0
- package/dist/bash-subcommand-parser.d.ts +34 -0
- package/dist/bash-subcommand-parser.d.ts.map +1 -0
- package/dist/bash-subcommand-parser.js +8 -0
- package/dist/batch-tool-confirmation.d.ts +18 -0
- package/dist/batch-tool-confirmation.d.ts.map +1 -0
- package/dist/batch-tool-confirmation.js +100 -0
- package/dist/break-cache-runtime.d.ts +40 -0
- package/dist/break-cache-runtime.d.ts.map +1 -0
- package/dist/break-cache-runtime.js +17 -0
- package/dist/btw-runtime.d.ts +45 -0
- package/dist/btw-runtime.d.ts.map +1 -0
- package/dist/btw-runtime.js +14 -0
- package/dist/cache-command-runtime.d.ts +22 -0
- package/dist/cache-command-runtime.d.ts.map +1 -0
- package/dist/cache-command-runtime.js +33 -0
- package/dist/cache-freshness.d.ts +26 -0
- package/dist/cache-freshness.d.ts.map +1 -0
- package/dist/cache-freshness.js +14 -0
- package/dist/capability-runtime.d.ts +75 -0
- package/dist/capability-runtime.d.ts.map +1 -0
- package/dist/capability-runtime.js +97 -0
- package/dist/chunk-2FVEKTKN.js +86 -0
- package/dist/chunk-2YL5VKJ5.js +531 -0
- package/dist/chunk-3AKXDMVS.js +85 -0
- package/dist/chunk-3GCIXKCI.js +221 -0
- package/dist/chunk-3LT6OWQ2.js +258 -0
- package/dist/chunk-3XNUDLOM.js +91 -0
- package/dist/chunk-4EIC5BCT.js +475 -0
- package/dist/chunk-4EP3TUFF.js +238 -0
- package/dist/chunk-4I2NWBOM.js +117 -0
- package/dist/chunk-4K6UB524.js +443 -0
- package/dist/chunk-4T5DJW54.js +88 -0
- package/dist/chunk-4WHZ6JKD.js +8105 -0
- package/dist/chunk-5H7RRF7C.js +6 -0
- package/dist/chunk-64MJP6FK.js +558 -0
- package/dist/chunk-66BNE332.js +1617 -0
- package/dist/chunk-6CI6TKLN.js +50 -0
- package/dist/chunk-6RJVTUWI.js +16 -0
- package/dist/chunk-6SMM5CMP.js +100 -0
- package/dist/chunk-6USL33ZO.js +289 -0
- package/dist/chunk-7ZE5JFAZ.js +760 -0
- package/dist/chunk-AKPXMCVF.js +1373 -0
- package/dist/chunk-AO4CXI37.js +284 -0
- package/dist/chunk-APJIC2O5.js +150 -0
- package/dist/chunk-B4GQTZMT.js +607 -0
- package/dist/chunk-BFVPLGAC.js +93 -0
- package/dist/chunk-BOV4K7FP.js +588 -0
- package/dist/chunk-CFMSB6ST.js +59 -0
- package/dist/chunk-CFXB5SE5.js +502 -0
- package/dist/chunk-CRQORMFF.js +32 -0
- package/dist/chunk-CRSLDQOA.js +146 -0
- package/dist/chunk-CRW3636S.js +214 -0
- package/dist/chunk-D3UTL2QX.js +86 -0
- package/dist/chunk-D7TCSOAZ.js +331 -0
- package/dist/chunk-DDXS2RDZ.js +228 -0
- package/dist/chunk-DICVLZHH.js +144 -0
- package/dist/chunk-DNQN74CC.js +1186 -0
- package/dist/chunk-DTK5NBTV.js +912 -0
- package/dist/chunk-E72U7WW7.js +50 -0
- package/dist/chunk-EBACIBJP.js +356 -0
- package/dist/chunk-ECFLCY5V.js +530 -0
- package/dist/chunk-EORRZP3F.js +109 -0
- package/dist/chunk-F43AMWLZ.js +115 -0
- package/dist/chunk-F46N43MG.js +56 -0
- package/dist/chunk-F6TVBCZV.js +51 -0
- package/dist/chunk-FRIMDSRU.js +242 -0
- package/dist/chunk-FTAEPAVY.js +314 -0
- package/dist/chunk-GC55DMZV.js +156 -0
- package/dist/chunk-GCMH5P4W.js +422 -0
- package/dist/chunk-GDQQNPBP.js +251 -0
- package/dist/chunk-GKZYTPN2.js +279 -0
- package/dist/chunk-GLWTWEGX.js +272 -0
- package/dist/chunk-GMUCSNUD.js +586 -0
- package/dist/chunk-GTP2KPLY.js +167 -0
- package/dist/chunk-GW5YDCRZ.js +42 -0
- package/dist/chunk-H3T4EF5F.js +87 -0
- package/dist/chunk-HAEU6OTS.js +381 -0
- package/dist/chunk-HQIJGQYU.js +172 -0
- package/dist/chunk-HW2TBXVK.js +34 -0
- package/dist/chunk-HWD22O6F.js +94 -0
- package/dist/chunk-I3NTAIMF.js +280 -0
- package/dist/chunk-IN42UISW.js +372 -0
- package/dist/chunk-IWUIOLMF.js +82 -0
- package/dist/chunk-J7ZE2JKP.js +283 -0
- package/dist/chunk-JBLVBO3U.js +109 -0
- package/dist/chunk-JDWXC2OQ.js +800 -0
- package/dist/chunk-JGDIO2NF.js +74 -0
- package/dist/chunk-JHGWGH2C.js +182 -0
- package/dist/chunk-JLCPHVBN.js +42 -0
- package/dist/chunk-JO5ANTMR.js +6027 -0
- package/dist/chunk-JPXSFZFC.js +100 -0
- package/dist/chunk-JQCRCDOC.js +1195 -0
- package/dist/chunk-K4FSYBSY.js +41 -0
- package/dist/chunk-K56D3X7S.js +1225 -0
- package/dist/chunk-KI7C6ZOD.js +92 -0
- package/dist/chunk-KO64OFSG.js +58 -0
- package/dist/chunk-KQJHVJZB.js +227 -0
- package/dist/chunk-KTWV5JC5.js +59 -0
- package/dist/chunk-L4XXW6Y5.js +374 -0
- package/dist/chunk-L5GOCMZP.js +18 -0
- package/dist/chunk-LDABZV5V.js +278 -0
- package/dist/chunk-LHHKPGLX.js +903 -0
- package/dist/chunk-LL7LBRDL.js +60 -0
- package/dist/chunk-LQTVYUT3.js +421 -0
- package/dist/chunk-LVIM2PA7.js +663 -0
- package/dist/chunk-M4AIK2SP.js +215 -0
- package/dist/chunk-MLUIOBKL.js +420 -0
- package/dist/chunk-MOJL4X4L.js +47 -0
- package/dist/chunk-MVONSJEN.js +300 -0
- package/dist/chunk-N7G2X2LK.js +709 -0
- package/dist/chunk-NKFKOEYX.js +146 -0
- package/dist/chunk-NMNOAFFT.js +167 -0
- package/dist/chunk-NSIKYD3X.js +74 -0
- package/dist/chunk-O7EFPSMC.js +60 -0
- package/dist/chunk-O7S3HYE6.js +210 -0
- package/dist/chunk-OEYW3JE3.js +262 -0
- package/dist/chunk-OF3K3CU5.js +159 -0
- package/dist/chunk-OMZYPQVA.js +298 -0
- package/dist/chunk-OZMX3E35.js +248 -0
- package/dist/chunk-P277M7Z5.js +303 -0
- package/dist/chunk-P4CPRJLI.js +65 -0
- package/dist/chunk-PBIPV4LD.js +494 -0
- package/dist/chunk-PGNALDEH.js +2003 -0
- package/dist/chunk-PGWW3DVE.js +157 -0
- package/dist/chunk-QB4VWH7W.js +515 -0
- package/dist/chunk-QBCGAIU7.js +120 -0
- package/dist/chunk-QIU3FJPC.js +99 -0
- package/dist/chunk-QLRTQHTR.js +744 -0
- package/dist/chunk-QTDGRZMZ.js +171 -0
- package/dist/chunk-RBOQJFIZ.js +183 -0
- package/dist/chunk-RDGM4RUE.js +178 -0
- package/dist/chunk-RM5JDRCW.js +71 -0
- package/dist/chunk-RM5QMOFY.js +189 -0
- package/dist/chunk-RMLTVKOY.js +588 -0
- package/dist/chunk-RVY34HK4.js +79 -0
- package/dist/chunk-S3YWTBXL.js +43 -0
- package/dist/chunk-SJOS5PM6.js +64 -0
- package/dist/chunk-SOPYWTFV.js +90 -0
- package/dist/chunk-SQIBPLLV.js +15 -0
- package/dist/chunk-SRZIA6B4.js +136 -0
- package/dist/chunk-SYBNJZEL.js +250 -0
- package/dist/chunk-TFZEFIQT.js +17 -0
- package/dist/chunk-THZBFYAH.js +136 -0
- package/dist/chunk-TJLC3QAS.js +83 -0
- package/dist/chunk-TYF4GJR3.js +598 -0
- package/dist/chunk-UDQT5CWK.js +252 -0
- package/dist/chunk-UOHZQIVL.js +168 -0
- package/dist/chunk-URNQUECO.js +187 -0
- package/dist/chunk-UT2TYK2A.js +148 -0
- package/dist/chunk-UT5BOJKU.js +190 -0
- package/dist/chunk-V7GDHHBL.js +526 -0
- package/dist/chunk-VCSRBS47.js +133 -0
- package/dist/chunk-VIBENDE3.js +152 -0
- package/dist/chunk-VTQL23UM.js +302 -0
- package/dist/chunk-W3KHJNSH.js +281 -0
- package/dist/chunk-W6NU7ZAV.js +52 -0
- package/dist/chunk-WHFDDZHY.js +407 -0
- package/dist/chunk-WJWYRBWH.js +48 -0
- package/dist/chunk-WKMBK5UP.js +145 -0
- package/dist/chunk-WQMSRO4D.js +489 -0
- package/dist/chunk-WV6YJGZR.js +81 -0
- package/dist/chunk-WVAQYKGL.js +269 -0
- package/dist/chunk-X7A22JHP.js +106 -0
- package/dist/chunk-XFPNU42I.js +59 -0
- package/dist/chunk-YH6UIHNF.js +161 -0
- package/dist/chunk-YPQFSFYK.js +19 -0
- package/dist/chunk-YTQFOZRZ.js +110 -0
- package/dist/chunk-ZJK25VFP.js +506 -0
- package/dist/chunk-ZOSK2UEU.js +1555 -0
- package/dist/chunk-ZYSN7AWW.js +336 -0
- package/dist/chunk-ZZ2CNCXJ.js +282 -0
- package/dist/command-panel-runtime.d.ts +33 -0
- package/dist/command-panel-runtime.d.ts.map +1 -0
- package/dist/command-panel-runtime.js +80 -0
- package/dist/compact-cache-command-runtime.d.ts +38 -0
- package/dist/compact-cache-command-runtime.d.ts.map +1 -0
- package/dist/compact-cache-command-runtime.js +146 -0
- package/dist/compact-context.d.ts +35 -0
- package/dist/compact-context.d.ts.map +1 -0
- package/dist/compact-context.js +16 -0
- package/dist/compact-preflight-runtime.d.ts +46 -0
- package/dist/compact-preflight-runtime.d.ts.map +1 -0
- package/dist/compact-preflight-runtime.js +62 -0
- package/dist/connector-runtime.d.ts +72 -0
- package/dist/connector-runtime.d.ts.map +1 -0
- package/dist/connector-runtime.js +88 -0
- package/dist/context-estimator.d.ts +20 -0
- package/dist/context-estimator.d.ts.map +1 -0
- package/dist/context-estimator.js +18 -0
- package/dist/context-window-runtime.d.ts +12 -0
- package/dist/context-window-runtime.d.ts.map +1 -0
- package/dist/context-window-runtime.js +10 -0
- package/dist/deep-compact-runtime.d.ts +53 -0
- package/dist/deep-compact-runtime.d.ts.map +1 -0
- package/dist/deep-compact-runtime.js +35 -0
- package/dist/deferred-tools-catalog.d.ts +52 -0
- package/dist/deferred-tools-catalog.d.ts.map +1 -0
- package/dist/deferred-tools-catalog.js +42 -0
- package/dist/details-status-runtime.d.ts +48 -0
- package/dist/details-status-runtime.d.ts.map +1 -0
- package/dist/details-status-runtime.js +102 -0
- package/dist/evidence-runtime.d.ts +48 -0
- package/dist/evidence-runtime.d.ts.map +1 -0
- package/dist/evidence-runtime.js +92 -0
- package/dist/extension-command-runtime.d.ts +63 -0
- package/dist/extension-command-runtime.d.ts.map +1 -0
- package/dist/extension-command-runtime.js +67 -0
- package/dist/extension-slash-runtime.d.ts +11 -0
- package/dist/extension-slash-runtime.d.ts.map +1 -0
- package/dist/extension-slash-runtime.js +79 -0
- package/dist/external-editor-runtime.d.ts +32 -0
- package/dist/external-editor-runtime.d.ts.map +1 -0
- package/dist/external-editor-runtime.js +71 -0
- package/dist/failure-learning-command-runtime.d.ts +10 -0
- package/dist/failure-learning-command-runtime.d.ts.map +1 -0
- package/dist/failure-learning-command-runtime.js +78 -0
- package/dist/failure-learning-presenter.d.ts +6 -0
- package/dist/failure-learning-presenter.d.ts.map +1 -0
- package/dist/failure-learning-presenter.js +12 -0
- package/dist/failure-learning-runtime.d.ts +39 -0
- package/dist/failure-learning-runtime.d.ts.map +1 -0
- package/dist/failure-learning-runtime.js +39 -0
- package/dist/feature-flag-runtime.d.ts +8 -0
- package/dist/feature-flag-runtime.d.ts.map +1 -0
- package/dist/feature-flag-runtime.js +12 -0
- package/dist/feishu-long-connection-runtime.d.ts +12 -0
- package/dist/feishu-long-connection-runtime.d.ts.map +1 -0
- package/dist/feishu-long-connection-runtime.js +7 -0
- package/dist/final-answer-gate.d.ts +24 -0
- package/dist/final-answer-gate.d.ts.map +1 -0
- package/dist/final-answer-gate.js +26 -0
- package/dist/ghost-text.d.ts +16 -0
- package/dist/ghost-text.d.ts.map +1 -0
- package/dist/ghost-text.js +8 -0
- package/dist/git-branch-runtime.d.ts +14 -0
- package/dist/git-branch-runtime.d.ts.map +1 -0
- package/dist/git-branch-runtime.js +68 -0
- package/dist/git-command-runtime.d.ts +22 -0
- package/dist/git-command-runtime.d.ts.map +1 -0
- package/dist/git-command-runtime.js +89 -0
- package/dist/git-operation-runtime.d.ts +188 -0
- package/dist/git-operation-runtime.d.ts.map +1 -0
- package/dist/git-operation-runtime.js +45 -0
- package/dist/git-runtime.d.ts +113 -0
- package/dist/git-runtime.d.ts.map +1 -0
- package/dist/git-runtime.js +16 -0
- package/dist/git-slash-runtime.d.ts +38 -0
- package/dist/git-slash-runtime.d.ts.map +1 -0
- package/dist/git-slash-runtime.js +18 -0
- package/dist/git-tool-dispatch-runtime.d.ts +108 -0
- package/dist/git-tool-dispatch-runtime.d.ts.map +1 -0
- package/dist/git-tool-dispatch-runtime.js +25 -0
- package/dist/git-tool-runtime.d.ts +64 -0
- package/dist/git-tool-runtime.d.ts.map +1 -0
- package/dist/git-tool-runtime.js +36 -0
- package/dist/guard-wiring.d.ts +67 -0
- package/dist/guard-wiring.d.ts.map +1 -0
- package/dist/guard-wiring.js +21 -0
- package/dist/handoff-session-runtime.d.ts +11 -0
- package/dist/handoff-session-runtime.d.ts.map +1 -0
- package/dist/handoff-session-runtime.js +36 -0
- package/dist/index-result-presenter.d.ts +14 -0
- package/dist/index-result-presenter.d.ts.map +1 -0
- package/dist/index-result-presenter.js +28 -0
- package/dist/index-runtime.d.ts +64 -0
- package/dist/index-runtime.d.ts.map +1 -0
- package/dist/index-runtime.js +28 -0
- package/dist/index-tool-runtime.d.ts +44 -0
- package/dist/index-tool-runtime.d.ts.map +1 -0
- package/dist/index-tool-runtime.js +24 -0
- package/dist/index.d.ts +57 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2346 -0
- package/dist/job-agent-command-runtime.d.ts +127 -0
- package/dist/job-agent-command-runtime.d.ts.map +1 -0
- package/dist/job-agent-command-runtime.js +138 -0
- package/dist/job-runner-presenter.d.ts +32 -0
- package/dist/job-runner-presenter.d.ts.map +1 -0
- package/dist/job-runner-presenter.js +30 -0
- package/dist/job-runtime.d.ts +65 -0
- package/dist/job-runtime.d.ts.map +1 -0
- package/dist/job-runtime.js +88 -0
- package/dist/keybinding-runtime.d.ts +29 -0
- package/dist/keybinding-runtime.d.ts.map +1 -0
- package/dist/keybinding-runtime.js +14 -0
- package/dist/log-artifact.d.ts +55 -0
- package/dist/log-artifact.d.ts.map +1 -0
- package/dist/log-artifact.js +10 -0
- package/dist/mcp-index-command-runtime.d.ts +21 -0
- package/dist/mcp-index-command-runtime.d.ts.map +1 -0
- package/dist/mcp-index-command-runtime.js +18 -0
- package/dist/mcp-index-runtime.d.ts +106 -0
- package/dist/mcp-index-runtime.d.ts.map +1 -0
- package/dist/mcp-index-runtime.js +142 -0
- package/dist/mcp-sse-runtime.d.ts +13 -0
- package/dist/mcp-sse-runtime.d.ts.map +1 -0
- package/dist/mcp-sse-runtime.js +8 -0
- package/dist/mcp-stdio-runtime.d.ts +37 -0
- package/dist/mcp-stdio-runtime.d.ts.map +1 -0
- package/dist/mcp-stdio-runtime.js +15 -0
- package/dist/memory-command-runtime.d.ts +37 -0
- package/dist/memory-command-runtime.d.ts.map +1 -0
- package/dist/memory-command-runtime.js +88 -0
- package/dist/memory-eviction-runtime.d.ts +7 -0
- package/dist/memory-eviction-runtime.d.ts.map +1 -0
- package/dist/memory-eviction-runtime.js +12 -0
- package/dist/memory-extraction-runtime.d.ts +40 -0
- package/dist/memory-extraction-runtime.d.ts.map +1 -0
- package/dist/memory-extraction-runtime.js +20 -0
- package/dist/memory-rules-runtime.d.ts +15 -0
- package/dist/memory-rules-runtime.d.ts.map +1 -0
- package/dist/memory-rules-runtime.js +14 -0
- package/dist/meta-scheduler-complexity.d.ts +16 -0
- package/dist/meta-scheduler-complexity.d.ts.map +1 -0
- package/dist/meta-scheduler-complexity.js +37 -0
- package/dist/meta-scheduler-runtime.d.ts +288 -0
- package/dist/meta-scheduler-runtime.d.ts.map +1 -0
- package/dist/meta-scheduler-runtime.js +17 -0
- package/dist/model-command-runtime.d.ts +12 -0
- package/dist/model-command-runtime.d.ts.map +1 -0
- package/dist/model-command-runtime.js +84 -0
- package/dist/model-doctor-runtime.d.ts +81 -0
- package/dist/model-doctor-runtime.d.ts.map +1 -0
- package/dist/model-doctor-runtime.js +46 -0
- package/dist/model-loop-runtime.d.ts +189 -0
- package/dist/model-loop-runtime.d.ts.map +1 -0
- package/dist/model-loop-runtime.js +141 -0
- package/dist/model-prompt-runtime.d.ts +25 -0
- package/dist/model-prompt-runtime.d.ts.map +1 -0
- package/dist/model-prompt-runtime.js +33 -0
- package/dist/model-setup-runtime.d.ts +28 -0
- package/dist/model-setup-runtime.d.ts.map +1 -0
- package/dist/model-setup-runtime.js +26 -0
- package/dist/model-stream-runtime.d.ts +47 -0
- package/dist/model-stream-runtime.d.ts.map +1 -0
- package/dist/model-stream-runtime.js +136 -0
- package/dist/model-tool-runtime.d.ts +114 -0
- package/dist/model-tool-runtime.d.ts.map +1 -0
- package/dist/model-tool-runtime.js +144 -0
- package/dist/natural-command-bridge.d.ts +158 -0
- package/dist/natural-command-bridge.d.ts.map +1 -0
- package/dist/natural-command-bridge.js +36 -0
- package/dist/pending-details-presenter.d.ts +8 -0
- package/dist/pending-details-presenter.d.ts.map +1 -0
- package/dist/pending-details-presenter.js +12 -0
- package/dist/permission-approval-runtime.d.ts +28 -0
- package/dist/permission-approval-runtime.d.ts.map +1 -0
- package/dist/permission-approval-runtime.js +136 -0
- package/dist/permission-continuation-runtime.d.ts +90 -0
- package/dist/permission-continuation-runtime.d.ts.map +1 -0
- package/dist/permission-continuation-runtime.js +68 -0
- package/dist/permission-policy-engine.d.ts +51 -0
- package/dist/permission-policy-engine.d.ts.map +1 -0
- package/dist/permission-policy-engine.js +12 -0
- package/dist/permission-presenter.d.ts +13 -0
- package/dist/permission-presenter.d.ts.map +1 -0
- package/dist/permission-presenter.js +8 -0
- package/dist/persistent-history.d.ts +18 -0
- package/dist/persistent-history.d.ts.map +1 -0
- package/dist/persistent-history.js +126 -0
- package/dist/platform-security.d.ts +4 -0
- package/dist/platform-security.d.ts.map +1 -0
- package/dist/platform-security.js +10 -0
- package/dist/process-command-runtime.d.ts +9 -0
- package/dist/process-command-runtime.d.ts.map +1 -0
- package/dist/process-command-runtime.js +11 -0
- package/dist/process-guard.d.ts +56 -0
- package/dist/process-guard.d.ts.map +1 -0
- package/dist/process-guard.js +22 -0
- package/dist/prompt-command-runtime.d.ts +12 -0
- package/dist/prompt-command-runtime.d.ts.map +1 -0
- package/dist/prompt-command-runtime.js +10 -0
- package/dist/prompt-stash.d.ts +15 -0
- package/dist/prompt-stash.d.ts.map +1 -0
- package/dist/prompt-stash.js +8 -0
- package/dist/provider-circuit-breaker.d.ts +132 -0
- package/dist/provider-circuit-breaker.d.ts.map +1 -0
- package/dist/provider-circuit-breaker.js +31 -0
- package/dist/provider-loop-runtime.d.ts +18 -0
- package/dist/provider-loop-runtime.d.ts.map +1 -0
- package/dist/provider-loop-runtime.js +16 -0
- package/dist/remote-command-runtime.d.ts +47 -0
- package/dist/remote-command-runtime.d.ts.map +1 -0
- package/dist/remote-command-runtime.js +125 -0
- package/dist/remote-inbound-bridge-runtime.d.ts +152 -0
- package/dist/remote-inbound-bridge-runtime.d.ts.map +1 -0
- package/dist/remote-inbound-bridge-runtime.js +44 -0
- package/dist/remote-mcp-presenter.d.ts +5 -0
- package/dist/remote-mcp-presenter.d.ts.map +1 -0
- package/dist/remote-mcp-presenter.js +10 -0
- package/dist/remote-repl-bridge-runtime.d.ts +134 -0
- package/dist/remote-repl-bridge-runtime.d.ts.map +1 -0
- package/dist/remote-repl-bridge-runtime.js +20 -0
- package/dist/remote-transport.d.ts +50 -0
- package/dist/remote-transport.d.ts.map +1 -0
- package/dist/remote-transport.js +14 -0
- package/dist/request-lifecycle-presenter.d.ts +25 -0
- package/dist/request-lifecycle-presenter.d.ts.map +1 -0
- package/dist/request-lifecycle-presenter.js +22 -0
- package/dist/runner-runtime.d.ts +41 -0
- package/dist/runner-runtime.d.ts.map +1 -0
- package/dist/runner-runtime.js +35 -0
- package/dist/runtime-budget.d.ts +38 -0
- package/dist/runtime-budget.d.ts.map +1 -0
- package/dist/runtime-budget.js +78 -0
- package/dist/runtime-path-marker.d.ts +112 -0
- package/dist/runtime-path-marker.d.ts.map +1 -0
- package/dist/runtime-path-marker.js +18 -0
- package/dist/runtime-status-presenter.d.ts +22 -0
- package/dist/runtime-status-presenter.d.ts.map +1 -0
- package/dist/runtime-status-presenter.js +15 -0
- package/dist/runtime-status-snapshot.d.ts +52 -0
- package/dist/runtime-status-snapshot.d.ts.map +1 -0
- package/dist/runtime-status-snapshot.js +11 -0
- package/dist/runtime-utils.d.ts +2 -0
- package/dist/runtime-utils.d.ts.map +1 -0
- package/dist/runtime-utils.js +6 -0
- package/dist/shell/clipboard.d.ts +23 -0
- package/dist/shell/clipboard.d.ts.map +1 -0
- package/dist/shell/clipboard.js +8 -0
- package/dist/shell/components/AgentProgressTree.d.ts +9 -0
- package/dist/shell/components/AgentProgressTree.d.ts.map +1 -0
- package/dist/shell/components/AgentProgressTree.js +9 -0
- package/dist/shell/components/BackgroundTaskOverlay.d.ts +8 -0
- package/dist/shell/components/BackgroundTaskOverlay.d.ts.map +1 -0
- package/dist/shell/components/BackgroundTaskOverlay.js +8 -0
- package/dist/shell/components/BtwPanel.d.ts +16 -0
- package/dist/shell/components/BtwPanel.d.ts.map +1 -0
- package/dist/shell/components/BtwPanel.js +8 -0
- package/dist/shell/components/CommandPanel.d.ts +11 -0
- package/dist/shell/components/CommandPanel.d.ts.map +1 -0
- package/dist/shell/components/CommandPanel.js +8 -0
- package/dist/shell/components/Composer.d.ts +187 -0
- package/dist/shell/components/Composer.d.ts.map +1 -0
- package/dist/shell/components/Composer.js +99 -0
- package/dist/shell/components/ConfigPanel.d.ts +11 -0
- package/dist/shell/components/ConfigPanel.d.ts.map +1 -0
- package/dist/shell/components/ConfigPanel.js +8 -0
- package/dist/shell/components/CtrlOToExpand.d.ts +30 -0
- package/dist/shell/components/CtrlOToExpand.d.ts.map +1 -0
- package/dist/shell/components/CtrlOToExpand.js +16 -0
- package/dist/shell/components/HelpPanel.d.ts +19 -0
- package/dist/shell/components/HelpPanel.d.ts.map +1 -0
- package/dist/shell/components/HelpPanel.js +8 -0
- package/dist/shell/components/HistorySearchPanel.d.ts +14 -0
- package/dist/shell/components/HistorySearchPanel.d.ts.map +1 -0
- package/dist/shell/components/HistorySearchPanel.js +104 -0
- package/dist/shell/components/MessageMarkdown.d.ts +34 -0
- package/dist/shell/components/MessageMarkdown.d.ts.map +1 -0
- package/dist/shell/components/MessageMarkdown.js +18 -0
- package/dist/shell/components/MessageResponse.d.ts +14 -0
- package/dist/shell/components/MessageResponse.d.ts.map +1 -0
- package/dist/shell/components/MessageResponse.js +6 -0
- package/dist/shell/components/MouseInputRouter.d.ts +28 -0
- package/dist/shell/components/MouseInputRouter.d.ts.map +1 -0
- package/dist/shell/components/MouseInputRouter.js +84 -0
- package/dist/shell/components/NotificationStack.d.ts +19 -0
- package/dist/shell/components/NotificationStack.d.ts.map +1 -0
- package/dist/shell/components/NotificationStack.js +6 -0
- package/dist/shell/components/OutputLine.d.ts +19 -0
- package/dist/shell/components/OutputLine.d.ts.map +1 -0
- package/dist/shell/components/OutputLine.js +38 -0
- package/dist/shell/components/ProductBlock.d.ts +10 -0
- package/dist/shell/components/ProductBlock.d.ts.map +1 -0
- package/dist/shell/components/ProductBlock.js +12 -0
- package/dist/shell/components/ScrollViewport.d.ts +43 -0
- package/dist/shell/components/ScrollViewport.d.ts.map +1 -0
- package/dist/shell/components/ScrollViewport.js +86 -0
- package/dist/shell/components/SessionsPanel.d.ts +24 -0
- package/dist/shell/components/SessionsPanel.d.ts.map +1 -0
- package/dist/shell/components/SessionsPanel.js +8 -0
- package/dist/shell/components/ShellApp.d.ts +8 -0
- package/dist/shell/components/ShellApp.d.ts.map +1 -0
- package/dist/shell/components/ShellApp.js +45 -0
- package/dist/shell/components/ShortcutPanel.d.ts +14 -0
- package/dist/shell/components/ShortcutPanel.d.ts.map +1 -0
- package/dist/shell/components/ShortcutPanel.js +59 -0
- package/dist/shell/components/SlashSuggestions.d.ts +24 -0
- package/dist/shell/components/SlashSuggestions.d.ts.map +1 -0
- package/dist/shell/components/SlashSuggestions.js +7 -0
- package/dist/shell/components/StatusFooter.d.ts +30 -0
- package/dist/shell/components/StatusFooter.d.ts.map +1 -0
- package/dist/shell/components/StatusFooter.js +7 -0
- package/dist/shell/components/StatusTray.d.ts +9 -0
- package/dist/shell/components/StatusTray.d.ts.map +1 -0
- package/dist/shell/components/StatusTray.js +6 -0
- package/dist/shell/components/StructuredDiff.d.ts +9 -0
- package/dist/shell/components/StructuredDiff.d.ts.map +1 -0
- package/dist/shell/components/StructuredDiff.js +7 -0
- package/dist/shell/components/TaskListView.d.ts +9 -0
- package/dist/shell/components/TaskListView.d.ts.map +1 -0
- package/dist/shell/components/TaskListView.js +9 -0
- package/dist/shell/components/TaskSuggestionBar.d.ts +15 -0
- package/dist/shell/components/TaskSuggestionBar.d.ts.map +1 -0
- package/dist/shell/components/TaskSuggestionBar.js +8 -0
- package/dist/shell/components/UnseenMessagePill.d.ts +12 -0
- package/dist/shell/components/UnseenMessagePill.d.ts.map +1 -0
- package/dist/shell/components/UnseenMessagePill.js +6 -0
- package/dist/shell/components/WorkflowProgressView.d.ts +9 -0
- package/dist/shell/components/WorkflowProgressView.d.ts.map +1 -0
- package/dist/shell/components/WorkflowProgressView.js +9 -0
- package/dist/shell/components/useAnchoredCursor.d.ts +32 -0
- package/dist/shell/components/useAnchoredCursor.d.ts.map +1 -0
- package/dist/shell/components/useAnchoredCursor.js +6 -0
- package/dist/shell/hooks/useRenderThrottle.d.ts +2 -0
- package/dist/shell/hooks/useRenderThrottle.d.ts.map +1 -0
- package/dist/shell/hooks/useRenderThrottle.js +35 -0
- package/dist/shell/hooks/useScrollBatcher.d.ts +10 -0
- package/dist/shell/hooks/useScrollBatcher.d.ts.map +1 -0
- package/dist/shell/hooks/useScrollBatcher.js +23 -0
- package/dist/shell/hooks/useScrollRuntime.d.ts +2 -0
- package/dist/shell/hooks/useScrollRuntime.d.ts.map +1 -0
- package/dist/shell/hooks/useScrollRuntime.js +6 -0
- package/dist/shell/hyperlink-utils.d.ts +18 -0
- package/dist/shell/hyperlink-utils.d.ts.map +1 -0
- package/dist/shell/hyperlink-utils.js +8 -0
- package/dist/shell/ink-renderer.d.ts +18 -0
- package/dist/shell/ink-renderer.d.ts.map +1 -0
- package/dist/shell/ink-renderer.js +54 -0
- package/dist/shell/models/command-transcript-presenter.d.ts +73 -0
- package/dist/shell/models/command-transcript-presenter.d.ts.map +1 -0
- package/dist/shell/models/command-transcript-presenter.js +26 -0
- package/dist/shell/models/help-panel.d.ts +37 -0
- package/dist/shell/models/help-panel.d.ts.map +1 -0
- package/dist/shell/models/help-panel.js +10 -0
- package/dist/shell/models/permission-elevation.d.ts +65 -0
- package/dist/shell/models/permission-elevation.d.ts.map +1 -0
- package/dist/shell/models/permission-elevation.js +10 -0
- package/dist/shell/models/permission-explanation.d.ts +45 -0
- package/dist/shell/models/permission-explanation.d.ts.map +1 -0
- package/dist/shell/models/permission-explanation.js +14 -0
- package/dist/shell/models/session-panel.d.ts +22 -0
- package/dist/shell/models/session-panel.d.ts.map +1 -0
- package/dist/shell/models/session-panel.js +18 -0
- package/dist/shell/models/task-scroll-state.d.ts +24 -0
- package/dist/shell/models/task-scroll-state.d.ts.map +1 -0
- package/dist/shell/models/task-scroll-state.js +26 -0
- package/dist/shell/models/terminal-input-runtime.d.ts +37 -0
- package/dist/shell/models/terminal-input-runtime.d.ts.map +1 -0
- package/dist/shell/models/terminal-input-runtime.js +18 -0
- package/dist/shell/models/transcript-scroll-state.d.ts +57 -0
- package/dist/shell/models/transcript-scroll-state.d.ts.map +1 -0
- package/dist/shell/models/transcript-scroll-state.js +12 -0
- package/dist/shell/models/transcript-selection-state.d.ts +39 -0
- package/dist/shell/models/transcript-selection-state.d.ts.map +1 -0
- package/dist/shell/models/transcript-selection-state.js +25 -0
- package/dist/shell/models/wheel-acceleration.d.ts +52 -0
- package/dist/shell/models/wheel-acceleration.d.ts.map +1 -0
- package/dist/shell/models/wheel-acceleration.js +6 -0
- package/dist/shell/output-utils.d.ts +22 -0
- package/dist/shell/output-utils.d.ts.map +1 -0
- package/dist/shell/output-utils.js +12 -0
- package/dist/shell/plain-renderer.d.ts +12 -0
- package/dist/shell/plain-renderer.d.ts.map +1 -0
- package/dist/shell/plain-renderer.js +13 -0
- package/dist/shell/progress-views.d.ts +10 -0
- package/dist/shell/progress-views.d.ts.map +1 -0
- package/dist/shell/progress-views.js +17 -0
- package/dist/shell/stdout-flush-barrier.d.ts +39 -0
- package/dist/shell/stdout-flush-barrier.d.ts.map +1 -0
- package/dist/shell/stdout-flush-barrier.js +10 -0
- package/dist/shell/terminal-capability.d.ts +54 -0
- package/dist/shell/terminal-capability.d.ts.map +1 -0
- package/dist/shell/terminal-capability.js +10 -0
- package/dist/shell/terminal-interaction-runtime.d.ts +11 -0
- package/dist/shell/terminal-interaction-runtime.d.ts.map +1 -0
- package/dist/shell/terminal-interaction-runtime.js +38 -0
- package/dist/shell/terminal-state-recovery.d.ts +52 -0
- package/dist/shell/terminal-state-recovery.d.ts.map +1 -0
- package/dist/shell/terminal-state-recovery.js +11 -0
- package/dist/shell/text-utils.d.ts +40 -0
- package/dist/shell/text-utils.d.ts.map +1 -0
- package/dist/shell/text-utils.js +26 -0
- package/dist/shell/theme.d.ts +41 -0
- package/dist/shell/theme.d.ts.map +1 -0
- package/dist/shell/theme.js +8 -0
- package/dist/shell/types.d.ts +784 -0
- package/dist/shell/types.d.ts.map +1 -0
- package/dist/shell/types.js +0 -0
- package/dist/shell/view-model.d.ts +82 -0
- package/dist/shell/view-model.d.ts.map +1 -0
- package/dist/shell/view-model.js +48 -0
- package/dist/slash-command-runtime.d.ts +64 -0
- package/dist/slash-command-runtime.d.ts.map +1 -0
- package/dist/slash-command-runtime.js +186 -0
- package/dist/slash-dispatch.d.ts +48 -0
- package/dist/slash-dispatch.d.ts.map +1 -0
- package/dist/slash-dispatch.js +53 -0
- package/dist/startup-runtime.d.ts +48 -0
- package/dist/startup-runtime.d.ts.map +1 -0
- package/dist/startup-runtime.js +43 -0
- package/dist/terminal-readiness-presenter.d.ts +131 -0
- package/dist/terminal-readiness-presenter.d.ts.map +1 -0
- package/dist/terminal-readiness-presenter.js +16 -0
- package/dist/terminal-readiness-runtime.d.ts +5 -0
- package/dist/terminal-readiness-runtime.d.ts.map +1 -0
- package/dist/terminal-readiness-runtime.js +15 -0
- package/dist/terminal-setup-runtime.d.ts +34 -0
- package/dist/terminal-setup-runtime.d.ts.map +1 -0
- package/dist/terminal-setup-runtime.js +257 -0
- package/dist/tool-output-presenter.d.ts +38 -0
- package/dist/tool-output-presenter.d.ts.map +1 -0
- package/dist/tool-output-presenter.js +16 -0
- package/dist/tool-result-budget.d.ts +42 -0
- package/dist/tool-result-budget.d.ts.map +1 -0
- package/dist/tool-result-budget.js +11 -0
- package/dist/tui-agent-job-runtime.d.ts +38 -0
- package/dist/tui-agent-job-runtime.d.ts.map +1 -0
- package/dist/tui-agent-job-runtime.js +86 -0
- package/dist/tui-context-runtime.d.ts +426 -0
- package/dist/tui-context-runtime.d.ts.map +1 -0
- package/dist/tui-context-runtime.js +65 -0
- package/dist/tui-data-types.d.ts +923 -0
- package/dist/tui-data-types.d.ts.map +1 -0
- package/dist/tui-data-types.js +0 -0
- package/dist/tui-details-runtime.d.ts +25 -0
- package/dist/tui-details-runtime.d.ts.map +1 -0
- package/dist/tui-details-runtime.js +29 -0
- package/dist/tui-memory-runtime.d.ts +33 -0
- package/dist/tui-memory-runtime.d.ts.map +1 -0
- package/dist/tui-memory-runtime.js +58 -0
- package/dist/tui-messages.d.ts +4 -0
- package/dist/tui-messages.d.ts.map +1 -0
- package/dist/tui-messages.js +6 -0
- package/dist/tui-model-runtime.d.ts +30 -0
- package/dist/tui-model-runtime.d.ts.map +1 -0
- package/dist/tui-model-runtime.js +39 -0
- package/dist/tui-output-surface.d.ts +141 -0
- package/dist/tui-output-surface.d.ts.map +1 -0
- package/dist/tui-output-surface.js +55 -0
- package/dist/tui-permission-runtime.d.ts +62 -0
- package/dist/tui-permission-runtime.d.ts.map +1 -0
- package/dist/tui-permission-runtime.js +24 -0
- package/dist/tui-state-runtime.d.ts +21 -0
- package/dist/tui-state-runtime.d.ts.map +1 -0
- package/dist/tui-state-runtime.js +47 -0
- package/dist/turn-continuity-runtime.d.ts +30 -0
- package/dist/turn-continuity-runtime.d.ts.map +1 -0
- package/dist/turn-continuity-runtime.js +8 -0
- package/dist/undo-ring.d.ts +16 -0
- package/dist/undo-ring.d.ts.map +1 -0
- package/dist/undo-ring.js +12 -0
- package/dist/usage-stats-presenter.d.ts +17 -0
- package/dist/usage-stats-presenter.d.ts.map +1 -0
- package/dist/usage-stats-presenter.js +22 -0
- package/dist/user-state-signal-runtime.d.ts +33 -0
- package/dist/user-state-signal-runtime.d.ts.map +1 -0
- package/dist/user-state-signal-runtime.js +8 -0
- package/dist/verification-command-runtime.d.ts +25 -0
- package/dist/verification-command-runtime.d.ts.map +1 -0
- package/dist/verification-command-runtime.js +51 -0
- package/dist/verification-level.d.ts +93 -0
- package/dist/verification-level.d.ts.map +1 -0
- package/dist/verification-level.js +18 -0
- package/dist/workflow-agent-runtime-bridge.d.ts +169 -0
- package/dist/workflow-agent-runtime-bridge.d.ts.map +1 -0
- package/dist/workflow-agent-runtime-bridge.js +9 -0
- package/dist/workflow-command-runtime.d.ts +94 -0
- package/dist/workflow-command-runtime.d.ts.map +1 -0
- package/dist/workflow-command-runtime.js +114 -0
- package/dist/workflow-plan-schema.d.ts +161 -0
- package/dist/workflow-plan-schema.d.ts.map +1 -0
- package/dist/workflow-plan-schema.js +12 -0
- package/dist/workflow-planner-entry.d.ts +52 -0
- package/dist/workflow-planner-entry.d.ts.map +1 -0
- package/dist/workflow-planner-entry.js +328 -0
- package/dist/workflow-task-surface.d.ts +39 -0
- package/dist/workflow-task-surface.d.ts.map +1 -0
- package/dist/workflow-task-surface.js +7 -0
- package/dist/workspace-reference-cache.d.ts +110 -0
- package/dist/workspace-reference-cache.d.ts.map +1 -0
- package/dist/workspace-reference-cache.js +12 -0
- package/package.json +41 -0
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import {
|
|
2
|
+
truncateDisplay
|
|
3
|
+
} from "./chunk-OMZYPQVA.js";
|
|
4
|
+
|
|
5
|
+
// src/pending-details-presenter.ts
|
|
6
|
+
import { relative } from "path";
|
|
7
|
+
import { getProjectSettingsPath } from "@linghun/config";
|
|
8
|
+
function getEffectiveWorkspaceTrustLevel(context) {
|
|
9
|
+
return context.config.workspaceTrust.recorded ? context.config.workspaceTrust.level : "restricted";
|
|
10
|
+
}
|
|
11
|
+
function formatWorkspaceTrustStatus(context) {
|
|
12
|
+
const level = getEffectiveWorkspaceTrustLevel(context);
|
|
13
|
+
const path = relative(context.projectPath, getProjectSettingsPath(context.projectPath)) || ".linghun/settings.json";
|
|
14
|
+
if (level === "trusted") {
|
|
15
|
+
return context.language === "en-US" ? `\u2713 Workspace set to trusted, saved to ${path}` : `\u2713 \u5DE5\u4F5C\u533A\u5DF2\u8BBE\u4E3A trusted\uFF0C\u5DF2\u4FDD\u5B58\u5230 ${path}`;
|
|
16
|
+
}
|
|
17
|
+
return context.language === "en-US" ? `\u2713 Workspace remains restricted, saved to ${path}. Writes and commands require approval.` : `\u2713 \u5DE5\u4F5C\u533A\u4FDD\u6301 restricted\uFF0C\u5DF2\u4FDD\u5B58\u5230 ${path}\u3002\u5199\u5165\u548C\u547D\u4EE4\u9700\u8981\u989D\u5916\u786E\u8BA4\u3002`;
|
|
18
|
+
}
|
|
19
|
+
function formatPendingApprovalDetails(approval, context) {
|
|
20
|
+
if (approval.kind === "index_ignore_write") {
|
|
21
|
+
return context.language === "en-US" ? [
|
|
22
|
+
"Pending permission details",
|
|
23
|
+
"- action: update index ignore file, then refresh the index",
|
|
24
|
+
`- file: ${approval.plan.path}`,
|
|
25
|
+
`- entries: ${approval.plan.missingEntries.length}`,
|
|
26
|
+
"- raw content, tokens, request ids, and internal gate ids are hidden.",
|
|
27
|
+
"- next: yes/confirm to allow once; no/cancel/Esc to deny."
|
|
28
|
+
].join("\n") : [
|
|
29
|
+
"\u5F85\u786E\u8BA4\u6743\u9650\u8BE6\u60C5",
|
|
30
|
+
"- \u52A8\u4F5C\uFF1A\u66F4\u65B0\u7D22\u5F15 ignore \u6587\u4EF6\uFF0C\u7136\u540E\u5237\u65B0\u7D22\u5F15",
|
|
31
|
+
`- \u6587\u4EF6\uFF1A${approval.plan.path}`,
|
|
32
|
+
`- \u6761\u76EE\u6570\u91CF\uFF1A${approval.plan.missingEntries.length}`,
|
|
33
|
+
"- raw content\u3001token\u3001request id \u548C\u5185\u90E8 gate id \u5DF2\u9690\u85CF\u3002",
|
|
34
|
+
"- \u4E0B\u4E00\u6B65\uFF1Ayes/\u786E\u8BA4 \u5141\u8BB8\u4E00\u6B21\uFF1Bno/cancel/Esc \u62D2\u7EDD\u3002"
|
|
35
|
+
].join("\n");
|
|
36
|
+
}
|
|
37
|
+
if (approval.kind === "architecture_drift") {
|
|
38
|
+
const warnings = approval.warnings?.map((item) => truncateDisplay(item, 120)).join("\uFF1B") || "-";
|
|
39
|
+
return context.language === "en-US" ? [
|
|
40
|
+
"Pending permission details",
|
|
41
|
+
`- tool: ${approval.toolName}`,
|
|
42
|
+
`- reason: agreed scope would change (${warnings})`,
|
|
43
|
+
"- tool input, tokens, request ids, and internal gate ids are hidden.",
|
|
44
|
+
"- next: yes/confirm to allow once; no/cancel/Esc to deny."
|
|
45
|
+
].join("\n") : [
|
|
46
|
+
"\u5F85\u786E\u8BA4\u6743\u9650\u8BE6\u60C5",
|
|
47
|
+
`- \u5DE5\u5177\uFF1A${approval.toolName}`,
|
|
48
|
+
`- \u539F\u56E0\uFF1A\u4F1A\u6539\u53D8\u5DF2\u7EA6\u5B9A\u8303\u56F4\uFF08${warnings}\uFF09`,
|
|
49
|
+
"- tool input\u3001token\u3001request id \u548C\u5185\u90E8 gate id \u5DF2\u9690\u85CF\u3002",
|
|
50
|
+
"- \u4E0B\u4E00\u6B65\uFF1Ayes/\u786E\u8BA4 \u5141\u8BB8\u4E00\u6B21\uFF1Bno/cancel/Esc \u62D2\u7EDD\u3002"
|
|
51
|
+
].join("\n");
|
|
52
|
+
}
|
|
53
|
+
if (approval.kind === "git_worktree_remove") {
|
|
54
|
+
return context.language === "en-US" ? [
|
|
55
|
+
"Pending confirmation: remove managed worktree",
|
|
56
|
+
`- worktree: ${approval.name}`,
|
|
57
|
+
`- mode: ${approval.strong ? "force (dirty \u2014 uncommitted changes will be lost)" : "clean"}`,
|
|
58
|
+
"- action: git worktree remove (no branch deletion, no rm -rf).",
|
|
59
|
+
"- raw path, tokens, request ids, and internal ids are hidden.",
|
|
60
|
+
"- next: yes/confirm to remove once; no/cancel/Esc to keep it."
|
|
61
|
+
].join("\n") : [
|
|
62
|
+
"\u5F85\u786E\u8BA4\uFF1A\u5220\u9664 managed worktree",
|
|
63
|
+
`- worktree\uFF1A${approval.name}`,
|
|
64
|
+
`- \u65B9\u5F0F\uFF1A${approval.strong ? "\u5F3A\u5236\uFF08\u6709\u672A\u63D0\u4EA4\u6539\u52A8\uFF0C\u5C06\u4E22\u5931\uFF09" : "\u5E72\u51C0"}`,
|
|
65
|
+
"- \u52A8\u4F5C\uFF1Agit worktree remove\uFF08\u4E0D\u5220\u5206\u652F\uFF0C\u4E0D rm -rf\uFF09\u3002",
|
|
66
|
+
"- raw \u8DEF\u5F84\u3001token\u3001request id \u548C\u5185\u90E8 id \u5DF2\u9690\u85CF\u3002",
|
|
67
|
+
"- \u4E0B\u4E00\u6B65\uFF1Ayes/\u786E\u8BA4 \u5220\u9664\u4E00\u6B21\uFF1Bno/cancel/Esc \u4FDD\u7559\u3002"
|
|
68
|
+
].join("\n");
|
|
69
|
+
}
|
|
70
|
+
if (approval.kind === "git_stable_point") {
|
|
71
|
+
return context.language === "en-US" ? [
|
|
72
|
+
"Pending confirmation: create stable point",
|
|
73
|
+
"- action: git commit (tracked changes) or Linghun snapshot (untracked-only/clean)",
|
|
74
|
+
"- sensitive/ignored files are never committed; dirty/path/secret boundaries still apply.",
|
|
75
|
+
"- raw paths, tokens, request ids, and internal ids are hidden.",
|
|
76
|
+
"- next: yes/confirm to create once; no/cancel/Esc to skip (no commit/snapshot)."
|
|
77
|
+
].join("\n") : [
|
|
78
|
+
"\u5F85\u786E\u8BA4\uFF1A\u521B\u5EFA\u7A33\u5B9A\u70B9",
|
|
79
|
+
"- \u52A8\u4F5C\uFF1Agit commit\uFF08\u5DF2\u8DDF\u8E2A\u6539\u52A8\uFF09\u6216 Linghun snapshot\uFF08\u4EC5\u672A\u8DDF\u8E2A/\u5E72\u51C0\uFF09",
|
|
80
|
+
"- \u654F\u611F/ignored \u6587\u4EF6\u4E0D\u4F1A\u88AB\u63D0\u4EA4\uFF1Bdirty/path/secret \u8FB9\u754C\u4ECD\u751F\u6548\u3002",
|
|
81
|
+
"- raw \u8DEF\u5F84\u3001token\u3001request id \u548C\u5185\u90E8 id \u5DF2\u9690\u85CF\u3002",
|
|
82
|
+
"- \u4E0B\u4E00\u6B65\uFF1Ayes/\u786E\u8BA4 \u521B\u5EFA\u4E00\u6B21\uFF1Bno/cancel/Esc \u8DF3\u8FC7\uFF08\u4E0D\u521B\u5EFA commit/snapshot\uFF09\u3002"
|
|
83
|
+
].join("\n");
|
|
84
|
+
}
|
|
85
|
+
if (approval.kind === "index_tool") {
|
|
86
|
+
const action = approval.indexAction === "repair" ? "repair" : "refresh";
|
|
87
|
+
return context.language === "en-US" ? [
|
|
88
|
+
"Pending permission details",
|
|
89
|
+
`- action: index ${action} (rebuild the codebase index, reusing the controlled /index ${action} path)`,
|
|
90
|
+
"- this writes the index artifact and runs the external index runtime.",
|
|
91
|
+
"- raw paths, tokens, request ids, and internal gate ids are hidden.",
|
|
92
|
+
"- next: yes/confirm to allow once; no/cancel/Esc to deny."
|
|
93
|
+
].join("\n") : [
|
|
94
|
+
"\u5F85\u786E\u8BA4\u6743\u9650\u8BE6\u60C5",
|
|
95
|
+
`- \u52A8\u4F5C\uFF1A\u7D22\u5F15${action === "repair" ? "\u4FEE\u590D" : "\u5237\u65B0"}\uFF08\u91CD\u5EFA\u4EE3\u7801\u7D22\u5F15\uFF0C\u590D\u7528\u53D7\u63A7\u7684 /index ${action} \u8DEF\u5F84\uFF09`,
|
|
96
|
+
"- \u8BE5\u64CD\u4F5C\u4F1A\u5199\u5165\u7D22\u5F15\u4EA7\u7269\u5E76\u8FD0\u884C\u5916\u90E8\u7D22\u5F15 runtime\u3002",
|
|
97
|
+
"- raw \u8DEF\u5F84\u3001token\u3001request id \u548C\u5185\u90E8 gate id \u5DF2\u9690\u85CF\u3002",
|
|
98
|
+
"- \u4E0B\u4E00\u6B65\uFF1Ayes/\u786E\u8BA4 \u5141\u8BB8\u4E00\u6B21\uFF1Bno/cancel/Esc \u62D2\u7EDD\u3002"
|
|
99
|
+
].join("\n");
|
|
100
|
+
}
|
|
101
|
+
if (approval.kind === "agent_tool_use") {
|
|
102
|
+
return context.language === "en-US" ? [
|
|
103
|
+
"Pending agent permission details",
|
|
104
|
+
`- agent: ${approval.agentId}`,
|
|
105
|
+
`- tool: ${approval.toolName}`,
|
|
106
|
+
"- reason: child agent requested a protected tool; parent approval is required.",
|
|
107
|
+
"- tool input, tokens, request ids, and internal gate ids are hidden.",
|
|
108
|
+
"- next: yes/confirm to allow once; no/cancel/Esc to deny."
|
|
109
|
+
].join("\n") : [
|
|
110
|
+
"\u5F85\u786E\u8BA4 agent \u6743\u9650\u8BE6\u60C5",
|
|
111
|
+
`- agent\uFF1A${approval.agentId}`,
|
|
112
|
+
`- \u5DE5\u5177\uFF1A${approval.toolName}`,
|
|
113
|
+
"- \u539F\u56E0\uFF1A\u5B50 agent \u8BF7\u6C42\u53D7\u4FDD\u62A4\u5DE5\u5177\uFF0C\u9700\u8981\u7236\u4F1A\u8BDD\u786E\u8BA4\u3002",
|
|
114
|
+
"- tool input\u3001token\u3001request id \u548C\u5185\u90E8 gate id \u5DF2\u9690\u85CF\u3002",
|
|
115
|
+
"- \u4E0B\u4E00\u6B65\uFF1Ayes/\u786E\u8BA4 \u5141\u8BB8\u4E00\u6B21\uFF1Bno/cancel/Esc \u62D2\u7EDD\u3002"
|
|
116
|
+
].join("\n");
|
|
117
|
+
}
|
|
118
|
+
return context.language === "en-US" ? [
|
|
119
|
+
"Pending permission details",
|
|
120
|
+
`- tool: ${"toolName" in approval ? approval.toolName : "tool"}`,
|
|
121
|
+
"- reason: protected tool requires approval before running",
|
|
122
|
+
"- tool input, tokens, request ids, and internal gate ids are hidden.",
|
|
123
|
+
"- next: yes/confirm to allow once; no/cancel/Esc to deny."
|
|
124
|
+
].join("\n") : [
|
|
125
|
+
"\u5F85\u786E\u8BA4\u6743\u9650\u8BE6\u60C5",
|
|
126
|
+
`- \u5DE5\u5177\uFF1A${"toolName" in approval ? approval.toolName : "tool"}`,
|
|
127
|
+
"- \u539F\u56E0\uFF1A\u53D7\u4FDD\u62A4\u5DE5\u5177\u8FD0\u884C\u524D\u9700\u8981\u5BA1\u6279",
|
|
128
|
+
"- tool input\u3001token\u3001request id \u548C\u5185\u90E8 gate id \u5DF2\u9690\u85CF\u3002",
|
|
129
|
+
"- \u4E0B\u4E00\u6B65\uFF1Ayes/\u786E\u8BA4 \u5141\u8BB8\u4E00\u6B21\uFF1Bno/cancel/Esc \u62D2\u7EDD\u3002"
|
|
130
|
+
].join("\n");
|
|
131
|
+
}
|
|
132
|
+
function formatPendingNaturalCommandDetails(gate, context) {
|
|
133
|
+
if (gate.capabilityId === "trust") {
|
|
134
|
+
return context.language === "en-US" ? [
|
|
135
|
+
"Workspace trust details",
|
|
136
|
+
"- If trusted, Linghun can read, edit, and run commands in the current directory.",
|
|
137
|
+
"- Start Gate, Plan approval, and the permission pipeline still apply.",
|
|
138
|
+
"- /trust remains an advanced recovery/status entry, not the normal user path.",
|
|
139
|
+
"- Yes continues to the safe confirmation path; No/Esc cancels."
|
|
140
|
+
].join("\n") : [
|
|
141
|
+
"\u5DE5\u4F5C\u533A\u4FE1\u4EFB\u8BE6\u60C5",
|
|
142
|
+
"- \u4FE1\u4EFB\u540E Linghun \u53EF\u4EE5\u5728\u5F53\u524D\u76EE\u5F55\u8BFB\u3001\u6539\u3001\u8FD0\u884C\u547D\u4EE4\u3002",
|
|
143
|
+
"- Start Gate\u3001Plan approval \u548C permission pipeline \u4ECD\u7136\u751F\u6548\u3002",
|
|
144
|
+
"- /trust \u4ECD\u662F\u9AD8\u7EA7\u6062\u590D/\u72B6\u6001\u5165\u53E3\uFF0C\u4E0D\u662F\u666E\u901A\u7528\u6237\u4E3B\u8DEF\u5F84\u3002",
|
|
145
|
+
"- Yes \u7EE7\u7EED\u8FDB\u5165\u5B89\u5168\u786E\u8BA4\u8DEF\u5F84\uFF1BNo/Esc \u53D6\u6D88\u3002"
|
|
146
|
+
].join("\n");
|
|
147
|
+
}
|
|
148
|
+
return context.language === "en-US" ? [
|
|
149
|
+
"Pending Start Gate details",
|
|
150
|
+
`- command: ${gate.exactCommand}`,
|
|
151
|
+
`- risk: ${gate.risk}`,
|
|
152
|
+
`- scope: ${gate.scope}`,
|
|
153
|
+
`- confirmation: ${gate.requiresExactConfirmation ? "exact command required" : "yes/confirm or /enter allowed"}`,
|
|
154
|
+
"- raw schema, keys, tokens, and internal gate ids are hidden.",
|
|
155
|
+
"- next: confirm as shown, or /esc to cancel."
|
|
156
|
+
].join("\n") : [
|
|
157
|
+
"\u5F85\u786E\u8BA4 Start Gate \u8BE6\u60C5",
|
|
158
|
+
`- \u547D\u4EE4\uFF1A${gate.exactCommand}`,
|
|
159
|
+
`- \u98CE\u9669\uFF1A${gate.risk}`,
|
|
160
|
+
`- \u8303\u56F4\uFF1A${gate.scope}`,
|
|
161
|
+
`- \u786E\u8BA4\u65B9\u5F0F\uFF1A${gate.requiresExactConfirmation ? "\u9700\u8981\u8F93\u5165\u7CBE\u786E\u547D\u4EE4" : "\u53EF\u7528 yes/\u786E\u8BA4 \u6216 /enter"}`,
|
|
162
|
+
"- raw schema\u3001key\u3001token \u548C\u5185\u90E8 gate id \u5DF2\u9690\u85CF\u3002",
|
|
163
|
+
"- \u4E0B\u4E00\u6B65\uFF1A\u6309\u63D0\u793A\u786E\u8BA4\uFF0C\u6216\u8F93\u5165 /esc \u53D6\u6D88\u3002"
|
|
164
|
+
].join("\n");
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
export {
|
|
168
|
+
formatWorkspaceTrustStatus,
|
|
169
|
+
formatPendingApprovalDetails,
|
|
170
|
+
formatPendingNaturalCommandDetails
|
|
171
|
+
};
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
// src/tui-messages.ts
|
|
2
|
+
var messages = {
|
|
3
|
+
"zh-CN": {
|
|
4
|
+
appTitle: "{name} TUI / REPL",
|
|
5
|
+
intro: "\u8F93\u5165\u666E\u901A\u6D88\u606F\u5F00\u59CB\u5BF9\u8BDD\uFF1B\u8F93\u5165 /help \u67E5\u770B\u547D\u4EE4\uFF1B\u8F93\u5165 /exit \u9000\u51FA\u3002",
|
|
6
|
+
currentModel: "\u5F53\u524D\u6A21\u578B",
|
|
7
|
+
unknownCommand: "\u672A\u77E5\u547D\u4EE4",
|
|
8
|
+
languageSwitchedZh: "\u8BED\u8A00\u5DF2\u5207\u6362\u4E3A\u4E2D\u6587\u3002",
|
|
9
|
+
languageSwitchedEn: "Language switched to English.",
|
|
10
|
+
modeCurrent: "\u5F53\u524D\u6743\u9650\u6A21\u5F0F\uFF1A{mode}",
|
|
11
|
+
modeOptions: "\u53EF\u9009\uFF1Adefault / auto-review / plan / full-access",
|
|
12
|
+
modeBoundary: "\u8FB9\u754C\uFF1A\u5207\u6362\u6A21\u5F0F\u4E0D\u7B49\u4E8E\u7ED5\u8FC7\u786C\u62D2\u7EDD\uFF1B\u5371\u9669\u52A8\u4F5C\u4ECD\u53D7\u6743\u9650\u5E95\u5EA7\u7EA6\u675F\u3002Plan \u4ECD\u53EA\u8BFB\uFF0Cauto-review \u4F1A\u81EA\u52A8\u653E\u884C\u5B89\u5168\u53EA\u8BFB\u52A8\u4F5C\u548C\u4F4E\u98CE\u9669\u5DE5\u4F5C\u533A\u7F16\u8F91\uFF1B\u5199\u5165\u3001\u975E\u53EA\u8BFB Bash\u3001\u5B89\u88C5\u3001\u8054\u7F51\u6216\u6743\u9650\u53D8\u66F4\u4ECD\u4F1A\u786E\u8BA4\u3002",
|
|
13
|
+
modeUnknown: "\u672A\u77E5\u6A21\u5F0F\u3002\u53EF\u9009\uFF1Adefault / auto-review / plan / full-access",
|
|
14
|
+
modeSwitched: "\u5DF2\u5207\u6362\u6743\u9650\u6A21\u5F0F\uFF1A{mode}",
|
|
15
|
+
modePlanBoundary: "Plan \u6A21\u5F0F\u53EA\u5141\u8BB8 Read / Grep / Glob / Diff / Todo \u7B49\u53EA\u8BFB\u6216\u4F1A\u8BDD\u5185\u64CD\u4F5C\u3002\u786E\u8BA4\u65B9\u6848\u540E\u4ECD\u4E0D\u7B49\u4E8E\u6388\u6743\u6240\u6709\u5DE5\u5177\u3002",
|
|
16
|
+
startGateConfirmed: "\u5DF2\u786E\u8BA4\uFF0C\u6B63\u5728\u8FDB\u5165\u672C\u5730\u52A8\u4F5C\u8DEF\u5F84\uFF1B\u540E\u7EED\u53D7\u4FDD\u62A4\u64CD\u4F5C\u4ECD\u4F1A\u5355\u72EC\u5BA1\u6279\u3002",
|
|
17
|
+
startGateExpired: "\u786E\u8BA4\u5DF2\u8FC7\u671F\u3002\u8BF7\u91CD\u65B0\u53D1\u8D77\u8BF7\u6C42\u3002",
|
|
18
|
+
startGateExactRequired: "\u8BE5\u52A8\u4F5C\u9700\u8981\u8F93\u5165\u7CBE\u786E slash command \u624D\u80FD\u7EE7\u7EED\uFF1B\u8FD9\u6761\u8F93\u5165\u672A\u6267\u884C\u3002",
|
|
19
|
+
startGatePlainConfirmationRejected: "\u8BE5\u52A8\u4F5C\u9700\u8981\u7CBE\u786E\u786E\u8BA4\uFF1B\u666E\u901A yes/\u786E\u8BA4 \u672A\u653E\u884C\u3002",
|
|
20
|
+
exit: "\u5DF2\u9000\u51FA Linghun\u3002",
|
|
21
|
+
status: "\u72B6\u6001\u680F\uFF1Asession {session} \xB7 model {model} \xB7 mode {mode} \xB7 bg {background} \xB7 cache {cache} \xB7 index {index} \xB7 gate {gate}",
|
|
22
|
+
statusShort: "\u72B6\u6001\u680F\uFF1A{mode} \xB7 bg {background}",
|
|
23
|
+
help: "\u5E2E\u52A9",
|
|
24
|
+
inputPrompt: "\u4F60> ",
|
|
25
|
+
noSessions: "\u5F53\u524D\u9879\u76EE\u8FD8\u6CA1\u6709\u4F1A\u8BDD\u3002",
|
|
26
|
+
sessionHeader: "\u4F1A\u8BDDID \u66F4\u65B0\u65F6\u95F4 \u6458\u8981",
|
|
27
|
+
noSummary: "\uFF08\u65E0\u6458\u8981\uFF09",
|
|
28
|
+
checkpointCreated: "\u5DF2\u521B\u5EFA checkpoint",
|
|
29
|
+
checkpointNone: "\u5F53\u524D\u6CA1\u6709 checkpoint\u3002",
|
|
30
|
+
checkpointRestored: "\u5DF2\u6062\u590D checkpoint",
|
|
31
|
+
checkpointMissing: "\u672A\u627E\u5230 checkpoint",
|
|
32
|
+
backgroundNone: "\u5F53\u524D\u6CA1\u6709\u540E\u53F0\u4EFB\u52A1\u3002",
|
|
33
|
+
backgroundEmptyOutput: "\u5C1A\u672A\u4EA7\u751F\u6709\u6548\u8F93\u51FA",
|
|
34
|
+
backgroundRunning: "\u4ECD\u5728\u8FD0\u884C",
|
|
35
|
+
interruptIdle: "\u5F53\u524D\u6CA1\u6709\u6B63\u5728\u8FD0\u884C\u7684\u957F\u4EFB\u52A1\uFF1B\u72B6\u6001\u4E3A idle\u3002",
|
|
36
|
+
interruptCancelled: "\u5DF2\u6807\u8BB0\u5F53\u524D\u957F\u4EFB\u52A1\u4E3A cancelled\u3002",
|
|
37
|
+
btwPrefix: "\u4E34\u65F6\u63D2\u95EE",
|
|
38
|
+
evidenceBlocked: "\u5C1A\u672A\u786E\u8BA4\uFF0C\u9700\u8981\u5148\u68C0\u67E5\u3002\u6D89\u53CA\u4EE3\u7801\u4E8B\u5B9E\u7684\u7ED3\u8BBA\u5FC5\u987B\u5148\u901A\u8FC7 /read\u3001/grep\u3001\u7D22\u5F15\u67E5\u8BE2\u6216\u547D\u4EE4\u8F93\u51FA\u83B7\u5F97\u8BC1\u636E\u3002",
|
|
39
|
+
claimNeedsDisclaimer: "\u7F3A\u5C11\u8BC1\u636E\uFF0C\u8BF7\u8865\u9F50\u5339\u914D\u8BC1\u636E\u6216\u79FB\u9664\u8BE5\u58F0\u660E\u3002",
|
|
40
|
+
projectRulesMissingHint: "[hint:info] \u7F3A\u5C11 LINGHUN.md \u9879\u76EE\u89C4\u5219\uFF1B\u5982\u9700\u57FA\u7840\u6A21\u677F\uFF0C\u53EF\u8FD0\u884C /memory init\u3002\u4E0D\u4F1A\u81EA\u52A8\u751F\u6210\u6216\u6253\u65AD\u8F93\u5165\u3002",
|
|
41
|
+
toolInterrupted: "\u5F53\u524D\u6A21\u578B\u54CD\u5E94\u6216\u5DE5\u5177\u8C03\u7528\u5DF2\u53D6\u6D88\uFF1B\u53EF\u4EE5\u7EE7\u7EED\u8F93\u5165\u3002",
|
|
42
|
+
r3AgentsTitle: "\u667A\u80FD\u4F53",
|
|
43
|
+
r3AgentDetailStatus: "\u72B6\u6001",
|
|
44
|
+
r3AgentDetailTools: "\u5DE5\u5177",
|
|
45
|
+
r3TasksTitle: "\u4EFB\u52A1",
|
|
46
|
+
r3WorkflowsTitle: "\u5DE5\u4F5C\u6D41",
|
|
47
|
+
r3ToolsLabel: "\u5DE5\u5177",
|
|
48
|
+
r3TokensLabel: "tokens",
|
|
49
|
+
r3BlockedByLabel: "\u963B\u585E\u4E8E",
|
|
50
|
+
r3PendingHiddenSuffix: "\u5F85\u663E\u793A",
|
|
51
|
+
r3BackgroundTitle: "\u540E\u53F0\u4EFB\u52A1",
|
|
52
|
+
r3BackgroundHint: "Shift+Down \xB7 Enter \u8BE6\u60C5 \xB7 x \u505C\u6B62 \xB7 Esc",
|
|
53
|
+
r3BackgroundRunning: "\u8FD0\u884C\u4E2D",
|
|
54
|
+
r3BackgroundBlocked: "\u963B\u585E",
|
|
55
|
+
r3BackgroundCompleted: "\u5DF2\u5B8C\u6210",
|
|
56
|
+
r3BackgroundVisible: "\u53EF\u89C1",
|
|
57
|
+
r3OverlayStatus: "\u72B6\u6001",
|
|
58
|
+
r3OverlayStep: "\u6B65\u9AA4",
|
|
59
|
+
r3OverlayProgress: "\u8FDB\u5EA6",
|
|
60
|
+
r3OverlayResult: "\u7ED3\u679C",
|
|
61
|
+
r3OverlayNext: "\u4E0B\u4E00\u6B65",
|
|
62
|
+
r3OverlayLog: "\u65E5\u5FD7",
|
|
63
|
+
r3CompletionDuration: "\u8017\u65F6",
|
|
64
|
+
r3CompletionTools: "\u5DE5\u5177\u8C03\u7528",
|
|
65
|
+
r3CompletionConclusion: "\u7ED3\u8BBA",
|
|
66
|
+
r4HistorySearchTitle: "\u641C\u7D22\u5386\u53F2",
|
|
67
|
+
r4HistorySearchHint: "Enter \u9009\u62E9 \xB7 Esc \u5173\u95ED",
|
|
68
|
+
r4HistorySearchNoMatch: "\u65E0\u5339\u914D",
|
|
69
|
+
r4ShortcutsTitle: "\u5FEB\u6377\u952E",
|
|
70
|
+
r4ShortcutsClose: "\u6309\u4EFB\u610F\u952E\u5173\u95ED",
|
|
71
|
+
r4ShortcutsCatEditing: "\u7F16\u8F91",
|
|
72
|
+
r4ShortcutsCatNavigation: "\u5BFC\u822A",
|
|
73
|
+
r4ShortcutsCatPanels: "\u9762\u677F",
|
|
74
|
+
r4ShortcutsCatSystem: "\u7CFB\u7EDF",
|
|
75
|
+
r4UndoHint: "\u5DF2\u64A4\u9500",
|
|
76
|
+
r4StashSaved: "\u8F93\u5165\u5DF2\u6682\u5B58",
|
|
77
|
+
r4StashRestored: "\u5DF2\u6062\u590D\u6682\u5B58",
|
|
78
|
+
r4StashEmpty: "\u6682\u5B58\u4E3A\u7A7A",
|
|
79
|
+
r4EditorOpening: "\u6B63\u5728\u6253\u5F00\u7F16\u8F91\u5668\u2026",
|
|
80
|
+
r4EditorError: "\u7F16\u8F91\u5668\u6253\u5F00\u5931\u8D25\uFF1A{error}",
|
|
81
|
+
r4TerminalSetupTitle: "\u7EC8\u7AEF\u914D\u7F6E\u6307\u5F15",
|
|
82
|
+
r4UnseenMessages: "\u2193 {count} \u6761\u65B0\u6D88\u606F",
|
|
83
|
+
r4GitBranch: "\u5206\u652F",
|
|
84
|
+
r4ClipboardCopied: "\u5DF2\u590D\u5236",
|
|
85
|
+
r4ClipboardFailed: "\u590D\u5236\u5931\u8D25",
|
|
86
|
+
r5FullscreenEnabled: "\u5168\u5C4F\u6A21\u5F0F\u5DF2\u542F\u7528",
|
|
87
|
+
r5FullscreenDisabled: "\u5168\u5C4F\u6A21\u5F0F\u672A\u542F\u7528\uFF08\u7EC8\u7AEF\u539F\u751F\u6EDA\u52A8\uFF09",
|
|
88
|
+
r7BriefEnabled: "\u7B80\u6D01\u6A21\u5F0F\u5DF2\u542F\u7528\uFF0C\u51CF\u5C11 TUI \u566A\u97F3\u3002",
|
|
89
|
+
r7BriefDisabled: "\u7B80\u6D01\u6A21\u5F0F\u5DF2\u5173\u95ED\uFF0C\u6062\u590D\u5B8C\u6574\u8F93\u51FA\u3002"
|
|
90
|
+
},
|
|
91
|
+
"en-US": {
|
|
92
|
+
appTitle: "{name} TUI / REPL",
|
|
93
|
+
intro: "Type a message to chat; use /help for commands; use /exit to quit.",
|
|
94
|
+
currentModel: "Current model",
|
|
95
|
+
unknownCommand: "Unknown command",
|
|
96
|
+
languageSwitchedZh: "\u8BED\u8A00\u5DF2\u5207\u6362\u4E3A\u4E2D\u6587\u3002",
|
|
97
|
+
languageSwitchedEn: "Language switched to English.",
|
|
98
|
+
modeCurrent: "Current permission mode: {mode}",
|
|
99
|
+
modeOptions: "Options: default / auto-review / plan / full-access",
|
|
100
|
+
modeBoundary: "Boundary: switching modes does not bypass hard denies; dangerous actions still go through the permission pipeline. Plan remains readonly; auto-review automatically allows safe readonly actions and low-risk workspace edits; writes, non-readonly Bash, installs, network, and permission changes still ask.",
|
|
101
|
+
modeUnknown: "Unknown mode. Options: default / auto-review / plan / full-access",
|
|
102
|
+
modeSwitched: "Permission mode switched: {mode}",
|
|
103
|
+
modePlanBoundary: "Plan mode only allows Read / Grep / Glob / Diff / Todo and session-scoped actions. Accepting a plan still does not authorize every tool.",
|
|
104
|
+
startGateConfirmed: "Confirmed; entering the local action path. Protected follow-up actions still require separate approval.",
|
|
105
|
+
startGateExpired: "Confirmation expired. Reissue the request.",
|
|
106
|
+
startGateExactRequired: "This action requires the exact slash command before it can continue. This input was not executed.",
|
|
107
|
+
startGatePlainConfirmationRejected: "This action requires exact confirmation; plain yes/confirm was not accepted.",
|
|
108
|
+
exit: "Exited Linghun.",
|
|
109
|
+
status: "Status: session {session} \xB7 model {model} \xB7 mode {mode} \xB7 bg {background} \xB7 cache {cache} \xB7 index {index} \xB7 gate {gate}",
|
|
110
|
+
statusShort: "Status: {mode} \xB7 bg {background}",
|
|
111
|
+
help: "Help",
|
|
112
|
+
inputPrompt: "you> ",
|
|
113
|
+
noSessions: "No sessions for this project yet.",
|
|
114
|
+
sessionHeader: "Session ID Updated At Summary",
|
|
115
|
+
noSummary: "(no summary)",
|
|
116
|
+
checkpointCreated: "Checkpoint created",
|
|
117
|
+
checkpointNone: "No checkpoints yet.",
|
|
118
|
+
checkpointRestored: "Checkpoint restored",
|
|
119
|
+
checkpointMissing: "Checkpoint not found",
|
|
120
|
+
backgroundNone: "No background tasks.",
|
|
121
|
+
backgroundEmptyOutput: "no valid output yet",
|
|
122
|
+
backgroundRunning: "still running",
|
|
123
|
+
interruptIdle: "No long task is running; state is idle.",
|
|
124
|
+
interruptCancelled: "Current long task marked as cancelled.",
|
|
125
|
+
btwPrefix: "Temporary question",
|
|
126
|
+
evidenceBlocked: "Not confirmed yet; evidence is required first. Use /read, /grep, index query, or command output before code-fact claims.",
|
|
127
|
+
claimNeedsDisclaimer: "Evidence is missing; gather matching evidence or remove the claim.",
|
|
128
|
+
projectRulesMissingHint: "[hint:info] LINGHUN.md project rules are missing. To create a basic template, run /memory init. I will not generate it automatically or interrupt input.",
|
|
129
|
+
toolInterrupted: "The current model response or tool call was cancelled; input is ready again.",
|
|
130
|
+
r3AgentsTitle: "Agents",
|
|
131
|
+
r3AgentDetailStatus: "Status",
|
|
132
|
+
r3AgentDetailTools: "Tools",
|
|
133
|
+
r3TasksTitle: "Tasks",
|
|
134
|
+
r3WorkflowsTitle: "Workflows",
|
|
135
|
+
r3ToolsLabel: "tools",
|
|
136
|
+
r3TokensLabel: "tok",
|
|
137
|
+
r3BlockedByLabel: "blocked-by",
|
|
138
|
+
r3PendingHiddenSuffix: "pending",
|
|
139
|
+
r3BackgroundTitle: "Background tasks",
|
|
140
|
+
r3BackgroundHint: "Shift+Down \xB7 Enter details \xB7 x stop \xB7 Esc",
|
|
141
|
+
r3BackgroundRunning: "running",
|
|
142
|
+
r3BackgroundBlocked: "blocked",
|
|
143
|
+
r3BackgroundCompleted: "completed",
|
|
144
|
+
r3BackgroundVisible: "visible",
|
|
145
|
+
r3OverlayStatus: "status",
|
|
146
|
+
r3OverlayStep: "step",
|
|
147
|
+
r3OverlayProgress: "progress",
|
|
148
|
+
r3OverlayResult: "result",
|
|
149
|
+
r3OverlayNext: "next",
|
|
150
|
+
r3OverlayLog: "log",
|
|
151
|
+
r3CompletionDuration: "duration",
|
|
152
|
+
r3CompletionTools: "tool uses",
|
|
153
|
+
r3CompletionConclusion: "conclusion",
|
|
154
|
+
r4HistorySearchTitle: "Search history",
|
|
155
|
+
r4HistorySearchHint: "Enter select \xB7 Esc close",
|
|
156
|
+
r4HistorySearchNoMatch: "no matches",
|
|
157
|
+
r4ShortcutsTitle: "Shortcuts",
|
|
158
|
+
r4ShortcutsClose: "Press any key to close",
|
|
159
|
+
r4ShortcutsCatEditing: "Editing",
|
|
160
|
+
r4ShortcutsCatNavigation: "Navigation",
|
|
161
|
+
r4ShortcutsCatPanels: "Panels",
|
|
162
|
+
r4ShortcutsCatSystem: "System",
|
|
163
|
+
r4UndoHint: "Undone",
|
|
164
|
+
r4StashSaved: "Input stashed",
|
|
165
|
+
r4StashRestored: "Stash restored",
|
|
166
|
+
r4StashEmpty: "Stash is empty",
|
|
167
|
+
r4EditorOpening: "Opening editor\u2026",
|
|
168
|
+
r4EditorError: "Editor failed: {error}",
|
|
169
|
+
r4TerminalSetupTitle: "Terminal setup",
|
|
170
|
+
r4UnseenMessages: "\u2193 {count} new messages",
|
|
171
|
+
r4GitBranch: "branch",
|
|
172
|
+
r4ClipboardCopied: "Copied",
|
|
173
|
+
r4ClipboardFailed: "Copy failed",
|
|
174
|
+
r5FullscreenEnabled: "Fullscreen mode enabled",
|
|
175
|
+
r5FullscreenDisabled: "Fullscreen mode disabled (native scrolling)",
|
|
176
|
+
r7BriefEnabled: "Brief mode enabled; TUI noise reduced.",
|
|
177
|
+
r7BriefDisabled: "Brief mode disabled; full output restored."
|
|
178
|
+
}
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
export {
|
|
182
|
+
messages
|
|
183
|
+
};
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import {
|
|
2
|
+
LINGHUN_MAX_AGENTIC_TURNS,
|
|
3
|
+
LINGHUN_MAX_RAW_TOOL_PROTOCOL_TEXT_RETRIES,
|
|
4
|
+
LINGHUN_MAX_TODO_ONLY_CODE_FACT,
|
|
5
|
+
LINGHUN_MAX_TODO_ONLY_CONSECUTIVE_ROUNDS,
|
|
6
|
+
LINGHUN_TODO_ONLY_KILL_GRACE,
|
|
7
|
+
LINGHUN_VERIFICATION_COMMAND_TIMEOUT_MS
|
|
8
|
+
} from "./chunk-IWUIOLMF.js";
|
|
9
|
+
import {
|
|
10
|
+
formatReasoningEffectiveState
|
|
11
|
+
} from "./chunk-3LT6OWQ2.js";
|
|
12
|
+
|
|
13
|
+
// src/tui-context-runtime.ts
|
|
14
|
+
import {
|
|
15
|
+
CODEBASE_MEMORY_COMMAND as SHARED_CODEBASE_MEMORY_COMMAND,
|
|
16
|
+
CODEBASE_MEMORY_ENV as SHARED_CODEBASE_MEMORY_ENV,
|
|
17
|
+
readPositiveIntEnv
|
|
18
|
+
} from "@linghun/shared";
|
|
19
|
+
var USER_VISIBLE_DISPATCH_SLASH_COMMANDS = [
|
|
20
|
+
"/help",
|
|
21
|
+
"/features",
|
|
22
|
+
"/capabilities",
|
|
23
|
+
"/apps",
|
|
24
|
+
"/model",
|
|
25
|
+
"/language",
|
|
26
|
+
"/mode",
|
|
27
|
+
"/plan",
|
|
28
|
+
"/permissions",
|
|
29
|
+
"/background",
|
|
30
|
+
"/job",
|
|
31
|
+
"/batch",
|
|
32
|
+
"/remote",
|
|
33
|
+
"/details",
|
|
34
|
+
"/agents",
|
|
35
|
+
"/fork",
|
|
36
|
+
"/rewind",
|
|
37
|
+
"/btw",
|
|
38
|
+
"/interrupt",
|
|
39
|
+
"/claim-check",
|
|
40
|
+
"/verify",
|
|
41
|
+
"/review",
|
|
42
|
+
"/vision",
|
|
43
|
+
"/image",
|
|
44
|
+
"/cache-log",
|
|
45
|
+
"/cache",
|
|
46
|
+
"/compact",
|
|
47
|
+
"/context",
|
|
48
|
+
"/break-cache",
|
|
49
|
+
"/mcp",
|
|
50
|
+
"/index",
|
|
51
|
+
"/resume",
|
|
52
|
+
"/branch",
|
|
53
|
+
"/memory",
|
|
54
|
+
"/skills",
|
|
55
|
+
"/workflows",
|
|
56
|
+
"/plugins",
|
|
57
|
+
"/doctor",
|
|
58
|
+
"/problems",
|
|
59
|
+
"/usage",
|
|
60
|
+
"/stats",
|
|
61
|
+
"/tab",
|
|
62
|
+
"/esc",
|
|
63
|
+
"/enter",
|
|
64
|
+
"/trust",
|
|
65
|
+
"/autopilot",
|
|
66
|
+
"/brief",
|
|
67
|
+
"/sessions",
|
|
68
|
+
"/read",
|
|
69
|
+
"/write",
|
|
70
|
+
"/edit",
|
|
71
|
+
"/multiedit",
|
|
72
|
+
"/grep",
|
|
73
|
+
"/glob",
|
|
74
|
+
"/bash",
|
|
75
|
+
"/todo",
|
|
76
|
+
"/diff",
|
|
77
|
+
"/exit"
|
|
78
|
+
];
|
|
79
|
+
function runtimeFromContinuation(continuation) {
|
|
80
|
+
return {
|
|
81
|
+
role: "executor",
|
|
82
|
+
provider: continuation.provider,
|
|
83
|
+
model: continuation.model,
|
|
84
|
+
endpointProfile: continuation.endpointProfile,
|
|
85
|
+
reasoningLevel: continuation.reasoningLevel,
|
|
86
|
+
reasoningStatus: formatReasoningEffectiveState(
|
|
87
|
+
continuation.reasoningLevel,
|
|
88
|
+
continuation.reasoningSent
|
|
89
|
+
),
|
|
90
|
+
reasoningSent: continuation.reasoningSent
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
function createSingleToolCallContinuation(continuation, toolCall) {
|
|
94
|
+
const removedIds = /* @__PURE__ */ new Set();
|
|
95
|
+
const mapped = continuation.messages.map((message) => {
|
|
96
|
+
if (message.role !== "assistant" || !message.toolCalls?.length) {
|
|
97
|
+
return message;
|
|
98
|
+
}
|
|
99
|
+
const kept = message.toolCalls.filter((item) => item.id === toolCall.id);
|
|
100
|
+
if (kept.length === 0) {
|
|
101
|
+
return message;
|
|
102
|
+
}
|
|
103
|
+
for (const item of message.toolCalls) {
|
|
104
|
+
if (item.id !== toolCall.id) {
|
|
105
|
+
removedIds.add(item.id);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
return { ...message, toolCalls: kept };
|
|
109
|
+
});
|
|
110
|
+
return {
|
|
111
|
+
...continuation,
|
|
112
|
+
messages: mapped.filter((message) => {
|
|
113
|
+
if (message.role === "tool" && removedIds.has(message.tool_call_id)) {
|
|
114
|
+
return false;
|
|
115
|
+
}
|
|
116
|
+
return true;
|
|
117
|
+
})
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
var VERIFICATION_COMMAND_TIMEOUT_MS = LINGHUN_VERIFICATION_COMMAND_TIMEOUT_MS;
|
|
121
|
+
var MIN_CACHE_HISTORY_SIZE = 1;
|
|
122
|
+
var MAX_CACHE_HISTORY_SIZE = 200;
|
|
123
|
+
var DEFAULT_LIGHT_HINT_COOLDOWN_MS = 5 * 60 * 1e3;
|
|
124
|
+
var MAX_LIGHT_HINTS_PER_TURN = 1;
|
|
125
|
+
var MAX_TODO_ONLY_CONSECUTIVE_ROUNDS = LINGHUN_MAX_TODO_ONLY_CONSECUTIVE_ROUNDS;
|
|
126
|
+
var TODO_ONLY_KILL_GRACE = LINGHUN_TODO_ONLY_KILL_GRACE;
|
|
127
|
+
var MAX_TODO_ONLY_CODE_FACT = LINGHUN_MAX_TODO_ONLY_CODE_FACT;
|
|
128
|
+
var MAX_MODEL_TOTAL_TOOL_ROUNDS = LINGHUN_MAX_AGENTIC_TURNS;
|
|
129
|
+
var MAX_RAW_TOOL_PROTOCOL_TEXT_RETRIES = LINGHUN_MAX_RAW_TOOL_PROTOCOL_TEXT_RETRIES;
|
|
130
|
+
var CODEBASE_MEMORY_COMMAND = SHARED_CODEBASE_MEMORY_COMMAND;
|
|
131
|
+
var CODEBASE_MEMORY_ENV = SHARED_CODEBASE_MEMORY_ENV;
|
|
132
|
+
var PROJECT_RULES_STATUS_WIDTH = 160;
|
|
133
|
+
var MEMORY_PROMPT_TOP_K = 3;
|
|
134
|
+
var MEMORY_PROMPT_ITEM_WIDTH = 180;
|
|
135
|
+
var MEMORY_PROMPT_TOTAL_WIDTH = 720;
|
|
136
|
+
var MAX_CONTEXT_MESSAGES = 12;
|
|
137
|
+
var REQUEST_SLOW_HINT_MS = readPositiveIntEnv("LINGHUN_REQUEST_SLOW_HINT_MS", 2e4);
|
|
138
|
+
var MAX_EVIDENCE_RECORDS = readPositiveIntEnv("LINGHUN_MAX_EVIDENCE_RECORDS", 50);
|
|
139
|
+
var MAX_BACKGROUND_TASKS = 50;
|
|
140
|
+
var WORKFLOW_ARCHITECTURE_REVIEW_FILE_LIMIT = 8;
|
|
141
|
+
var BACKGROUND_RUNNING_GLOBAL_CAP = readPositiveIntEnv(
|
|
142
|
+
"LINGHUN_BACKGROUND_RUNNING_GLOBAL_CAP",
|
|
143
|
+
MAX_BACKGROUND_TASKS
|
|
144
|
+
);
|
|
145
|
+
var BACKGROUND_KIND_CAPS = {};
|
|
146
|
+
var MAX_CHECKPOINTS = 20;
|
|
147
|
+
var MAX_ROUTE_DECISIONS = 50;
|
|
148
|
+
|
|
149
|
+
export {
|
|
150
|
+
USER_VISIBLE_DISPATCH_SLASH_COMMANDS,
|
|
151
|
+
runtimeFromContinuation,
|
|
152
|
+
createSingleToolCallContinuation,
|
|
153
|
+
VERIFICATION_COMMAND_TIMEOUT_MS,
|
|
154
|
+
MIN_CACHE_HISTORY_SIZE,
|
|
155
|
+
MAX_CACHE_HISTORY_SIZE,
|
|
156
|
+
DEFAULT_LIGHT_HINT_COOLDOWN_MS,
|
|
157
|
+
MAX_LIGHT_HINTS_PER_TURN,
|
|
158
|
+
MAX_TODO_ONLY_CONSECUTIVE_ROUNDS,
|
|
159
|
+
TODO_ONLY_KILL_GRACE,
|
|
160
|
+
MAX_TODO_ONLY_CODE_FACT,
|
|
161
|
+
MAX_MODEL_TOTAL_TOOL_ROUNDS,
|
|
162
|
+
MAX_RAW_TOOL_PROTOCOL_TEXT_RETRIES,
|
|
163
|
+
CODEBASE_MEMORY_COMMAND,
|
|
164
|
+
CODEBASE_MEMORY_ENV,
|
|
165
|
+
PROJECT_RULES_STATUS_WIDTH,
|
|
166
|
+
MEMORY_PROMPT_TOP_K,
|
|
167
|
+
MEMORY_PROMPT_ITEM_WIDTH,
|
|
168
|
+
MEMORY_PROMPT_TOTAL_WIDTH,
|
|
169
|
+
MAX_CONTEXT_MESSAGES,
|
|
170
|
+
REQUEST_SLOW_HINT_MS,
|
|
171
|
+
MAX_EVIDENCE_RECORDS,
|
|
172
|
+
MAX_BACKGROUND_TASKS,
|
|
173
|
+
WORKFLOW_ARCHITECTURE_REVIEW_FILE_LIMIT,
|
|
174
|
+
BACKGROUND_RUNNING_GLOBAL_CAP,
|
|
175
|
+
BACKGROUND_KIND_CAPS,
|
|
176
|
+
MAX_CHECKPOINTS,
|
|
177
|
+
MAX_ROUTE_DECISIONS
|
|
178
|
+
};
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
// src/permission-presenter.ts
|
|
2
|
+
function formatLocalToolPermissionPrompt(permission, language) {
|
|
3
|
+
const files = permission.scope.length > 0 ? permission.scope.join(", ") : "none";
|
|
4
|
+
const risk = formatRisk(permission.risk, language);
|
|
5
|
+
if (language === "en-US") {
|
|
6
|
+
return [
|
|
7
|
+
"Permission needed before running this tool",
|
|
8
|
+
`- Tool: ${permission.toolName}`,
|
|
9
|
+
`- Why paused: ${permission.reason}`,
|
|
10
|
+
`- Safety level: ${risk}`,
|
|
11
|
+
`- Scope: ${files}`,
|
|
12
|
+
"- Next: type yes/confirm to allow once, no/cancel/Esc to deny, or details to inspect the safe summary. The tool has not run yet."
|
|
13
|
+
].join("\n");
|
|
14
|
+
}
|
|
15
|
+
return [
|
|
16
|
+
"\u9700\u8981\u5148\u786E\u8BA4\u6743\u9650",
|
|
17
|
+
`- \u5DE5\u5177\uFF1A${permission.toolName}`,
|
|
18
|
+
`- \u6682\u505C\u539F\u56E0\uFF1A${permission.reason}`,
|
|
19
|
+
`- \u5B89\u5168\u7EA7\u522B\uFF1A${risk}`,
|
|
20
|
+
`- \u5F71\u54CD\u8303\u56F4\uFF1A${files}`,
|
|
21
|
+
"- \u4E0B\u4E00\u6B65\uFF1A\u8F93\u5165 yes/\u786E\u8BA4/\u7EE7\u7EED \u53EF\u672C\u6B21\u5141\u8BB8\uFF1B\u8F93\u5165 no/\u53D6\u6D88/Esc \u53EF\u62D2\u7EDD\uFF1B\u8F93\u5165 details/\u8BE6\u60C5 \u67E5\u770B\u5B89\u5168\u6458\u8981\u3002\u5DE5\u5177\u5C1A\u672A\u6267\u884C\u3002"
|
|
22
|
+
].join("\n");
|
|
23
|
+
}
|
|
24
|
+
function formatModelToolPermissionPrompt(permission, language) {
|
|
25
|
+
const files = permission.scope.length > 0 ? permission.scope.join(", ") : "none";
|
|
26
|
+
const action = formatPermissionAction(permission);
|
|
27
|
+
const isReportWrite = isReportWritePrompt(permission);
|
|
28
|
+
if (language === "en-US") {
|
|
29
|
+
if (isReportWrite) {
|
|
30
|
+
return [`Write ${files}`, "Allow this write? yes / no"].join("\n");
|
|
31
|
+
}
|
|
32
|
+
return [`Linghun wants to run ${action}.`, "Allow this action once? yes / no"].join("\n");
|
|
33
|
+
}
|
|
34
|
+
if (isReportWrite) {
|
|
35
|
+
return [`\u5199\u5165 ${files}`, "\u5141\u8BB8\u672C\u6B21\u5199\u5165\uFF1Fyes / no"].join("\n");
|
|
36
|
+
}
|
|
37
|
+
return [`Linghun \u60F3\u6267\u884C ${action}\u3002`, "\u5141\u8BB8\u672C\u6B21\u6267\u884C\uFF1Fyes / no"].join("\n");
|
|
38
|
+
}
|
|
39
|
+
function formatPermissionAction(permission) {
|
|
40
|
+
const files = permission.scope.length > 0 ? permission.scope.join(", ") : "none";
|
|
41
|
+
if (permission.toolName === "Write") {
|
|
42
|
+
return `Write ${files}`;
|
|
43
|
+
}
|
|
44
|
+
if (permission.toolName === "Edit" || permission.toolName === "MultiEdit") {
|
|
45
|
+
return `${permission.toolName} ${files}`;
|
|
46
|
+
}
|
|
47
|
+
return permission.toolName;
|
|
48
|
+
}
|
|
49
|
+
function isReportWritePrompt(permission) {
|
|
50
|
+
if (permission.toolName !== "Write" || permission.scope.length !== 1) {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
const file = permission.scope[0].replace(/\\/g, "/").toLowerCase();
|
|
54
|
+
const fileName = file.split("/").pop() ?? file;
|
|
55
|
+
return /\.md$/.test(fileName) && (/report|报告/.test(fileName) || fileName === "report.md");
|
|
56
|
+
}
|
|
57
|
+
function formatRisk(risk, language) {
|
|
58
|
+
if (language === "en-US") {
|
|
59
|
+
if (risk === "high") return "high \u2014 can execute commands or modify important state";
|
|
60
|
+
if (risk === "medium") return "medium \u2014 can modify workspace files";
|
|
61
|
+
return "low \u2014 read-only or session-scoped";
|
|
62
|
+
}
|
|
63
|
+
if (risk === "high") return "\u9AD8 \u2014 \u53EF\u80FD\u6267\u884C\u547D\u4EE4\u6216\u6539\u53D8\u91CD\u8981\u72B6\u6001";
|
|
64
|
+
if (risk === "medium") return "\u4E2D \u2014 \u53EF\u80FD\u4FEE\u6539\u5DE5\u4F5C\u533A\u6587\u4EF6";
|
|
65
|
+
return "\u4F4E \u2014 \u53EA\u8BFB\u6216\u4EC5\u5F71\u54CD\u5F53\u524D\u4F1A\u8BDD";
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
export {
|
|
69
|
+
formatLocalToolPermissionPrompt,
|
|
70
|
+
formatModelToolPermissionPrompt
|
|
71
|
+
};
|