cc-viewer 1.6.328 → 1.6.329

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.
Files changed (72) hide show
  1. package/cli.js +12 -5
  2. package/dist/assets/App-zGAU2EYM.js +2 -0
  3. package/dist/assets/{MdxEditorPanel-CHCab4Ev.js → MdxEditorPanel-5Pb0ZTc6.js} +1 -1
  4. package/dist/assets/{Mobile-CxJCaC45.js → Mobile-BYT_A8TX.js} +1 -1
  5. package/dist/assets/{_baseUniq-DhsWHOgL.js → _baseUniq-jDC_lFvH.js} +1 -1
  6. package/dist/assets/{arc-IcD-Lo4C.js → arc-D_MHcfPz.js} +1 -1
  7. package/dist/assets/{architectureDiagram-Q4EWVU46-C11Lvd-K.js → architectureDiagram-Q4EWVU46-D3LhuQ4p.js} +1 -1
  8. package/dist/assets/{blockDiagram-DXYQGD6D-CHPVhtaE.js → blockDiagram-DXYQGD6D-Bi9G2rJp.js} +1 -1
  9. package/dist/assets/{c4Diagram-AHTNJAMY-CiQaFoSO.js → c4Diagram-AHTNJAMY-DlY0w3X4.js} +1 -1
  10. package/dist/assets/{channel-CvHaaPUo.js → channel-C87hLHco.js} +1 -1
  11. package/dist/assets/{chunk-4BX2VUAB-jxhLaa8Y.js → chunk-4BX2VUAB-DodXg0hV.js} +1 -1
  12. package/dist/assets/{chunk-4TB4RGXK-CMtziXyE.js → chunk-4TB4RGXK-Ba2E_IX7.js} +1 -1
  13. package/dist/assets/{chunk-55IACEB6-DFpZP2X9.js → chunk-55IACEB6-CWG3ZdRs.js} +1 -1
  14. package/dist/assets/{chunk-EDXVE4YY-CGjPeFQw.js → chunk-EDXVE4YY-lT5M-dRo.js} +1 -1
  15. package/dist/assets/{chunk-FMBD7UC4-DXPeGCOd.js → chunk-FMBD7UC4-BY_2pfoq.js} +1 -1
  16. package/dist/assets/{chunk-OYMX7WX6-CQvPwzN8.js → chunk-OYMX7WX6-DzLhEX7n.js} +1 -1
  17. package/dist/assets/{chunk-QZHKN3VN-BMxEWUbX.js → chunk-QZHKN3VN-BvdoGurF.js} +1 -1
  18. package/dist/assets/{chunk-YZCP3GAM-qEYAVmnU.js → chunk-YZCP3GAM-C7rlhtyD.js} +1 -1
  19. package/dist/assets/classDiagram-6PBFFD2Q-DiOul2Ap.js +1 -0
  20. package/dist/assets/classDiagram-v2-HSJHXN6E-DiOul2Ap.js +1 -0
  21. package/dist/assets/clone-r-iPz1mj.js +1 -0
  22. package/dist/assets/{cose-bilkent-S5V4N54A-DzDxh-9x.js → cose-bilkent-S5V4N54A-DhsYplMy.js} +1 -1
  23. package/dist/assets/{dagre-KV5264BT-Hm1CSh8w.js → dagre-KV5264BT-PLnp9yct.js} +1 -1
  24. package/dist/assets/{diagram-5BDNPKRD-Dqn2kYK8.js → diagram-5BDNPKRD-DqvSM_bo.js} +1 -1
  25. package/dist/assets/{diagram-G4DWMVQ6-29a0WeUL.js → diagram-G4DWMVQ6-DYN80unA.js} +1 -1
  26. package/dist/assets/{diagram-MMDJMWI5-DngCG-dw.js → diagram-MMDJMWI5-D-jv3M8U.js} +1 -1
  27. package/dist/assets/{diagram-TYMM5635-DJ4z9xlE.js → diagram-TYMM5635-BbVwY3fb.js} +1 -1
  28. package/dist/assets/{erDiagram-SMLLAGMA-CNLEO1uY.js → erDiagram-SMLLAGMA-9-rp8xsO.js} +1 -1
  29. package/dist/assets/{flowDiagram-DWJPFMVM-0_pll08D.js → flowDiagram-DWJPFMVM-Bu_JuIe2.js} +1 -1
  30. package/dist/assets/{ganttDiagram-T4ZO3ILL-sEZL-qtQ.js → ganttDiagram-T4ZO3ILL-B-PvSqDf.js} +1 -1
  31. package/dist/assets/{gitGraphDiagram-UUTBAWPF-Drtkp1R0.js → gitGraphDiagram-UUTBAWPF-DGloG4Vg.js} +1 -1
  32. package/dist/assets/{graph-Cg00EdQb.js → graph-CbR0Gq9P.js} +1 -1
  33. package/dist/assets/index-DENLOp7J.js +2 -0
  34. package/dist/assets/{infoDiagram-42DDH7IO-DW1fW-wp.js → infoDiagram-42DDH7IO-FGosRpTG.js} +1 -1
  35. package/dist/assets/{ishikawaDiagram-UXIWVN3A-BY0AsB86.js → ishikawaDiagram-UXIWVN3A-BlclfpV5.js} +1 -1
  36. package/dist/assets/{journeyDiagram-VCZTEJTY-CASKzb6G.js → journeyDiagram-VCZTEJTY--UkR986E.js} +1 -1
  37. package/dist/assets/{kanban-definition-6JOO6SKY-BZyktac4.js → kanban-definition-6JOO6SKY-1oO9JAku.js} +1 -1
  38. package/dist/assets/{layout-BEOAbZeq.js → layout-DKdPIoav.js} +1 -1
  39. package/dist/assets/{linear-oJ-ySJzp.js → linear-D2uKszhd.js} +1 -1
  40. package/dist/assets/mermaid.core-Adp4RVnV.js +7 -0
  41. package/dist/assets/{min-DJPqA8H4.js → min-Czdk6h6Y.js} +1 -1
  42. package/dist/assets/{mindmap-definition-QFDTVHPH-CuWfJkFH.js → mindmap-definition-QFDTVHPH-Bs7NLrcq.js} +1 -1
  43. package/dist/assets/{pieDiagram-DEJITSTG-C7DNgm_a.js → pieDiagram-DEJITSTG-D7z6f5QH.js} +1 -1
  44. package/dist/assets/{quadrantDiagram-34T5L4WZ-Udp7Qdz6.js → quadrantDiagram-34T5L4WZ-2rae23Td.js} +1 -1
  45. package/dist/assets/{requirementDiagram-MS252O5E-p2R15Ytu.js → requirementDiagram-MS252O5E-B4uC_pLr.js} +1 -1
  46. package/dist/assets/{sankeyDiagram-XADWPNL6-CuS3iyC7.js → sankeyDiagram-XADWPNL6-xo0rKzRA.js} +1 -1
  47. package/dist/assets/seqResourceLoaders-C7QiLG9L.js +2 -0
  48. package/dist/assets/{sequenceDiagram-FGHM5R23-DLDkJPs-.js → sequenceDiagram-FGHM5R23-3zQ_CXGR.js} +1 -1
  49. package/dist/assets/{stateDiagram-FHFEXIEX-_SrM5ume.js → stateDiagram-FHFEXIEX-BnAvwAN8.js} +1 -1
  50. package/dist/assets/{stateDiagram-v2-QKLJ7IA2-jqfcQul3.js → stateDiagram-v2-QKLJ7IA2-Q4raD3B2.js} +1 -1
  51. package/dist/assets/{timeline-definition-GMOUNBTQ-C43OEq6Y.js → timeline-definition-GMOUNBTQ-BMSMoqEA.js} +1 -1
  52. package/dist/assets/vendor-mdxeditor-BuIUwnOf.js +2 -0
  53. package/dist/assets/{vennDiagram-DHZGUBPP-DeBx__sn.js → vennDiagram-DHZGUBPP-Dd_tCka1.js} +1 -1
  54. package/dist/assets/{wardley-RL74JXVD-XVGgknwp.js → wardley-RL74JXVD-DGkrRuSv.js} +1 -1
  55. package/dist/assets/{wardleyDiagram-NUSXRM2D-CA_0hTxw.js → wardleyDiagram-NUSXRM2D-DlbDpNJR.js} +1 -1
  56. package/dist/assets/{xychartDiagram-5P7HB3ND-ClncDcjD.js → xychartDiagram-5P7HB3ND-CtBG1yl-.js} +1 -1
  57. package/dist/index.html +7 -7
  58. package/package.json +1 -1
  59. package/server/lib/im-append-system.js +160 -0
  60. package/server/lib/im-lang.js +1 -1
  61. package/server/lib/im-skills.js +1 -1
  62. package/server/routes/im.js +12 -11
  63. package/server/server.js +9 -4
  64. package/dist/assets/App-DyGTqAm9.js +0 -2
  65. package/dist/assets/classDiagram-6PBFFD2Q-B8vDI0wf.js +0 -1
  66. package/dist/assets/classDiagram-v2-HSJHXN6E-B8vDI0wf.js +0 -1
  67. package/dist/assets/clone-DkzKnSuh.js +0 -1
  68. package/dist/assets/index-cv7Q2eed.js +0 -2
  69. package/dist/assets/mermaid.core-C7fp2bAl.js +0 -7
  70. package/dist/assets/seqResourceLoaders-D23Wq52E.js +0 -2
  71. package/dist/assets/vendor-mdxeditor-BM6lrTAP.js +0 -2
  72. package/server/lib/im-claude-md.js +0 -114
