cc-viewer 1.2.1 → 1.2.2

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 (493) hide show
  1. package/README.md +3 -1
  2. package/cli.js +7 -0
  3. package/concepts/ar/BodyDiffJSON.md +32 -0
  4. package/concepts/ar/CacheRebuild.md +40 -0
  5. package/concepts/ar/MainAgent.md +30 -0
  6. package/concepts/ar/Tool-AskUserQuestion.md +54 -0
  7. package/concepts/ar/Tool-Bash.md +47 -0
  8. package/concepts/ar/Tool-Edit.md +38 -0
  9. package/concepts/ar/Tool-EnterPlanMode.md +43 -0
  10. package/concepts/ar/Tool-ExitPlanMode.md +39 -0
  11. package/concepts/ar/Tool-Glob.md +34 -0
  12. package/concepts/ar/Tool-Grep.md +47 -0
  13. package/concepts/ar/Tool-NotebookEdit.md +33 -0
  14. package/concepts/ar/Tool-Read.md +41 -0
  15. package/concepts/ar/Tool-Skill.md +35 -0
  16. package/concepts/ar/Tool-Task.md +53 -0
  17. package/concepts/ar/Tool-TaskCreate.md +38 -0
  18. package/concepts/ar/Tool-TaskGet.md +35 -0
  19. package/concepts/ar/Tool-TaskList.md +36 -0
  20. package/concepts/ar/Tool-TaskOutput.md +34 -0
  21. package/concepts/ar/Tool-TaskStop.md +27 -0
  22. package/concepts/ar/Tool-TaskUpdate.md +49 -0
  23. package/concepts/ar/Tool-WebFetch.md +36 -0
  24. package/concepts/ar/Tool-WebSearch.md +32 -0
  25. package/concepts/ar/Tool-Write.md +32 -0
  26. package/concepts/ar/Tool-executeCode.md +33 -0
  27. package/concepts/ar/Tool-getDiagnostics.md +32 -0
  28. package/concepts/ar/Tools.md +73 -0
  29. package/concepts/ar/TranslateContextPollution.md +46 -0
  30. package/concepts/da/BodyDiffJSON.md +32 -0
  31. package/concepts/da/CacheRebuild.md +40 -0
  32. package/concepts/da/MainAgent.md +30 -0
  33. package/concepts/da/Tool-AskUserQuestion.md +54 -0
  34. package/concepts/da/Tool-Bash.md +47 -0
  35. package/concepts/da/Tool-Edit.md +38 -0
  36. package/concepts/da/Tool-EnterPlanMode.md +43 -0
  37. package/concepts/da/Tool-ExitPlanMode.md +39 -0
  38. package/concepts/da/Tool-Glob.md +34 -0
  39. package/concepts/da/Tool-Grep.md +47 -0
  40. package/concepts/da/Tool-NotebookEdit.md +33 -0
  41. package/concepts/da/Tool-Read.md +41 -0
  42. package/concepts/da/Tool-Skill.md +35 -0
  43. package/concepts/da/Tool-Task.md +53 -0
  44. package/concepts/da/Tool-TaskCreate.md +38 -0
  45. package/concepts/da/Tool-TaskGet.md +35 -0
  46. package/concepts/da/Tool-TaskList.md +36 -0
  47. package/concepts/da/Tool-TaskOutput.md +34 -0
  48. package/concepts/da/Tool-TaskStop.md +27 -0
  49. package/concepts/da/Tool-TaskUpdate.md +49 -0
  50. package/concepts/da/Tool-WebFetch.md +36 -0
  51. package/concepts/da/Tool-WebSearch.md +32 -0
  52. package/concepts/da/Tool-Write.md +32 -0
  53. package/concepts/da/Tool-executeCode.md +33 -0
  54. package/concepts/da/Tool-getDiagnostics.md +32 -0
  55. package/concepts/da/Tools.md +73 -0
  56. package/concepts/da/TranslateContextPollution.md +46 -0
  57. package/concepts/de/BodyDiffJSON.md +32 -0
  58. package/concepts/de/CacheRebuild.md +40 -0
  59. package/concepts/de/MainAgent.md +30 -0
  60. package/concepts/de/Tool-AskUserQuestion.md +54 -0
  61. package/concepts/de/Tool-Bash.md +47 -0
  62. package/concepts/de/Tool-Edit.md +38 -0
  63. package/concepts/de/Tool-EnterPlanMode.md +43 -0
  64. package/concepts/de/Tool-ExitPlanMode.md +39 -0
  65. package/concepts/de/Tool-Glob.md +34 -0
  66. package/concepts/de/Tool-Grep.md +47 -0
  67. package/concepts/de/Tool-NotebookEdit.md +33 -0
  68. package/concepts/de/Tool-Read.md +41 -0
  69. package/concepts/de/Tool-Skill.md +35 -0
  70. package/concepts/de/Tool-Task.md +53 -0
  71. package/concepts/de/Tool-TaskCreate.md +38 -0
  72. package/concepts/de/Tool-TaskGet.md +35 -0
  73. package/concepts/de/Tool-TaskList.md +36 -0
  74. package/concepts/de/Tool-TaskOutput.md +34 -0
  75. package/concepts/de/Tool-TaskStop.md +27 -0
  76. package/concepts/de/Tool-TaskUpdate.md +49 -0
  77. package/concepts/de/Tool-WebFetch.md +36 -0
  78. package/concepts/de/Tool-WebSearch.md +32 -0
  79. package/concepts/de/Tool-Write.md +32 -0
  80. package/concepts/de/Tool-executeCode.md +33 -0
  81. package/concepts/de/Tool-getDiagnostics.md +32 -0
  82. package/concepts/de/Tools.md +73 -0
  83. package/concepts/de/TranslateContextPollution.md +46 -0
  84. package/concepts/en/BodyDiffJSON.md +32 -0
  85. package/concepts/en/CacheRebuild.md +40 -0
  86. package/concepts/en/MainAgent.md +30 -0
  87. package/concepts/en/Tool-AskUserQuestion.md +54 -0
  88. package/concepts/en/Tool-Bash.md +47 -0
  89. package/concepts/en/Tool-Edit.md +38 -0
  90. package/concepts/en/Tool-EnterPlanMode.md +43 -0
  91. package/concepts/en/Tool-ExitPlanMode.md +39 -0
  92. package/concepts/en/Tool-Glob.md +34 -0
  93. package/concepts/en/Tool-Grep.md +47 -0
  94. package/concepts/en/Tool-NotebookEdit.md +33 -0
  95. package/concepts/en/Tool-Read.md +41 -0
  96. package/concepts/en/Tool-Skill.md +35 -0
  97. package/concepts/en/Tool-Task.md +53 -0
  98. package/concepts/en/Tool-TaskCreate.md +38 -0
  99. package/concepts/en/Tool-TaskGet.md +35 -0
  100. package/concepts/en/Tool-TaskList.md +36 -0
  101. package/concepts/en/Tool-TaskOutput.md +34 -0
  102. package/concepts/en/Tool-TaskStop.md +27 -0
  103. package/concepts/en/Tool-TaskUpdate.md +49 -0
  104. package/concepts/en/Tool-WebFetch.md +36 -0
  105. package/concepts/en/Tool-WebSearch.md +32 -0
  106. package/concepts/en/Tool-Write.md +32 -0
  107. package/concepts/en/Tool-executeCode.md +33 -0
  108. package/concepts/en/Tool-getDiagnostics.md +32 -0
  109. package/concepts/en/Tools.md +73 -0
  110. package/concepts/en/TranslateContextPollution.md +46 -0
  111. package/concepts/es/BodyDiffJSON.md +32 -0
  112. package/concepts/es/CacheRebuild.md +40 -0
  113. package/concepts/es/MainAgent.md +30 -0
  114. package/concepts/es/Tool-AskUserQuestion.md +54 -0
  115. package/concepts/es/Tool-Bash.md +47 -0
  116. package/concepts/es/Tool-Edit.md +38 -0
  117. package/concepts/es/Tool-EnterPlanMode.md +43 -0
  118. package/concepts/es/Tool-ExitPlanMode.md +39 -0
  119. package/concepts/es/Tool-Glob.md +34 -0
  120. package/concepts/es/Tool-Grep.md +47 -0
  121. package/concepts/es/Tool-NotebookEdit.md +33 -0
  122. package/concepts/es/Tool-Read.md +41 -0
  123. package/concepts/es/Tool-Skill.md +35 -0
  124. package/concepts/es/Tool-Task.md +53 -0
  125. package/concepts/es/Tool-TaskCreate.md +38 -0
  126. package/concepts/es/Tool-TaskGet.md +35 -0
  127. package/concepts/es/Tool-TaskList.md +36 -0
  128. package/concepts/es/Tool-TaskOutput.md +34 -0
  129. package/concepts/es/Tool-TaskStop.md +27 -0
  130. package/concepts/es/Tool-TaskUpdate.md +49 -0
  131. package/concepts/es/Tool-WebFetch.md +36 -0
  132. package/concepts/es/Tool-WebSearch.md +32 -0
  133. package/concepts/es/Tool-Write.md +32 -0
  134. package/concepts/es/Tool-executeCode.md +33 -0
  135. package/concepts/es/Tool-getDiagnostics.md +32 -0
  136. package/concepts/es/Tools.md +73 -0
  137. package/concepts/es/TranslateContextPollution.md +46 -0
  138. package/concepts/fr/BodyDiffJSON.md +32 -0
  139. package/concepts/fr/CacheRebuild.md +40 -0
  140. package/concepts/fr/MainAgent.md +30 -0
  141. package/concepts/fr/Tool-AskUserQuestion.md +54 -0
  142. package/concepts/fr/Tool-Bash.md +47 -0
  143. package/concepts/fr/Tool-Edit.md +38 -0
  144. package/concepts/fr/Tool-EnterPlanMode.md +43 -0
  145. package/concepts/fr/Tool-ExitPlanMode.md +39 -0
  146. package/concepts/fr/Tool-Glob.md +34 -0
  147. package/concepts/fr/Tool-Grep.md +47 -0
  148. package/concepts/fr/Tool-NotebookEdit.md +33 -0
  149. package/concepts/fr/Tool-Read.md +41 -0
  150. package/concepts/fr/Tool-Skill.md +35 -0
  151. package/concepts/fr/Tool-Task.md +53 -0
  152. package/concepts/fr/Tool-TaskCreate.md +38 -0
  153. package/concepts/fr/Tool-TaskGet.md +35 -0
  154. package/concepts/fr/Tool-TaskList.md +36 -0
  155. package/concepts/fr/Tool-TaskOutput.md +34 -0
  156. package/concepts/fr/Tool-TaskStop.md +27 -0
  157. package/concepts/fr/Tool-TaskUpdate.md +49 -0
  158. package/concepts/fr/Tool-WebFetch.md +36 -0
  159. package/concepts/fr/Tool-WebSearch.md +32 -0
  160. package/concepts/fr/Tool-Write.md +32 -0
  161. package/concepts/fr/Tool-executeCode.md +33 -0
  162. package/concepts/fr/Tool-getDiagnostics.md +32 -0
  163. package/concepts/fr/Tools.md +73 -0
  164. package/concepts/fr/TranslateContextPollution.md +46 -0
  165. package/concepts/it/BodyDiffJSON.md +32 -0
  166. package/concepts/it/CacheRebuild.md +40 -0
  167. package/concepts/it/MainAgent.md +30 -0
  168. package/concepts/it/Tool-AskUserQuestion.md +54 -0
  169. package/concepts/it/Tool-Bash.md +47 -0
  170. package/concepts/it/Tool-Edit.md +38 -0
  171. package/concepts/it/Tool-EnterPlanMode.md +43 -0
  172. package/concepts/it/Tool-ExitPlanMode.md +39 -0
  173. package/concepts/it/Tool-Glob.md +34 -0
  174. package/concepts/it/Tool-Grep.md +47 -0
  175. package/concepts/it/Tool-NotebookEdit.md +33 -0
  176. package/concepts/it/Tool-Read.md +41 -0
  177. package/concepts/it/Tool-Skill.md +35 -0
  178. package/concepts/it/Tool-Task.md +53 -0
  179. package/concepts/it/Tool-TaskCreate.md +38 -0
  180. package/concepts/it/Tool-TaskGet.md +35 -0
  181. package/concepts/it/Tool-TaskList.md +36 -0
  182. package/concepts/it/Tool-TaskOutput.md +34 -0
  183. package/concepts/it/Tool-TaskStop.md +27 -0
  184. package/concepts/it/Tool-TaskUpdate.md +49 -0
  185. package/concepts/it/Tool-WebFetch.md +36 -0
  186. package/concepts/it/Tool-WebSearch.md +32 -0
  187. package/concepts/it/Tool-Write.md +32 -0
  188. package/concepts/it/Tool-executeCode.md +33 -0
  189. package/concepts/it/Tool-getDiagnostics.md +32 -0
  190. package/concepts/it/Tools.md +73 -0
  191. package/concepts/it/TranslateContextPollution.md +46 -0
  192. package/concepts/ja/BodyDiffJSON.md +32 -0
  193. package/concepts/ja/CacheRebuild.md +40 -0
  194. package/concepts/ja/MainAgent.md +30 -0
  195. package/concepts/ja/Tool-AskUserQuestion.md +54 -0
  196. package/concepts/ja/Tool-Bash.md +47 -0
  197. package/concepts/ja/Tool-Edit.md +38 -0
  198. package/concepts/ja/Tool-EnterPlanMode.md +43 -0
  199. package/concepts/ja/Tool-ExitPlanMode.md +39 -0
  200. package/concepts/ja/Tool-Glob.md +34 -0
  201. package/concepts/ja/Tool-Grep.md +47 -0
  202. package/concepts/ja/Tool-NotebookEdit.md +33 -0
  203. package/concepts/ja/Tool-Read.md +41 -0
  204. package/concepts/ja/Tool-Skill.md +35 -0
  205. package/concepts/ja/Tool-Task.md +53 -0
  206. package/concepts/ja/Tool-TaskCreate.md +38 -0
  207. package/concepts/ja/Tool-TaskGet.md +35 -0
  208. package/concepts/ja/Tool-TaskList.md +36 -0
  209. package/concepts/ja/Tool-TaskOutput.md +34 -0
  210. package/concepts/ja/Tool-TaskStop.md +27 -0
  211. package/concepts/ja/Tool-TaskUpdate.md +49 -0
  212. package/concepts/ja/Tool-WebFetch.md +36 -0
  213. package/concepts/ja/Tool-WebSearch.md +32 -0
  214. package/concepts/ja/Tool-Write.md +32 -0
  215. package/concepts/ja/Tool-executeCode.md +33 -0
  216. package/concepts/ja/Tool-getDiagnostics.md +32 -0
  217. package/concepts/ja/Tools.md +73 -0
  218. package/concepts/ja/TranslateContextPollution.md +46 -0
  219. package/concepts/ko/BodyDiffJSON.md +32 -0
  220. package/concepts/ko/CacheRebuild.md +40 -0
  221. package/concepts/ko/MainAgent.md +30 -0
  222. package/concepts/ko/Tool-AskUserQuestion.md +54 -0
  223. package/concepts/ko/Tool-Bash.md +47 -0
  224. package/concepts/ko/Tool-Edit.md +38 -0
  225. package/concepts/ko/Tool-EnterPlanMode.md +43 -0
  226. package/concepts/ko/Tool-ExitPlanMode.md +39 -0
  227. package/concepts/ko/Tool-Glob.md +34 -0
  228. package/concepts/ko/Tool-Grep.md +47 -0
  229. package/concepts/ko/Tool-NotebookEdit.md +33 -0
  230. package/concepts/ko/Tool-Read.md +41 -0
  231. package/concepts/ko/Tool-Skill.md +35 -0
  232. package/concepts/ko/Tool-Task.md +53 -0
  233. package/concepts/ko/Tool-TaskCreate.md +38 -0
  234. package/concepts/ko/Tool-TaskGet.md +35 -0
  235. package/concepts/ko/Tool-TaskList.md +36 -0
  236. package/concepts/ko/Tool-TaskOutput.md +34 -0
  237. package/concepts/ko/Tool-TaskStop.md +27 -0
  238. package/concepts/ko/Tool-TaskUpdate.md +49 -0
  239. package/concepts/ko/Tool-WebFetch.md +36 -0
  240. package/concepts/ko/Tool-WebSearch.md +32 -0
  241. package/concepts/ko/Tool-Write.md +32 -0
  242. package/concepts/ko/Tool-executeCode.md +33 -0
  243. package/concepts/ko/Tool-getDiagnostics.md +32 -0
  244. package/concepts/ko/Tools.md +73 -0
  245. package/concepts/ko/TranslateContextPollution.md +46 -0
  246. package/concepts/no/BodyDiffJSON.md +32 -0
  247. package/concepts/no/CacheRebuild.md +40 -0
  248. package/concepts/no/MainAgent.md +30 -0
  249. package/concepts/no/Tool-AskUserQuestion.md +54 -0
  250. package/concepts/no/Tool-Bash.md +47 -0
  251. package/concepts/no/Tool-Edit.md +38 -0
  252. package/concepts/no/Tool-EnterPlanMode.md +43 -0
  253. package/concepts/no/Tool-ExitPlanMode.md +39 -0
  254. package/concepts/no/Tool-Glob.md +34 -0
  255. package/concepts/no/Tool-Grep.md +47 -0
  256. package/concepts/no/Tool-NotebookEdit.md +33 -0
  257. package/concepts/no/Tool-Read.md +41 -0
  258. package/concepts/no/Tool-Skill.md +35 -0
  259. package/concepts/no/Tool-Task.md +53 -0
  260. package/concepts/no/Tool-TaskCreate.md +38 -0
  261. package/concepts/no/Tool-TaskGet.md +35 -0
  262. package/concepts/no/Tool-TaskList.md +36 -0
  263. package/concepts/no/Tool-TaskOutput.md +34 -0
  264. package/concepts/no/Tool-TaskStop.md +27 -0
  265. package/concepts/no/Tool-TaskUpdate.md +49 -0
  266. package/concepts/no/Tool-WebFetch.md +36 -0
  267. package/concepts/no/Tool-WebSearch.md +32 -0
  268. package/concepts/no/Tool-Write.md +32 -0
  269. package/concepts/no/Tool-executeCode.md +33 -0
  270. package/concepts/no/Tool-getDiagnostics.md +32 -0
  271. package/concepts/no/Tools.md +73 -0
  272. package/concepts/no/TranslateContextPollution.md +46 -0
  273. package/concepts/pl/BodyDiffJSON.md +32 -0
  274. package/concepts/pl/CacheRebuild.md +40 -0
  275. package/concepts/pl/MainAgent.md +30 -0
  276. package/concepts/pl/Tool-AskUserQuestion.md +54 -0
  277. package/concepts/pl/Tool-Bash.md +47 -0
  278. package/concepts/pl/Tool-Edit.md +38 -0
  279. package/concepts/pl/Tool-EnterPlanMode.md +43 -0
  280. package/concepts/pl/Tool-ExitPlanMode.md +39 -0
  281. package/concepts/pl/Tool-Glob.md +34 -0
  282. package/concepts/pl/Tool-Grep.md +47 -0
  283. package/concepts/pl/Tool-NotebookEdit.md +33 -0
  284. package/concepts/pl/Tool-Read.md +41 -0
  285. package/concepts/pl/Tool-Skill.md +35 -0
  286. package/concepts/pl/Tool-Task.md +53 -0
  287. package/concepts/pl/Tool-TaskCreate.md +38 -0
  288. package/concepts/pl/Tool-TaskGet.md +35 -0
  289. package/concepts/pl/Tool-TaskList.md +36 -0
  290. package/concepts/pl/Tool-TaskOutput.md +34 -0
  291. package/concepts/pl/Tool-TaskStop.md +27 -0
  292. package/concepts/pl/Tool-TaskUpdate.md +49 -0
  293. package/concepts/pl/Tool-WebFetch.md +36 -0
  294. package/concepts/pl/Tool-WebSearch.md +32 -0
  295. package/concepts/pl/Tool-Write.md +32 -0
  296. package/concepts/pl/Tool-executeCode.md +33 -0
  297. package/concepts/pl/Tool-getDiagnostics.md +32 -0
  298. package/concepts/pl/Tools.md +73 -0
  299. package/concepts/pl/TranslateContextPollution.md +46 -0
  300. package/concepts/pt-BR/BodyDiffJSON.md +32 -0
  301. package/concepts/pt-BR/CacheRebuild.md +40 -0
  302. package/concepts/pt-BR/MainAgent.md +30 -0
  303. package/concepts/pt-BR/Tool-AskUserQuestion.md +54 -0
  304. package/concepts/pt-BR/Tool-Bash.md +47 -0
  305. package/concepts/pt-BR/Tool-Edit.md +38 -0
  306. package/concepts/pt-BR/Tool-EnterPlanMode.md +43 -0
  307. package/concepts/pt-BR/Tool-ExitPlanMode.md +39 -0
  308. package/concepts/pt-BR/Tool-Glob.md +34 -0
  309. package/concepts/pt-BR/Tool-Grep.md +47 -0
  310. package/concepts/pt-BR/Tool-NotebookEdit.md +33 -0
  311. package/concepts/pt-BR/Tool-Read.md +41 -0
  312. package/concepts/pt-BR/Tool-Skill.md +35 -0
  313. package/concepts/pt-BR/Tool-Task.md +53 -0
  314. package/concepts/pt-BR/Tool-TaskCreate.md +38 -0
  315. package/concepts/pt-BR/Tool-TaskGet.md +35 -0
  316. package/concepts/pt-BR/Tool-TaskList.md +36 -0
  317. package/concepts/pt-BR/Tool-TaskOutput.md +34 -0
  318. package/concepts/pt-BR/Tool-TaskStop.md +27 -0
  319. package/concepts/pt-BR/Tool-TaskUpdate.md +49 -0
  320. package/concepts/pt-BR/Tool-WebFetch.md +36 -0
  321. package/concepts/pt-BR/Tool-WebSearch.md +32 -0
  322. package/concepts/pt-BR/Tool-Write.md +32 -0
  323. package/concepts/pt-BR/Tool-executeCode.md +33 -0
  324. package/concepts/pt-BR/Tool-getDiagnostics.md +32 -0
  325. package/concepts/pt-BR/Tools.md +73 -0
  326. package/concepts/pt-BR/TranslateContextPollution.md +46 -0
  327. package/concepts/ru/BodyDiffJSON.md +32 -0
  328. package/concepts/ru/CacheRebuild.md +40 -0
  329. package/concepts/ru/MainAgent.md +30 -0
  330. package/concepts/ru/Tool-AskUserQuestion.md +54 -0
  331. package/concepts/ru/Tool-Bash.md +47 -0
  332. package/concepts/ru/Tool-Edit.md +38 -0
  333. package/concepts/ru/Tool-EnterPlanMode.md +43 -0
  334. package/concepts/ru/Tool-ExitPlanMode.md +39 -0
  335. package/concepts/ru/Tool-Glob.md +34 -0
  336. package/concepts/ru/Tool-Grep.md +47 -0
  337. package/concepts/ru/Tool-NotebookEdit.md +33 -0
  338. package/concepts/ru/Tool-Read.md +41 -0
  339. package/concepts/ru/Tool-Skill.md +35 -0
  340. package/concepts/ru/Tool-Task.md +53 -0
  341. package/concepts/ru/Tool-TaskCreate.md +38 -0
  342. package/concepts/ru/Tool-TaskGet.md +35 -0
  343. package/concepts/ru/Tool-TaskList.md +36 -0
  344. package/concepts/ru/Tool-TaskOutput.md +34 -0
  345. package/concepts/ru/Tool-TaskStop.md +27 -0
  346. package/concepts/ru/Tool-TaskUpdate.md +49 -0
  347. package/concepts/ru/Tool-WebFetch.md +36 -0
  348. package/concepts/ru/Tool-WebSearch.md +32 -0
  349. package/concepts/ru/Tool-Write.md +32 -0
  350. package/concepts/ru/Tool-executeCode.md +33 -0
  351. package/concepts/ru/Tool-getDiagnostics.md +32 -0
  352. package/concepts/ru/Tools.md +73 -0
  353. package/concepts/ru/TranslateContextPollution.md +46 -0
  354. package/concepts/th/BodyDiffJSON.md +32 -0
  355. package/concepts/th/CacheRebuild.md +40 -0
  356. package/concepts/th/MainAgent.md +30 -0
  357. package/concepts/th/Tool-AskUserQuestion.md +54 -0
  358. package/concepts/th/Tool-Bash.md +47 -0
  359. package/concepts/th/Tool-Edit.md +38 -0
  360. package/concepts/th/Tool-EnterPlanMode.md +43 -0
  361. package/concepts/th/Tool-ExitPlanMode.md +39 -0
  362. package/concepts/th/Tool-Glob.md +34 -0
  363. package/concepts/th/Tool-Grep.md +47 -0
  364. package/concepts/th/Tool-NotebookEdit.md +33 -0
  365. package/concepts/th/Tool-Read.md +41 -0
  366. package/concepts/th/Tool-Skill.md +35 -0
  367. package/concepts/th/Tool-Task.md +53 -0
  368. package/concepts/th/Tool-TaskCreate.md +38 -0
  369. package/concepts/th/Tool-TaskGet.md +35 -0
  370. package/concepts/th/Tool-TaskList.md +36 -0
  371. package/concepts/th/Tool-TaskOutput.md +34 -0
  372. package/concepts/th/Tool-TaskStop.md +27 -0
  373. package/concepts/th/Tool-TaskUpdate.md +49 -0
  374. package/concepts/th/Tool-WebFetch.md +36 -0
  375. package/concepts/th/Tool-WebSearch.md +32 -0
  376. package/concepts/th/Tool-Write.md +32 -0
  377. package/concepts/th/Tool-executeCode.md +33 -0
  378. package/concepts/th/Tool-getDiagnostics.md +32 -0
  379. package/concepts/th/Tools.md +73 -0
  380. package/concepts/th/TranslateContextPollution.md +46 -0
  381. package/concepts/tr/BodyDiffJSON.md +32 -0
  382. package/concepts/tr/CacheRebuild.md +40 -0
  383. package/concepts/tr/MainAgent.md +30 -0
  384. package/concepts/tr/Tool-AskUserQuestion.md +54 -0
  385. package/concepts/tr/Tool-Bash.md +47 -0
  386. package/concepts/tr/Tool-Edit.md +38 -0
  387. package/concepts/tr/Tool-EnterPlanMode.md +43 -0
  388. package/concepts/tr/Tool-ExitPlanMode.md +39 -0
  389. package/concepts/tr/Tool-Glob.md +34 -0
  390. package/concepts/tr/Tool-Grep.md +47 -0
  391. package/concepts/tr/Tool-NotebookEdit.md +33 -0
  392. package/concepts/tr/Tool-Read.md +41 -0
  393. package/concepts/tr/Tool-Skill.md +35 -0
  394. package/concepts/tr/Tool-Task.md +53 -0
  395. package/concepts/tr/Tool-TaskCreate.md +38 -0
  396. package/concepts/tr/Tool-TaskGet.md +35 -0
  397. package/concepts/tr/Tool-TaskList.md +36 -0
  398. package/concepts/tr/Tool-TaskOutput.md +34 -0
  399. package/concepts/tr/Tool-TaskStop.md +27 -0
  400. package/concepts/tr/Tool-TaskUpdate.md +49 -0
  401. package/concepts/tr/Tool-WebFetch.md +36 -0
  402. package/concepts/tr/Tool-WebSearch.md +32 -0
  403. package/concepts/tr/Tool-Write.md +32 -0
  404. package/concepts/tr/Tool-executeCode.md +33 -0
  405. package/concepts/tr/Tool-getDiagnostics.md +32 -0
  406. package/concepts/tr/Tools.md +73 -0
  407. package/concepts/tr/TranslateContextPollution.md +46 -0
  408. package/concepts/uk/BodyDiffJSON.md +32 -0
  409. package/concepts/uk/CacheRebuild.md +40 -0
  410. package/concepts/uk/MainAgent.md +30 -0
  411. package/concepts/uk/Tool-AskUserQuestion.md +54 -0
  412. package/concepts/uk/Tool-Bash.md +47 -0
  413. package/concepts/uk/Tool-Edit.md +38 -0
  414. package/concepts/uk/Tool-EnterPlanMode.md +43 -0
  415. package/concepts/uk/Tool-ExitPlanMode.md +39 -0
  416. package/concepts/uk/Tool-Glob.md +34 -0
  417. package/concepts/uk/Tool-Grep.md +47 -0
  418. package/concepts/uk/Tool-NotebookEdit.md +33 -0
  419. package/concepts/uk/Tool-Read.md +41 -0
  420. package/concepts/uk/Tool-Skill.md +35 -0
  421. package/concepts/uk/Tool-Task.md +53 -0
  422. package/concepts/uk/Tool-TaskCreate.md +38 -0
  423. package/concepts/uk/Tool-TaskGet.md +35 -0
  424. package/concepts/uk/Tool-TaskList.md +36 -0
  425. package/concepts/uk/Tool-TaskOutput.md +34 -0
  426. package/concepts/uk/Tool-TaskStop.md +27 -0
  427. package/concepts/uk/Tool-TaskUpdate.md +49 -0
  428. package/concepts/uk/Tool-WebFetch.md +36 -0
  429. package/concepts/uk/Tool-WebSearch.md +32 -0
  430. package/concepts/uk/Tool-Write.md +32 -0
  431. package/concepts/uk/Tool-executeCode.md +33 -0
  432. package/concepts/uk/Tool-getDiagnostics.md +32 -0
  433. package/concepts/uk/Tools.md +73 -0
  434. package/concepts/uk/TranslateContextPollution.md +46 -0
  435. package/concepts/zh/BodyDiffJSON.md +32 -0
  436. package/concepts/zh/CacheRebuild.md +40 -0
  437. package/concepts/zh/MainAgent.md +30 -0
  438. package/concepts/zh/Tool-AskUserQuestion.md +54 -0
  439. package/concepts/zh/Tool-Bash.md +47 -0
  440. package/concepts/zh/Tool-Edit.md +38 -0
  441. package/concepts/zh/Tool-EnterPlanMode.md +43 -0
  442. package/concepts/zh/Tool-ExitPlanMode.md +39 -0
  443. package/concepts/zh/Tool-Glob.md +34 -0
  444. package/concepts/zh/Tool-Grep.md +47 -0
  445. package/concepts/zh/Tool-NotebookEdit.md +33 -0
  446. package/concepts/zh/Tool-Read.md +41 -0
  447. package/concepts/zh/Tool-Skill.md +35 -0
  448. package/concepts/zh/Tool-Task.md +53 -0
  449. package/concepts/zh/Tool-TaskCreate.md +38 -0
  450. package/concepts/zh/Tool-TaskGet.md +35 -0
  451. package/concepts/zh/Tool-TaskList.md +36 -0
  452. package/concepts/zh/Tool-TaskOutput.md +34 -0
  453. package/concepts/zh/Tool-TaskStop.md +27 -0
  454. package/concepts/zh/Tool-TaskUpdate.md +49 -0
  455. package/concepts/zh/Tool-WebFetch.md +36 -0
  456. package/concepts/zh/Tool-WebSearch.md +32 -0
  457. package/concepts/zh/Tool-Write.md +32 -0
  458. package/concepts/zh/Tool-executeCode.md +33 -0
  459. package/concepts/zh/Tool-getDiagnostics.md +32 -0
  460. package/concepts/zh/Tools.md +73 -0
  461. package/concepts/zh/TranslateContextPollution.md +47 -0
  462. package/concepts/zh-TW/BodyDiffJSON.md +32 -0
  463. package/concepts/zh-TW/CacheRebuild.md +40 -0
  464. package/concepts/zh-TW/MainAgent.md +30 -0
  465. package/concepts/zh-TW/Tool-AskUserQuestion.md +54 -0
  466. package/concepts/zh-TW/Tool-Bash.md +47 -0
  467. package/concepts/zh-TW/Tool-Edit.md +38 -0
  468. package/concepts/zh-TW/Tool-EnterPlanMode.md +43 -0
  469. package/concepts/zh-TW/Tool-ExitPlanMode.md +39 -0
  470. package/concepts/zh-TW/Tool-Glob.md +34 -0
  471. package/concepts/zh-TW/Tool-Grep.md +47 -0
  472. package/concepts/zh-TW/Tool-NotebookEdit.md +33 -0
  473. package/concepts/zh-TW/Tool-Read.md +41 -0
  474. package/concepts/zh-TW/Tool-Skill.md +35 -0
  475. package/concepts/zh-TW/Tool-Task.md +53 -0
  476. package/concepts/zh-TW/Tool-TaskCreate.md +38 -0
  477. package/concepts/zh-TW/Tool-TaskGet.md +35 -0
  478. package/concepts/zh-TW/Tool-TaskList.md +36 -0
  479. package/concepts/zh-TW/Tool-TaskOutput.md +34 -0
  480. package/concepts/zh-TW/Tool-TaskStop.md +27 -0
  481. package/concepts/zh-TW/Tool-TaskUpdate.md +49 -0
  482. package/concepts/zh-TW/Tool-WebFetch.md +36 -0
  483. package/concepts/zh-TW/Tool-WebSearch.md +32 -0
  484. package/concepts/zh-TW/Tool-Write.md +32 -0
  485. package/concepts/zh-TW/Tool-executeCode.md +33 -0
  486. package/concepts/zh-TW/Tool-getDiagnostics.md +32 -0
  487. package/concepts/zh-TW/Tools.md +73 -0
  488. package/concepts/zh-TW/TranslateContextPollution.md +46 -0
  489. package/dist/assets/{index-DjCjusqk.js → index-CSuPDSgh.js} +45 -45
  490. package/dist/index.html +1 -1
  491. package/interceptor.js +19 -4
  492. package/package.json +3 -2
  493. package/server.js +15 -14
