@pencil-agent/nano-pencil 1.13.12 → 1.13.14

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 (261) hide show
  1. package/README.md +267 -267
  2. package/dist/build-meta.json +3 -3
  3. package/dist/cli/args.js +140 -140
  4. package/dist/config.d.ts +6 -0
  5. package/dist/config.js +29 -0
  6. package/dist/core/export-html/AGENT.md +11 -11
  7. package/dist/core/export-html/CLAUDE.md +11 -11
  8. package/dist/core/export-html/template.css +971 -971
  9. package/dist/core/export-html/template.html +54 -54
  10. package/dist/core/export-html/template.js +1586 -1586
  11. package/dist/core/export-html/vendor/highlight.min.js +1212 -1212
  12. package/dist/core/export-html/vendor/marked.min.js +6 -6
  13. package/dist/core/mcp/figma-auth.js +20 -20
  14. package/dist/core/mcp/mcp-guidance.js +44 -44
  15. package/dist/core/messages.js +7 -7
  16. package/dist/core/prompt/system-prompt.js +103 -103
  17. package/dist/core/runtime/sdk.js +22 -3
  18. package/dist/core/session/compaction/branch-summarization.js +30 -30
  19. package/dist/core/session/compaction/compaction.js +81 -81
  20. package/dist/core/session/compaction/utils.js +2 -2
  21. package/dist/core/tools/bash.js +9 -2
  22. package/dist/extensions/defaults/AGENT.md +82 -81
  23. package/dist/extensions/defaults/CLAUDE.md +68 -68
  24. package/dist/extensions/defaults/browser/AGENT.md +17 -17
  25. package/dist/extensions/defaults/browser/agent-workspace/agent_helpers.py +12 -0
  26. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/amazon/product-search.md +198 -198
  27. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/archive-org/scraping.md +341 -341
  28. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/arxiv/scraping.md +311 -311
  29. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/arxiv-bulk/scraping.md +333 -333
  30. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/atlas/overview.md +70 -70
  31. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/booking-com/scraping.md +578 -578
  32. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/capterra/scraping.md +440 -440
  33. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/centilebrain/generate-estimates.md +110 -110
  34. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/coingecko/scraping.md +325 -325
  35. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/coinmarketcap/scraping.md +463 -463
  36. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/coursera/scraping.md +360 -360
  37. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/craigslist/scraping.md +390 -390
  38. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/crossref/scraping.md +568 -568
  39. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/dev-to/scraping.md +323 -323
  40. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/duckduckgo/scraping.md +349 -349
  41. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/ebay/scraping.md +435 -435
  42. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/etsy/scraping.md +506 -506
  43. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/eventbrite/scraping.md +363 -363
  44. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/expedia/automation.md +168 -168
  45. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/facebook/groups.md +236 -236
  46. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/facebook/pages.md +295 -295
  47. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/framer/editor.md +108 -108
  48. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/fred/scraping.md +493 -493
  49. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/g2/scraping.md +580 -580
  50. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/genius/scraping.md +511 -511
  51. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/github/repo-actions.md +65 -65
  52. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/github/scraping.md +184 -184
  53. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/glassdoor/scraping.md +543 -543
  54. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/gmail/compose.md +122 -122
  55. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/goodreads/scraping.md +461 -461
  56. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/gutenberg/scraping.md +383 -383
  57. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/hackernews/scraping.md +243 -243
  58. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/howlongtobeat/scraping.md +473 -473
  59. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/imdb/scraping.md +271 -271
  60. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/itch-io/scraping.md +436 -436
  61. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/job-boards/indeed-glassdoor.md +1021 -1021
  62. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/letterboxd/scraping.md +349 -349
  63. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/linkedin/invitation-manager.md +109 -109
  64. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/loom/folder-enumeration.md +170 -170
  65. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/macrotrends/scraping.md +537 -537
  66. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/medium/article-hydration.md +120 -120
  67. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/medium/scraping.md +414 -414
  68. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/metacritic/scraping.md +477 -477
  69. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/musicbrainz/scraping.md +478 -478
  70. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/nasa/scraping.md +339 -339
  71. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/news-aggregation/multi-source.md +205 -205
  72. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/open-library/scraping.md +472 -472
  73. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/openalex/scraping.md +470 -470
  74. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/openstreetmap/scraping.md +490 -490
  75. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/package-registries/npm-pypi.md +478 -478
  76. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/polymarket/scraping.md +234 -234
  77. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/producthunt/scraping.md +307 -307
  78. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/pubmed/scraping.md +421 -421
  79. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/quora/scraping.md +364 -364
  80. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/rawg/scraping.md +352 -352
  81. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/reddit/scraping.md +124 -124
  82. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/rest-countries/scraping.md +233 -233
  83. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/sec-edgar/scraping.md +361 -361
  84. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/shopify-admin/README.md +36 -36
  85. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/shopify-admin/embedded-apps.md +72 -72
  86. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/shopify-admin/knowledge-base.md +109 -109
  87. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/shopify-admin/polaris-inputs.md +137 -137
  88. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/soundcloud/scraping.md +362 -362
  89. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/spotify/scraping.md +339 -339
  90. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/stackoverflow/scraping.md +435 -435
  91. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/steam/scraping.md +575 -575
  92. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/substack/scraping.md +338 -338
  93. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/thetechgeeks/pricing.md +52 -52
  94. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/tiktok/upload.md +107 -107
  95. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/tradingview/scraping.md +309 -309
  96. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/trello/boards-and-lists.md +88 -88
  97. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/trustpilot/scraping.md +375 -375
  98. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/walmart/scraping.md +444 -444
  99. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/wayback-machine/scraping.md +306 -306
  100. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/weather/scraping.md +398 -398
  101. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/wellfound/scraping.md +596 -596
  102. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/world-bank/scraping.md +356 -356
  103. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/xiaohongshu/scraping.md +84 -84
  104. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/youtube/scraping.md +418 -418
  105. package/dist/extensions/defaults/browser/agent-workspace/domain-skills/zillow/scraping.md +433 -433
  106. package/dist/extensions/defaults/browser/browser.md +73 -73
  107. package/dist/extensions/defaults/browser/index.js +10 -9
  108. package/dist/extensions/defaults/browser/install.md +142 -142
  109. package/dist/extensions/defaults/browser/interaction-skills/connection.md +48 -48
  110. package/dist/extensions/defaults/browser/interaction-skills/cookies.md +3 -3
  111. package/dist/extensions/defaults/browser/interaction-skills/cross-origin-iframes.md +3 -3
  112. package/dist/extensions/defaults/browser/interaction-skills/dialogs.md +64 -64
  113. package/dist/extensions/defaults/browser/interaction-skills/downloads.md +3 -3
  114. package/dist/extensions/defaults/browser/interaction-skills/drag-and-drop.md +3 -3
  115. package/dist/extensions/defaults/browser/interaction-skills/dropdowns.md +3 -3
  116. package/dist/extensions/defaults/browser/interaction-skills/iframes.md +3 -3
  117. package/dist/extensions/defaults/browser/interaction-skills/network-requests.md +3 -3
  118. package/dist/extensions/defaults/browser/interaction-skills/print-as-pdf.md +3 -3
  119. package/dist/extensions/defaults/browser/interaction-skills/profile-sync.md +90 -90
  120. package/dist/extensions/defaults/browser/interaction-skills/screenshots.md +17 -17
  121. package/dist/extensions/defaults/browser/interaction-skills/scrolling.md +3 -3
  122. package/dist/extensions/defaults/browser/interaction-skills/shadow-dom.md +3 -3
  123. package/dist/extensions/defaults/browser/interaction-skills/tabs.md +69 -69
  124. package/dist/extensions/defaults/browser/interaction-skills/uploads.md +1 -1
  125. package/dist/extensions/defaults/browser/interaction-skills/viewport.md +3 -3
  126. package/dist/extensions/defaults/browser/src/browser_harness/AGENT.md +15 -15
  127. package/dist/extensions/defaults/browser/src/browser_harness/__init__.py +8 -0
  128. package/dist/extensions/defaults/browser/src/browser_harness/_ipc.py +90 -0
  129. package/dist/extensions/defaults/browser/src/browser_harness/admin.py +722 -0
  130. package/dist/extensions/defaults/browser/src/browser_harness/daemon.py +328 -0
  131. package/dist/extensions/defaults/browser/src/browser_harness/helpers.py +396 -0
  132. package/dist/extensions/defaults/browser/src/browser_harness/run.py +103 -0
  133. package/dist/extensions/defaults/btw/index.js +7 -7
  134. package/dist/extensions/defaults/debug/index.js +30 -30
  135. package/dist/extensions/defaults/diagnostics/reporter.js +2 -1
  136. package/dist/extensions/defaults/grub/README.md +96 -96
  137. package/dist/extensions/defaults/grub/index.js +69 -69
  138. package/dist/extensions/defaults/interview/index.js +66 -66
  139. package/dist/extensions/defaults/link-world/agent-workspace/README.md +16 -16
  140. package/dist/extensions/defaults/link-world/index.js +9 -8
  141. package/dist/extensions/defaults/link-world/internet-search/internet-search.md +65 -65
  142. package/dist/extensions/defaults/link-world/link-world-agent.md +82 -82
  143. package/dist/extensions/defaults/link-world/linkworld.md +313 -313
  144. package/dist/extensions/defaults/link-world/network-routing.md +67 -67
  145. package/dist/extensions/defaults/loop/README.md +92 -92
  146. package/dist/extensions/defaults/loop/skill/SKILL.md +79 -79
  147. package/dist/extensions/defaults/mcp/figma-design.md +68 -68
  148. package/dist/extensions/defaults/mcp/mcp-management.md +85 -85
  149. package/dist/extensions/defaults/plan/plan-agents.js +42 -42
  150. package/dist/extensions/defaults/plan/plan-workflow-prompt.js +47 -47
  151. package/dist/extensions/defaults/sal/README.md +72 -72
  152. package/dist/extensions/defaults/security-audit/README.md +289 -289
  153. package/dist/extensions/defaults/security-audit/engine/interceptor.js +26 -26
  154. package/dist/extensions/defaults/security-audit/engine/logger.js +63 -63
  155. package/dist/extensions/defaults/subagent/subagent-parser.js +14 -14
  156. package/dist/extensions/defaults/team/AGENT.md +110 -105
  157. package/dist/extensions/defaults/team/CLAUDE.md +97 -97
  158. package/dist/extensions/defaults/team/TESTING.md +299 -299
  159. package/dist/extensions/defaults/team/index.js +154 -40
  160. package/dist/extensions/defaults/team/team-dashboard.d.ts +6 -2
  161. package/dist/extensions/defaults/team/team-dashboard.js +65 -90
  162. package/dist/extensions/defaults/team/team-mailbox.d.ts +1 -1
  163. package/dist/extensions/defaults/team/team-orchestrator.d.ts +39 -0
  164. package/dist/extensions/defaults/team/team-orchestrator.js +469 -0
  165. package/dist/extensions/defaults/team/team-parser.js +50 -38
  166. package/dist/extensions/defaults/team/team-permissions.js +6 -2
  167. package/dist/extensions/defaults/team/team-presets.js +107 -51
  168. package/dist/extensions/defaults/team/team-psyche.js +5 -0
  169. package/dist/extensions/defaults/team/team-runtime.d.ts +4 -0
  170. package/dist/extensions/defaults/team/team-runtime.js +124 -8
  171. package/dist/extensions/defaults/team/team-types.d.ts +81 -7
  172. package/dist/extensions/defaults/team/team-types.js +3 -3
  173. package/dist/extensions/optional/AGENT.md +10 -10
  174. package/dist/extensions/optional/CLAUDE.md +10 -10
  175. package/dist/extensions/optional/simplify/index.js +50 -50
  176. package/dist/main.js +34 -34
  177. package/dist/modes/interactive/components/custom-message.d.ts +1 -0
  178. package/dist/modes/interactive/components/custom-message.js +4 -0
  179. package/dist/modes/interactive/interactive-mode.d.ts +1 -0
  180. package/dist/modes/interactive/interactive-mode.js +85 -75
  181. package/dist/modes/interactive/theme/dark.json +85 -85
  182. package/dist/modes/interactive/theme/light.json +84 -84
  183. package/dist/modes/interactive/theme/theme-schema.json +335 -335
  184. package/dist/modes/interactive/theme/warm.json +81 -81
  185. package/dist/nanopencil-defaults.js +21 -21
  186. package/dist/node_modules/@pencil-agent/ai/cli.js +13 -13
  187. package/dist/node_modules/@pencil-agent/ai/models.generated.js +5 -5
  188. package/dist/node_modules/@pencil-agent/ai/utils/oauth/openai-codex.js +10 -10
  189. package/dist/packages/mem-core/cli.js +18 -18
  190. package/dist/packages/mem-core/extraction.js +3 -3
  191. package/dist/packages/mem-core/full-insights-html.js +268 -268
  192. package/dist/packages/mem-core/human-insights.js +49 -49
  193. package/dist/packages/mem-core/i18n.js +244 -244
  194. package/dist/packages/mem-core/insights-html.js +204 -204
  195. 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 +851 -0
  196. package/docs/API/345/257/206/351/222/245/344/277/256/345/244/215/346/200/273/347/273/223.md +147 -147
  197. package/docs/API/345/257/206/351/222/245/345/221/275/344/273/244.md +66 -66
  198. package/docs/API/345/257/206/351/222/245/346/214/207/345/215/227.md +292 -292
  199. package/docs/ARK/347/274/226/347/240/201/350/256/241/345/210/222.md +51 -51
  200. package/docs/AgentTeam/351/207/215/346/236/204/346/226/271/346/241/210.md +446 -446
  201. package/docs/Insight /346/264/236/345/257/237/346/212/245/345/221/212.md" +352 -352
  202. package/docs/InterviewRegression.md +122 -122
  203. package/docs/MCP/345/277/253/351/200/237/345/217/202/350/200/203.md +113 -113
  204. package/docs/MCP/351/233/206/346/210/220/346/214/207/345/215/227.md +255 -255
  205. package/docs/Persona/345/210/207/346/215/242.md +97 -97
  206. package/docs/SAL/345/256/236/351/252/214/350/257/204/344/274/260/346/226/271/345/274/217/357/274/210/344/273/243/347/240/201/345/257/271/346/257/224/344/270/216/345/244/232worktree/357/274/211.md +158 -158
  207. package/docs/SAL/346/200/273/344/275/223/350/267/257/347/272/277/344/270/216/345/256/236/351/252/214/345/244/247/347/272/262.md +213 -213
  208. package/docs/SDK-TESTING.md +364 -0
  209. package/docs/SDK.md +439 -0
  210. package/docs/Simplify/346/211/251/345/261/225.md +277 -277
  211. package/docs/debug-logging.md +148 -148
  212. package/docs/eval/AGENT.md +36 -36
  213. package/docs/eval/README.md +72 -72
  214. package/docs/eval/decision-log-template.md +51 -51
  215. package/docs/eval/experiment-protocol.md +77 -77
  216. package/docs/eval/issue-usage/README.md +32 -32
  217. package/docs/eval/issue-usage/cases.md +31 -31
  218. package/docs/eval/issue-usage/metrics.md +23 -23
  219. package/docs/eval/issue-usage/workflow.md +39 -39
  220. package/docs/eval/sal-memory-anchor/README.md +32 -32
  221. package/docs/eval/sal-memory-anchor/hypothesis.md +45 -45
  222. package/docs/eval/sal-memory-anchor/metrics.md +24 -24
  223. package/docs/eval/sal-memory-anchor/runs.md +29 -29
  224. package/docs/eval/tool-usage-analysis/README.md +32 -32
  225. package/docs/eval/tool-usage-analysis/invalid-data-rules.md +29 -29
  226. package/docs/eval/tool-usage-analysis/metrics.md +35 -35
  227. package/docs/eval/tool-usage-analysis/report-template.md +49 -49
  228. package/docs/eval/tool-usage-analysis/sop.md +63 -63
  229. package/docs/mem-core/346/212/200/346/234/257/346/226/207/346/241/243.md +593 -0
  230. package/docs/startup-performance-optimization.md +301 -0
  231. package/docs//345/206/205/347/275/256MCP/345/267/245/345/205/267.md +326 -326
  232. package/docs//345/215/203/345/270/206/347/274/226/347/240/201/350/256/241/345/210/222.md +52 -52
  233. package/docs//345/215/225/344/275/223/344/273/223/345/272/223/350/207/252/350/277/260.md +189 -189
  234. package/docs//345/215/225/344/275/223/344/273/223/345/272/223/350/277/201/347/247/273/346/214/207/345/215/227.md +232 -232
  235. package/docs//345/217/221/345/270/203/346/214/207/345/215/227.md +129 -129
  236. package/docs//345/217/230/346/233/264/346/200/273/347/273/223.md +138 -138
  237. package/docs//345/217/230/346/233/264/346/227/245/345/277/227.md +50 -50
  238. package/docs//345/267/245/345/205/267/347/256/241/347/220/206/345/231/250/344/274/230/345/214/226.md +208 -208
  239. package/docs//345/276/252/347/216/257/345/221/275/344/273/244/350/256/241/345/210/222.md +56 -56
  240. package/docs//346/226/207/346/241/243/344/270/255/345/277/203.md +140 -140
  241. package/docs//346/236/266/346/236/204/344/274/230/345/214/226.md +404 -404
  242. package/docs//346/236/266/346/236/204/346/274/224/350/277/233.md +228 -228
  243. package/docs//347/211/210/346/234/2542.md +198 -198
  244. package/docs//347/272/263/350/257/272/350/256/260/345/277/206/350/257/273/345/206/231.md +352 -352
  245. package/docs//347/273/223/346/236/204.md +339 -339
  246. package/docs//350/256/241/345/210/222.md +43 -43
  247. package/docs//350/256/244/347/237/245/345/234/260/345/233/276.md +47 -0
  248. package/docs//350/256/244/347/237/245/345/234/260/345/233/276/346/236/266/346/236/204/350/215/211/346/241/210.md +600 -600
  249. package/docs//350/256/260/345/277/206/347/263/273/347/273/237.md +236 -236
  250. package/docs//350/277/201/347/247/273/346/200/273/347/273/223.md +204 -204
  251. package/docs//351/207/215/346/236/204/344/273/273/345/212/241.md +181 -181
  252. package/docs//351/207/215/346/236/204/350/256/241/345/210/222.md +592 -592
  253. package/package.json +134 -133
  254. package/docs/loop /351/207/215/346/236/204/345/256/214/346/210/220/346/200/273/347/273/223.md" +0 -251
  255. package/docs/loop /351/207/215/346/236/204/345/256/214/346/210/220/346/212/245/345/221/212.md" +0 -123
  256. package/docs/loop /351/207/215/346/236/204/346/226/271/346/241/210.md" +0 -1222
  257. 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" +0 -158
  258. 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" +0 -128
  259. package/docs/loop /351/207/215/346/236/204/350/256/241/345/210/222.md" +0 -321
  260. package/docs/loop-usage-examples.md +0 -215
  261. package/docs/planmode.md +0 -1987
