cc-viewer 1.2.1 → 1.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -1
- package/cli.js +52 -4
- package/concepts/ar/BodyDiffJSON.md +32 -0
- package/concepts/ar/CacheRebuild.md +40 -0
- package/concepts/ar/MainAgent.md +30 -0
- package/concepts/ar/Tool-AskUserQuestion.md +54 -0
- package/concepts/ar/Tool-Bash.md +47 -0
- package/concepts/ar/Tool-Edit.md +38 -0
- package/concepts/ar/Tool-EnterPlanMode.md +43 -0
- package/concepts/ar/Tool-ExitPlanMode.md +39 -0
- package/concepts/ar/Tool-Glob.md +34 -0
- package/concepts/ar/Tool-Grep.md +47 -0
- package/concepts/ar/Tool-NotebookEdit.md +33 -0
- package/concepts/ar/Tool-Read.md +41 -0
- package/concepts/ar/Tool-Skill.md +35 -0
- package/concepts/ar/Tool-Task.md +53 -0
- package/concepts/ar/Tool-TaskCreate.md +38 -0
- package/concepts/ar/Tool-TaskGet.md +35 -0
- package/concepts/ar/Tool-TaskList.md +36 -0
- package/concepts/ar/Tool-TaskOutput.md +34 -0
- package/concepts/ar/Tool-TaskStop.md +27 -0
- package/concepts/ar/Tool-TaskUpdate.md +49 -0
- package/concepts/ar/Tool-WebFetch.md +36 -0
- package/concepts/ar/Tool-WebSearch.md +32 -0
- package/concepts/ar/Tool-Write.md +32 -0
- package/concepts/ar/Tool-executeCode.md +33 -0
- package/concepts/ar/Tool-getDiagnostics.md +32 -0
- package/concepts/ar/Tools.md +73 -0
- package/concepts/ar/TranslateContextPollution.md +46 -0
- package/concepts/da/BodyDiffJSON.md +32 -0
- package/concepts/da/CacheRebuild.md +40 -0
- package/concepts/da/MainAgent.md +30 -0
- package/concepts/da/Tool-AskUserQuestion.md +54 -0
- package/concepts/da/Tool-Bash.md +47 -0
- package/concepts/da/Tool-Edit.md +38 -0
- package/concepts/da/Tool-EnterPlanMode.md +43 -0
- package/concepts/da/Tool-ExitPlanMode.md +39 -0
- package/concepts/da/Tool-Glob.md +34 -0
- package/concepts/da/Tool-Grep.md +47 -0
- package/concepts/da/Tool-NotebookEdit.md +33 -0
- package/concepts/da/Tool-Read.md +41 -0
- package/concepts/da/Tool-Skill.md +35 -0
- package/concepts/da/Tool-Task.md +53 -0
- package/concepts/da/Tool-TaskCreate.md +38 -0
- package/concepts/da/Tool-TaskGet.md +35 -0
- package/concepts/da/Tool-TaskList.md +36 -0
- package/concepts/da/Tool-TaskOutput.md +34 -0
- package/concepts/da/Tool-TaskStop.md +27 -0
- package/concepts/da/Tool-TaskUpdate.md +49 -0
- package/concepts/da/Tool-WebFetch.md +36 -0
- package/concepts/da/Tool-WebSearch.md +32 -0
- package/concepts/da/Tool-Write.md +32 -0
- package/concepts/da/Tool-executeCode.md +33 -0
- package/concepts/da/Tool-getDiagnostics.md +32 -0
- package/concepts/da/Tools.md +73 -0
- package/concepts/da/TranslateContextPollution.md +46 -0
- package/concepts/de/BodyDiffJSON.md +32 -0
- package/concepts/de/CacheRebuild.md +40 -0
- package/concepts/de/MainAgent.md +30 -0
- package/concepts/de/Tool-AskUserQuestion.md +54 -0
- package/concepts/de/Tool-Bash.md +47 -0
- package/concepts/de/Tool-Edit.md +38 -0
- package/concepts/de/Tool-EnterPlanMode.md +43 -0
- package/concepts/de/Tool-ExitPlanMode.md +39 -0
- package/concepts/de/Tool-Glob.md +34 -0
- package/concepts/de/Tool-Grep.md +47 -0
- package/concepts/de/Tool-NotebookEdit.md +33 -0
- package/concepts/de/Tool-Read.md +41 -0
- package/concepts/de/Tool-Skill.md +35 -0
- package/concepts/de/Tool-Task.md +53 -0
- package/concepts/de/Tool-TaskCreate.md +38 -0
- package/concepts/de/Tool-TaskGet.md +35 -0
- package/concepts/de/Tool-TaskList.md +36 -0
- package/concepts/de/Tool-TaskOutput.md +34 -0
- package/concepts/de/Tool-TaskStop.md +27 -0
- package/concepts/de/Tool-TaskUpdate.md +49 -0
- package/concepts/de/Tool-WebFetch.md +36 -0
- package/concepts/de/Tool-WebSearch.md +32 -0
- package/concepts/de/Tool-Write.md +32 -0
- package/concepts/de/Tool-executeCode.md +33 -0
- package/concepts/de/Tool-getDiagnostics.md +32 -0
- package/concepts/de/Tools.md +73 -0
- package/concepts/de/TranslateContextPollution.md +46 -0
- package/concepts/en/BodyDiffJSON.md +32 -0
- package/concepts/en/CacheRebuild.md +40 -0
- package/concepts/en/MainAgent.md +30 -0
- package/concepts/en/Tool-AskUserQuestion.md +54 -0
- package/concepts/en/Tool-Bash.md +47 -0
- package/concepts/en/Tool-Edit.md +38 -0
- package/concepts/en/Tool-EnterPlanMode.md +43 -0
- package/concepts/en/Tool-ExitPlanMode.md +39 -0
- package/concepts/en/Tool-Glob.md +34 -0
- package/concepts/en/Tool-Grep.md +47 -0
- package/concepts/en/Tool-NotebookEdit.md +33 -0
- package/concepts/en/Tool-Read.md +41 -0
- package/concepts/en/Tool-Skill.md +35 -0
- package/concepts/en/Tool-Task.md +53 -0
- package/concepts/en/Tool-TaskCreate.md +38 -0
- package/concepts/en/Tool-TaskGet.md +35 -0
- package/concepts/en/Tool-TaskList.md +36 -0
- package/concepts/en/Tool-TaskOutput.md +34 -0
- package/concepts/en/Tool-TaskStop.md +27 -0
- package/concepts/en/Tool-TaskUpdate.md +49 -0
- package/concepts/en/Tool-WebFetch.md +36 -0
- package/concepts/en/Tool-WebSearch.md +32 -0
- package/concepts/en/Tool-Write.md +32 -0
- package/concepts/en/Tool-executeCode.md +33 -0
- package/concepts/en/Tool-getDiagnostics.md +32 -0
- package/concepts/en/Tools.md +73 -0
- package/concepts/en/TranslateContextPollution.md +46 -0
- package/concepts/es/BodyDiffJSON.md +32 -0
- package/concepts/es/CacheRebuild.md +40 -0
- package/concepts/es/MainAgent.md +30 -0
- package/concepts/es/Tool-AskUserQuestion.md +54 -0
- package/concepts/es/Tool-Bash.md +47 -0
- package/concepts/es/Tool-Edit.md +38 -0
- package/concepts/es/Tool-EnterPlanMode.md +43 -0
- package/concepts/es/Tool-ExitPlanMode.md +39 -0
- package/concepts/es/Tool-Glob.md +34 -0
- package/concepts/es/Tool-Grep.md +47 -0
- package/concepts/es/Tool-NotebookEdit.md +33 -0
- package/concepts/es/Tool-Read.md +41 -0
- package/concepts/es/Tool-Skill.md +35 -0
- package/concepts/es/Tool-Task.md +53 -0
- package/concepts/es/Tool-TaskCreate.md +38 -0
- package/concepts/es/Tool-TaskGet.md +35 -0
- package/concepts/es/Tool-TaskList.md +36 -0
- package/concepts/es/Tool-TaskOutput.md +34 -0
- package/concepts/es/Tool-TaskStop.md +27 -0
- package/concepts/es/Tool-TaskUpdate.md +49 -0
- package/concepts/es/Tool-WebFetch.md +36 -0
- package/concepts/es/Tool-WebSearch.md +32 -0
- package/concepts/es/Tool-Write.md +32 -0
- package/concepts/es/Tool-executeCode.md +33 -0
- package/concepts/es/Tool-getDiagnostics.md +32 -0
- package/concepts/es/Tools.md +73 -0
- package/concepts/es/TranslateContextPollution.md +46 -0
- package/concepts/fr/BodyDiffJSON.md +32 -0
- package/concepts/fr/CacheRebuild.md +40 -0
- package/concepts/fr/MainAgent.md +30 -0
- package/concepts/fr/Tool-AskUserQuestion.md +54 -0
- package/concepts/fr/Tool-Bash.md +47 -0
- package/concepts/fr/Tool-Edit.md +38 -0
- package/concepts/fr/Tool-EnterPlanMode.md +43 -0
- package/concepts/fr/Tool-ExitPlanMode.md +39 -0
- package/concepts/fr/Tool-Glob.md +34 -0
- package/concepts/fr/Tool-Grep.md +47 -0
- package/concepts/fr/Tool-NotebookEdit.md +33 -0
- package/concepts/fr/Tool-Read.md +41 -0
- package/concepts/fr/Tool-Skill.md +35 -0
- package/concepts/fr/Tool-Task.md +53 -0
- package/concepts/fr/Tool-TaskCreate.md +38 -0
- package/concepts/fr/Tool-TaskGet.md +35 -0
- package/concepts/fr/Tool-TaskList.md +36 -0
- package/concepts/fr/Tool-TaskOutput.md +34 -0
- package/concepts/fr/Tool-TaskStop.md +27 -0
- package/concepts/fr/Tool-TaskUpdate.md +49 -0
- package/concepts/fr/Tool-WebFetch.md +36 -0
- package/concepts/fr/Tool-WebSearch.md +32 -0
- package/concepts/fr/Tool-Write.md +32 -0
- package/concepts/fr/Tool-executeCode.md +33 -0
- package/concepts/fr/Tool-getDiagnostics.md +32 -0
- package/concepts/fr/Tools.md +73 -0
- package/concepts/fr/TranslateContextPollution.md +46 -0
- package/concepts/it/BodyDiffJSON.md +32 -0
- package/concepts/it/CacheRebuild.md +40 -0
- package/concepts/it/MainAgent.md +30 -0
- package/concepts/it/Tool-AskUserQuestion.md +54 -0
- package/concepts/it/Tool-Bash.md +47 -0
- package/concepts/it/Tool-Edit.md +38 -0
- package/concepts/it/Tool-EnterPlanMode.md +43 -0
- package/concepts/it/Tool-ExitPlanMode.md +39 -0
- package/concepts/it/Tool-Glob.md +34 -0
- package/concepts/it/Tool-Grep.md +47 -0
- package/concepts/it/Tool-NotebookEdit.md +33 -0
- package/concepts/it/Tool-Read.md +41 -0
- package/concepts/it/Tool-Skill.md +35 -0
- package/concepts/it/Tool-Task.md +53 -0
- package/concepts/it/Tool-TaskCreate.md +38 -0
- package/concepts/it/Tool-TaskGet.md +35 -0
- package/concepts/it/Tool-TaskList.md +36 -0
- package/concepts/it/Tool-TaskOutput.md +34 -0
- package/concepts/it/Tool-TaskStop.md +27 -0
- package/concepts/it/Tool-TaskUpdate.md +49 -0
- package/concepts/it/Tool-WebFetch.md +36 -0
- package/concepts/it/Tool-WebSearch.md +32 -0
- package/concepts/it/Tool-Write.md +32 -0
- package/concepts/it/Tool-executeCode.md +33 -0
- package/concepts/it/Tool-getDiagnostics.md +32 -0
- package/concepts/it/Tools.md +73 -0
- package/concepts/it/TranslateContextPollution.md +46 -0
- package/concepts/ja/BodyDiffJSON.md +32 -0
- package/concepts/ja/CacheRebuild.md +40 -0
- package/concepts/ja/MainAgent.md +30 -0
- package/concepts/ja/Tool-AskUserQuestion.md +54 -0
- package/concepts/ja/Tool-Bash.md +47 -0
- package/concepts/ja/Tool-Edit.md +38 -0
- package/concepts/ja/Tool-EnterPlanMode.md +43 -0
- package/concepts/ja/Tool-ExitPlanMode.md +39 -0
- package/concepts/ja/Tool-Glob.md +34 -0
- package/concepts/ja/Tool-Grep.md +47 -0
- package/concepts/ja/Tool-NotebookEdit.md +33 -0
- package/concepts/ja/Tool-Read.md +41 -0
- package/concepts/ja/Tool-Skill.md +35 -0
- package/concepts/ja/Tool-Task.md +53 -0
- package/concepts/ja/Tool-TaskCreate.md +38 -0
- package/concepts/ja/Tool-TaskGet.md +35 -0
- package/concepts/ja/Tool-TaskList.md +36 -0
- package/concepts/ja/Tool-TaskOutput.md +34 -0
- package/concepts/ja/Tool-TaskStop.md +27 -0
- package/concepts/ja/Tool-TaskUpdate.md +49 -0
- package/concepts/ja/Tool-WebFetch.md +36 -0
- package/concepts/ja/Tool-WebSearch.md +32 -0
- package/concepts/ja/Tool-Write.md +32 -0
- package/concepts/ja/Tool-executeCode.md +33 -0
- package/concepts/ja/Tool-getDiagnostics.md +32 -0
- package/concepts/ja/Tools.md +73 -0
- package/concepts/ja/TranslateContextPollution.md +46 -0
- package/concepts/ko/BodyDiffJSON.md +32 -0
- package/concepts/ko/CacheRebuild.md +40 -0
- package/concepts/ko/MainAgent.md +30 -0
- package/concepts/ko/Tool-AskUserQuestion.md +54 -0
- package/concepts/ko/Tool-Bash.md +47 -0
- package/concepts/ko/Tool-Edit.md +38 -0
- package/concepts/ko/Tool-EnterPlanMode.md +43 -0
- package/concepts/ko/Tool-ExitPlanMode.md +39 -0
- package/concepts/ko/Tool-Glob.md +34 -0
- package/concepts/ko/Tool-Grep.md +47 -0
- package/concepts/ko/Tool-NotebookEdit.md +33 -0
- package/concepts/ko/Tool-Read.md +41 -0
- package/concepts/ko/Tool-Skill.md +35 -0
- package/concepts/ko/Tool-Task.md +53 -0
- package/concepts/ko/Tool-TaskCreate.md +38 -0
- package/concepts/ko/Tool-TaskGet.md +35 -0
- package/concepts/ko/Tool-TaskList.md +36 -0
- package/concepts/ko/Tool-TaskOutput.md +34 -0
- package/concepts/ko/Tool-TaskStop.md +27 -0
- package/concepts/ko/Tool-TaskUpdate.md +49 -0
- package/concepts/ko/Tool-WebFetch.md +36 -0
- package/concepts/ko/Tool-WebSearch.md +32 -0
- package/concepts/ko/Tool-Write.md +32 -0
- package/concepts/ko/Tool-executeCode.md +33 -0
- package/concepts/ko/Tool-getDiagnostics.md +32 -0
- package/concepts/ko/Tools.md +73 -0
- package/concepts/ko/TranslateContextPollution.md +46 -0
- package/concepts/no/BodyDiffJSON.md +32 -0
- package/concepts/no/CacheRebuild.md +40 -0
- package/concepts/no/MainAgent.md +30 -0
- package/concepts/no/Tool-AskUserQuestion.md +54 -0
- package/concepts/no/Tool-Bash.md +47 -0
- package/concepts/no/Tool-Edit.md +38 -0
- package/concepts/no/Tool-EnterPlanMode.md +43 -0
- package/concepts/no/Tool-ExitPlanMode.md +39 -0
- package/concepts/no/Tool-Glob.md +34 -0
- package/concepts/no/Tool-Grep.md +47 -0
- package/concepts/no/Tool-NotebookEdit.md +33 -0
- package/concepts/no/Tool-Read.md +41 -0
- package/concepts/no/Tool-Skill.md +35 -0
- package/concepts/no/Tool-Task.md +53 -0
- package/concepts/no/Tool-TaskCreate.md +38 -0
- package/concepts/no/Tool-TaskGet.md +35 -0
- package/concepts/no/Tool-TaskList.md +36 -0
- package/concepts/no/Tool-TaskOutput.md +34 -0
- package/concepts/no/Tool-TaskStop.md +27 -0
- package/concepts/no/Tool-TaskUpdate.md +49 -0
- package/concepts/no/Tool-WebFetch.md +36 -0
- package/concepts/no/Tool-WebSearch.md +32 -0
- package/concepts/no/Tool-Write.md +32 -0
- package/concepts/no/Tool-executeCode.md +33 -0
- package/concepts/no/Tool-getDiagnostics.md +32 -0
- package/concepts/no/Tools.md +73 -0
- package/concepts/no/TranslateContextPollution.md +46 -0
- package/concepts/pl/BodyDiffJSON.md +32 -0
- package/concepts/pl/CacheRebuild.md +40 -0
- package/concepts/pl/MainAgent.md +30 -0
- package/concepts/pl/Tool-AskUserQuestion.md +54 -0
- package/concepts/pl/Tool-Bash.md +47 -0
- package/concepts/pl/Tool-Edit.md +38 -0
- package/concepts/pl/Tool-EnterPlanMode.md +43 -0
- package/concepts/pl/Tool-ExitPlanMode.md +39 -0
- package/concepts/pl/Tool-Glob.md +34 -0
- package/concepts/pl/Tool-Grep.md +47 -0
- package/concepts/pl/Tool-NotebookEdit.md +33 -0
- package/concepts/pl/Tool-Read.md +41 -0
- package/concepts/pl/Tool-Skill.md +35 -0
- package/concepts/pl/Tool-Task.md +53 -0
- package/concepts/pl/Tool-TaskCreate.md +38 -0
- package/concepts/pl/Tool-TaskGet.md +35 -0
- package/concepts/pl/Tool-TaskList.md +36 -0
- package/concepts/pl/Tool-TaskOutput.md +34 -0
- package/concepts/pl/Tool-TaskStop.md +27 -0
- package/concepts/pl/Tool-TaskUpdate.md +49 -0
- package/concepts/pl/Tool-WebFetch.md +36 -0
- package/concepts/pl/Tool-WebSearch.md +32 -0
- package/concepts/pl/Tool-Write.md +32 -0
- package/concepts/pl/Tool-executeCode.md +33 -0
- package/concepts/pl/Tool-getDiagnostics.md +32 -0
- package/concepts/pl/Tools.md +73 -0
- package/concepts/pl/TranslateContextPollution.md +46 -0
- package/concepts/pt-BR/BodyDiffJSON.md +32 -0
- package/concepts/pt-BR/CacheRebuild.md +40 -0
- package/concepts/pt-BR/MainAgent.md +30 -0
- package/concepts/pt-BR/Tool-AskUserQuestion.md +54 -0
- package/concepts/pt-BR/Tool-Bash.md +47 -0
- package/concepts/pt-BR/Tool-Edit.md +38 -0
- package/concepts/pt-BR/Tool-EnterPlanMode.md +43 -0
- package/concepts/pt-BR/Tool-ExitPlanMode.md +39 -0
- package/concepts/pt-BR/Tool-Glob.md +34 -0
- package/concepts/pt-BR/Tool-Grep.md +47 -0
- package/concepts/pt-BR/Tool-NotebookEdit.md +33 -0
- package/concepts/pt-BR/Tool-Read.md +41 -0
- package/concepts/pt-BR/Tool-Skill.md +35 -0
- package/concepts/pt-BR/Tool-Task.md +53 -0
- package/concepts/pt-BR/Tool-TaskCreate.md +38 -0
- package/concepts/pt-BR/Tool-TaskGet.md +35 -0
- package/concepts/pt-BR/Tool-TaskList.md +36 -0
- package/concepts/pt-BR/Tool-TaskOutput.md +34 -0
- package/concepts/pt-BR/Tool-TaskStop.md +27 -0
- package/concepts/pt-BR/Tool-TaskUpdate.md +49 -0
- package/concepts/pt-BR/Tool-WebFetch.md +36 -0
- package/concepts/pt-BR/Tool-WebSearch.md +32 -0
- package/concepts/pt-BR/Tool-Write.md +32 -0
- package/concepts/pt-BR/Tool-executeCode.md +33 -0
- package/concepts/pt-BR/Tool-getDiagnostics.md +32 -0
- package/concepts/pt-BR/Tools.md +73 -0
- package/concepts/pt-BR/TranslateContextPollution.md +46 -0
- package/concepts/ru/BodyDiffJSON.md +32 -0
- package/concepts/ru/CacheRebuild.md +40 -0
- package/concepts/ru/MainAgent.md +30 -0
- package/concepts/ru/Tool-AskUserQuestion.md +54 -0
- package/concepts/ru/Tool-Bash.md +47 -0
- package/concepts/ru/Tool-Edit.md +38 -0
- package/concepts/ru/Tool-EnterPlanMode.md +43 -0
- package/concepts/ru/Tool-ExitPlanMode.md +39 -0
- package/concepts/ru/Tool-Glob.md +34 -0
- package/concepts/ru/Tool-Grep.md +47 -0
- package/concepts/ru/Tool-NotebookEdit.md +33 -0
- package/concepts/ru/Tool-Read.md +41 -0
- package/concepts/ru/Tool-Skill.md +35 -0
- package/concepts/ru/Tool-Task.md +53 -0
- package/concepts/ru/Tool-TaskCreate.md +38 -0
- package/concepts/ru/Tool-TaskGet.md +35 -0
- package/concepts/ru/Tool-TaskList.md +36 -0
- package/concepts/ru/Tool-TaskOutput.md +34 -0
- package/concepts/ru/Tool-TaskStop.md +27 -0
- package/concepts/ru/Tool-TaskUpdate.md +49 -0
- package/concepts/ru/Tool-WebFetch.md +36 -0
- package/concepts/ru/Tool-WebSearch.md +32 -0
- package/concepts/ru/Tool-Write.md +32 -0
- package/concepts/ru/Tool-executeCode.md +33 -0
- package/concepts/ru/Tool-getDiagnostics.md +32 -0
- package/concepts/ru/Tools.md +73 -0
- package/concepts/ru/TranslateContextPollution.md +46 -0
- package/concepts/th/BodyDiffJSON.md +32 -0
- package/concepts/th/CacheRebuild.md +40 -0
- package/concepts/th/MainAgent.md +30 -0
- package/concepts/th/Tool-AskUserQuestion.md +54 -0
- package/concepts/th/Tool-Bash.md +47 -0
- package/concepts/th/Tool-Edit.md +38 -0
- package/concepts/th/Tool-EnterPlanMode.md +43 -0
- package/concepts/th/Tool-ExitPlanMode.md +39 -0
- package/concepts/th/Tool-Glob.md +34 -0
- package/concepts/th/Tool-Grep.md +47 -0
- package/concepts/th/Tool-NotebookEdit.md +33 -0
- package/concepts/th/Tool-Read.md +41 -0
- package/concepts/th/Tool-Skill.md +35 -0
- package/concepts/th/Tool-Task.md +53 -0
- package/concepts/th/Tool-TaskCreate.md +38 -0
- package/concepts/th/Tool-TaskGet.md +35 -0
- package/concepts/th/Tool-TaskList.md +36 -0
- package/concepts/th/Tool-TaskOutput.md +34 -0
- package/concepts/th/Tool-TaskStop.md +27 -0
- package/concepts/th/Tool-TaskUpdate.md +49 -0
- package/concepts/th/Tool-WebFetch.md +36 -0
- package/concepts/th/Tool-WebSearch.md +32 -0
- package/concepts/th/Tool-Write.md +32 -0
- package/concepts/th/Tool-executeCode.md +33 -0
- package/concepts/th/Tool-getDiagnostics.md +32 -0
- package/concepts/th/Tools.md +73 -0
- package/concepts/th/TranslateContextPollution.md +46 -0
- package/concepts/tr/BodyDiffJSON.md +32 -0
- package/concepts/tr/CacheRebuild.md +40 -0
- package/concepts/tr/MainAgent.md +30 -0
- package/concepts/tr/Tool-AskUserQuestion.md +54 -0
- package/concepts/tr/Tool-Bash.md +47 -0
- package/concepts/tr/Tool-Edit.md +38 -0
- package/concepts/tr/Tool-EnterPlanMode.md +43 -0
- package/concepts/tr/Tool-ExitPlanMode.md +39 -0
- package/concepts/tr/Tool-Glob.md +34 -0
- package/concepts/tr/Tool-Grep.md +47 -0
- package/concepts/tr/Tool-NotebookEdit.md +33 -0
- package/concepts/tr/Tool-Read.md +41 -0
- package/concepts/tr/Tool-Skill.md +35 -0
- package/concepts/tr/Tool-Task.md +53 -0
- package/concepts/tr/Tool-TaskCreate.md +38 -0
- package/concepts/tr/Tool-TaskGet.md +35 -0
- package/concepts/tr/Tool-TaskList.md +36 -0
- package/concepts/tr/Tool-TaskOutput.md +34 -0
- package/concepts/tr/Tool-TaskStop.md +27 -0
- package/concepts/tr/Tool-TaskUpdate.md +49 -0
- package/concepts/tr/Tool-WebFetch.md +36 -0
- package/concepts/tr/Tool-WebSearch.md +32 -0
- package/concepts/tr/Tool-Write.md +32 -0
- package/concepts/tr/Tool-executeCode.md +33 -0
- package/concepts/tr/Tool-getDiagnostics.md +32 -0
- package/concepts/tr/Tools.md +73 -0
- package/concepts/tr/TranslateContextPollution.md +46 -0
- package/concepts/uk/BodyDiffJSON.md +32 -0
- package/concepts/uk/CacheRebuild.md +40 -0
- package/concepts/uk/MainAgent.md +30 -0
- package/concepts/uk/Tool-AskUserQuestion.md +54 -0
- package/concepts/uk/Tool-Bash.md +47 -0
- package/concepts/uk/Tool-Edit.md +38 -0
- package/concepts/uk/Tool-EnterPlanMode.md +43 -0
- package/concepts/uk/Tool-ExitPlanMode.md +39 -0
- package/concepts/uk/Tool-Glob.md +34 -0
- package/concepts/uk/Tool-Grep.md +47 -0
- package/concepts/uk/Tool-NotebookEdit.md +33 -0
- package/concepts/uk/Tool-Read.md +41 -0
- package/concepts/uk/Tool-Skill.md +35 -0
- package/concepts/uk/Tool-Task.md +53 -0
- package/concepts/uk/Tool-TaskCreate.md +38 -0
- package/concepts/uk/Tool-TaskGet.md +35 -0
- package/concepts/uk/Tool-TaskList.md +36 -0
- package/concepts/uk/Tool-TaskOutput.md +34 -0
- package/concepts/uk/Tool-TaskStop.md +27 -0
- package/concepts/uk/Tool-TaskUpdate.md +49 -0
- package/concepts/uk/Tool-WebFetch.md +36 -0
- package/concepts/uk/Tool-WebSearch.md +32 -0
- package/concepts/uk/Tool-Write.md +32 -0
- package/concepts/uk/Tool-executeCode.md +33 -0
- package/concepts/uk/Tool-getDiagnostics.md +32 -0
- package/concepts/uk/Tools.md +73 -0
- package/concepts/uk/TranslateContextPollution.md +46 -0
- package/concepts/zh/BodyDiffJSON.md +32 -0
- package/concepts/zh/CacheRebuild.md +40 -0
- package/concepts/zh/MainAgent.md +30 -0
- package/concepts/zh/Tool-AskUserQuestion.md +54 -0
- package/concepts/zh/Tool-Bash.md +47 -0
- package/concepts/zh/Tool-Edit.md +38 -0
- package/concepts/zh/Tool-EnterPlanMode.md +43 -0
- package/concepts/zh/Tool-ExitPlanMode.md +39 -0
- package/concepts/zh/Tool-Glob.md +34 -0
- package/concepts/zh/Tool-Grep.md +47 -0
- package/concepts/zh/Tool-NotebookEdit.md +33 -0
- package/concepts/zh/Tool-Read.md +41 -0
- package/concepts/zh/Tool-Skill.md +35 -0
- package/concepts/zh/Tool-Task.md +53 -0
- package/concepts/zh/Tool-TaskCreate.md +38 -0
- package/concepts/zh/Tool-TaskGet.md +35 -0
- package/concepts/zh/Tool-TaskList.md +36 -0
- package/concepts/zh/Tool-TaskOutput.md +34 -0
- package/concepts/zh/Tool-TaskStop.md +27 -0
- package/concepts/zh/Tool-TaskUpdate.md +49 -0
- package/concepts/zh/Tool-WebFetch.md +36 -0
- package/concepts/zh/Tool-WebSearch.md +32 -0
- package/concepts/zh/Tool-Write.md +32 -0
- package/concepts/zh/Tool-executeCode.md +33 -0
- package/concepts/zh/Tool-getDiagnostics.md +32 -0
- package/concepts/zh/Tools.md +73 -0
- package/concepts/zh/TranslateContextPollution.md +47 -0
- package/concepts/zh-TW/BodyDiffJSON.md +32 -0
- package/concepts/zh-TW/CacheRebuild.md +40 -0
- package/concepts/zh-TW/MainAgent.md +30 -0
- package/concepts/zh-TW/Tool-AskUserQuestion.md +54 -0
- package/concepts/zh-TW/Tool-Bash.md +47 -0
- package/concepts/zh-TW/Tool-Edit.md +38 -0
- package/concepts/zh-TW/Tool-EnterPlanMode.md +43 -0
- package/concepts/zh-TW/Tool-ExitPlanMode.md +39 -0
- package/concepts/zh-TW/Tool-Glob.md +34 -0
- package/concepts/zh-TW/Tool-Grep.md +47 -0
- package/concepts/zh-TW/Tool-NotebookEdit.md +33 -0
- package/concepts/zh-TW/Tool-Read.md +41 -0
- package/concepts/zh-TW/Tool-Skill.md +35 -0
- package/concepts/zh-TW/Tool-Task.md +53 -0
- package/concepts/zh-TW/Tool-TaskCreate.md +38 -0
- package/concepts/zh-TW/Tool-TaskGet.md +35 -0
- package/concepts/zh-TW/Tool-TaskList.md +36 -0
- package/concepts/zh-TW/Tool-TaskOutput.md +34 -0
- package/concepts/zh-TW/Tool-TaskStop.md +27 -0
- package/concepts/zh-TW/Tool-TaskUpdate.md +49 -0
- package/concepts/zh-TW/Tool-WebFetch.md +36 -0
- package/concepts/zh-TW/Tool-WebSearch.md +32 -0
- package/concepts/zh-TW/Tool-Write.md +32 -0
- package/concepts/zh-TW/Tool-executeCode.md +33 -0
- package/concepts/zh-TW/Tool-getDiagnostics.md +32 -0
- package/concepts/zh-TW/Tools.md +73 -0
- package/concepts/zh-TW/TranslateContextPollution.md +46 -0
- package/dist/assets/{index-DjCjusqk.js → index-CSuPDSgh.js} +45 -45
- package/dist/index.html +1 -1
- package/interceptor.js +27 -8
- package/package.json +3 -2
- package/server.js +17 -16
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# WebFetch
|
|
2
|
+
|
|
3
|
+
## 정의
|
|
4
|
+
|
|
5
|
+
지정된 URL의 웹페이지 내용을 가져와 HTML을 markdown으로 변환하고, AI 모델로 prompt에 따라 내용을 처리합니다.
|
|
6
|
+
|
|
7
|
+
## 파라미터
|
|
8
|
+
|
|
9
|
+
| 파라미터 | 타입 | 필수 | 설명 |
|
|
10
|
+
|----------|------|------|------|
|
|
11
|
+
| `url` | string (URI) | 예 | 가져올 완전한 URL |
|
|
12
|
+
| `prompt` | string | 예 | 페이지에서 어떤 정보를 추출할지 설명 |
|
|
13
|
+
|
|
14
|
+
## 사용 시나리오
|
|
15
|
+
|
|
16
|
+
**적합한 경우:**
|
|
17
|
+
- 공개 웹페이지의 내용 가져오기
|
|
18
|
+
- 온라인 문서 참조
|
|
19
|
+
- 웹페이지에서 특정 정보 추출
|
|
20
|
+
|
|
21
|
+
**적합하지 않은 경우:**
|
|
22
|
+
- 인증이 필요한 URL (Google Docs, Confluence, Jira, GitHub 등) — 먼저 전용 MCP 도구를 찾아야 함
|
|
23
|
+
- GitHub URL — `gh` CLI를 우선 사용
|
|
24
|
+
|
|
25
|
+
## 주의사항
|
|
26
|
+
|
|
27
|
+
- URL은 완전한 유효 URL이어야 함
|
|
28
|
+
- HTTP는 자동으로 HTTPS로 업그레이드
|
|
29
|
+
- 내용이 너무 크면 결과가 요약될 수 있음
|
|
30
|
+
- 15분 자동 정리 캐시 포함
|
|
31
|
+
- URL이 다른 호스트로 리다이렉트되면 도구가 리다이렉트 URL을 반환하며, 새 URL로 재요청 필요
|
|
32
|
+
- MCP 제공 web fetch 도구가 사용 가능하면 그것을 우선 사용
|
|
33
|
+
|
|
34
|
+
## cc-viewer에서의 의의
|
|
35
|
+
|
|
36
|
+
WebFetch 호출은 요청 로그에서 `tool_use` / `tool_result` content block 쌍으로 나타납니다. `tool_result`에는 AI 처리 후의 웹페이지 내용 요약이 포함됩니다.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# WebSearch
|
|
2
|
+
|
|
3
|
+
## 정의
|
|
4
|
+
|
|
5
|
+
검색 엔진 쿼리를 실행하여 최신 정보를 얻기 위한 검색 결과를 반환합니다.
|
|
6
|
+
|
|
7
|
+
## 파라미터
|
|
8
|
+
|
|
9
|
+
| 파라미터 | 타입 | 필수 | 설명 |
|
|
10
|
+
|----------|------|------|------|
|
|
11
|
+
| `query` | string | 예 | 검색 쿼리 (최소 2자) |
|
|
12
|
+
| `allowed_domains` | string[] | 아니오 | 이 도메인의 결과만 포함 |
|
|
13
|
+
| `blocked_domains` | string[] | 아니오 | 이 도메인의 결과를 제외 |
|
|
14
|
+
|
|
15
|
+
## 사용 시나리오
|
|
16
|
+
|
|
17
|
+
**적합한 경우:**
|
|
18
|
+
- 모델의 지식 컷오프 날짜를 넘는 최신 정보 획득
|
|
19
|
+
- 현재 이벤트 및 최신 데이터 검색
|
|
20
|
+
- 최신 기술 문서 검색
|
|
21
|
+
|
|
22
|
+
## 주의사항
|
|
23
|
+
|
|
24
|
+
- 검색 결과는 markdown 하이퍼링크 형식으로 반환
|
|
25
|
+
- 사용 후 응답 끝에 "Sources:" 섹션을 추가하고 관련 URL을 나열해야 함
|
|
26
|
+
- 도메인 필터링 (포함/제외) 지원
|
|
27
|
+
- 검색 쿼리에 현재 연도를 사용해야 함
|
|
28
|
+
- 미국에서만 사용 가능
|
|
29
|
+
|
|
30
|
+
## cc-viewer에서의 의의
|
|
31
|
+
|
|
32
|
+
WebSearch 호출은 요청 로그에서 `tool_use` / `tool_result` content block 쌍으로 나타납니다. `tool_result`에는 검색 결과 목록이 포함됩니다.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Write
|
|
2
|
+
|
|
3
|
+
## 정의
|
|
4
|
+
|
|
5
|
+
로컬 파일 시스템에 내용을 씁니다. 파일이 이미 존재하면 덮어씁니다.
|
|
6
|
+
|
|
7
|
+
## 파라미터
|
|
8
|
+
|
|
9
|
+
| 파라미터 | 타입 | 필수 | 설명 |
|
|
10
|
+
|----------|------|------|------|
|
|
11
|
+
| `file_path` | string | 예 | 파일의 절대 경로 (절대 경로여야 함) |
|
|
12
|
+
| `content` | string | 예 | 쓸 내용 |
|
|
13
|
+
|
|
14
|
+
## 사용 시나리오
|
|
15
|
+
|
|
16
|
+
**적합한 경우:**
|
|
17
|
+
- 새 파일 생성
|
|
18
|
+
- 파일 내용을 완전히 재작성해야 하는 경우
|
|
19
|
+
|
|
20
|
+
**적합하지 않은 경우:**
|
|
21
|
+
- 파일 내 부분적인 내용 수정 — Edit를 사용해야 함
|
|
22
|
+
- 문서 파일 (*.md)이나 README를 자발적으로 생성하지 말 것. 사용자가 명시적으로 요청한 경우를 제외
|
|
23
|
+
|
|
24
|
+
## 주의사항
|
|
25
|
+
|
|
26
|
+
- 대상 파일이 이미 존재하면 먼저 Read로 읽어야 함. 그렇지 않으면 실패
|
|
27
|
+
- 기존 파일의 전체 내용을 덮어씀
|
|
28
|
+
- 기존 파일 편집에는 Edit를 우선 사용하고, Write는 새 파일 생성 또는 완전한 재작성에만 사용
|
|
29
|
+
|
|
30
|
+
## cc-viewer에서의 의의
|
|
31
|
+
|
|
32
|
+
Write 호출은 요청 로그에서 `tool_use` content block으로 나타나며, `input.content`에 쓰여진 전체 내용이 포함됩니다.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# executeCode (mcp__ide__executeCode)
|
|
2
|
+
|
|
3
|
+
## 정의
|
|
4
|
+
|
|
5
|
+
현재 notebook 파일의 Jupyter kernel에서 Python 코드를 실행합니다.
|
|
6
|
+
|
|
7
|
+
## 파라미터
|
|
8
|
+
|
|
9
|
+
| 파라미터 | 타입 | 필수 | 설명 |
|
|
10
|
+
|----------|------|------|------|
|
|
11
|
+
| `code` | string | 예 | 실행할 Python 코드 |
|
|
12
|
+
|
|
13
|
+
## 사용 시나리오
|
|
14
|
+
|
|
15
|
+
**적합한 경우:**
|
|
16
|
+
- Jupyter notebook 환경에서 코드 실행
|
|
17
|
+
- 코드 스니펫 테스트
|
|
18
|
+
- 데이터 분석 및 계산
|
|
19
|
+
|
|
20
|
+
**적합하지 않은 경우:**
|
|
21
|
+
- 비 Jupyter 환경에서의 코드 실행 — Bash를 사용해야 함
|
|
22
|
+
- 파일 수정 — Edit 또는 Write를 사용해야 함
|
|
23
|
+
|
|
24
|
+
## 주의사항
|
|
25
|
+
|
|
26
|
+
- 이것은 MCP (Model Context Protocol) 도구이며, IDE 통합에 의해 제공
|
|
27
|
+
- 코드는 현재 Jupyter kernel에서 실행되며, 상태는 호출 간에 유지
|
|
28
|
+
- 사용자가 명시적으로 요청하지 않는 한 변수 선언이나 kernel 상태 변경을 피해야 함
|
|
29
|
+
- kernel 재시작 후 상태가 소실됨
|
|
30
|
+
|
|
31
|
+
## cc-viewer에서의 의의
|
|
32
|
+
|
|
33
|
+
executeCode는 MCP 도구이며, 요청 로그의 `tools` 배열에 `mcp__ide__executeCode` 이름으로 나타납니다. 호출과 반환은 표준 `tool_use` / `tool_result` 패턴을 따릅니다. MCP 도구의 증감은 tools 배열 변화를 일으키며, 캐시 재구축을 트리거할 수 있습니다.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# getDiagnostics (mcp__ide__getDiagnostics)
|
|
2
|
+
|
|
3
|
+
## 정의
|
|
4
|
+
|
|
5
|
+
VS Code에서 언어 진단 정보를 가져옵니다. 구문 오류, 타입 오류, lint 경고 등을 포함합니다.
|
|
6
|
+
|
|
7
|
+
## 파라미터
|
|
8
|
+
|
|
9
|
+
| 파라미터 | 타입 | 필수 | 설명 |
|
|
10
|
+
|----------|------|------|------|
|
|
11
|
+
| `uri` | string | 아니오 | 파일 URI. 제공하지 않으면 모든 파일의 진단 정보를 가져옴 |
|
|
12
|
+
|
|
13
|
+
## 사용 시나리오
|
|
14
|
+
|
|
15
|
+
**적합한 경우:**
|
|
16
|
+
- 코드의 구문, 타입, lint 등 시맨틱 문제 확인
|
|
17
|
+
- 코드 편집 후 새로운 오류가 도입되지 않았는지 검증
|
|
18
|
+
- Bash 명령 대신 코드 품질 확인
|
|
19
|
+
|
|
20
|
+
**적합하지 않은 경우:**
|
|
21
|
+
- 테스트 실행 — Bash를 사용해야 함
|
|
22
|
+
- 런타임 오류 확인 — Bash로 코드를 실행해야 함
|
|
23
|
+
|
|
24
|
+
## 주의사항
|
|
25
|
+
|
|
26
|
+
- 이것은 MCP (Model Context Protocol) 도구이며, IDE 통합에 의해 제공
|
|
27
|
+
- VS Code / IDE 환경에서만 사용 가능
|
|
28
|
+
- 코드 문제 확인에는 Bash 명령보다 이 도구를 우선 사용
|
|
29
|
+
|
|
30
|
+
## cc-viewer에서의 의의
|
|
31
|
+
|
|
32
|
+
getDiagnostics는 MCP 도구이며, 요청 로그의 `tools` 배열에 `mcp__ide__getDiagnostics` 이름으로 나타납니다. 호출과 반환은 표준 `tool_use` / `tool_result` 패턴을 따릅니다. MCP 도구의 증감은 tools 배열 변화를 일으키며, 캐시 재구축을 트리거할 수 있습니다.
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# Claude Code 도구 목록
|
|
2
|
+
|
|
3
|
+
Claude Code는 Anthropic API의 tool_use 메커니즘을 통해 모델에 일련의 내장 도구를 제공합니다. 각 MainAgent 요청의 `tools` 배열에 이러한 도구의 완전한 JSON Schema 정의가 포함되며, 모델은 응답 내의 `tool_use` content block으로 이를 호출합니다.
|
|
4
|
+
|
|
5
|
+
다음은 모든 도구의 카테고리별 인덱스입니다.
|
|
6
|
+
|
|
7
|
+
## Agent 시스템
|
|
8
|
+
|
|
9
|
+
| 도구 | 용도 |
|
|
10
|
+
|------|------|
|
|
11
|
+
| [Task](Tool-Task.md) | 서브 agent (SubAgent)를 시작하여 복잡한 다단계 태스크 처리 |
|
|
12
|
+
| [TaskOutput](Tool-TaskOutput.md) | 백그라운드 태스크의 출력 가져오기 |
|
|
13
|
+
| [TaskStop](Tool-TaskStop.md) | 실행 중인 백그라운드 태스크 중지 |
|
|
14
|
+
| [TaskCreate](Tool-TaskCreate.md) | 구조화된 태스크 리스트 항목 생성 |
|
|
15
|
+
| [TaskGet](Tool-TaskGet.md) | 태스크 상세 정보 가져오기 |
|
|
16
|
+
| [TaskUpdate](Tool-TaskUpdate.md) | 태스크 상태, 의존 관계 등 업데이트 |
|
|
17
|
+
| [TaskList](Tool-TaskList.md) | 모든 태스크 목록 표시 |
|
|
18
|
+
|
|
19
|
+
## 파일 작업
|
|
20
|
+
|
|
21
|
+
| 도구 | 용도 |
|
|
22
|
+
|------|------|
|
|
23
|
+
| [Read](Tool-Read.md) | 파일 내용 읽기 (텍스트, 이미지, PDF, Jupyter notebook 지원) |
|
|
24
|
+
| [Edit](Tool-Edit.md) | 정확한 문자열 치환으로 파일 편집 |
|
|
25
|
+
| [Write](Tool-Write.md) | 파일 쓰기 또는 덮어쓰기 |
|
|
26
|
+
| [NotebookEdit](Tool-NotebookEdit.md) | Jupyter notebook 셀 편집 |
|
|
27
|
+
|
|
28
|
+
## 검색
|
|
29
|
+
|
|
30
|
+
| 도구 | 용도 |
|
|
31
|
+
|------|------|
|
|
32
|
+
| [Glob](Tool-Glob.md) | 파일명 패턴 매칭으로 파일 검색 |
|
|
33
|
+
| [Grep](Tool-Grep.md) | ripgrep 기반 파일 내용 검색 |
|
|
34
|
+
|
|
35
|
+
## 터미널
|
|
36
|
+
|
|
37
|
+
| 도구 | 용도 |
|
|
38
|
+
|------|------|
|
|
39
|
+
| [Bash](Tool-Bash.md) | 셸 명령 실행 |
|
|
40
|
+
|
|
41
|
+
## Web
|
|
42
|
+
|
|
43
|
+
| 도구 | 용도 |
|
|
44
|
+
|------|------|
|
|
45
|
+
| [WebFetch](Tool-WebFetch.md) | 웹페이지 내용을 가져와 AI로 처리 |
|
|
46
|
+
| [WebSearch](Tool-WebSearch.md) | 검색 엔진 쿼리 |
|
|
47
|
+
|
|
48
|
+
## 계획 및 상호작용
|
|
49
|
+
|
|
50
|
+
| 도구 | 용도 |
|
|
51
|
+
|------|------|
|
|
52
|
+
| [EnterPlanMode](Tool-EnterPlanMode.md) | 계획 모드 진입, 구현 방안 설계 |
|
|
53
|
+
| [ExitPlanMode](Tool-ExitPlanMode.md) | 계획 모드 종료 및 방안을 사용자 승인에 제출 |
|
|
54
|
+
| [AskUserQuestion](Tool-AskUserQuestion.md) | 사용자에게 질문하여 확인 또는 결정 획득 |
|
|
55
|
+
|
|
56
|
+
## 확장
|
|
57
|
+
|
|
58
|
+
| 도구 | 용도 |
|
|
59
|
+
|------|------|
|
|
60
|
+
| [Skill](Tool-Skill.md) | 스킬 (slash command) 실행 |
|
|
61
|
+
|
|
62
|
+
## IDE 통합
|
|
63
|
+
|
|
64
|
+
| 도구 | 용도 |
|
|
65
|
+
|------|------|
|
|
66
|
+
| [getDiagnostics](Tool-getDiagnostics.md) | VS Code 언어 진단 정보 가져오기 |
|
|
67
|
+
| [executeCode](Tool-executeCode.md) | Jupyter kernel에서 코드 실행 |
|
|
68
|
+
|
|
69
|
+
## cc-viewer에서의 의의
|
|
70
|
+
|
|
71
|
+
도구 호출은 Claude Code 요청 로그에서 가장 핵심적인 관측 가능 데이터 중 하나입니다. 각 MainAgent 요청의 `tools` 배열은 모델이 사용 가능한 도구 세트를 정의하고, 응답 내의 `tool_use` / `tool_result` content block은 실제 도구 호출과 반환을 기록합니다. cc-viewer는 이러한 데이터를 파싱하여 Chat Mode에서 완전한 도구 호출 체인을 재현합니다.
|
|
72
|
+
|
|
73
|
+
도구 정의의 변화 (MCP server 연결/해제로 인한 도구 증감 등)는 캐시 재구축을 트리거합니다. 자세한 내용은 [CacheRebuild](CacheRebuild.md)를 참조하세요.
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# 번역 API 컨텍스트 오염
|
|
2
|
+
|
|
3
|
+
## 배경
|
|
4
|
+
|
|
5
|
+
CC-Viewer에는 Anthropic Messages API를 활용한 내장 번역 기능(`POST /api/translate`)이 포함되어 있습니다. 초기 구현에서는 번역 요청이 Claude Code 세션에서 캐시된 인증 자격 증명(`x-api-key`와 `authorization` 헤더 모두)을 재사용했습니다. 이로 인해 미묘하지만 심각한 문제가 발생했습니다: 번역 결과에 관련 없는 콘텐츠가 빈번하게 반환되었습니다.
|
|
6
|
+
|
|
7
|
+
## 근본 원인
|
|
8
|
+
|
|
9
|
+
### 두 가지 인증 방식의 본질적 차이
|
|
10
|
+
|
|
11
|
+
Anthropic API는 두 가지 인증 방식을 지원합니다:
|
|
12
|
+
|
|
13
|
+
| 방식 | 헤더 | 일반적인 출처 | 특징 |
|
|
14
|
+
|------|------|---------------|------|
|
|
15
|
+
| API 키 | `x-api-key: sk-ant-...` | 환경 변수 / Console | 무상태, 각 요청이 독립적 |
|
|
16
|
+
| OAuth 토큰 | `authorization: Bearer sessionToken` | Claude Code 구독 로그인 | 세션에 바인딩, 서버가 컨텍스트 연관을 유지 |
|
|
17
|
+
|
|
18
|
+
핵심 차이점: **API 키는 무상태(stateless)**로 각 요청이 완전히 독립적입니다. 반면 **OAuth 세션 토큰은 상태 유지(stateful)**로, Anthropic 서버가 동일한 토큰을 사용하는 요청을 같은 세션 컨텍스트에 연관시킵니다.
|
|
19
|
+
|
|
20
|
+
### 오염 체인
|
|
21
|
+
|
|
22
|
+
Claude Code가 구독형 OAuth 로그인을 사용할 때 인증 흐름은 다음과 같습니다:
|
|
23
|
+
|
|
24
|
+
```
|
|
25
|
+
Claude Code 메인 대화 ──(authorization: Bearer sessionToken)──→ Anthropic API
|
|
26
|
+
↑
|
|
27
|
+
CC-Viewer 번역 요청 ──(authorization: Bearer sessionToken)──→ Anthropic API
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
번역 요청이 동일한 세션 토큰을 재사용했기 때문에, Anthropic 서버가 번역 요청을 Claude Code의 메인 대화 컨텍스트에 연관시킬 수 있었습니다. 이로 인해 다음과 같은 문제가 발생합니다:
|
|
31
|
+
|
|
32
|
+
1. **번역 결과가 메인 대화 컨텍스트의 영향을 받음**: 번역 요청의 시스템 프롬프트는 "당신은 번역가입니다"이지만, 서버 컨텍스트에는 여전히 Claude Code의 대화 기록이 포함되어 있어 모델에 간섭할 수 있습니다
|
|
33
|
+
2. **메인 대화가 번역 요청에 의해 교란됨**: 번역 요청 내용(UI 텍스트 조각)이 메인 대화 컨텍스트에 주입되어 Claude Code의 응답이 벗어날 수 있습니다
|
|
34
|
+
3. **예측 불가능한 동작**: 컨텍스트 오염은 서버 측 동작이므로 클라이언트에서 감지하거나 제어할 수 없습니다
|
|
35
|
+
|
|
36
|
+
## 교훈
|
|
37
|
+
|
|
38
|
+
- **OAuth 세션 토큰은 "단순한 또 다른 API 키"가 아닙니다** — 서버 측 상태를 가지고 있으며, 재사용은 컨텍스트 공유를 의미합니다
|
|
39
|
+
- **내부 서비스 호출은 독립적이고 무상태인 인증을 사용해야** 하며, 사용자 세션과의 연관을 피해야 합니다
|
|
40
|
+
|
|
41
|
+
## 참고 자료
|
|
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 (inkrementell sammenligning av forespørselskropp)
|
|
2
|
+
|
|
3
|
+
## Bakgrunn
|
|
4
|
+
|
|
5
|
+
MainAgent i Claude Code bruker en mekanisme for sending av full kontekst — hver forespørsel inneholder komplett samtalehistorikk, system prompt, verktøydefinisjoner osv. Dette betyr at forespørselskroppen blir stadig større etter hvert som samtalen skrider frem, og det er vanskelig å raskt finne ut "hva som faktisk er nytt i denne runden" ved å se på rå Body direkte.
|
|
6
|
+
|
|
7
|
+
Body Diff JSON er laget for å løse dette problemet: den sammenligner automatisk to påfølgende MainAgent-forespørsler og trekker ut den inkrementelle delen, slik at du med ett blikk kan se hva som faktisk er nytt i denne forespørselen.
|
|
8
|
+
|
|
9
|
+
## Virkemåte
|
|
10
|
+
|
|
11
|
+
1. **Identifisere påfølgende MainAgent-forespørsler**: Gjeldende forespørsel må være av typen MainAgent, og det må finnes en tidligere MainAgent-forespørsel
|
|
12
|
+
2. **Felt-for-felt-sammenligning**: Alle toppnivåfelt i forespørselskroppen gjennomgås, interne egenskaper med `_`-prefiks hoppes over
|
|
13
|
+
3. **Smart differanseekstraksjon**:
|
|
14
|
+
- Nye felt: vises direkte
|
|
15
|
+
- Slettede felt: vises ikke (påvirker vanligvis ikke forståelsen)
|
|
16
|
+
- Endrede felt: gjeldende verdi vises
|
|
17
|
+
- Spesialhåndtering av `messages`-arrayen: bare nye meldinger vises (fordi normal samtale bruker tilleggsmodus, og prefiks-meldinger forblir uendret)
|
|
18
|
+
4. **Deteksjon av krympet forespørselskropp**: Hvis gjeldende forespørselskropp er mindre enn den forrige, betyr det at kontekstavkorting eller sesjonstilbakestilling har skjedd, og da vises en informasjonsmelding i stedet for diff
|
|
19
|
+
|
|
20
|
+
## Typiske scenarioer
|
|
21
|
+
|
|
22
|
+
I en normal samtalerunde inneholder Body Diff JSON vanligvis:
|
|
23
|
+
- `messages`: 1–2 nye meldinger (brukerens inndata + assistentens svar fra forrige runde)
|
|
24
|
+
|
|
25
|
+
Hvis du ser endringer i felt som `system`, `tools` eller `model` i diffen, betyr det at en konfigurasjonsendring har skjedd i denne runden, noe som ofte er årsaken til cache-gjenoppbygging.
|
|
26
|
+
|
|
27
|
+
## Bruk
|
|
28
|
+
|
|
29
|
+
- Body Diff JSON vises i detaljpanelet for MainAgent-forespørselen
|
|
30
|
+
- Klikk på tittelen for å utvide/skjule
|
|
31
|
+
- Støtter JSON- og Text-visningsmodus, samt kopiering med ett klikk
|
|
32
|
+
- I **CC-Viewer → Globale innstillinger** øverst til venstre kan du angi "Utvid Body Diff JSON som standard"
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Cache Rebuild (cache-gjenoppbygging)
|
|
2
|
+
|
|
3
|
+
## Bakgrunn
|
|
4
|
+
|
|
5
|
+
Anthropics prompt caching-mekanisme setter sammen system → tools → messages (til cache-brytepunktet) i rekkefølge som cache-nøkkel. Når cache-nøkkelen er helt identisk med forrige forespørsel, returnerer API-et `cache_read_input_tokens` (cache-treff); når nøkkelen endres, oppretter API-et cachen på nytt og returnerer en stor mengde `cache_creation_input_tokens`, altså cache-gjenoppbygging.
|
|
6
|
+
|
|
7
|
+
Cache-gjenoppbygging betyr ekstra token-kostnader (prisen for cache creation er høyere enn cache read), så å identifisere årsaken til gjenoppbygging har direkte verdi for kostnadsoptimalisering.
|
|
8
|
+
|
|
9
|
+
## Klassifisering av årsaker til cache-gjenoppbygging
|
|
10
|
+
|
|
11
|
+
cc-viewer bestemmer nøyaktig årsaken til cache-gjenoppbygging ved å sammenligne body fra to påfølgende MainAgent-forespørsler:
|
|
12
|
+
|
|
13
|
+
| reason | Betydning | Bestemmelsesmetode |
|
|
14
|
+
|--------|-----------|-------------------|
|
|
15
|
+
| `ttl` | Cache utløpt | Mer enn 5 minutter siden forrige MainAgent-forespørsel |
|
|
16
|
+
| `system_change` | System prompt endret | `JSON.stringify(prev.system) !== JSON.stringify(curr.system)` |
|
|
17
|
+
| `tools_change` | Verktøydefinisjoner endret | `JSON.stringify(prev.tools) !== JSON.stringify(curr.tools)` |
|
|
18
|
+
| `model_change` | Modellbytte | `prev.model !== curr.model` |
|
|
19
|
+
| `msg_truncated` | Meldingsstakk avkortet | Gjeldende forespørsel har færre meldinger enn forrige, vanligvis utløst av kontekstvindu-overflyt |
|
|
20
|
+
| `msg_modified` | Historiske meldinger endret | Prefiks-meldingsinnhold stemmer ikke overens (ved normal tillegging skal prefikset være helt identisk) |
|
|
21
|
+
| `key_change` | Ukjent nøkkelendring | Fallback når ingen av betingelsene ovenfor matcher |
|
|
22
|
+
|
|
23
|
+
## Prioriteringsrekkefølge
|
|
24
|
+
|
|
25
|
+
1. Sjekk tidsintervall først — over 5 minutter gir direkte `ttl`-bestemmelse uten body-sammenligning
|
|
26
|
+
2. Deretter sjekkes model, system, tools og messages i rekkefølge
|
|
27
|
+
3. En forespørsel kan matche flere årsaker samtidig (f.eks. modellbytte + system prompt-endring), da inneholder `reasons`-arrayen alle matchende elementer og tooltip vises med flere linjer
|
|
28
|
+
|
|
29
|
+
## Vanlige scenarioer
|
|
30
|
+
|
|
31
|
+
- **`ttl`**: Brukeren pauset i mer enn 5 minutter og fortsatte deretter, cachen utløp naturlig
|
|
32
|
+
- **`system_change`**: Claude Code oppdaterte system prompt (f.eks. lastet ny CLAUDE.md eller endring i prosjektinstruksjoner)
|
|
33
|
+
- **`tools_change`**: MCP-server tilkobling/frakobling førte til endring i tilgjengelig verktøyliste
|
|
34
|
+
- **`model_change`**: Brukeren byttet modell via `/model`-kommandoen
|
|
35
|
+
- **`msg_truncated`**: Lang samtale utløste kontekstvindu-håndtering, Claude Code avkortet tidlige meldinger
|
|
36
|
+
- **`msg_modified`**: Claude Code redigerte historiske meldinger (f.eks. `/compact` komprimeringssammendrag erstattet originale meldinger)
|
|
37
|
+
|
|
38
|
+
## Visning i cc-viewer
|
|
39
|
+
|
|
40
|
+
I forespørselslisten viser forespørsler med cache-gjenoppbygging en rød prikkindikator på cache-linjen. Tooltip vises ved musepeker med detaljert beskrivelse av gjenoppbyggingsårsaken (støtter 18 språk).
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# MainAgent
|
|
2
|
+
|
|
3
|
+
## Definisjon
|
|
4
|
+
|
|
5
|
+
MainAgent er hovedforespørselskjeden i Claude Code når den ikke er i agent team-modus. Hver interaksjon mellom brukeren og Claude Code produserer en serie API-forespørsler, der MainAgent-forespørslene utgjør den sentrale samtalekjeden — de bærer komplett system prompt, verktøydefinisjoner og meldingshistorikk.
|
|
6
|
+
|
|
7
|
+
## Identifisering
|
|
8
|
+
|
|
9
|
+
I cc-viewer identifiseres MainAgent gjennom `req.mainAgent === true`, som automatisk settes av `interceptor.js` ved forespørselsfangst.
|
|
10
|
+
|
|
11
|
+
Bestemmelsesvilkår (alle må oppfylles):
|
|
12
|
+
- Forespørselskroppen inneholder `system`-felt (system prompt)
|
|
13
|
+
- Forespørselskroppen inneholder `tools`-array (verktøydefinisjoner)
|
|
14
|
+
- System prompt inneholder "Claude Code"-kjennetekst
|
|
15
|
+
|
|
16
|
+
## Forskjell fra SubAgent
|
|
17
|
+
|
|
18
|
+
| Egenskap | MainAgent | SubAgent |
|
|
19
|
+
|----------|-----------|----------|
|
|
20
|
+
| system prompt | Komplett Claude Code hoved-prompt | Forenklet oppgavespesifikt prompt |
|
|
21
|
+
| tools-array | Inneholder alle tilgjengelige verktøy | Inneholder vanligvis bare verktøy som trengs for oppgaven |
|
|
22
|
+
| Meldingshistorikk | Akkumulerer full samtalekontekst | Inneholder bare meldinger relatert til deloppgaven |
|
|
23
|
+
| Cache-oppførsel | Har prompt caching (5 minutters TTL) | Vanligvis ingen cache eller liten cache |
|
|
24
|
+
|
|
25
|
+
## Betydning i cc-viewer
|
|
26
|
+
|
|
27
|
+
- **Cache-sporing**: Prompt caching-status for MainAgent-forespørsler påvirker kostnadene direkte. Ved å overvåke forholdet mellom `cache_creation_input_tokens` og `cache_read_input_tokens` kan man vurdere cache-treffrate
|
|
28
|
+
- **Analyse av cache-tap**: Når MainAgent-forespørsler viser store mengder cache creation (i stedet for cache read), betyr det at cachen er tapt og gjenoppbygget, og cc-viewer markerer disse forespørslene med en rød prikkindikator
|
|
29
|
+
- **Hovedkjedeanalyse**: MainAgent-forespørselssekvensen gjenspeiler den komplette interaksjonsprosessen mellom brukeren og Claude Code, og er kjernedata for analyse av sesjonsatferd
|
|
30
|
+
- **Sesjonsrekonstruksjon**: cc-viewer rekonstruerer samtalevisningen (Chat Mode) gjennom meldingshistorikken i MainAgent-forespørsler
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# AskUserQuestion
|
|
2
|
+
|
|
3
|
+
## Definisjon
|
|
4
|
+
|
|
5
|
+
Stiller spørsmål til brukeren under utførelse, for å få avklaringer, verifisere antakelser eller be om beslutninger.
|
|
6
|
+
|
|
7
|
+
## Parametere
|
|
8
|
+
|
|
9
|
+
| Parameter | Type | Påkrevd | Beskrivelse |
|
|
10
|
+
|-----------|------|---------|-------------|
|
|
11
|
+
| `questions` | array | Ja | Spørsmålsliste (1–4 spørsmål) |
|
|
12
|
+
| `answers` | object | Nei | Svar samlet inn fra brukeren |
|
|
13
|
+
| `annotations` | object | Nei | Merknader for hvert spørsmål (f.eks. notater for forhåndsvisning av valg) |
|
|
14
|
+
| `metadata` | object | Nei | Metadata for sporing og analyse |
|
|
15
|
+
|
|
16
|
+
Hvert `question`-objekt:
|
|
17
|
+
|
|
18
|
+
| Felt | Type | Påkrevd | Beskrivelse |
|
|
19
|
+
|------|------|---------|-------------|
|
|
20
|
+
| `question` | string | Ja | Fullstendig spørsmålstekst, bør ende med spørsmålstegn |
|
|
21
|
+
| `header` | string | Ja | Kort etikett (maks 12 tegn), vises som etikett-chip |
|
|
22
|
+
| `options` | array | Ja | 2–4 alternativer |
|
|
23
|
+
| `multiSelect` | boolean | Ja | Om flervalg er tillatt |
|
|
24
|
+
|
|
25
|
+
Hvert `option`-objekt:
|
|
26
|
+
|
|
27
|
+
| Felt | Type | Påkrevd | Beskrivelse |
|
|
28
|
+
|------|------|---------|-------------|
|
|
29
|
+
| `label` | string | Ja | Visningstekst for alternativet (1–5 ord) |
|
|
30
|
+
| `description` | string | Ja | Beskrivelse av alternativet |
|
|
31
|
+
| `markdown` | string | Nei | Forhåndsvisningsinnhold (for visuell sammenligning av ASCII-layout, kodesnutter osv.) |
|
|
32
|
+
|
|
33
|
+
## Bruksscenarioer
|
|
34
|
+
|
|
35
|
+
**Egnet for bruk:**
|
|
36
|
+
- Samle inn brukerpreferanser eller krav
|
|
37
|
+
- Avklare tvetydige instruksjoner
|
|
38
|
+
- Få beslutninger under implementering
|
|
39
|
+
- Gi brukeren retningsvalg
|
|
40
|
+
|
|
41
|
+
**Ikke egnet for bruk:**
|
|
42
|
+
- Spørre "er planen OK?" — bruk ExitPlanMode
|
|
43
|
+
|
|
44
|
+
## Merknader
|
|
45
|
+
|
|
46
|
+
- Brukeren kan alltid velge "Other" for å gi egendefinert inndata
|
|
47
|
+
- Anbefalt alternativ plasseres først, med "(Recommended)" lagt til på slutten av label
|
|
48
|
+
- `markdown`-forhåndsvisning støttes kun for enkeltvalg-spørsmål
|
|
49
|
+
- Alternativer med `markdown` bytter til side-ved-side-layout
|
|
50
|
+
- I planleggingsmodus brukes dette til å avklare krav før planen fastsettes
|
|
51
|
+
|
|
52
|
+
## Betydning i cc-viewer
|
|
53
|
+
|
|
54
|
+
AskUserQuestion-kall vises i forespørselsloggen som `tool_use` content block, som inneholder spørsmåls- og alternativdefinisjoner. Brukerens svar vises i meldingshistorikken for påfølgende forespørsler.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Bash
|
|
2
|
+
|
|
3
|
+
## Definisjon
|
|
4
|
+
|
|
5
|
+
Kjører shell-kommandoer, med støtte for valgfri tidsavbrudd. Arbeidskatalogen vedvarer mellom kommandoer, men shell-tilstand (miljøvariabler osv.) vedvarer ikke.
|
|
6
|
+
|
|
7
|
+
## Parametere
|
|
8
|
+
|
|
9
|
+
| Parameter | Type | Påkrevd | Beskrivelse |
|
|
10
|
+
|-----------|------|---------|-------------|
|
|
11
|
+
| `command` | string | Ja | Bash-kommandoen som skal kjøres |
|
|
12
|
+
| `description` | string | Nei | Kort beskrivelse av kommandoen |
|
|
13
|
+
| `timeout` | number | Nei | Tidsavbrudd (millisekunder), maks 600000, standard 120000 |
|
|
14
|
+
| `run_in_background` | boolean | Nei | Om den skal kjøres i bakgrunnen |
|
|
15
|
+
|
|
16
|
+
## Bruksscenarioer
|
|
17
|
+
|
|
18
|
+
**Egnet for bruk:**
|
|
19
|
+
- git-operasjoner (commit, push, branch osv.)
|
|
20
|
+
- npm/yarn og andre pakkebehandlingskommandoer
|
|
21
|
+
- docker-operasjoner
|
|
22
|
+
- Kompilerings- og byggekommandoer
|
|
23
|
+
- Liste kataloginnhold (`ls`)
|
|
24
|
+
- Andre systemkommandoer som krever shell-kjøring
|
|
25
|
+
|
|
26
|
+
**Ikke egnet for bruk:**
|
|
27
|
+
- Lese filer — bruk Read
|
|
28
|
+
- Søke etter filnavn — bruk Glob
|
|
29
|
+
- Søke i filinnhold — bruk Grep
|
|
30
|
+
- Redigere filer — bruk Edit
|
|
31
|
+
- Skrive filer — bruk Write
|
|
32
|
+
- Vise informasjon til brukeren — skriv direkte i responsteksten
|
|
33
|
+
- Langvarige prosesser (dev server, watch-modus) — anbefal brukeren å kjøre manuelt
|
|
34
|
+
|
|
35
|
+
## Merknader
|
|
36
|
+
|
|
37
|
+
- Stier med mellomrom må omsluttes med doble anførselstegn
|
|
38
|
+
- Utdata over 30 000 tegn blir avkortet
|
|
39
|
+
- Resultater fra bakgrunnskommandoer hentes via TaskOutput
|
|
40
|
+
- Bruk helst absolutte stier, unngå `cd`
|
|
41
|
+
- Uavhengige kommandoer kan kalle flere Bash parallelt
|
|
42
|
+
- Avhengige kommandoer lenkes med `&&`
|
|
43
|
+
- Shell-miljøet initialiseres fra brukerens profil (bash eller zsh)
|
|
44
|
+
|
|
45
|
+
## Betydning i cc-viewer
|
|
46
|
+
|
|
47
|
+
Bash-kall vises i forespørselsloggen som et par av `tool_use` (inneholder kommandoen) og `tool_result` (inneholder utdata) content blocks. Kommandoutdata kan brukes til å analysere modellens operasjonsatferd.
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# Edit
|
|
2
|
+
|
|
3
|
+
## Definisjon
|
|
4
|
+
|
|
5
|
+
Redigerer filer via nøyaktig strengerstatning. Erstatter `old_string` med `new_string` i filen.
|
|
6
|
+
|
|
7
|
+
## Parametere
|
|
8
|
+
|
|
9
|
+
| Parameter | Type | Påkrevd | Beskrivelse |
|
|
10
|
+
|-----------|------|---------|-------------|
|
|
11
|
+
| `file_path` | string | Ja | Absolutt sti til filen som skal endres |
|
|
12
|
+
| `old_string` | string | Ja | Originalteksten som skal erstattes |
|
|
13
|
+
| `new_string` | string | Ja | Ny tekst etter erstatning (må være forskjellig fra old_string) |
|
|
14
|
+
| `replace_all` | boolean | Nei | Om alle treff skal erstattes, standard `false` |
|
|
15
|
+
|
|
16
|
+
## Bruksscenarioer
|
|
17
|
+
|
|
18
|
+
**Egnet for bruk:**
|
|
19
|
+
- Endre spesifikke kodedeler i eksisterende filer
|
|
20
|
+
- Fikse feil, oppdatere logikk
|
|
21
|
+
- Gi nytt navn til variabler (med `replace_all: true`)
|
|
22
|
+
- Alle scenarioer som krever nøyaktig endring av filinnhold
|
|
23
|
+
|
|
24
|
+
**Ikke egnet for bruk:**
|
|
25
|
+
- Opprette nye filer — bruk Write
|
|
26
|
+
- Omfattende omskriving — kan kreve Write for å overskrive hele filen
|
|
27
|
+
|
|
28
|
+
## Merknader
|
|
29
|
+
|
|
30
|
+
- Filen må først leses via Read før bruk, ellers oppstår feil
|
|
31
|
+
- `old_string` må være unik i filen, ellers mislykkes redigeringen. Hvis den ikke er unik, må du gi mer kontekst for å gjøre den unik, eller bruke `replace_all`
|
|
32
|
+
- Behold original innrykk (tab/mellomrom) ved redigering av tekst, ikke inkluder linjenummerprefikset fra Read-utdata
|
|
33
|
+
- Foretrekk å redigere eksisterende filer fremfor å opprette nye
|
|
34
|
+
- `new_string` må være forskjellig fra `old_string`
|
|
35
|
+
|
|
36
|
+
## Betydning i cc-viewer
|
|
37
|
+
|
|
38
|
+
Edit-kall vises i forespørselsloggen som `tool_use` content block, der `input` inneholder `old_string` og `new_string`, som kan brukes til å spore hvilke endringer modellen har gjort i filer.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# EnterPlanMode
|
|
2
|
+
|
|
3
|
+
## Definisjon
|
|
4
|
+
|
|
5
|
+
Bytter Claude Code til planleggingsmodus, for å utforske kodebasen og designe løsninger før implementering.
|
|
6
|
+
|
|
7
|
+
## Parametere
|
|
8
|
+
|
|
9
|
+
Ingen parametere.
|
|
10
|
+
|
|
11
|
+
## Bruksscenarioer
|
|
12
|
+
|
|
13
|
+
**Egnet for bruk:**
|
|
14
|
+
- Implementering av nye funksjoner — krever arkitekturbeslutninger
|
|
15
|
+
- Det finnes flere mulige løsninger — krever brukervalg
|
|
16
|
+
- Kodeendringer påvirker eksisterende atferd eller struktur
|
|
17
|
+
- Endringer i flere filer — kan involvere mer enn 2–3 filer
|
|
18
|
+
- Uklare krav — trenger utforskning først for å forstå omfanget
|
|
19
|
+
- Brukerpreferanser er viktige — implementeringen kan ha flere rimelige retninger
|
|
20
|
+
|
|
21
|
+
**Ikke egnet for bruk:**
|
|
22
|
+
- Enkeltlinje- eller fålinjefikser (skrivefeil, åpenbare feil)
|
|
23
|
+
- Brukeren har gitt svært spesifikke instruksjoner
|
|
24
|
+
- Rene forsknings-/utforskningsoppgaver — bruk Task (Explore-type)
|
|
25
|
+
|
|
26
|
+
## Atferd i planleggingsmodus
|
|
27
|
+
|
|
28
|
+
Etter å ha gått inn i planleggingsmodus vil Claude Code:
|
|
29
|
+
1. Bruke Glob-, Grep- og Read-verktøy for å utforske kodebasen grundig
|
|
30
|
+
2. Forstå eksisterende mønstre og arkitektur
|
|
31
|
+
3. Designe implementeringsplan
|
|
32
|
+
4. Sende planen til brukeren for godkjenning
|
|
33
|
+
5. Bruke AskUserQuestion for avklaring ved behov
|
|
34
|
+
6. Gå ut via ExitPlanMode når planen er klar
|
|
35
|
+
|
|
36
|
+
## Merknader
|
|
37
|
+
|
|
38
|
+
- Dette verktøyet krever brukersamtykke for å gå inn i planleggingsmodus
|
|
39
|
+
- Hvis du er usikker på om planlegging er nødvendig, foretrekk planlegging — å justere på forhånd er bedre enn å gjøre om
|
|
40
|
+
|
|
41
|
+
## Betydning i cc-viewer
|
|
42
|
+
|
|
43
|
+
EnterPlanMode-kall vises i forespørselsloggen som `tool_use` content block. Etter å ha gått inn i planleggingsmodus består forespørselssekvensene vanligvis hovedsakelig av utforskende verktøykall (Glob, Grep, Read), inntil ExitPlanMode kalles.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# ExitPlanMode
|
|
2
|
+
|
|
3
|
+
## Definisjon
|
|
4
|
+
|
|
5
|
+
Går ut av planleggingsmodus og sender planen til brukeren for godkjenning. Planinnholdet leses fra planfilen som ble skrevet tidligere.
|
|
6
|
+
|
|
7
|
+
## Parametere
|
|
8
|
+
|
|
9
|
+
| Parameter | Type | Påkrevd | Beskrivelse |
|
|
10
|
+
|-----------|------|---------|-------------|
|
|
11
|
+
| `allowedPrompts` | array | Nei | Liste over tillatelsesbeskrivelser som kreves for implementeringsplanen |
|
|
12
|
+
|
|
13
|
+
Hvert element i `allowedPrompts`-arrayen:
|
|
14
|
+
|
|
15
|
+
| Felt | Type | Påkrevd | Beskrivelse |
|
|
16
|
+
|------|------|---------|-------------|
|
|
17
|
+
| `tool` | enum | Ja | Gjeldende verktøy, for øyeblikket støttes kun `Bash` |
|
|
18
|
+
| `prompt` | string | Ja | Semantisk beskrivelse av operasjonen (f.eks. "run tests", "install dependencies") |
|
|
19
|
+
|
|
20
|
+
## Bruksscenarioer
|
|
21
|
+
|
|
22
|
+
**Egnet for bruk:**
|
|
23
|
+
- Planen er ferdig i planleggingsmodus og klar til å sendes for brukergodkjenning
|
|
24
|
+
- Brukes kun for implementeringsoppgaver som krever kodeskriving
|
|
25
|
+
|
|
26
|
+
**Ikke egnet for bruk:**
|
|
27
|
+
- Rene forsknings-/utforskningsoppgaver — trenger ikke å gå ut av planleggingsmodus
|
|
28
|
+
- Spørre "er planen OK?" — dette er nettopp funksjonen til dette verktøyet, ikke bruk AskUserQuestion for det
|
|
29
|
+
|
|
30
|
+
## Merknader
|
|
31
|
+
|
|
32
|
+
- Dette verktøyet aksepterer ikke planinnhold som parameter — det leser fra planfilen som ble skrevet tidligere
|
|
33
|
+
- Brukeren vil se innholdet i planfilen for godkjenning
|
|
34
|
+
- Ikke bruk AskUserQuestion før du kaller dette verktøyet for å spørre "er planen OK", det er overflødig
|
|
35
|
+
- Ikke nevn "planen" i spørsmål, fordi brukeren ikke ser planinnholdet før ExitPlanMode
|
|
36
|
+
|
|
37
|
+
## Betydning i cc-viewer
|
|
38
|
+
|
|
39
|
+
ExitPlanMode-kall markerer slutten på planleggingsfasen. I forespørselsloggen går forespørslene etter dette kallet vanligvis over til implementeringsoperasjoner (Edit, Write, Bash osv.).
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Glob
|
|
2
|
+
|
|
3
|
+
## Definisjon
|
|
4
|
+
|
|
5
|
+
Raskt filnavnmønstermatchingsverktøy som støtter kodebaser av enhver størrelse. Returnerer matchende filstier sortert etter endringstid.
|
|
6
|
+
|
|
7
|
+
## Parametere
|
|
8
|
+
|
|
9
|
+
| Parameter | Type | Påkrevd | Beskrivelse |
|
|
10
|
+
|-----------|------|---------|-------------|
|
|
11
|
+
| `pattern` | string | Ja | Glob-mønster (f.eks. `**/*.js`, `src/**/*.ts`) |
|
|
12
|
+
| `path` | string | Nei | Søkekatalog, standard er gjeldende arbeidskatalog. Ikke send "undefined" eller "null" |
|
|
13
|
+
|
|
14
|
+
## Bruksscenarioer
|
|
15
|
+
|
|
16
|
+
**Egnet for bruk:**
|
|
17
|
+
- Søke etter filer med filnavnmønster
|
|
18
|
+
- Finne alle filer av en bestemt type (f.eks. alle `.tsx`-filer)
|
|
19
|
+
- Lokalisere filer når du søker etter en bestemt klassedefinisjon (f.eks. `class Foo`)
|
|
20
|
+
- Kan starte flere Glob-kall parallelt i en enkelt melding
|
|
21
|
+
|
|
22
|
+
**Ikke egnet for bruk:**
|
|
23
|
+
- Søke i filinnhold — bruk Grep
|
|
24
|
+
- Åpen utforskning som krever flere søkerunder — bruk Task (Explore-type)
|
|
25
|
+
|
|
26
|
+
## Merknader
|
|
27
|
+
|
|
28
|
+
- Støtter standard glob-syntaks: `*` matcher ett nivå, `**` matcher flere nivåer, `{}` matcher flere valg
|
|
29
|
+
- Resultater sortert etter endringstid
|
|
30
|
+
- Anbefales fremfor `find`-kommandoen i Bash
|
|
31
|
+
|
|
32
|
+
## Betydning i cc-viewer
|
|
33
|
+
|
|
34
|
+
Glob-kall vises i forespørselsloggen som et par av `tool_use` / `tool_result` content blocks. `tool_result` inneholder listen over matchende filstier.
|