package/cli.js CHANGED
@@ -454,7 +454,7 @@ async function runCliMode(extraClaudeArgs = [], cwd, noOpen = false) {
454
454
  }
455
455
 
456
456
  // 启动一个独立常驻 IM worker。本质是「在 IM_<id>/ 工作目录、绑 127.0.0.1、skip-permissions」的 runCliMode,
457
- // 外加:全局唯一锁、CLAUDE.md 预置、IM 专属 env。由 im-process-manager 以 detached 子进程拉起,
457
+ // 外加:全局唯一锁、CC_APPEND_SYSTEM.md 人格预置/迁移、IM 专属 env。由 im-process-manager 以 detached 子进程拉起,
458
458
  // 也可手动 `ccv --im <id>` 启动。
459
459
  async function runImMode(platformId) {
460
460
  const { getDescriptor } = await import('./server/lib/im-config.js');
@@ -464,7 +464,7 @@ async function runImMode(platformId) {
464
464
  }
465
465
 
466
466
  const { acquireImLock, releaseImLock, imDir } = await import('./server/lib/im-lock.js');
467
- const { ensureImClaudeMd } = await import('./server/lib/im-claude-md.js');
467
+ const { ensureImAppendSystem, migrateImClaudeMd } = await import('./server/lib/im-append-system.js');
468
468
  const { ensureImBuiltinSkills } = await import('./server/lib/im-skills.js');
469
469
 
470
470
  const dir = imDir(platformId);
@@ -480,9 +480,13 @@ async function runImMode(platformId) {
480
480
  // SIGKILL 不触发,由 manager 的 getImLiveness 兜底清理陈旧锁)
481
481
  process.on('exit', () => { try { releaseImLock(platformId, process.pid); } catch { /* noop */ } });
482
482
 
483
- // 首次缺失则生成默认 CLAUDE.md(行为约束,建议层)。失败非致命:worker 照常启动。
484
- try { ensureImClaudeMd(platformId, dir); }
485
- catch (e) { console.warn('[CC Viewer] ensureImClaudeMd failed (non-fatal):', e.message); }
483
+ // 一次性把遗留的 CLAUDE.md 迁为 CC_APPEND_SYSTEM.md(幂等:迁移=rename 移动、内容不丢;目标已有内容时不动 CLAUDE.md);再确保默认存在。
484
+ // 该文件由 pty-manager 启动 claude 时自动注入为 --append-system-prompt-file(追加系统提示,比旧
485
+ // CLAUDE.md 项目记忆更难被来信指令绕过)。失败非致命:worker 照常启动。
486
+ try { migrateImClaudeMd(platformId, dir); }
487
+ catch (e) { console.warn('[CC Viewer] migrateImClaudeMd failed (non-fatal):', e.message); }
488
+ try { ensureImAppendSystem(platformId, dir); }
489
+ catch (e) { console.warn('[CC Viewer] ensureImAppendSystem failed (non-fatal):', e.message); }
486
490
 
487
491
  // 受管同步内置默认技能(manage-ccv-projects:列出/启动 ccv 项目 + 自我介绍)。失败非致命:worker 照常启动。
488
492
  try { ensureImBuiltinSkills(platformId, dir); }
@@ -494,6 +498,9 @@ async function runImMode(platformId) {
494
498
  process.env.CCV_MAX_PORT = process.env.CCV_MAX_PORT || '7099';
495
499
  process.env.CCV_HOST = '127.0.0.1'; // 仅 loopback:不把 skip-perms 端点暴露到局域网
496
500
  process.env.CCV_IM_DENY = '1'; // 启用 perm-bridge 的 IM 硬拦截层
501
+ // IM 人格(CC_APPEND_SYSTEM.md)必须始终注入:清掉全局 opt-out,使手动 `ccv --im` 也不被它关掉
502
+ // (manager 拉起的 worker 由 buildChildEnv 已剥离全部 CCV_*,此处对其为 no-op,仅覆盖手动启动路径)。
503
+ delete process.env.CCV_DISABLE_AUTO_SYSTEM_PROMPT;
497
504
 
498
505
  // worker 全自动:skip-permissions + 不开浏览器,工作目录设为 IM_<id>/
499
506
  return runCliMode(['--dangerously-skip-permissions'], dir, true);