@pencil-agent/nano-pencil 2.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (195) hide show
  1. package/README.md +267 -267
  2. package/dist/build-meta.json +3 -3
  3. package/dist/core/export-html/AGENT.md +11 -11
  4. package/dist/core/export-html/template.css +971 -971
  5. package/dist/core/export-html/template.html +54 -54
  6. package/dist/core/mcp/mcp-client.d.ts +3 -1
  7. package/dist/core/mcp/mcp-client.js +6 -6
  8. package/dist/core/mcp/mcp-config.d.ts +3 -3
  9. package/dist/core/mcp/mcp-config.js +1 -1
  10. package/dist/core/mcp/mcp-manager.d.ts +5 -1
  11. package/dist/core/mcp/mcp-manager.js +1 -1
  12. package/dist/core/platform/config/resource-loader.d.ts +2 -0
  13. package/dist/core/platform/config/resource-loader.js +2 -2
  14. package/dist/core/runtime/agent-session.d.ts +12 -0
  15. package/dist/core/runtime/agent-session.js +8 -8
  16. package/dist/core/runtime/sdk.d.ts +8 -0
  17. package/dist/core/runtime/sdk.js +1 -1
  18. package/dist/extensions/builtin/AGENT.md +115 -115
  19. package/dist/extensions/builtin/browser/AGENT.md +17 -17
  20. package/dist/extensions/builtin/browser/agent-workspace/agent_helpers.py +12 -12
  21. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/amazon/product-search.md +198 -198
  22. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/archive-org/scraping.md +341 -341
  23. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/arxiv/scraping.md +311 -311
  24. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/arxiv-bulk/scraping.md +333 -333
  25. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/atlas/overview.md +70 -70
  26. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/booking-com/scraping.md +578 -578
  27. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/capterra/scraping.md +440 -440
  28. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/centilebrain/generate-estimates.md +110 -110
  29. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/coingecko/scraping.md +325 -325
  30. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/coinmarketcap/scraping.md +463 -463
  31. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/coursera/scraping.md +360 -360
  32. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/craigslist/scraping.md +390 -390
  33. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/crossref/scraping.md +568 -568
  34. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/dev-to/scraping.md +323 -323
  35. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/duckduckgo/scraping.md +349 -349
  36. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/ebay/scraping.md +435 -435
  37. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/etsy/scraping.md +506 -506
  38. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/eventbrite/scraping.md +363 -363
  39. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/expedia/automation.md +168 -168
  40. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/facebook/groups.md +236 -236
  41. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/facebook/pages.md +295 -295
  42. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/framer/editor.md +108 -108
  43. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/fred/scraping.md +493 -493
  44. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/g2/scraping.md +580 -580
  45. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/genius/scraping.md +511 -511
  46. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/github/repo-actions.md +65 -65
  47. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/github/scraping.md +184 -184
  48. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/glassdoor/scraping.md +543 -543
  49. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/gmail/compose.md +122 -122
  50. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/goodreads/scraping.md +461 -461
  51. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/gutenberg/scraping.md +383 -383
  52. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/hackernews/scraping.md +243 -243
  53. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/howlongtobeat/scraping.md +473 -473
  54. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/imdb/scraping.md +271 -271
  55. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/itch-io/scraping.md +436 -436
  56. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/job-boards/indeed-glassdoor.md +1021 -1021
  57. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/letterboxd/scraping.md +349 -349
  58. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/linkedin/invitation-manager.md +109 -109
  59. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/loom/folder-enumeration.md +170 -170
  60. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/macrotrends/scraping.md +537 -537
  61. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/medium/article-hydration.md +120 -120
  62. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/medium/scraping.md +414 -414
  63. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/metacritic/scraping.md +477 -477
  64. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/musicbrainz/scraping.md +478 -478
  65. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/nasa/scraping.md +339 -339
  66. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/news-aggregation/multi-source.md +205 -205
  67. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/open-library/scraping.md +472 -472
  68. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/openalex/scraping.md +470 -470
  69. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/openstreetmap/scraping.md +490 -490
  70. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/package-registries/npm-pypi.md +478 -478
  71. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/polymarket/scraping.md +234 -234
  72. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/producthunt/scraping.md +307 -307
  73. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/pubmed/scraping.md +421 -421
  74. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/quora/scraping.md +364 -364
  75. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/rawg/scraping.md +352 -352
  76. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/reddit/scraping.md +124 -124
  77. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/rest-countries/scraping.md +233 -233
  78. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/sec-edgar/scraping.md +361 -361
  79. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/README.md +36 -36
  80. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/embedded-apps.md +72 -72
  81. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/knowledge-base.md +109 -109
  82. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/shopify-admin/polaris-inputs.md +137 -137
  83. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/soundcloud/scraping.md +362 -362
  84. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/spotify/scraping.md +339 -339
  85. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/stackoverflow/scraping.md +435 -435
  86. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/steam/scraping.md +575 -575
  87. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/substack/scraping.md +338 -338
  88. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/thetechgeeks/pricing.md +52 -52
  89. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/tiktok/upload.md +107 -107
  90. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/tradingview/scraping.md +309 -309
  91. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/trello/boards-and-lists.md +88 -88
  92. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/trustpilot/scraping.md +375 -375
  93. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/walmart/scraping.md +444 -444
  94. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/wayback-machine/scraping.md +306 -306
  95. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/weather/scraping.md +398 -398
  96. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/wellfound/scraping.md +596 -596
  97. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/world-bank/scraping.md +356 -356
  98. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/xiaohongshu/scraping.md +84 -84
  99. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/youtube/scraping.md +418 -418
  100. package/dist/extensions/builtin/browser/agent-workspace/domain-skills/zillow/scraping.md +433 -433
  101. package/dist/extensions/builtin/browser/browser.md +73 -73
  102. package/dist/extensions/builtin/browser/install.md +142 -142
  103. package/dist/extensions/builtin/browser/interaction-skills/connection.md +48 -48
  104. package/dist/extensions/builtin/browser/interaction-skills/cookies.md +3 -3
  105. package/dist/extensions/builtin/browser/interaction-skills/cross-origin-iframes.md +3 -3
  106. package/dist/extensions/builtin/browser/interaction-skills/dialogs.md +64 -64
  107. package/dist/extensions/builtin/browser/interaction-skills/downloads.md +3 -3
  108. package/dist/extensions/builtin/browser/interaction-skills/drag-and-drop.md +3 -3
  109. package/dist/extensions/builtin/browser/interaction-skills/dropdowns.md +3 -3
  110. package/dist/extensions/builtin/browser/interaction-skills/iframes.md +3 -3
  111. package/dist/extensions/builtin/browser/interaction-skills/network-requests.md +3 -3
  112. package/dist/extensions/builtin/browser/interaction-skills/print-as-pdf.md +3 -3
  113. package/dist/extensions/builtin/browser/interaction-skills/profile-sync.md +90 -90
  114. package/dist/extensions/builtin/browser/interaction-skills/screenshots.md +17 -17
  115. package/dist/extensions/builtin/browser/interaction-skills/scrolling.md +3 -3
  116. package/dist/extensions/builtin/browser/interaction-skills/shadow-dom.md +3 -3
  117. package/dist/extensions/builtin/browser/interaction-skills/tabs.md +69 -69
  118. package/dist/extensions/builtin/browser/interaction-skills/uploads.md +1 -1
  119. package/dist/extensions/builtin/browser/interaction-skills/viewport.md +3 -3
  120. package/dist/extensions/builtin/browser/src/browser_harness/AGENT.md +15 -15
  121. package/dist/extensions/builtin/browser/src/browser_harness/__init__.py +8 -8
  122. package/dist/extensions/builtin/browser/src/browser_harness/_ipc.py +90 -90
  123. package/dist/extensions/builtin/browser/src/browser_harness/admin.py +722 -722
  124. package/dist/extensions/builtin/browser/src/browser_harness/daemon.py +328 -328
  125. package/dist/extensions/builtin/browser/src/browser_harness/helpers.py +396 -396
  126. package/dist/extensions/builtin/browser/src/browser_harness/run.py +103 -103
  127. package/dist/extensions/builtin/discipline/skills/brainstorming/SKILL.md +33 -33
  128. package/dist/extensions/builtin/discipline/skills/executing-plans/SKILL.md +25 -25
  129. package/dist/extensions/builtin/discipline/skills/finishing-development-branch/SKILL.md +25 -25
  130. package/dist/extensions/builtin/discipline/skills/receiving-code-review/SKILL.md +22 -22
  131. package/dist/extensions/builtin/discipline/skills/requesting-code-review/SKILL.md +31 -31
  132. package/dist/extensions/builtin/discipline/skills/systematic-debugging/SKILL.md +28 -28
  133. package/dist/extensions/builtin/discipline/skills/test-driven-development/SKILL.md +32 -32
  134. package/dist/extensions/builtin/discipline/skills/using-git-worktrees/SKILL.md +25 -25
  135. package/dist/extensions/builtin/discipline/skills/verification-before-completion/SKILL.md +27 -27
  136. package/dist/extensions/builtin/discipline/skills/writing-plans/SKILL.md +26 -26
  137. package/dist/extensions/builtin/goal/README.md +67 -67
  138. package/dist/extensions/builtin/grub/README.md +112 -112
  139. package/dist/extensions/builtin/link-world/agent-workspace/README.md +16 -16
  140. package/dist/extensions/builtin/link-world/internet-search/internet-search.md +65 -65
  141. package/dist/extensions/builtin/link-world/link-world-agent.md +82 -82
  142. package/dist/extensions/builtin/link-world/linkworld.md +313 -313
  143. package/dist/extensions/builtin/link-world/network-routing/network-routing.md +67 -67
  144. package/dist/extensions/builtin/loop/README.md +92 -92
  145. package/dist/extensions/builtin/mcp/figma-design.md +68 -68
  146. package/dist/extensions/builtin/mcp/mcp-management.md +85 -85
  147. package/dist/extensions/builtin/recap/AGENT.md +15 -15
  148. package/dist/extensions/builtin/sal/README.md +72 -72
  149. package/dist/extensions/builtin/security-audit/README.md +289 -289
  150. package/dist/extensions/builtin/team/AGENT.md +112 -112
  151. package/dist/extensions/builtin/team/TESTING.md +299 -299
  152. package/dist/extensions/builtin/token-save/README.md +56 -56
  153. package/dist/extensions/optional/AGENT.md +10 -10
  154. package/dist/modes/interactive/interactive-mode.js +36 -36
  155. package/dist/modes/interactive/theme/dark.json +85 -85
  156. package/dist/modes/interactive/theme/light.json +84 -84
  157. package/dist/modes/interactive/theme/theme-schema.json +335 -335
  158. package/dist/modes/interactive/theme/warm.json +81 -81
  159. package/dist/node_modules/@pencil-agent/agent-core/dist/agent-loop.js +3 -2
  160. package/dist/node_modules/@pencil-agent/agent-core/dist/structured-adaptive-agent-loop.js +2 -1
  161. package/dist/node_modules/@pencil-agent/ai/dist/cli.js +0 -0
  162. package/docs/cc-agent-design.md +1297 -0
  163. package/docs/cc-tui-design.md +1333 -0
  164. package/docs/codex-goal-command-impl.md +1055 -1055
  165. package/docs/codex-goal-vs-grub.md +500 -500
  166. package/docs/custom-provider.md +27 -27
  167. package/docs/extensions.md +27 -27
  168. package/docs/keybindings.md +27 -27
  169. package/docs/loop /351/207/215/346/236/204/345/256/214/346/210/220/346/200/273/347/273/223.md" +250 -250
  170. package/docs/loop /351/207/215/346/236/204/345/256/214/346/210/220/346/212/245/345/221/212.md" +122 -122
  171. package/docs/loop /351/207/215/346/236/204/346/226/271/346/241/210.md" +1222 -1222
  172. package/docs/loop /351/207/215/346/236/204/346/226/271/346/241/210/345/256/236/347/216/260/346/212/245/345/221/212.md" +158 -158
  173. package/docs/loop /351/207/215/346/236/204/346/226/271/346/241/210/345/257/271/346/257/224/345/210/206/346/236/220.md" +128 -128
  174. package/docs/loop /351/207/215/346/236/204/350/256/241/345/210/222.md" +320 -320
  175. package/docs/loop-usage-examples.md +214 -214
  176. package/docs/models.md +27 -27
  177. package/docs/nanoPencil-/345/255/246/344/271/240/350/256/241/345/210/222.md +170 -0
  178. package/docs/packages.md +27 -27
  179. package/docs/pi-design-philosophy.md +457 -457
  180. package/docs/planmode.md +1987 -1987
  181. package/docs/prompt-templates.md +27 -27
  182. package/docs/providers.md +27 -27
  183. package/docs/scan-report.md +3820 -0
  184. package/docs/sdk.md +27 -27
  185. package/docs/skills.md +27 -27
  186. package/docs/themes.md +27 -27
  187. package/docs/tui.md +27 -27
  188. package/docs//345/257/271/346/240/207Claude-Code.md +1775 -0
  189. package/docs//351/230/277/351/207/214/345/267/264/345/267/264/350/264/242/346/212/245/345/210/206/346/236/220/344/271/246.md +261 -0
  190. package/package.json +190 -190
  191. package/docs/ACP/345/215/217/350/256/256/351/233/206/346/210/220/345/274/200/345/217/221/346/226/207/346/241/243.md +0 -851
  192. package/docs/SDK-TESTING.md +0 -364
  193. package/docs/mem-core/346/212/200/346/234/257/346/226/207/346/241/243.md +0 -593
  194. package/docs/startup-performance-optimization.md +0 -301
  195. package/docs//350/256/244/347/237/245/345/234/260/345/233/276.md +0 -47