@@ -0,0 +1,33 @@
1
+ # executeCode (mcp__ide__executeCode)
2
+
3
+ ## Définition
4
+
5
+ Exécute du code Python dans le kernel Jupyter du fichier notebook actuel.
6
+
7
+ ## Paramètres
8
+
9
+ | Paramètre | Type | Requis | Description |
10
+ |-----------|------|--------|-------------|
11
+ | `code` | string | Oui | Code Python à exécuter |
12
+
13
+ ## Cas d'utilisation
14
+
15
+ **Adapté pour :**
16
+ - Exécuter du code dans un environnement Jupyter notebook
17
+ - Tester des extraits de code
18
+ - Analyse de données et calculs
19
+
20
+ **Non adapté pour :**
21
+ - Exécution de code hors environnement Jupyter — utiliser Bash
22
+ - Modifier des fichiers — utiliser Edit ou Write
23
+
24
+ ## Notes
25
+
26
+ - C'est un outil MCP (Model Context Protocol), fourni par l'intégration IDE
27
+ - Le code s'exécute dans le kernel Jupyter actuel, l'état persiste entre les appels
28
+ - Sauf demande explicite de l'utilisateur, éviter de déclarer des variables ou de modifier l'état du kernel
29
+ - L'état est perdu au redémarrage du kernel
30
+
31
+ ## Signification dans cc-viewer
32
+
33
+ executeCode est un outil MCP qui apparaît dans le tableau `tools` du journal des requêtes sous le nom `mcp__ide__executeCode`. Ses appels et retours suivent le modèle standard `tool_use` / `tool_result`. L'ajout/suppression d'outils MCP entraîne des changements dans le tableau tools, ce qui peut déclencher la reconstruction du cache.
@@ -0,0 +1,32 @@
1
+ # getDiagnostics (mcp__ide__getDiagnostics)
2
+
3
+ ## Définition
4
+
5
+ Obtient les informations de diagnostic du langage depuis VS Code, incluant les erreurs de syntaxe, erreurs de type, avertissements de lint, etc.
6
+
7
+ ## Paramètres
8
+
9
+ | Paramètre | Type | Requis | Description |
10
+ |-----------|------|--------|-------------|
11
+ | `uri` | string | Non | URI du fichier. Si non fourni, obtient les informations de diagnostic de tous les fichiers |
12
+
13
+ ## Cas d'utilisation
14
+
15
+ **Adapté pour :**
16
+ - Vérifier les problèmes sémantiques de syntaxe, types, lint, etc. du code
17
+ - Vérifier si de nouvelles erreurs ont été introduites après l'édition du code
18
+ - Remplacer les commandes Bash pour vérifier la qualité du code
19
+
20
+ **Non adapté pour :**
21
+ - Exécuter des tests — utiliser Bash
22
+ - Vérifier les erreurs d'exécution — utiliser Bash pour exécuter le code
23
+
24
+ ## Notes
25
+
26
+ - C'est un outil MCP (Model Context Protocol), fourni par l'intégration IDE
27
+ - Disponible uniquement dans les environnements VS Code / IDE
28
+ - Préférer cet outil aux commandes Bash pour vérifier les problèmes de code
29
+
30
+ ## Signification dans cc-viewer
31
+
32
+ getDiagnostics est un outil MCP qui apparaît dans le tableau `tools` du journal des requêtes sous le nom `mcp__ide__getDiagnostics`. Ses appels et retours suivent le modèle standard `tool_use` / `tool_result`. L'ajout/suppression d'outils MCP entraîne des changements dans le tableau tools, ce qui peut déclencher la reconstruction du cache.
@@ -0,0 +1,73 @@
1
+ # Vue d'ensemble des outils Claude Code
2
+
3
+ Claude Code fournit au modèle un ensemble d'outils intégrés via le mécanisme tool_use de l'API Anthropic. Chaque requête MainAgent inclut les définitions complètes en JSON Schema de ces outils dans le tableau `tools`, et le modèle les invoque via des content blocks `tool_use` dans la réponse.
4
+
5
+ Voici l'index classifié de tous les outils.
6
+
7
+ ## Système d'Agents
8
+
9
+ | Outil | Utilité |
10
+ |-------|---------|
11
+ | [Task](Tool-Task.md) | Lancer un sous-agent (SubAgent) pour gérer des tâches complexes multi-étapes |
12
+ | [TaskOutput](Tool-TaskOutput.md) | Obtenir la sortie des tâches en arrière-plan |
13
+ | [TaskStop](Tool-TaskStop.md) | Arrêter une tâche en arrière-plan en cours d'exécution |
14
+ | [TaskCreate](Tool-TaskCreate.md) | Créer une entrée dans la liste de tâches structurée |
15
+ | [TaskGet](Tool-TaskGet.md) | Obtenir les détails d'une tâche |
16
+ | [TaskUpdate](Tool-TaskUpdate.md) | Mettre à jour le statut, les dépendances, etc. d'une tâche |
17
+ | [TaskList](Tool-TaskList.md) | Lister toutes les tâches |
18
+
19
+ ## Opérations sur les fichiers
20
+
21
+ | Outil | Utilité |
22
+ |-------|---------|
23
+ | [Read](Tool-Read.md) | Lire le contenu de fichiers (supporte texte, images, PDF, Jupyter notebook) |
24
+ | [Edit](Tool-Edit.md) | Éditer des fichiers par remplacement exact de chaînes |
25
+ | [Write](Tool-Write.md) | Écrire ou écraser des fichiers |
26
+ | [NotebookEdit](Tool-NotebookEdit.md) | Éditer des cellules de Jupyter notebook |
27
+
28
+ ## Recherche
29
+
30
+ | Outil | Utilité |
31
+ |-------|---------|
32
+ | [Glob](Tool-Glob.md) | Rechercher des fichiers par correspondance de motifs de noms |
33
+ | [Grep](Tool-Grep.md) | Recherche de contenu de fichiers basée sur ripgrep |
34
+
35
+ ## Terminal
36
+
37
+ | Outil | Utilité |
38
+ |-------|---------|
39
+ | [Bash](Tool-Bash.md) | Exécuter des commandes shell |
40
+
41
+ ## Web
42
+
43
+ | Outil | Utilité |
44
+ |-------|---------|
45
+ | [WebFetch](Tool-WebFetch.md) | Récupérer du contenu web et le traiter avec l'IA |
46
+ | [WebSearch](Tool-WebSearch.md) | Requêtes sur les moteurs de recherche |
47
+
48
+ ## Planification et interaction
49
+
50
+ | Outil | Utilité |
51
+ |-------|---------|
52
+ | [EnterPlanMode](Tool-EnterPlanMode.md) | Entrer en mode planification pour concevoir un plan d'implémentation |
53
+ | [ExitPlanMode](Tool-ExitPlanMode.md) | Quitter le mode planification et soumettre le plan pour approbation de l'utilisateur |
54
+ | [AskUserQuestion](Tool-AskUserQuestion.md) | Poser des questions à l'utilisateur pour obtenir des clarifications ou des décisions |
55
+
56
+ ## Extensions
57
+
58
+ | Outil | Utilité |
59
+ |-------|---------|
60
+ | [Skill](Tool-Skill.md) | Exécuter une compétence (slash command) |
61
+
62
+ ## Intégration IDE
63
+
64
+ | Outil | Utilité |
65
+ |-------|---------|
66
+ | [getDiagnostics](Tool-getDiagnostics.md) | Obtenir les informations de diagnostic du langage de VS Code |
67
+ | [executeCode](Tool-executeCode.md) | Exécuter du code dans le kernel Jupyter |
68
+
69
+ ## Signification dans cc-viewer
70
+
71
+ Les appels d'outils sont l'une des données observables les plus importantes dans les journaux de requêtes de Claude Code. Le tableau `tools` de chaque requête MainAgent définit l'ensemble des outils disponibles pour le modèle, tandis que les content blocks `tool_use` / `tool_result` dans la réponse enregistrent les appels réels aux outils et leurs retours. cc-viewer analyse ces données pour reconstruire la chaîne complète d'appels d'outils dans le Chat Mode.
72
+
73
+ Les changements dans les définitions d'outils (comme l'ajout/suppression d'outils par connexion/déconnexion de MCP server) déclenchent la reconstruction du cache, voir [CacheRebuild](CacheRebuild.md).
@@ -0,0 +1,46 @@
1
+ # Pollution de contexte de l'API de traduction
2
+
3
+ ## Contexte
4
+
5
+ CC-Viewer intègre une fonctionnalité de traduction (`POST /api/translate`) alimentée par l'API Messages d'Anthropic. Dans l'implémentation initiale, les requêtes de traduction réutilisaient les identifiants d'authentification mis en cache de la session Claude Code — incluant les en-têtes `x-api-key` et `authorization`. Cela a provoqué un problème subtil mais grave : les résultats de traduction renvoyaient fréquemment du contenu sans rapport.
6
+
7
+ ## Cause profonde
8
+
9
+ ### Différence fondamentale entre les deux méthodes d'authentification
10
+
11
+ L'API Anthropic prend en charge deux méthodes d'authentification :
12
+
13
+ | Méthode | En-tête | Source typique | Caractéristiques |
14
+ |---------|---------|----------------|------------------|
15
+ | Clé API | `x-api-key: sk-ant-...` | Variable d'environnement / Console | Sans état, chaque requête est indépendante |
16
+ | Jeton OAuth | `authorization: Bearer sessionToken` | Connexion par abonnement Claude Code | Lié à la session, le serveur maintient l'association de contexte |
17
+
18
+ La différence clé : **les clés API sont sans état** — chaque requête est complètement indépendante ; tandis que **les jetons de session OAuth sont avec état** — le serveur Anthropic associe les requêtes utilisant le même jeton au même contexte de session.
19
+
20
+ ### Chaîne de pollution
21
+
22
+ Lorsque Claude Code utilise la connexion OAuth par abonnement, le flux d'authentification se présente ainsi :
23
+
24
+ ```
25
+ Conversation principale Claude Code ──(authorization: Bearer sessionToken)──→ Anthropic API
26
+
27
+ Requête de traduction CC-Viewer ──(authorization: Bearer sessionToken)──→ Anthropic API
28
+ ```
29
+
30
+ Étant donné que les requêtes de traduction réutilisaient le même jeton de session, le serveur Anthropic pouvait associer les requêtes de traduction au contexte de la conversation principale de Claude Code. Cela entraîne :
31
+
32
+ 1. **Les résultats de traduction sont influencés par le contexte de la conversation principale** : Le prompt système de la requête de traduction est « vous êtes un traducteur », mais le contexte serveur contient toujours l'historique de conversation de Claude Code, ce qui peut interférer avec le modèle
33
+ 2. **La conversation principale est perturbée par les requêtes de traduction** : Le contenu des requêtes de traduction (fragments de texte d'interface) peut être injecté dans le contexte de la conversation principale, provoquant des déviations dans les réponses de Claude Code
34
+ 3. **Comportement imprévisible** : La pollution de contexte étant un comportement côté serveur, le client ne peut ni la détecter ni la contrôler
35
+
36
+ ## Leçons retenues
37
+
38
+ - **Les jetons de session OAuth ne sont pas « juste une autre clé API »** — ils portent un état côté serveur, les réutiliser signifie partager le contexte
39
+ - **Les appels de services internes doivent utiliser une authentification indépendante et sans état** pour éviter toute association avec les sessions utilisateur
40
+
41
+ ## Références
42
+
43
+ - [Anthropic API Authentication Docs](https://docs.anthropic.com/en/api/getting-started)
44
+ - [Claude Code Authentication](https://support.claude.com/en/articles/12304248-managing-api-key-environment-variables-in-claude-code)
45
+ - [Anthropic Bans Subscription OAuth in Third-Party Apps](https://winbuzzer.com/2026/02/19/anthropic-bans-claude-subscription-oauth-in-third-party-apps-xcxwbn/)
46
+ - [Claude Code Authentication: API Keys, Subscriptions, and SSO](https://developertoolkit.ai/en/claude-code/quick-start/authentication/)
@@ -0,0 +1,32 @@
1
+ # Body Diff JSON (confronto incrementale del corpo della richiesta)
2
+
3
+ ## Contesto
4
+
5
+ Il MainAgent di Claude Code utilizza un meccanismo di invio del contesto completo: ogni richiesta include l'intera cronologia della conversazione, il system prompt, le definizioni degli strumenti, ecc. Ciò significa che, man mano che la conversazione procede, il corpo della richiesta diventa sempre più grande, rendendo difficile individuare rapidamente "cosa è stato aggiunto in questo turno" esaminando il Body grezzo.
6
+
7
+ Body Diff JSON è stato creato proprio per risolvere questo problema: confronta automaticamente i body di due richieste MainAgent consecutive, estraendo la parte incrementale, permettendoti di vedere a colpo d'occhio il contenuto effettivamente aggiunto in questa richiesta.
8
+
9
+ ## Come funziona
10
+
11
+ 1. **Identificazione delle richieste MainAgent consecutive**: la richiesta corrente deve essere di tipo MainAgent e deve esistere una richiesta MainAgent precedente
12
+ 2. **Confronto campo per campo**: vengono esaminati tutti i campi di primo livello del corpo della richiesta, saltando le proprietà interne con prefisso `_`
13
+ 3. **Estrazione intelligente delle differenze**:
14
+ - Campi aggiunti: mostrati direttamente
15
+ - Campi rimossi: non mostrati (generalmente non influenzano la comprensione)
16
+ - Campi modificati: viene mostrato il valore corrente
17
+ - Trattamento speciale dell'array `messages`: vengono mostrati solo i messaggi aggiunti (poiché in una conversazione normale i messaggi vengono accodati e il prefisso rimane invariato)
18
+ 4. **Rilevamento della riduzione del corpo**: se il corpo della richiesta corrente è più piccolo del precedente, significa che si è verificato un troncamento del contesto o un reset della sessione; in tal caso viene mostrato un messaggio informativo anziché il diff
19
+
20
+ ## Scenari tipici
21
+
22
+ In un turno di conversazione normale, il Body Diff JSON contiene solitamente solo:
23
+ - `messages`: 1~2 messaggi aggiunti (l'input dell'utente + la risposta dell'assistente del turno precedente)
24
+
25
+ Se nel diff compaiono modifiche a campi come `system`, `tools`, `model`, significa che in questo turno si è verificata una modifica della configurazione, che spesso è anche la causa della ricostruzione della cache.
26
+
27
+ ## Modalità d'uso
28
+
29
+ - Il Body Diff JSON viene mostrato nel pannello dei dettagli della richiesta MainAgent
30
+ - Clicca sul titolo per espandere/comprimere
31
+ - Supporta due modalità di visualizzazione, JSON e Text, oltre alla copia con un clic
32
+ - In alto a sinistra, in **CC-Viewer → Impostazioni globali**, puoi impostare "Espandi Body Diff JSON per impostazione predefinita"
@@ -0,0 +1,40 @@
1
+ # Cache Rebuild (ricostruzione della cache)
2
+
3
+ ## Contesto
4
+
5
+ Il meccanismo di prompt caching di Anthropic concatena in sequenza system → tools → messages (fino al cache breakpoint) della richiesta come chiave di cache. Quando la chiave di cache corrisponde esattamente alla richiesta precedente, l'API restituisce `cache_read_input_tokens` (cache hit); quando la chiave di cache cambia, l'API ricrea la cache, restituendo un gran numero di `cache_creation_input_tokens`, ovvero una ricostruzione della cache.
6
+
7
+ La ricostruzione della cache comporta costi aggiuntivi di token (il prezzo della cache creation è superiore a quello della cache read), pertanto identificare la causa della ricostruzione ha un valore diretto per l'ottimizzazione dei costi.
8
+
9
+ ## Classificazione delle cause di ricostruzione della cache
10
+
11
+ cc-viewer confronta i body di due richieste MainAgent consecutive per determinare con precisione la causa della ricostruzione della cache:
12
+
13
+ | reason | Significato | Metodo di determinazione |
14
+ |--------|------|----------|
15
+ | `ttl` | Cache scaduta | Sono trascorsi più di 5 minuti dall'ultima richiesta MainAgent |
16
+ | `system_change` | Modifica del system prompt | `JSON.stringify(prev.system) !== JSON.stringify(curr.system)` |
17
+ | `tools_change` | Modifica delle definizioni degli strumenti | `JSON.stringify(prev.tools) !== JSON.stringify(curr.tools)` |
18
+ | `model_change` | Cambio di modello | `prev.model !== curr.model` |
19
+ | `msg_truncated` | Stack dei messaggi troncato | Il numero di messaggi della richiesta corrente è inferiore a quello della richiesta precedente, solitamente causato dal troncamento per overflow della finestra di contesto |
20
+ | `msg_modified` | Modifica dei messaggi storici | Il contenuto dei messaggi prefisso non è coerente (durante l'accodamento normale il prefisso dovrebbe essere identico) |
21
+ | `key_change` | Modifica di chiave sconosciuta | Fallback quando nessuna delle condizioni precedenti corrisponde |
22
+
23
+ ## Priorità di determinazione
24
+
25
+ 1. Prima si controlla l'intervallo di tempo — se supera i 5 minuti, si determina direttamente `ttl`, senza confronto del body
26
+ 2. Poi si controllano in sequenza model, system, tools, messages
27
+ 3. Una richiesta può corrispondere a più cause contemporaneamente (es. cambio di modello + modifica del system prompt); in tal caso l'array `reasons` contiene tutti gli elementi corrispondenti e il tooltip li mostra su righe separate
28
+
29
+ ## Scenari comuni
30
+
31
+ - **`ttl`**: l'utente ha interrotto le operazioni per più di 5 minuti e poi ha ripreso, la cache è scaduta naturalmente
32
+ - **`system_change`**: Claude Code ha aggiornato il system prompt (es. caricamento di un nuovo CLAUDE.md, modifica delle project instructions)
33
+ - **`tools_change`**: la connessione/disconnessione di un MCP server ha causato una modifica della lista degli strumenti disponibili
34
+ - **`model_change`**: l'utente ha cambiato modello tramite il comando `/model`
35
+ - **`msg_truncated`**: una conversazione troppo lunga ha attivato la gestione della finestra di contesto, Claude Code ha troncato i messaggi precedenti
36
+ - **`msg_modified`**: Claude Code ha modificato i messaggi storici (es. `/compact` ha sostituito i messaggi originali con un riepilogo compresso)
37
+
38
+ ## Visualizzazione in cc-viewer
39
+
40
+ Nella lista delle richieste, le richieste con ricostruzione della cache mostrano un indicatore a punto rosso nella riga cache. Passando il mouse viene mostrato un tooltip con la descrizione specifica della causa della ricostruzione (supporto per 18 lingue).
@@ -0,0 +1,30 @@
1
+ # MainAgent
2
+
3
+ ## Definizione
4
+
5
+ MainAgent è la catena di richieste principale di Claude Code quando non è in modalità agent team. Ogni interazione dell'utente con Claude Code genera una serie di richieste API, tra cui le richieste MainAgent costituiscono la catena di conversazione principale — trasportano il system prompt completo, le definizioni degli strumenti e la cronologia dei messaggi.
6
+
7
+ ## Metodo di identificazione
8
+
9
+ In cc-viewer, MainAgent è identificato tramite `req.mainAgent === true`, contrassegnato automaticamente da `interceptor.js` al momento della cattura della richiesta.
10
+
11
+ Condizioni di determinazione (tutte devono essere soddisfatte):
12
+ - Il corpo della richiesta contiene il campo `system` (system prompt)
13
+ - Il corpo della richiesta contiene l'array `tools` (definizioni degli strumenti)
14
+ - Il system prompt contiene il testo caratteristico "Claude Code"
15
+
16
+ ## Differenze rispetto al SubAgent
17
+
18
+ | Caratteristica | MainAgent | SubAgent |
19
+ |------|-----------|----------|
20
+ | system prompt | Prompt principale completo di Claude Code | Prompt semplificato specifico per il task |
21
+ | Array tools | Contiene tutti gli strumenti disponibili | Solitamente contiene solo i pochi strumenti necessari per il task |
22
+ | Cronologia messaggi | Accumula il contesto completo della conversazione | Contiene solo i messaggi relativi al sotto-task |
23
+ | Comportamento cache | Ha prompt caching (TTL di 5 minuti) | Solitamente senza cache o con cache ridotta |
24
+
25
+ ## Significato in cc-viewer
26
+
27
+ - **Tracciamento della cache**: lo stato del prompt caching delle richieste MainAgent influisce direttamente sui costi. Monitorando il rapporto tra `cache_creation_input_tokens` e `cache_read_input_tokens`, è possibile valutare il tasso di cache hit
28
+ - **Analisi della perdita di cache**: quando una richiesta MainAgent presenta un'elevata cache creation (anziché cache read), significa che la cache è stata persa e ricostruita; cc-viewer contrassegna queste richieste con un indicatore a punto rosso
29
+ - **Analisi della catena principale**: la sequenza delle richieste MainAgent riflette l'intero processo di interazione dell'utente con Claude Code, ed è il dato fondamentale per l'analisi del comportamento della sessione
30
+ - **Ricostruzione della sessione**: cc-viewer ricostruisce la vista della conversazione (Chat Mode) attraverso la cronologia dei messaggi delle richieste MainAgent
@@ -0,0 +1,54 @@
1
+ # AskUserQuestion
2
+
3
+ ## Definizione
4
+
5
+ Pone domande all'utente durante l'esecuzione, per ottenere chiarimenti, verificare ipotesi o richiedere decisioni.
6
+
7
+ ## Parametri
8
+
9
+ | Parametro | Tipo | Obbligatorio | Descrizione |
10
+ |------|------|------|------|
11
+ | `questions` | array | Sì | Lista di domande (1-4 domande) |
12
+ | `answers` | object | No | Risposte raccolte dall'utente |
13
+ | `annotations` | object | No | Annotazioni per ogni domanda (es. note per l'anteprima delle selezioni) |
14
+ | `metadata` | object | No | Metadati per tracciamento e analisi |
15
+
16
+ Ogni oggetto `question`:
17
+
18
+ | Campo | Tipo | Obbligatorio | Descrizione |
19
+ |------|------|------|------|
20
+ | `question` | string | Sì | Testo completo della domanda, deve terminare con un punto interrogativo |
21
+ | `header` | string | Sì | Etichetta breve (massimo 12 caratteri), visualizzata come chip |
22
+ | `options` | array | Sì | 2-4 opzioni |
23
+ | `multiSelect` | boolean | Sì | Se è consentita la selezione multipla |
24
+
25
+ Ogni oggetto `option`:
26
+
27
+ | Campo | Tipo | Obbligatorio | Descrizione |
28
+ |------|------|------|------|
29
+ | `label` | string | Sì | Testo visualizzato dell'opzione (1-5 parole) |
30
+ | `description` | string | Sì | Descrizione dell'opzione |
31
+ | `markdown` | string | No | Contenuto di anteprima (per il confronto visivo di layout ASCII, frammenti di codice, ecc.) |
32
+
33
+ ## Scenari d'uso
34
+
35
+ **Adatto per:**
36
+ - Raccogliere preferenze o requisiti dell'utente
37
+ - Chiarire istruzioni ambigue
38
+ - Ottenere decisioni durante l'implementazione
39
+ - Offrire all'utente scelte di direzione
40
+
41
+ **Non adatto per:**
42
+ - Chiedere "il piano va bene?" — usare ExitPlanMode
43
+
44
+ ## Note
45
+
46
+ - L'utente può sempre selezionare "Other" per fornire un input personalizzato
47
+ - L'opzione consigliata va messa per prima, con "(Recommended)" alla fine della label
48
+ - L'anteprima `markdown` è supportata solo per domande a selezione singola
49
+ - Le opzioni con `markdown` passano a un layout affiancato
50
+ - In modalità pianificazione, viene usato per chiarire i requisiti prima di definire il piano
51
+
52
+ ## Significato in cc-viewer
53
+
54
+ La chiamata AskUserQuestion appare nei log delle richieste come content block `tool_use`, contenente la definizione delle domande e delle opzioni. Le risposte dell'utente compaiono nella cronologia dei messaggi delle richieste successive.
@@ -0,0 +1,47 @@
1
+ # Bash
2
+
3
+ ## Definizione
4
+
5
+ Esegue comandi shell, con supporto opzionale per il timeout. La directory di lavoro persiste tra i comandi, ma lo stato della shell (variabili d'ambiente, ecc.) non persiste.
6
+
7
+ ## Parametri
8
+
9
+ | Parametro | Tipo | Obbligatorio | Descrizione |
10
+ |------|------|------|------|
11
+ | `command` | string | Sì | Il comando bash da eseguire |
12
+ | `description` | string | No | Breve descrizione del comando |
13
+ | `timeout` | number | No | Timeout in millisecondi, massimo 600000, predefinito 120000 |
14
+ | `run_in_background` | boolean | No | Se eseguire in background |
15
+
16
+ ## Scenari d'uso
17
+
18
+ **Adatto per:**
19
+ - Operazioni git (commit, push, branch, ecc.)
20
+ - Comandi di gestione pacchetti npm/yarn
21
+ - Operazioni docker
22
+ - Comandi di compilazione e build
23
+ - Elencare il contenuto delle directory (`ls`)
24
+ - Altri comandi di sistema che richiedono l'esecuzione shell
25
+
26
+ **Non adatto per:**
27
+ - Leggere file — usare Read
28
+ - Cercare nomi di file — usare Glob
29
+ - Cercare contenuto di file — usare Grep
30
+ - Modificare file — usare Edit
31
+ - Scrivere file — usare Write
32
+ - Mostrare informazioni all'utente — scrivere direttamente nel testo della risposta
33
+ - Processi a lunga esecuzione (dev server, modalità watch) — consigliare all'utente di eseguirli manualmente
34
+
35
+ ## Note
36
+
37
+ - I percorsi con spazi devono essere racchiusi tra virgolette doppie
38
+ - L'output oltre 30000 caratteri viene troncato
39
+ - I comandi in background ottengono i risultati tramite TaskOutput
40
+ - Usare preferibilmente percorsi assoluti, evitare `cd`
41
+ - I comandi indipendenti possono essere chiamati in parallelo con più Bash
42
+ - I comandi con dipendenze vanno concatenati con `&&`
43
+ - L'ambiente shell viene inizializzato dal profilo dell'utente (bash o zsh)
44
+
45
+ ## Significato in cc-viewer
46
+
47
+ Le chiamate Bash appaiono nei log delle richieste come coppie di content block `tool_use` (contenente il comando) e `tool_result` (contenente l'output). L'output dell'esecuzione del comando può essere usato per analizzare il comportamento operativo del modello.
@@ -0,0 +1,38 @@
1
+ # Edit
2
+
3
+ ## Definizione
4
+
5
+ Modifica file tramite sostituzione esatta di stringhe. Sostituisce `old_string` con `new_string` nel file.
6
+
7
+ ## Parametri
8
+
9
+ | Parametro | Tipo | Obbligatorio | Descrizione |
10
+ |------|------|------|------|
11
+ | `file_path` | string | Sì | Percorso assoluto del file da modificare |
12
+ | `old_string` | string | Sì | Testo originale da sostituire |
13
+ | `new_string` | string | Sì | Nuovo testo sostitutivo (deve essere diverso da old_string) |
14
+ | `replace_all` | boolean | No | Se sostituire tutte le occorrenze, predefinito `false` |
15
+
16
+ ## Scenari d'uso
17
+
18
+ **Adatto per:**
19
+ - Modificare sezioni specifiche di codice in file esistenti
20
+ - Correggere bug, aggiornare la logica
21
+ - Rinominare variabili (con `replace_all: true`)
22
+ - Qualsiasi scenario che richieda la modifica precisa del contenuto di un file
23
+
24
+ **Non adatto per:**
25
+ - Creare nuovi file — usare Write
26
+ - Riscritture su larga scala — potrebbe essere necessario Write per sovrascrivere l'intero file
27
+
28
+ ## Note
29
+
30
+ - Prima dell'uso è necessario aver letto il file tramite Read, altrimenti si verifica un errore
31
+ - `old_string` deve essere unico nel file, altrimenti la modifica fallisce. Se non è unico, fornire più contesto per renderlo unico, oppure usare `replace_all`
32
+ - Quando si modifica il testo, mantenere l'indentazione originale (tab/spazi), non includere il prefisso del numero di riga dall'output di Read
33
+ - Preferire la modifica dei file esistenti anziché crearne di nuovi
34
+ - `new_string` deve essere diverso da `old_string`
35
+
36
+ ## Significato in cc-viewer
37
+
38
+ Le chiamate Edit appaiono nei log delle richieste come content block `tool_use`, il cui `input` contiene `old_string` e `new_string`, utili per tracciare quali modifiche il modello ha apportato ai file.
@@ -0,0 +1,43 @@
1
+ # EnterPlanMode
2
+
3
+ ## Definizione
4
+
5
+ Passa Claude Code alla modalità pianificazione, utilizzata per esplorare il codebase e progettare un piano prima dell'implementazione.
6
+
7
+ ## Parametri
8
+
9
+ Nessun parametro.
10
+
11
+ ## Scenari d'uso
12
+
13
+ **Adatto per:**
14
+ - Implementazione di nuove funzionalità — richiede decisioni architetturali
15
+ - Esistono più approcci possibili — richiede la scelta dell'utente
16
+ - Le modifiche al codice influenzano il comportamento o la struttura esistente
17
+ - Modifiche multi-file — potenzialmente coinvolgono 2-3 o più file
18
+ - Requisiti poco chiari — necessario esplorare prima di comprendere l'ambito
19
+ - Le preferenze dell'utente sono importanti — l'implementazione può avere più direzioni ragionevoli
20
+
21
+ **Non adatto per:**
22
+ - Correzioni di una o poche righe (errori di battitura, bug evidenti)
23
+ - L'utente ha fornito istruzioni molto specifiche
24
+ - Task puramente di ricerca/esplorazione — usare Task (tipo Explore)
25
+
26
+ ## Comportamento in modalità pianificazione
27
+
28
+ Dopo l'ingresso in modalità pianificazione, Claude Code:
29
+ 1. Usa gli strumenti Glob, Grep, Read per esplorare in profondità il codebase
30
+ 2. Comprende i pattern e l'architettura esistenti
31
+ 3. Progetta il piano di implementazione
32
+ 4. Sottopone il piano all'approvazione dell'utente
33
+ 5. Se necessario, usa AskUserQuestion per chiarimenti
34
+ 6. Quando il piano è pronto, esce tramite ExitPlanMode
35
+
36
+ ## Note
37
+
38
+ - Questo strumento richiede il consenso dell'utente per entrare in modalità pianificazione
39
+ - In caso di dubbio sulla necessità di pianificare, preferire la pianificazione — allinearsi in anticipo è meglio che rifare il lavoro
40
+
41
+ ## Significato in cc-viewer
42
+
43
+ La chiamata EnterPlanMode appare nei log delle richieste come content block `tool_use`. Le richieste successive all'ingresso in modalità pianificazione sono tipicamente dominate da chiamate a strumenti esplorativi (Glob, Grep, Read), fino alla chiamata di ExitPlanMode.
@@ -0,0 +1,39 @@
1
+ # ExitPlanMode
2
+
3
+ ## Definizione
4
+
5
+ Esce dalla modalità pianificazione e sottopone il piano all'approvazione dell'utente. Il contenuto del piano viene letto dal file di piano scritto in precedenza.
6
+
7
+ ## Parametri
8
+
9
+ | Parametro | Tipo | Obbligatorio | Descrizione |
10
+ |------|------|------|------|
11
+ | `allowedPrompts` | array | No | Lista di descrizioni dei permessi necessari per implementare il piano |
12
+
13
+ Ogni elemento nell'array `allowedPrompts`:
14
+
15
+ | Campo | Tipo | Obbligatorio | Descrizione |
16
+ |------|------|------|------|
17
+ | `tool` | enum | Sì | Lo strumento applicabile, attualmente supporta solo `Bash` |
18
+ | `prompt` | string | Sì | Descrizione semantica dell'operazione (es. "run tests", "install dependencies") |
19
+
20
+ ## Scenari d'uso
21
+
22
+ **Adatto per:**
23
+ - In modalità pianificazione, il piano è completato e pronto per l'approvazione dell'utente
24
+ - Solo per task di implementazione che richiedono la scrittura di codice
25
+
26
+ **Non adatto per:**
27
+ - Task puramente di ricerca/esplorazione — non è necessario uscire dalla modalità pianificazione
28
+ - Voler chiedere all'utente "il piano va bene?" — questa è esattamente la funzione di questo strumento, non usare AskUserQuestion per chiederlo
29
+
30
+ ## Note
31
+
32
+ - Questo strumento non accetta il contenuto del piano come parametro — lo legge dal file di piano scritto in precedenza
33
+ - L'utente vedrà il contenuto del file di piano per l'approvazione
34
+ - Non usare AskUserQuestion per chiedere "il piano va bene?" prima di chiamare questo strumento, sarebbe ridondante
35
+ - Non menzionare il "piano" nelle domande, poiché l'utente non può vedere il contenuto del piano prima di ExitPlanMode
36
+
37
+ ## Significato in cc-viewer
38
+
39
+ La chiamata ExitPlanMode segna la fine della fase di pianificazione. Nei log delle richieste, le richieste successive a questa chiamata passano tipicamente a operazioni di implementazione (Edit, Write, Bash, ecc.).
@@ -0,0 +1,34 @@
1
+ # Glob
2
+
3
+ ## Definizione
4
+
5
+ Strumento veloce di corrispondenza per pattern di nomi file, supporta codebase di qualsiasi dimensione. Restituisce i percorsi dei file corrispondenti ordinati per data di modifica.
6
+
7
+ ## Parametri
8
+
9
+ | Parametro | Tipo | Obbligatorio | Descrizione |
10
+ |------|------|------|------|
11
+ | `pattern` | string | Sì | Pattern glob (es. `**/*.js`, `src/**/*.ts`) |
12
+ | `path` | string | No | Directory di ricerca, predefinita la directory di lavoro corrente. Non passare "undefined" o "null" |
13
+
14
+ ## Scenari d'uso
15
+
16
+ **Adatto per:**
17
+ - Cercare file per pattern di nome file
18
+ - Trovare tutti i file di un tipo specifico (es. tutti i file `.tsx`)
19
+ - Localizzare file quando si cerca una definizione di classe specifica (es. `class Foo`)
20
+ - È possibile lanciare più chiamate Glob in parallelo in un singolo messaggio
21
+
22
+ **Non adatto per:**
23
+ - Cercare contenuto di file — usare Grep
24
+ - Esplorazione aperta che richiede più cicli di ricerca — usare Task (tipo Explore)
25
+
26
+ ## Note
27
+
28
+ - Supporta la sintassi glob standard: `*` corrisponde a un livello, `**` a più livelli, `{}` per selezione multipla
29
+ - I risultati sono ordinati per data di modifica
30
+ - Più consigliato rispetto al comando `find` di Bash
31
+
32
+ ## Significato in cc-viewer
33
+
34
+ Le chiamate Glob appaiono nei log delle richieste come coppie di content block `tool_use` / `tool_result`. Il `tool_result` contiene la lista dei percorsi dei file corrispondenti.
@@ -0,0 +1,47 @@
1
+ # Grep
2
+
3
+ ## Definizione
4
+
5
+ Potente strumento di ricerca nel contenuto basato su ripgrep. Supporta espressioni regolari, filtro per tipo di file e diverse modalità di output.
6
+
7
+ ## Parametri
8
+
9
+ | Parametro | Tipo | Obbligatorio | Descrizione |
10
+ |------|------|------|------|
11
+ | `pattern` | string | Sì | Pattern di ricerca con espressione regolare |
12
+ | `path` | string | No | Percorso di ricerca (file o directory), predefinita la directory di lavoro corrente |
13
+ | `glob` | string | No | Filtro per nome file (es. `*.js`, `*.{ts,tsx}`) |
14
+ | `type` | string | No | Filtro per tipo di file (es. `js`, `py`, `rust`), più efficiente di glob |
15
+ | `output_mode` | enum | No | Modalità di output: `files_with_matches` (predefinita), `content`, `count` |
16
+ | `-i` | boolean | No | Ricerca senza distinzione maiuscole/minuscole |
17
+ | `-n` | boolean | No | Mostra numeri di riga (solo modalità content), predefinito true |
18
+ | `-A` | number | No | Numero di righe da mostrare dopo la corrispondenza |
19
+ | `-B` | number | No | Numero di righe da mostrare prima della corrispondenza |
20
+ | `-C` / `context` | number | No | Numero di righe da mostrare prima e dopo la corrispondenza |
21
+ | `head_limit` | number | No | Limita il numero di voci nell'output, predefinito 0 (illimitato) |
22
+ | `offset` | number | No | Salta i primi N risultati |
23
+ | `multiline` | boolean | No | Abilita la modalità di corrispondenza multiriga, predefinito false |
24
+
25
+ ## Scenari d'uso
26
+
27
+ **Adatto per:**
28
+ - Cercare stringhe o pattern specifici nel codebase
29
+ - Trovare dove vengono usate funzioni/variabili
30
+ - Filtrare i risultati di ricerca per tipo di file
31
+ - Contare il numero di corrispondenze
32
+
33
+ **Non adatto per:**
34
+ - Cercare file per nome — usare Glob
35
+ - Esplorazione aperta che richiede più cicli di ricerca — usare Task (tipo Explore)
36
+
37
+ ## Note
38
+
39
+ - Usa la sintassi ripgrep (non grep), i caratteri speciali come le parentesi graffe devono essere escapati
40
+ - La modalità `files_with_matches` restituisce solo i percorsi dei file, la più efficiente
41
+ - La modalità `content` restituisce il contenuto delle righe corrispondenti, supporta righe di contesto
42
+ - La corrispondenza multiriga richiede l'impostazione `multiline: true`
43
+ - Usare sempre lo strumento Grep anziché i comandi `grep` o `rg` in Bash
44
+
45
+ ## Significato in cc-viewer
46
+
47
+ Le chiamate Grep appaiono nei log delle richieste come coppie di content block `tool_use` / `tool_result`. Il `tool_result` contiene i risultati della ricerca.
@@ -0,0 +1,33 @@
1
+ # NotebookEdit
2
+
3
+ ## Definizione
4
+
5
+ Sostituisce, inserisce o elimina celle specifiche in un Jupyter notebook (file .ipynb).
6
+
7
+ ## Parametri
8
+
9
+ | Parametro | Tipo | Obbligatorio | Descrizione |
10
+ |------|------|------|------|
11
+ | `notebook_path` | string | Sì | Percorso assoluto del file notebook |
12
+ | `new_source` | string | Sì | Nuovo contenuto della cella |
13
+ | `cell_id` | string | No | ID della cella da modificare. In modalità inserimento, la nuova cella viene inserita dopo questo ID |
14
+ | `cell_type` | enum | No | Tipo di cella: `code` o `markdown`. Obbligatorio in modalità inserimento |
15
+ | `edit_mode` | enum | No | Modalità di modifica: `replace` (predefinita), `insert`, `delete` |
16
+
17
+ ## Scenari d'uso
18
+
19
+ **Adatto per:**
20
+ - Modificare celle di codice o markdown in un Jupyter notebook
21
+ - Aggiungere nuove celle a un notebook
22
+ - Eliminare celle da un notebook
23
+
24
+ ## Note
25
+
26
+ - `cell_number` è indicizzato a partire da 0
27
+ - La modalità `insert` inserisce una nuova cella nella posizione specificata
28
+ - La modalità `delete` elimina la cella nella posizione specificata
29
+ - Il percorso deve essere assoluto
30
+
31
+ ## Significato in cc-viewer
32
+
33
+ Le chiamate NotebookEdit appaiono nei log delle richieste come content block `tool_use`, che registrano le operazioni specifiche di modifica sul notebook.