package/README.md CHANGED
@@ -1,267 +1,267 @@
1
- <div align="center">
2
-
3
- <pre>
4
- .-~~~~~~~~~-._ _.-~~~~~~~~~-.
5
- __.' ~. .~ `.__
6
- .'// \./ \\`.
7
- .'// | \\`.
8
- .'// .-~""""""""""""""-._ | _,-""""""""""""""~-. \\`.
9
- .'//.-" `-. | .-' "-.\\`.
10
- .'//______.============-.. \ | / ..-============.______\\`.
11
- .'______________________________\|/______________________________`.
12
- </pre>
13
-
14
- <h1>✎ NanoPencil</h1>
15
-
16
- <p><strong>The AI Coding Agent That Remembers & Evolves</strong></p>
17
-
18
- <p>
19
- <a href="https://www.npmjs.com/package/@pencil-agent/nano-pencil">
20
- <img src="https://img.shields.io/npm/v/@pencil-agent/nano-pencil.svg?style=flat-square&color=cb3837" alt="npm version">
21
- </a>
22
- <a href="https://nodejs.org">
23
- <img src="https://img.shields.io/node/v/@pencil-agent/nano-pencil.svg?style=flat-square&color=339933" alt="Node.js">
24
- </a>
25
- <a href="https://www.npmjs.com/package/@pencil-agent/nano-pencil">
26
- <img src="https://img.shields.io/npm/dm/@pencil-agent/nano-pencil.svg?style=flat-square&color=cb3837" alt="Downloads">
27
- </a>
28
- <img src="https://img.shields.io/badge/TypeScript-5.0+-blue?style=flat-square&color=3178C6" alt="TypeScript">
29
- <img src="https://img.shields.io/badge/License-GPL--3.0-green?style=flat-square&color=brightgreen" alt="License">
30
- </p>
31
-
32
- <p>
33
- <a href="#-why-nanopencil">Why NanoPencil?</a> •
34
- <a href="#-features">Features</a> •
35
- <a href="#-quick-start">Quick Start</a> •
36
- <a href="#-documentation">Docs</a>
37
- </p>
38
-
39
- <p>
40
- <a href="./README.md"><img src="https://img.shields.io/badge/English-Active-blue?style=flat-square" alt="English"></a>
41
- <a href="./README_CN.md"><img src="https://img.shields.io/badge/中文-切换-orange?style=flat-square" alt="中文"></a>
42
- </p>
43
-
44
- </div>
45
-
46
- ---
47
-
48
- ## 🌟 Why NanoPencil?
49
-
50
- > **"The only AI coding assistant that truly learns from you"**
51
-
52
- NanoPencil isn't just another AI coding tool. It's a **terminal-native AI agent** with **persistent memory** and **evolving personality** — designed for developers who live in the terminal.
53
-
54
- ### What Makes It Different?
55
-
56
- | | Other Tools | NanoPencil |
57
- |---|---|---|
58
- | **Memory** | ❌ Starts fresh every session | ✅ Remembers your projects, preferences, and coding style |
59
- | **Personality** | ❌ Generic responses | ✅ Evolves a unique personality based on your interactions |
60
- | **Terminal Native** | ❌ GUI wrappers or plugins | ✅ Pure TUI built for terminal workflows |
61
- | **Model Freedom** | ❌ Vendor lock-in | ✅ 10+ providers, switch instantly |
62
- | **Offline Ready** | ❌ Cloud dependent | ✅ Local models via Ollama |
63
-
64
- ---
65
-
66
- ## ✨ Features
67
-
68
- ### 🧠 Persistent Memory (NanoMem)
69
- Your projects have context. So should your AI.
70
-
71
- - **Project Knowledge** — API endpoints, database schemas, architecture decisions
72
- - **Error Patterns** — Remembers bugs and their solutions
73
- - **User Preferences** — Coding style, naming conventions, framework choices
74
- - **Smart Retrieval** — Automatically recalls relevant context when needed
75
-
76
- ### 💫 AI Personality Evolution (NanoSoul)
77
- Your AI assistant develops its own character.
78
-
79
- - **Big Five Traits** — Openness, Conscientiousness, Extraversion, Agreeableness, Neuroticism
80
- - **Coding Style** — Verbosity, abstraction level, safety margins
81
- - **Domain Expertise** — Frontend, Backend, DevOps, AI/ML specializations
82
- - **Emotional States** — Confidence, curiosity, flow state
83
-
84
- > *After 50 sessions, your NanoPencil will code differently than anyone else's.*
85
-
86
- ### 🎨 Beautiful TUI
87
- A terminal interface that feels alive.
88
-
89
- - **Three Themes** — Dark, Light, and Warm (eye-friendly)
90
- - **Smooth Animations** — Breathing pencil loader
91
- - **Intuitive Navigation** — Vim-like keybindings, fuzzy search
92
- - **Real-time Streaming** — Watch the AI think in real-time
93
-
94
- ### 🔌 MCP Protocol Support
95
- Extend with the Model Context Protocol.
96
-
97
- Built-in tools include:
98
- - 📁 Filesystem operations
99
- - 🌐 HTTP requests (Fetch)
100
- - 🎭 Browser automation (Puppeteer)
101
- - 🗄️ Database queries (SQLite)
102
- - 🔧 Git operations
103
-
104
- ### 🌐 Multi-Model Support
105
- Use the best model for each task.
106
-
107
- - 🇨🇳 **Alibaba DashScope / Token Plan** — Qwen, GLM, MiniMax, DeepSeek text models
108
- - 🤖 **OpenAI** — GPT-4, GPT-3.5
109
- - 💬 **Anthropic** — Claude 3 Opus/Sonnet/Haiku
110
- - 🔍 **Google** — Gemini Pro/Ultra
111
- - 🏠 **Local** — Ollama (Qwen, Llama, Mistral, etc.)
112
-
113
- ---
114
-
115
- ## 🚀 Quick Start
116
-
117
- ### Installation
118
-
119
- ```bash
120
- npm install -g @pencil-agent/nano-pencil
121
- ```
122
-
123
- ### First Run
124
-
125
- ```bash
126
- nanopencil
127
- ```
128
-
129
- 1. **Select your model** — Choose from available providers
130
- 2. **Enter API key** — Securely stored in `~/.nanopencil/agent/auth.json`
131
- 3. **Start coding** — Just type what you want to build
132
-
133
- ### Example Session
134
-
135
- ```
136
- You: Create a JWT authentication middleware for Express
137
-
138
- AI: [Analyzing project structure...]
139
- [Creating auth.middleware.ts...]
140
- [Adding TypeScript types...]
141
- [Writing tests...]
142
-
143
- ✅ Done! Created:
144
- - src/middleware/auth.middleware.ts
145
- - src/types/auth.d.ts
146
- - tests/auth.middleware.test.ts
147
-
148
- Features:
149
- • JWT verification with RS256
150
- • Refresh token rotation
151
- • Role-based access control
152
- • Rate limiting integration
153
- ```
154
-
155
- ---
156
-
157
- ## 🎮 Usage
158
-
159
- ### Interactive Mode
160
-
161
- ```bash
162
- nanopencil # Start new session
163
- nanopencil -c # Continue last session
164
- nanopencil -r # Resume from history
165
- nanopencil -m qwen-max # Use specific model
166
- ```
167
-
168
- ### Print Mode (Scripts)
169
-
170
- ```bash
171
- # Single query
172
- nanopencil -p "Refactor this to use async/await"
173
-
174
- # Pipe input
175
- cat bug-report.md | nanopencil -p "Analyze this bug"
176
-
177
- # Chain commands
178
- nanopencil -p "Generate API" | nanopencil -p "Write tests for it"
179
- ```
180
-
181
- ### Slash Commands
182
-
183
- | Command | Description |
184
- |---------|-------------|
185
- | `/model` | Switch AI model |
186
- | `/thinking` | Adjust reasoning depth |
187
- | `/fork` | Branch conversation |
188
- | `/tree` | Browse session history |
189
- | `/memory` | View project memories |
190
- | `/soul` | Check AI personality |
191
- | `/settings` | Configure preferences |
192
- | `/export` | Save as HTML |
193
-
194
- ---
195
-
196
- ## 📊 Comparison
197
-
198
- | Feature | NanoPencil | Cursor | Claude Code | Aider |
199
- |---------|:----------:|:------:|:-----------:|:-----:|
200
- | Terminal Native | ✅ | ❌ | ✅ | ✅ |
201
- | Persistent Memory | ✅ | ❌ | ❌ | ❌ |
202
- | AI Personality | ✅ | ❌ | ❌ | ❌ |
203
- | Session Branching | ✅ | ✅ | ✅ | ❌ |
204
- | Multi-Model | ✅ | ✅ | ❌ | ✅ |
205
- | MCP Support | ✅ | ❌ | ✅ | ❌ |
206
- | Offline Mode | ✅ | ❌ | ❌ | ✅ |
207
- | Chinese Optimized | ✅ | ❌ | ❌ | ❌ |
208
-
209
- ---
210
-
211
- ## 🏗️ Architecture Philosophy
212
-
213
- NanoPencil is built on three pillars:
214
-
215
- ```
216
- ┌─────────────────────────────────────────┐
217
- │ 🧠 COGNITIVE LAYER │
218
- │ (Memory + Personality + Context) │
219
- ├─────────────────────────────────────────┤
220
- │ 🔧 TOOL LAYER │
221
- │ (File Ops + Bash + Search + MCP) │
222
- ├─────────────────────────────────────────┤
223
- │ 🎨 INTERFACE LAYER │
224
- │ (TUI + Themes + Keybindings) │
225
- └─────────────────────────────────────────┘
226
- ```
227
-
228
- **Design Principles:**
229
- - **Terminal First** — No Electron, no browser, pure terminal
230
- - **Privacy First** — Local storage, no telemetry, your data stays yours
231
- - **Extensible** — Plugin system for tools, themes, and behaviors
232
- - **Fast** — Sub-second startup, instant response
233
-
234
- ---
235
-
236
- ## 📚 Documentation
237
-
238
- - [Installation Guide](docs/INSTALL.md)
239
- - [Configuration](docs/CONFIG.md)
240
- - [Memory System](docs/记忆系统.md)
241
- - [MCP Guide](docs/MCP集成指南.md)
242
- - [Keybindings](docs/KEYBINDINGS.md)
243
- - [Extensions](docs/EXTENSIONS.md)
244
-
245
- ---
246
-
247
- ## 🌍 Community
248
-
249
- - 💬 [Discussions](https://github.com/pencil-agent/nano-pencil/discussions)
250
- - 🐛 [Issues](https://github.com/pencil-agent/nano-pencil/issues)
251
- - 📝 [Changelog](CHANGELOG.md)
252
-
253
- ---
254
-
255
- ## 📄 License
256
-
257
- MIT © [Pencil Agent](https://github.com/pencil-agent)
258
-
259
- ---
260
-
261
- <div align="center">
262
-
263
- **[⬆ Back to Top](#-nanopencil)**
264
-
265
- <sub>Built with ❤️ for terminal dwellers everywhere</sub>
266
-
267
- </div>
1
+ <div align="center">
2
+
3
+ <pre>
4
+ .-~~~~~~~~~-._ _.-~~~~~~~~~-.
5
+ __.' ~. .~ `.__
6
+ .'// \./ \\`.
7
+ .'// | \\`.
8
+ .'// .-~""""""""""""""-._ | _,-""""""""""""""~-. \\`.
9
+ .'//.-" `-. | .-' "-.\\`.
10
+ .'//______.============-.. \ | / ..-============.______\\`.
11
+ .'______________________________\|/______________________________`.
12
+ </pre>
13
+
14
+ <h1>✎ NanoPencil</h1>
15
+
16
+ <p><strong>The AI Coding Agent That Remembers & Evolves</strong></p>
17
+
18
+ <p>
19
+ <a href="https://www.npmjs.com/package/@pencil-agent/nano-pencil">
20
+ <img src="https://img.shields.io/npm/v/@pencil-agent/nano-pencil.svg?style=flat-square&color=cb3837" alt="npm version">
21
+ </a>
22
+ <a href="https://nodejs.org">
23
+ <img src="https://img.shields.io/node/v/@pencil-agent/nano-pencil.svg?style=flat-square&color=339933" alt="Node.js">
24
+ </a>
25
+ <a href="https://www.npmjs.com/package/@pencil-agent/nano-pencil">
26
+ <img src="https://img.shields.io/npm/dm/@pencil-agent/nano-pencil.svg?style=flat-square&color=cb3837" alt="Downloads">
27
+ </a>
28
+ <img src="https://img.shields.io/badge/TypeScript-5.0+-blue?style=flat-square&color=3178C6" alt="TypeScript">
29
+ <img src="https://img.shields.io/badge/License-GPL--3.0-green?style=flat-square&color=brightgreen" alt="License">
30
+ </p>
31
+
32
+ <p>
33
+ <a href="#-why-nanopencil">Why NanoPencil?</a> •
34
+ <a href="#-features">Features</a> •
35
+ <a href="#-quick-start">Quick Start</a> •
36
+ <a href="#-documentation">Docs</a>
37
+ </p>
38
+
39
+ <p>
40
+ <a href="./README.md"><img src="https://img.shields.io/badge/English-Active-blue?style=flat-square" alt="English"></a>
41
+ <a href="./README_CN.md"><img src="https://img.shields.io/badge/中文-切换-orange?style=flat-square" alt="中文"></a>
42
+ </p>
43
+
44
+ </div>
45
+
46
+ ---
47
+
48
+ ## 🌟 Why NanoPencil?
49
+
50
+ > **"The only AI coding assistant that truly learns from you"**
51
+
52
+ NanoPencil isn't just another AI coding tool. It's a **terminal-native AI agent** with **persistent memory** and **evolving personality** — designed for developers who live in the terminal.
53
+
54
+ ### What Makes It Different?
55
+
56
+ | | Other Tools | NanoPencil |
57
+ |---|---|---|
58
+ | **Memory** | ❌ Starts fresh every session | ✅ Remembers your projects, preferences, and coding style |
59
+ | **Personality** | ❌ Generic responses | ✅ Evolves a unique personality based on your interactions |
60
+ | **Terminal Native** | ❌ GUI wrappers or plugins | ✅ Pure TUI built for terminal workflows |
61
+ | **Model Freedom** | ❌ Vendor lock-in | ✅ 10+ providers, switch instantly |
62
+ | **Offline Ready** | ❌ Cloud dependent | ✅ Local models via Ollama |
63
+
64
+ ---
65
+
66
+ ## ✨ Features
67
+
68
+ ### 🧠 Persistent Memory (NanoMem)
69
+ Your projects have context. So should your AI.
70
+
71
+ - **Project Knowledge** — API endpoints, database schemas, architecture decisions
72
+ - **Error Patterns** — Remembers bugs and their solutions
73
+ - **User Preferences** — Coding style, naming conventions, framework choices
74
+ - **Smart Retrieval** — Automatically recalls relevant context when needed
75
+
76
+ ### 💫 AI Personality Evolution (NanoSoul)
77
+ Your AI assistant develops its own character.
78
+
79
+ - **Big Five Traits** — Openness, Conscientiousness, Extraversion, Agreeableness, Neuroticism
80
+ - **Coding Style** — Verbosity, abstraction level, safety margins
81
+ - **Domain Expertise** — Frontend, Backend, DevOps, AI/ML specializations
82
+ - **Emotional States** — Confidence, curiosity, flow state
83
+
84
+ > *After 50 sessions, your NanoPencil will code differently than anyone else's.*
85
+
86
+ ### 🎨 Beautiful TUI
87
+ A terminal interface that feels alive.
88
+
89
+ - **Three Themes** — Dark, Light, and Warm (eye-friendly)
90
+ - **Smooth Animations** — Breathing pencil loader
91
+ - **Intuitive Navigation** — Vim-like keybindings, fuzzy search
92
+ - **Real-time Streaming** — Watch the AI think in real-time
93
+
94
+ ### 🔌 MCP Protocol Support
95
+ Extend with the Model Context Protocol.
96
+
97
+ Built-in tools include:
98
+ - 📁 Filesystem operations
99
+ - 🌐 HTTP requests (Fetch)
100
+ - 🎭 Browser automation (Puppeteer)
101
+ - 🗄️ Database queries (SQLite)
102
+ - 🔧 Git operations
103
+
104
+ ### 🌐 Multi-Model Support
105
+ Use the best model for each task.
106
+
107
+ - 🇨🇳 **Alibaba DashScope / Token Plan** — Qwen, GLM, MiniMax, DeepSeek text models
108
+ - 🤖 **OpenAI** — GPT-4, GPT-3.5
109
+ - 💬 **Anthropic** — Claude 3 Opus/Sonnet/Haiku
110
+ - 🔍 **Google** — Gemini Pro/Ultra
111
+ - 🏠 **Local** — Ollama (Qwen, Llama, Mistral, etc.)
112
+
113
+ ---
114
+
115
+ ## 🚀 Quick Start
116
+
117
+ ### Installation
118
+
119
+ ```bash
120
+ npm install -g @pencil-agent/nano-pencil
121
+ ```
122
+
123
+ ### First Run
124
+
125
+ ```bash
126
+ nanopencil
127
+ ```
128
+
129
+ 1. **Select your model** — Choose from available providers
130
+ 2. **Enter API key** — Securely stored in `~/.nanopencil/agent/auth.json`
131
+ 3. **Start coding** — Just type what you want to build
132
+
133
+ ### Example Session
134
+
135
+ ```
136
+ You: Create a JWT authentication middleware for Express
137
+
138
+ AI: [Analyzing project structure...]
139
+ [Creating auth.middleware.ts...]
140
+ [Adding TypeScript types...]
141
+ [Writing tests...]
142
+
143
+ ✅ Done! Created:
144
+ - src/middleware/auth.middleware.ts
145
+ - src/types/auth.d.ts
146
+ - tests/auth.middleware.test.ts
147
+
148
+ Features:
149
+ • JWT verification with RS256
150
+ • Refresh token rotation
151
+ • Role-based access control
152
+ • Rate limiting integration
153
+ ```
154
+
155
+ ---
156
+
157
+ ## 🎮 Usage
158
+
159
+ ### Interactive Mode
160
+
161
+ ```bash
162
+ nanopencil # Start new session
163
+ nanopencil -c # Continue last session
164
+ nanopencil -r # Resume from history
165
+ nanopencil -m qwen-max # Use specific model
166
+ ```
167
+
168
+ ### Print Mode (Scripts)
169
+
170
+ ```bash
171
+ # Single query
172
+ nanopencil -p "Refactor this to use async/await"
173
+
174
+ # Pipe input
175
+ cat bug-report.md | nanopencil -p "Analyze this bug"
176
+
177
+ # Chain commands
178
+ nanopencil -p "Generate API" | nanopencil -p "Write tests for it"
179
+ ```
180
+
181
+ ### Slash Commands
182
+
183
+ | Command | Description |
184
+ |---------|-------------|
185
+ | `/model` | Switch AI model |
186
+ | `/thinking` | Adjust reasoning depth |
187
+ | `/fork` | Branch conversation |
188
+ | `/tree` | Browse session history |
189
+ | `/memory` | View project memories |
190
+ | `/soul` | Check AI personality |
191
+ | `/settings` | Configure preferences |
192
+ | `/export` | Save as HTML |
193
+
194
+ ---
195
+
196
+ ## 📊 Comparison
197
+
198
+ | Feature | NanoPencil | Cursor | Claude Code | Aider |
199
+ |---------|:----------:|:------:|:-----------:|:-----:|
200
+ | Terminal Native | ✅ | ❌ | ✅ | ✅ |
201
+ | Persistent Memory | ✅ | ❌ | ❌ | ❌ |
202
+ | AI Personality | ✅ | ❌ | ❌ | ❌ |
203
+ | Session Branching | ✅ | ✅ | ✅ | ❌ |
204
+ | Multi-Model | ✅ | ✅ | ❌ | ✅ |
205
+ | MCP Support | ✅ | ❌ | ✅ | ❌ |
206
+ | Offline Mode | ✅ | ❌ | ❌ | ✅ |
207
+ | Chinese Optimized | ✅ | ❌ | ❌ | ❌ |
208
+
209
+ ---
210
+
211
+ ## 🏗️ Architecture Philosophy
212
+
213
+ NanoPencil is built on three pillars:
214
+
215
+ ```
216
+ ┌─────────────────────────────────────────┐
217
+ │ 🧠 COGNITIVE LAYER │
218
+ │ (Memory + Personality + Context) │
219
+ ├─────────────────────────────────────────┤
220
+ │ 🔧 TOOL LAYER │
221
+ │ (File Ops + Bash + Search + MCP) │
222
+ ├─────────────────────────────────────────┤
223
+ │ 🎨 INTERFACE LAYER │
224
+ │ (TUI + Themes + Keybindings) │
225
+ └─────────────────────────────────────────┘
226
+ ```
227
+
228
+ **Design Principles:**
229
+ - **Terminal First** — No Electron, no browser, pure terminal
230
+ - **Privacy First** — Local storage, no telemetry, your data stays yours
231
+ - **Extensible** — Plugin system for tools, themes, and behaviors
232
+ - **Fast** — Sub-second startup, instant response
233
+
234
+ ---
235
+
236
+ ## 📚 Documentation
237
+
238
+ - [Installation Guide](docs/INSTALL.md)
239
+ - [Configuration](docs/CONFIG.md)
240
+ - [Memory System](docs/记忆系统.md)
241
+ - [MCP Guide](docs/MCP集成指南.md)
242
+ - [Keybindings](docs/KEYBINDINGS.md)
243
+ - [Extensions](docs/EXTENSIONS.md)
244
+
245
+ ---
246
+
247
+ ## 🌍 Community
248
+
249
+ - 💬 [Discussions](https://github.com/pencil-agent/nano-pencil/discussions)
250
+ - 🐛 [Issues](https://github.com/pencil-agent/nano-pencil/issues)
251
+ - 📝 [Changelog](CHANGELOG.md)
252
+
253
+ ---
254
+
255
+ ## 📄 License
256
+
257
+ MIT © [Pencil Agent](https://github.com/pencil-agent)
258
+
259
+ ---
260
+
261
+ <div align="center">
262
+
263
+ **[⬆ Back to Top](#-nanopencil)**
264
+
265
+ <sub>Built with ❤️ for terminal dwellers everywhere</sub>
266
+
267
+ </div>
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "1.13.12",
3
- "commitHash": "6398d50",
2
+ "version": "1.13.14",
3
+ "commitHash": "286bbc7",
4
4
  "branch": "main",
5
- "builtAt": "2026-05-02T10:48:42.017Z"
5
+ "builtAt": "2026-05-03T13:26:35.416Z"
6
6
  }