@@ -0,0 +1,261 @@
1
+ # 阿里巴巴集团财报分析报告
2
+
3
+ > 分析周期:FY2025(截至 2025 年 3 月)
4
+ > 文档版本:v1.0
5
+ > 撰写日期:2025-06-12
6
+
7
+ ---
8
+
9
+ ## 一、执行摘要
10
+
11
+ 阿里巴巴集团(BABA / 9988.HK)在 FY2025 经历了战略转型的关键一年。公司从传统的"电商主导"模式,逐步转向"AI 驱动 + 云优先"的双引擎战略。本财年核心财务表现呈现以下特征:
12
+
13
+ - **营收增长放缓但质量提升**:全年营收约 9,400 亿元人民币,同比增长约 7-8%,但利润端改善显著
14
+ - **AI 与云计算成为新增长极**:阿里云收入重回双位数增长,AI 相关收入占比快速提升
15
+ - **电商基本盘稳固**:淘天集团 GMV 保持增长,但面临拼多多、抖音电商的激烈竞争
16
+ - **国际业务加速扩张**:AIDC(阿里国际数字商业)收入同比增长超过 30%
17
+ - **股东回报力度加大**:持续大规模回购 + 分红,年度股东回报超过 120 亿美元
18
+
19
+ ---
20
+
21
+ ## 二、核心财务数据概览
22
+
23
+ ### 2.1 整体业绩(FY2025 全年)
24
+
25
+ | 指标 | FY2025 | FY2024 | 同比变化 |
26
+ |------|--------|--------|----------|
27
+ | 总营收 | ~9,400 亿元 | ~8,700 亿元 | +7~8% |
28
+ | 调整后 EBITA | ~1,450 亿元 | ~1,270 亿元 | +14% |
29
+ | 调整后净利润 | ~1,150 亿元 | ~1,050 亿元 | +9~10% |
30
+ | 自由现金流 | ~1,300 亿元 | ~1,180 亿元 | +10% |
31
+ | 经营现金流 | ~1,500 亿元 | ~1,350 亿元 | +11% |
32
+
33
+ ### 2.2 各业务板块营收贡献
34
+
35
+ | 业务板块 | FY2025 营收 | 占比 | 同比增长 | 关键驱动 |
36
+ |----------|-------------|------|----------|----------|
37
+ | 淘天集团 | ~4,300 亿元 | 46% | +3~4% | 88VIP 会员增长、内容化战略 |
38
+ | 阿里云智能 | ~1,100 亿元 | 12% | +10~12% | AI 大模型需求爆发、公共云 |
39
+ | 阿里国际数字商业 | ~1,300 亿元 | 14% | +30%+ | AliExpress Choice、Lazada |
40
+ | 菜鸟集团 | ~1,050 亿元 | 11% | +8~10% | 跨境物流、国内供应链 |
41
+ | 本地生活 | ~650 亿元 | 7% | +5~7% | 饿了么、高德 |
42
+ | 大文娱 | ~250 亿元 | 3% | -2~0% | 优酷、阿里影业 |
43
+ | 其他 | ~750 亿元 | 8% | - | 盒马、银泰等 |
44
+
45
+ ---
46
+
47
+ ## 三、分业务深度分析
48
+
49
+ ### 3.1 淘天集团:基本盘承压但韧性犹在
50
+
51
+ **核心数据:**
52
+ - 年度活跃消费者:超过 9.5 亿(中国市场)
53
+ - 88VIP 会员数:突破 4,000 万,同比增长约 20%
54
+ - GMV 增速:低单位数增长(约 3-5%)
55
+
56
+ **战略举措:**
57
+ 1. **内容化战略**:直播电商、短视频内容持续投入,淘宝逛逛日活提升
58
+ 2. **价格力战略**:百亿补贴常态化,应对拼多多价格战
59
+ 3. **88VIP 生态**:打通饿了么、优酷、飞猪等权益,提升用户粘性
60
+ 4. **商家生态**:降低中小商家入驻门槛,"仅退款"政策优化
61
+
62
+ **挑战:**
63
+ - 拼多多"低价心智"持续渗透下沉市场
64
+ - 抖音电商 GMV 增速远超淘天,内容电商份额提升
65
+ - 用户时长被短视频平台持续分流
66
+
67
+ **蕾姆点评:** 淘天集团的战略核心已从"追求 GMV 高增长"转向"追求高质量增长和用户留存"。88VIP 是阿里最坚实的护城河之一,但价格力战役短期内难言胜利。
68
+
69
+ ---
70
+
71
+ ### 3.2 阿里云智能:AI 时代的核心引擎
72
+
73
+ **核心数据:**
74
+ - 全年营收:约 1,100 亿元,同比增长 10-12%
75
+ - AI 相关收入:同比增速超过 100%
76
+ - 公共云收入占比:持续提升(目标 >60%)
77
+ - 客户数:超过 400 万(含中小企业)
78
+
79
+ **战略举措:**
80
+ 1. **AI 基础设施**:加大 GPU 集群投入,自建智算中心
81
+ 2. **通义千问生态**:开源模型吸引开发者,商业化 API 调用量暴增
82
+ 3. **行业解决方案**:政务云、金融云、制造云垂直深耕
83
+ 4. **降价策略**:核心云产品连续降价,扩大市场份额
84
+
85
+ **竞争格局:**
86
+ - 国内市场份额:约 35%(第一,但较峰值有所下降)
87
+ - 主要对手:华为云(增速更快)、腾讯云、天翼云
88
+ - 优势:生态完整、AI 先发、开发者社区活跃
89
+
90
+ **蕾姆点评:** 阿里云的 AI 转型是阿里集团最亮眼的故事。通义千问的开源策略与商业化并行,正在复制当年 AWS 的成功路径。但 GPU 供应链风险和价格战压力不容忽视。
91
+
92
+ ---
93
+
94
+ ### 3.3 阿里国际数字商业(AIDC):增长最快的板块
95
+
96
+ **核心数据:**
97
+ - 全年营收:约 1,300 亿元,同比增长 30%+
98
+ - 主要市场:欧洲、中东、东南亚、拉美
99
+ - 核心平台:AliExpress(速卖通)、Lazada、Trendyol、Daraz
100
+
101
+ **战略举措:**
102
+ 1. **Choice 模式**:全托管 + 半托管,提升物流时效和用户体验
103
+ 2. **本地化运营**:各国市场独立团队,因地制宜
104
+ 3. **物流基建**:菜鸟国际网络协同,重点市场建仓
105
+ 4. **支付闭环**:Alipay+ 跨境支付整合
106
+
107
+ **挑战:**
108
+ - Temu、SHEIN 全球价格战激烈
109
+ - 地缘政治风险(欧美市场监管、关税)
110
+ - 持续亏损,盈利时间表未明
111
+
112
+ **蕾姆点评:** AIDC 是阿里第二增长曲线,但也是"烧钱"最猛的板块。Choice 模式短期内有效,但长期需要平衡增长与盈利。地缘风险是最大不确定性。
113
+
114
+ ---
115
+
116
+ ### 3.4 菜鸟集团:物流网络的价值重估
117
+
118
+ **核心数据:**
119
+ - 全年营收:约 1,050 亿元,同比增长 8-10%
120
+ - 国际快递:日均处理量持续增长
121
+ - 国内供应链:服务天猫超市、盒马等
122
+
123
+ **战略动态:**
124
+ - 撤回 IPO 计划,重新聚焦集团协同
125
+ - 加大海外仓布局,支撑 AIDC 增长
126
+ - 自动化、无人配送技术投入
127
+
128
+ **蕾姆点评:** 菜鸟撤回 IPO 是明智之举。在阿里"1+6+N"重组后,菜鸟作为基础设施的定位更加清晰。其核心价值在于支撑电商和国际业务的物流体验。
129
+
130
+ ---
131
+
132
+ ### 3.5 本地生活:亏损收窄但竞争胶着
133
+
134
+ **核心数据:**
135
+ - 全年营收:约 650 亿元,同比增长 5-7%
136
+ - 饿了么:订单量增长,但市场份额约 30%(美团约 70%)
137
+ - 高德:日活突破 1.5 亿,聚合打车模式成功
138
+
139
+ **战略举措:**
140
+ - 高德"到目的地"生态整合(打车、酒店、门票)
141
+ - 饿了么聚焦核心城市,减少补贴
142
+ - 与抖音本地生活差异化竞争
143
+
144
+ **蕾姆点评:** 本地生活是阿里最"难啃的骨头"。美团护城河极深,抖音入局更添变数。高德的聚合模式是亮点,但整体盈利遥遥无期。
145
+
146
+ ---
147
+
148
+ ## 四、战略转型分析
149
+
150
+ ### 4.1 从"电商公司"到"科技集团"
151
+
152
+ 阿里正在经历成立以来最深刻的战略转型:
153
+
154
+ | 维度 | 过去 | 现在 |
155
+ |------|------|------|
156
+ | 核心叙事 | 电商 + 支付 | AI + 云 + 全球化 |
157
+ | 增长驱动 | 流量红利 | 技术红利 |
158
+ | 竞争焦点 | 国内电商 | 全球科技竞争 |
159
+ | 组织架构 | 大一统 | 1+6+N 分治 |
160
+ | 资本策略 | 扩张并购 | 回购分红 + 聚焦主业 |
161
+
162
+ ### 4.2 AI 战略:阿里的"iPhone 时刻"?
163
+
164
+ 2025 年是阿里 AI 战略的关键年:
165
+
166
+ - **通义千问**:开源模型数量行业第一,GitHub Star 数领先
167
+ - **AI 基础设施**:万卡 GPU 集群部署,自研芯片进展
168
+ - **AI 应用落地**:淘宝 AI 导购、钉钉 AI 助理、阿里云 AI 服务
169
+ - **AI 投资布局**:投资月之暗面、MiniMax 等头部 AI 创业公司
170
+
171
+ **蕾姆点评:** 阿里的 AI 战略比外界想象的要深入。从底层算力到上层应用,阿里正在构建完整的 AI 生态。但这需要持续的资本投入,短期利润承压不可避免。
172
+
173
+ ---
174
+
175
+ ## 五、股东回报与估值分析
176
+
177
+ ### 5.1 股东回报计划
178
+
179
+ | 项目 | FY2025 |
180
+ |------|--------|
181
+ | 股票回购 | 约 100 亿美元 |
182
+ | 现金分红 | 约 25 亿美元 |
183
+ | 合计股东回报 | ~125 亿美元 |
184
+ | 回购后总股本减少 | 约 5% |
185
+
186
+ ### 5.2 估值指标(截至 2025 年中)
187
+
188
+ | 指标 | 数值 | 历史分位 |
189
+ |------|------|----------|
190
+ | 市值 | ~1,800 亿美元 | 近 5 年 20% 分位 |
191
+ | P/E(TTM) | ~12x | 历史低位 |
192
+ | P/E(Forward) | ~10x | 历史低位 |
193
+ | P/S | ~1.4x | 历史低位 |
194
+ | EV/EBITDA | ~6x | 历史低位 |
195
+ | 净现金 | ~600 亿美元 | 稳健 |
196
+
197
+ **蕾姆点评:** 阿里当前的估值处于历史极低水平,市场定价反映了对地缘风险、竞争压力和增长放缓的极度悲观。但考虑到 AI 转型潜力和股东回报力度,当前价位具有较高的安全边际。
198
+
199
+ ---
200
+
201
+ ## 六、风险因素
202
+
203
+ ### 6.1 宏观与地缘风险
204
+ - 中美关系波动影响中概股估值
205
+ - 国内消费复苏力度不确定
206
+ - 监管政策变化(反垄断、数据安全)
207
+
208
+ ### 6.2 业务竞争风险
209
+ - 电商:拼多多、抖音持续蚕食份额
210
+ - 云:华为云增速更快,天翼云政企优势
211
+ - 国际:Temu、SHEIN 价格战,地缘风险
212
+
213
+ ### 6.3 执行风险
214
+ - AI 投入产出比不及预期
215
+ - 组织变革后的协同效率
216
+ - 国际业务亏损扩大
217
+
218
+ ---
219
+
220
+ ## 七、投资结论
221
+
222
+ ### 7.1 核心观点
223
+
224
+ **阿里正处于"黎明前的黑暗"期:**
225
+
226
+ - 传统电商业务增长见顶,但基本盘稳固
227
+ - AI 和云业务开始放量,是未来 3-5 年的核心增长引擎
228
+ - 国际业务高增长但亏损,需要时间验证商业模式
229
+ - 股东回报力度空前,提供了价格底部支撑
230
+
231
+ ### 7.2 情景分析
232
+
233
+ | 情景 | 概率 | 目标价(USD) | 核心假设 |
234
+ |------|------|---------------|----------|
235
+ | 乐观 | 25% | $150+ | AI 业务爆发,电商企稳,地缘缓和 |
236
+ | 基准 | 50% | $100-120 | AI 稳步增长,电商低个位数增长 |
237
+ | 悲观 | 25% | $60-80 | 竞争加剧,AI 投入不及预期 |
238
+
239
+ ### 7.3 蕾姆的最终建议
240
+
241
+ **"现在的阿里,像是 2014 年的亚马逊——电商基本盘稳固,云业务刚刚开始爆发,市场却因为短期利润压力而低估了长期价值。"**
242
+
243
+ 对于长期投资者而言,当前价位具有吸引力。但需要:
244
+ 1. 承受短期波动(地缘、竞争、宏观)
245
+ 2. 耐心等待 AI 和云业务的利润释放(预计 FY2027 开始显著贡献)
246
+ 3. 持续关注股东回报执行力度
247
+
248
+ ---
249
+
250
+ ## 附录:关键数据来源说明
251
+
252
+ 本报告数据综合整理自:
253
+ - 阿里巴巴集团官方财报(FY2024 年报、FY2025 Q1-Q3 季报)
254
+ - 华尔街分析师一致预期(Bloomberg、FactSet)
255
+ - 公开市场数据(截至 2025 年 6 月)
256
+
257
+ 部分 FY2025 全年数据为蕾姆基于已发布季度数据的推算,实际以公司正式年报为准。
258
+
259
+ ---
260
+
261
+ *本报告由蕾姆整理撰写,仅供参考,不构成投资建议。投资有风险,决策需谨慎。*
package/package.json CHANGED
@@ -1,190 +1,190 @@
1
- {
2
- "name": "@pencil-agent/nano-pencil",
3
- "version": "2.0.0",
4
- "description": "CLI writing agent with read, bash, edit, write tools and session management. Supports DashScope and Ali Token Plan. Soul enabled by default for AI personality evolution.",
5
- "type": "module",
6
- "bin": {
7
- "nanopencil": "dist/cli.js"
8
- },
9
- "exports": {
10
- ".": {
11
- "import": "./dist/index.js",
12
- "types": "./dist/index.d.ts"
13
- },
14
- "./tools": {
15
- "import": "./dist/tools.js",
16
- "types": "./dist/tools.d.ts"
17
- },
18
- "./runtime": {
19
- "import": "./dist/runtime.js",
20
- "types": "./dist/runtime.d.ts"
21
- },
22
- "./session": {
23
- "import": "./dist/session.js",
24
- "types": "./dist/session.d.ts"
25
- },
26
- "./session/compaction": {
27
- "import": "./dist/session-compaction.js",
28
- "types": "./dist/session-compaction.d.ts"
29
- },
30
- "./config": {
31
- "import": "./dist/public-config.js",
32
- "types": "./dist/public-config.d.ts"
33
- },
34
- "./models": {
35
- "import": "./dist/models.js",
36
- "types": "./dist/models.d.ts"
37
- },
38
- "./skills": {
39
- "import": "./dist/skills.js",
40
- "types": "./dist/skills.d.ts"
41
- }
42
- },
43
- "files": [
44
- "dist/**/*.js",
45
- "dist/**/*.d.ts",
46
- "dist/**/*.json",
47
- "dist/**/*.md",
48
- "dist/**/*.py",
49
- "dist/**/*.html",
50
- "dist/**/*.css",
51
- "docs",
52
- "LICENSE",
53
- "README.md"
54
- ],
55
- "scripts": {
56
- "dev": "tsx cli.ts",
57
- "build": "npm run clean:dist && npm run build:deps && tsc -p tsconfig.build.json && npm run copy:internal-libs && npm run copy:theme:json && npm run copy:assets && npm run build:meta && npm run minify:dist",
58
- "build:meta": "node scripts/generate-build-meta.js",
59
- "minify:dist": "node scripts/minify-dist.js",
60
- "build:release": "npm run generate-models --prefix core/lib/ai && npm run build",
61
- "build:deps": "node scripts/build-deps.js",
62
- "clean:dist": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"",
63
- "copy:theme:json": "node -e \"const fs=require('fs');const p=require('path');const d='dist/modes/interactive/theme';if(!fs.existsSync(d))fs.mkdirSync(d,{recursive:true});fs.readdirSync('modes/interactive/theme').forEach(f=>{if(f.endsWith('.json'))fs.copyFileSync(p.join('modes/interactive/theme',f),p.join(d,f))})\"",
64
- "copy:internal-libs": "node scripts/copy-internal-libs.js",
65
- "copy:assets": "node scripts/copy-assets.js",
66
- "update-models": "npm run generate-models --prefix core/lib/ai",
67
- "benchmark": "node scripts/startup-benchmark.cjs",
68
- "benchmark:save": "node scripts/startup-benchmark.cjs --output .benchmarks/baseline.json",
69
- "benchmark:compare": "node scripts/startup-benchmark.cjs --baseline .benchmarks/baseline.json",
70
- "scaffold:docs": "node --import tsx scripts/scaffold-feature-docs.ts",
71
- "verify:dip": "node --import tsx scripts/verify-dip.ts",
72
- "verify:quality": "node --import tsx scripts/verify-quality.ts",
73
- "verify:package-boundary": "node --import tsx scripts/verify-package-boundary.ts",
74
- "verify:package-boundary:dist": "node --import tsx scripts/verify-package-boundary.ts --dist",
75
- "verify:all": "npm run build:deps && npm run verify:dip && npm run verify:quality && npm run verify:package-boundary && npx tsc --noEmit",
76
- "wiki:scan": "node --import tsx scripts/llm-wiki.ts scan",
77
- "wiki:update": "node --import tsx scripts/llm-wiki.ts update",
78
- "wiki:verify": "node --import tsx scripts/llm-wiki.ts verify",
79
- "wiki:build": "node --import tsx scripts/llm-wiki.ts build",
80
- "wiki:all": "node --import tsx scripts/llm-wiki.ts all",
81
- "watch": "tsc --watch",
82
- "test:subagent": "node --test --import tsx test/subagent-parser.test.ts test/worktree-manager.test.ts test/bash-sandbox.test.ts",
83
- "test:team": "node --test --import tsx test/team-parser.test.ts test/team-runtime.test.ts",
84
- "test:plan": "node --test --import tsx test/plan-mode.test.ts",
85
- "test:utils": "node --test --import tsx test/logger.test.ts",
86
- "test:commands": "node --test --import tsx test/slash-command-catalog.test.ts test/extension-command-completions.test.ts test/interactive-slash-command-arguments.test.ts test/rpc-command-catalog.test.ts",
87
- "test:security": "node --test --import tsx test/security-audit.test.ts",
88
- "test:tools": "node --test --import tsx test/workspace-write-guard.test.ts test/read-tool.test.ts test/tool-window-validation.test.ts test/bash-sandbox.test.ts",
89
- "test:presence": "node --test --import tsx test/presence-opening.test.ts",
90
- "test:interactive-memory-notify": "node --test --import tsx test/interactive-memory-notify.test.ts test/session-manager-header.test.ts",
91
- "start": "npx cross-env NODE_ENV=production node --no-deprecation dist/cli.js",
92
- "prepare": "git config core.hooksPath .githooks || true",
93
- "prepublishOnly": "npm run build:release",
94
- "changelog": "node scripts/generate-changelog.js",
95
- "version": "npm run changelog && git add CHANGELOG.md",
96
- "postversion": "git push",
97
- "release": "npm version patch && npm publish"
98
- },
99
- "keywords": [
100
- "nanopencil",
101
- "writing-agent",
102
- "coding-agent",
103
- "ai",
104
- "llm",
105
- "cli",
106
- "tui",
107
- "agent",
108
- "apikey",
109
- "dashscope"
110
- ],
111
- "license": "GPL-3.0",
112
- "workspaces": [
113
- "core/lib/agent-core",
114
- "core/lib/ai",
115
- "core/lib/tui",
116
- "packages/mem-core",
117
- "packages/soul-core",
118
- "packages/protocol"
119
- ],
120
- "engines": {
121
- "node": ">=20"
122
- },
123
- "dependencies": {
124
- "@agentclientprotocol/sdk": "^0.16.1",
125
- "@anthropic-ai/sdk": "^0.73.0",
126
- "@aws-sdk/client-bedrock-runtime": "^3.983.0",
127
- "@google/genai": "^1.40.0",
128
- "@mariozechner/clipboard": "^0.3.2",
129
- "@mariozechner/jiti": "^2.6.2",
130
- "@mistralai/mistralai": "1.10.0",
131
- "@pencil-agent/protocol": "^0.1.0",
132
- "@pencil-agent/mem-core": "^1.1.2",
133
- "@pencil-agent/soul-core": "^0.1.0",
134
- "@silvia-odwyer/photon-node": "^0.3.4",
135
- "@sinclair/typebox": "^0.34.41",
136
- "ajv": "^8.17.1",
137
- "ajv-formats": "^3.0.1",
138
- "chalk": "^5.5.0",
139
- "chokidar": "^5.0.0",
140
- "cli-highlight": "^2.1.11",
141
- "diff": "^8.0.2",
142
- "extract-zip": "^2.0.1",
143
- "file-type": "^21.1.1",
144
- "get-east-asian-width": "^1.3.0",
145
- "glob": "^13.0.1",
146
- "hosted-git-info": "^9.0.2",
147
- "ignore": "^7.0.5",
148
- "marked": "^15.0.12",
149
- "mime-types": "^3.0.1",
150
- "minimatch": "^10.1.1",
151
- "openai": "6.10.0",
152
- "partial-json": "^0.1.7",
153
- "pdf-lib": "^1.17.1",
154
- "pdfjs-dist": "^4.0.379",
155
- "proper-lockfile": "^4.1.2",
156
- "proxy-agent": "^6.5.0",
157
- "undici": "^7.19.1",
158
- "vscode-jsonrpc": "^8.2.1",
159
- "vscode-languageserver-protocol": "^3.18.0",
160
- "vscode-languageserver-types": "^3.18.0",
161
- "yaml": "^2.8.2",
162
- "zod": "^4.3.6",
163
- "zod-to-json-schema": "^3.24.6"
164
- },
165
- "optionalDependencies": {
166
- "koffi": "^2.9.0"
167
- },
168
- "devDependencies": {
169
- "@types/hosted-git-info": "^3.0.5",
170
- "@types/node": "^22.15.0",
171
- "@types/proper-lockfile": "^4.1.4",
172
- "cross-env": "^10.1.0",
173
- "esbuild": "^0.27.3",
174
- "tsx": "^4.7.0",
175
- "typescript": "^5.3.3"
176
- },
177
- "overrides": {
178
- "@types/node": "^22.15.0",
179
- "zod": "^4.3.6"
180
- },
181
- "nanopencilConfig": {
182
- "name": "nanopencil",
183
- "configDir": ".pencils"
184
- },
185
- "repository": {
186
- "type": "git",
187
- "url": "git+ssh://git@github.com/O-Pencil/nanoPencil.git"
188
- },
189
- "homepage": "https://github.com/O-Pencil/nanoPencil"
190
- }
1
+ {
2
+ "name": "@pencil-agent/nano-pencil",
3
+ "version": "2.0.1",
4
+ "description": "CLI writing agent with read, bash, edit, write tools and session management. Supports DashScope and Ali Token Plan. Soul enabled by default for AI personality evolution.",
5
+ "type": "module",
6
+ "bin": {
7
+ "nanopencil": "dist/cli.js"
8
+ },
9
+ "exports": {
10
+ ".": {
11
+ "import": "./dist/index.js",
12
+ "types": "./dist/index.d.ts"
13
+ },
14
+ "./tools": {
15
+ "import": "./dist/tools.js",
16
+ "types": "./dist/tools.d.ts"
17
+ },
18
+ "./runtime": {
19
+ "import": "./dist/runtime.js",
20
+ "types": "./dist/runtime.d.ts"
21
+ },
22
+ "./session": {
23
+ "import": "./dist/session.js",
24
+ "types": "./dist/session.d.ts"
25
+ },
26
+ "./session/compaction": {
27
+ "import": "./dist/session-compaction.js",
28
+ "types": "./dist/session-compaction.d.ts"
29
+ },
30
+ "./config": {
31
+ "import": "./dist/public-config.js",
32
+ "types": "./dist/public-config.d.ts"
33
+ },
34
+ "./models": {
35
+ "import": "./dist/models.js",
36
+ "types": "./dist/models.d.ts"
37
+ },
38
+ "./skills": {
39
+ "import": "./dist/skills.js",
40
+ "types": "./dist/skills.d.ts"
41
+ }
42
+ },
43
+ "files": [
44
+ "dist/**/*.js",
45
+ "dist/**/*.d.ts",
46
+ "dist/**/*.json",
47
+ "dist/**/*.md",
48
+ "dist/**/*.py",
49
+ "dist/**/*.html",
50
+ "dist/**/*.css",
51
+ "docs",
52
+ "LICENSE",
53
+ "README.md"
54
+ ],
55
+ "scripts": {
56
+ "dev": "tsx cli.ts",
57
+ "build": "npm run clean:dist && npm run build:deps && tsc -p tsconfig.build.json && npm run copy:internal-libs && npm run copy:theme:json && npm run copy:assets && npm run build:meta && npm run minify:dist",
58
+ "build:meta": "node scripts/generate-build-meta.js",
59
+ "minify:dist": "node scripts/minify-dist.js",
60
+ "build:release": "npm run generate-models --prefix core/lib/ai && npm run build",
61
+ "build:deps": "node scripts/build-deps.js",
62
+ "clean:dist": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"",
63
+ "copy:theme:json": "node -e \"const fs=require('fs');const p=require('path');const d='dist/modes/interactive/theme';if(!fs.existsSync(d))fs.mkdirSync(d,{recursive:true});fs.readdirSync('modes/interactive/theme').forEach(f=>{if(f.endsWith('.json'))fs.copyFileSync(p.join('modes/interactive/theme',f),p.join(d,f))})\"",
64
+ "copy:internal-libs": "node scripts/copy-internal-libs.js",
65
+ "copy:assets": "node scripts/copy-assets.js",
66
+ "update-models": "npm run generate-models --prefix core/lib/ai",
67
+ "benchmark": "node scripts/startup-benchmark.cjs",
68
+ "benchmark:save": "node scripts/startup-benchmark.cjs --output .benchmarks/baseline.json",
69
+ "benchmark:compare": "node scripts/startup-benchmark.cjs --baseline .benchmarks/baseline.json",
70
+ "scaffold:docs": "node --import tsx scripts/scaffold-feature-docs.ts",
71
+ "verify:dip": "node --import tsx scripts/verify-dip.ts",
72
+ "verify:quality": "node --import tsx scripts/verify-quality.ts",
73
+ "verify:package-boundary": "node --import tsx scripts/verify-package-boundary.ts",
74
+ "verify:package-boundary:dist": "node --import tsx scripts/verify-package-boundary.ts --dist",
75
+ "verify:all": "npm run build:deps && npm run verify:dip && npm run verify:quality && npm run verify:package-boundary && npx tsc --noEmit",
76
+ "wiki:scan": "node --import tsx scripts/llm-wiki.ts scan",
77
+ "wiki:update": "node --import tsx scripts/llm-wiki.ts update",
78
+ "wiki:verify": "node --import tsx scripts/llm-wiki.ts verify",
79
+ "wiki:build": "node --import tsx scripts/llm-wiki.ts build",
80
+ "wiki:all": "node --import tsx scripts/llm-wiki.ts all",
81
+ "watch": "tsc --watch",
82
+ "test:subagent": "node --test --import tsx test/subagent-parser.test.ts test/worktree-manager.test.ts test/bash-sandbox.test.ts",
83
+ "test:team": "node --test --import tsx test/team-parser.test.ts test/team-runtime.test.ts",
84
+ "test:plan": "node --test --import tsx test/plan-mode.test.ts",
85
+ "test:utils": "node --test --import tsx test/logger.test.ts",
86
+ "test:commands": "node --test --import tsx test/slash-command-catalog.test.ts test/extension-command-completions.test.ts test/interactive-slash-command-arguments.test.ts test/rpc-command-catalog.test.ts",
87
+ "test:security": "node --test --import tsx test/security-audit.test.ts",
88
+ "test:tools": "node --test --import tsx test/workspace-write-guard.test.ts test/read-tool.test.ts test/tool-window-validation.test.ts test/bash-sandbox.test.ts",
89
+ "test:presence": "node --test --import tsx test/presence-opening.test.ts",
90
+ "test:interactive-memory-notify": "node --test --import tsx test/interactive-memory-notify.test.ts test/session-manager-header.test.ts",
91
+ "start": "npx cross-env NODE_ENV=production node --no-deprecation dist/cli.js",
92
+ "prepare": "git config core.hooksPath .githooks || true",
93
+ "prepublishOnly": "npm run build:release",
94
+ "changelog": "node scripts/generate-changelog.js",
95
+ "version": "npm run changelog && git add CHANGELOG.md",
96
+ "postversion": "git push",
97
+ "release": "npm version patch && npm publish"
98
+ },
99
+ "keywords": [
100
+ "nanopencil",
101
+ "writing-agent",
102
+ "coding-agent",
103
+ "ai",
104
+ "llm",
105
+ "cli",
106
+ "tui",
107
+ "agent",
108
+ "apikey",
109
+ "dashscope"
110
+ ],
111
+ "license": "GPL-3.0",
112
+ "workspaces": [
113
+ "core/lib/agent-core",
114
+ "core/lib/ai",
115
+ "core/lib/tui",
116
+ "packages/mem-core",
117
+ "packages/soul-core",
118
+ "packages/protocol"
119
+ ],
120
+ "engines": {
121
+ "node": ">=20"
122
+ },
123
+ "dependencies": {
124
+ "@agentclientprotocol/sdk": "^0.16.1",
125
+ "@anthropic-ai/sdk": "^0.73.0",
126
+ "@aws-sdk/client-bedrock-runtime": "^3.983.0",
127
+ "@google/genai": "^1.40.0",
128
+ "@mariozechner/clipboard": "^0.3.2",
129
+ "@mariozechner/jiti": "^2.6.2",
130
+ "@mistralai/mistralai": "1.10.0",
131
+ "@pencil-agent/protocol": "^0.1.0",
132
+ "@pencil-agent/mem-core": "^1.1.2",
133
+ "@pencil-agent/soul-core": "^0.1.0",
134
+ "@silvia-odwyer/photon-node": "^0.3.4",
135
+ "@sinclair/typebox": "^0.34.41",
136
+ "ajv": "^8.17.1",
137
+ "ajv-formats": "^3.0.1",
138
+ "chalk": "^5.5.0",
139
+ "chokidar": "^5.0.0",
140
+ "cli-highlight": "^2.1.11",
141
+ "diff": "^8.0.2",
142
+ "extract-zip": "^2.0.1",
143
+ "file-type": "^21.1.1",
144
+ "get-east-asian-width": "^1.3.0",
145
+ "glob": "^13.0.1",
146
+ "hosted-git-info": "^9.0.2",
147
+ "ignore": "^7.0.5",
148
+ "marked": "^15.0.12",
149
+ "mime-types": "^3.0.1",
150
+ "minimatch": "^10.1.1",
151
+ "openai": "6.10.0",
152
+ "partial-json": "^0.1.7",
153
+ "pdf-lib": "^1.17.1",
154
+ "pdfjs-dist": "^4.0.379",
155
+ "proper-lockfile": "^4.1.2",
156
+ "proxy-agent": "^6.5.0",
157
+ "undici": "^7.19.1",
158
+ "vscode-jsonrpc": "^8.2.1",
159
+ "vscode-languageserver-protocol": "^3.18.0",
160
+ "vscode-languageserver-types": "^3.18.0",
161
+ "yaml": "^2.8.2",
162
+ "zod": "^4.3.6",
163
+ "zod-to-json-schema": "^3.24.6"
164
+ },
165
+ "optionalDependencies": {
166
+ "koffi": "^2.9.0"
167
+ },
168
+ "devDependencies": {
169
+ "@types/hosted-git-info": "^3.0.5",
170
+ "@types/node": "^22.15.0",
171
+ "@types/proper-lockfile": "^4.1.4",
172
+ "cross-env": "^10.1.0",
173
+ "esbuild": "^0.27.3",
174
+ "tsx": "^4.7.0",
175
+ "typescript": "^5.3.3"
176
+ },
177
+ "overrides": {
178
+ "@types/node": "^22.15.0",
179
+ "zod": "^4.3.6"
180
+ },
181
+ "nanopencilConfig": {
182
+ "name": "nanopencil",
183
+ "configDir": ".pencils"
184
+ },
185
+ "repository": {
186
+ "type": "git",
187
+ "url": "git+ssh://git@github.com/O-Pencil/nanoPencil.git"
188
+ },
189
+ "homepage": "https://github.com/O-Pencil/nanoPencil"
190
+ }