klaude-code 1.2.16__py3-none-any.whl → 1.2.17__py3-none-any.whl
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.
- klaude_code/cli/runtime.py +12 -2
- klaude_code/command/__init__.py +3 -0
- klaude_code/command/export_online_cmd.py +149 -0
- klaude_code/config/config.py +16 -17
- klaude_code/core/manager/sub_agent_manager.py +1 -1
- klaude_code/core/prompts/prompt-sub-agent-oracle.md +0 -1
- klaude_code/core/prompts/prompt-sub-agent-web.md +48 -0
- klaude_code/core/task.py +8 -0
- klaude_code/core/tool/__init__.py +2 -0
- klaude_code/core/tool/report_back_tool.py +28 -2
- klaude_code/core/tool/web/web_search_tool.md +23 -0
- klaude_code/core/tool/web/web_search_tool.py +126 -0
- klaude_code/protocol/commands.py +1 -0
- klaude_code/protocol/events.py +8 -0
- klaude_code/protocol/sub_agent/__init__.py +1 -1
- klaude_code/protocol/sub_agent/explore.py +1 -1
- klaude_code/protocol/sub_agent/web.py +78 -0
- klaude_code/protocol/tools.py +1 -0
- klaude_code/session/templates/export_session.html +99 -24
- klaude_code/ui/modes/repl/event_handler.py +36 -9
- klaude_code/ui/modes/repl/renderer.py +3 -3
- klaude_code/ui/renderers/sub_agent.py +14 -10
- klaude_code/ui/renderers/tools.py +4 -10
- klaude_code/ui/rich/status.py +32 -6
- {klaude_code-1.2.16.dist-info → klaude_code-1.2.17.dist-info}/METADATA +112 -21
- {klaude_code-1.2.16.dist-info → klaude_code-1.2.17.dist-info}/RECORD +28 -25
- klaude_code/core/prompts/prompt-sub-agent-webfetch.md +0 -46
- klaude_code/protocol/sub_agent/web_fetch.py +0 -74
- {klaude_code-1.2.16.dist-info → klaude_code-1.2.17.dist-info}/WHEEL +0 -0
- {klaude_code-1.2.16.dist-info → klaude_code-1.2.17.dist-info}/entry_points.txt +0 -0
|
@@ -10,13 +10,14 @@ klaude_code/cli/auth_cmd.py,sha256=UWMHjn9xZp2o8OZc-x8y9MnkZgRWOkFXk05iKJYcySE,2
|
|
|
10
10
|
klaude_code/cli/config_cmd.py,sha256=zlqQV2DCU1NqCQ1th9v-bduw84sGM4739-iyJBoiNSA,2897
|
|
11
11
|
klaude_code/cli/debug.py,sha256=kIgdmlMhAKg7S42uYvwwK8q_5EdKsEHSd1fiHUW176Q,2417
|
|
12
12
|
klaude_code/cli/main.py,sha256=kviR4yqAaLU_KiMT50px-fTLFWfVBWr4ZzhraH6b5qQ,8679
|
|
13
|
-
klaude_code/cli/runtime.py,sha256=
|
|
13
|
+
klaude_code/cli/runtime.py,sha256=fls03WSeWrRZ0Z_WVg1BzbYcpEOzq8_pnJMjzdrvAZA,12141
|
|
14
14
|
klaude_code/cli/session_cmd.py,sha256=jAopkqq_DGgoDIcGxT-RSzn9R4yqBC8NCaNgK1GLqnQ,2634
|
|
15
|
-
klaude_code/command/__init__.py,sha256=
|
|
15
|
+
klaude_code/command/__init__.py,sha256=UomokpjnAFhZElfCzCKiHBKkWBDvciktJmB-8XVIu7M,3184
|
|
16
16
|
klaude_code/command/clear_cmd.py,sha256=diIe1pscX1ko7bRN4FGylsTvDSAF6HHPwnsbXqTtHP0,657
|
|
17
17
|
klaude_code/command/command_abc.py,sha256=1Wwp94Q3W08GNCraYYEGcjjNC7JLIei6E953zSZ2lZ4,2605
|
|
18
18
|
klaude_code/command/diff_cmd.py,sha256=mQu-FedUsZabE3-KwZV2JmOfm67-A41C2gz7rr6N9W8,5251
|
|
19
19
|
klaude_code/command/export_cmd.py,sha256=BPY3zYzUUuVDetakmRQpHkx1IOMw-jEQAu0LOUZn88I,3478
|
|
20
|
+
klaude_code/command/export_online_cmd.py,sha256=U9-athU84NUm7OY2Ar3Q3hVxvONUME2BqAK9_Q7VcsY,5686
|
|
20
21
|
klaude_code/command/help_cmd.py,sha256=N9X9q2hw7AXrmvBszmzL6tYz3GNZR768wMQqmC0Vp1Q,1692
|
|
21
22
|
klaude_code/command/model_cmd.py,sha256=dIjAlh2PAsjKFzEQ9JrQDslPnfdl16k9whiLd7gevcc,1505
|
|
22
23
|
klaude_code/command/prompt-deslop.md,sha256=YGaAXqem39zd0UWCFjWUj83Cf7cvUJq1768aJExFqeg,1346
|
|
@@ -32,7 +33,7 @@ klaude_code/command/status_cmd.py,sha256=F7XgfivBm80kJEsCgRHGXWOALAT_Y2QyLQ38ooc
|
|
|
32
33
|
klaude_code/command/terminal_setup_cmd.py,sha256=iSYGZlflj_i-7i-9FhfhtbyyIe3UNkhPeehZezi-ULM,10944
|
|
33
34
|
klaude_code/command/thinking_cmd.py,sha256=Q2lW-RLiEFLRztGio7M0EXsZx0NS3TjrZwfLtlTTTrY,8151
|
|
34
35
|
klaude_code/config/__init__.py,sha256=Qrqvi8nizkj6N77h2vDj0r4rbgCiqxvz2HLBPFuWulA,120
|
|
35
|
-
klaude_code/config/config.py,sha256=
|
|
36
|
+
klaude_code/config/config.py,sha256=2jvM6a8zoC-TdRFaLIw3OW5paxxeXC6l-o05ds4RysA,7263
|
|
36
37
|
klaude_code/config/list_model.py,sha256=9YOxhWE0J59NaY-SrgPA9_jA1A8rlOGwWmzK0TRuos4,8011
|
|
37
38
|
klaude_code/config/select_model.py,sha256=aOizajRXcc_IOy0bSzK_KOZhbMQSx4g6IeNkgLsyV1c,2168
|
|
38
39
|
klaude_code/const/__init__.py,sha256=uNLYBV7avW00NQDJ_ZB6n0xEeF-CYlyswKOBAHk2MmI,4256
|
|
@@ -43,7 +44,7 @@ klaude_code/core/manager/__init__.py,sha256=6CswltCHXBUcezlW7xui2S1swDp8JTkS1YiE
|
|
|
43
44
|
klaude_code/core/manager/agent_manager.py,sha256=Z_LEV9WP-4h6tLAy4_WJnnJElY8MfH1OTRHk_LRw0VI,5202
|
|
44
45
|
klaude_code/core/manager/llm_clients.py,sha256=X2oMFWgJcP0tK8GEtMMDYR3HyR6_H8FuyCqpzWF5x2k,871
|
|
45
46
|
klaude_code/core/manager/llm_clients_builder.py,sha256=pPZ_xBh-_ipV66L-9a1fnwNos4iik82Zkq0E0y3WrfI,1521
|
|
46
|
-
klaude_code/core/manager/sub_agent_manager.py,sha256=
|
|
47
|
+
klaude_code/core/manager/sub_agent_manager.py,sha256=G4se7JvDBYtEJ2t-dzOAoBYZcQcyjlAoIaAZwsnSn0s,4709
|
|
47
48
|
klaude_code/core/prompt.py,sha256=o0BHYPdr8Jcv7xGWGgNRKvWsrw9D51MJGNWq8JYH4o0,3552
|
|
48
49
|
klaude_code/core/prompts/prompt-claude-code.md,sha256=c7kNgwjJqnbwQuKWGJoMx-AMbf1gxAFC3ZFDhngBe74,8293
|
|
49
50
|
klaude_code/core/prompts/prompt-codex-gpt-5-1-codex-max.md,sha256=SW-y8AmR99JL_9j26k9YVAOQuZ18vR12aT5CWHkZDc4,11741
|
|
@@ -51,12 +52,12 @@ klaude_code/core/prompts/prompt-codex-gpt-5-1.md,sha256=jNi593_4L3EoMvjS0TwltF2b
|
|
|
51
52
|
klaude_code/core/prompts/prompt-gemini.md,sha256=JjE1tHSByGKJzjn4Gpj1zekT7ry1Yqbwx5qx3fZy2gE,3901
|
|
52
53
|
klaude_code/core/prompts/prompt-minimal.md,sha256=6-ZmQQkE3f92W_3V2wS7ocB13wLog1_UojCjZG0K4v8,1559
|
|
53
54
|
klaude_code/core/prompts/prompt-sub-agent-explore.md,sha256=i0I9LFB3X8VZIQtxK87CXwcRKowSO_HJxSIKopkFy_Q,2123
|
|
54
|
-
klaude_code/core/prompts/prompt-sub-agent-oracle.md,sha256
|
|
55
|
-
klaude_code/core/prompts/prompt-sub-agent-
|
|
55
|
+
klaude_code/core/prompts/prompt-sub-agent-oracle.md,sha256=1PLI3snvxnenCOPVrL0IxZnBl5b2xxGhlufHAyLyf60,1376
|
|
56
|
+
klaude_code/core/prompts/prompt-sub-agent-web.md,sha256=3wq3el0dU_RotKuOdwBkoHtnxRmIX9B_yGkZH6hKzxo,1910
|
|
56
57
|
klaude_code/core/prompts/prompt-sub-agent.md,sha256=dmmdsOenbAOfqG6FmdR88spOLZkXmntDBs-cmZ9DN_g,897
|
|
57
58
|
klaude_code/core/reminders.py,sha256=b4w6HRMY1SAZaBUXbEkil1nTbQXruYDpPuJurwMczkI,19518
|
|
58
|
-
klaude_code/core/task.py,sha256=
|
|
59
|
-
klaude_code/core/tool/__init__.py,sha256=
|
|
59
|
+
klaude_code/core/task.py,sha256=MK40Tx2WOvfscM1Tqyoqq2XteR66YHcYlAlq0Yw2-LM,10388
|
|
60
|
+
klaude_code/core/tool/__init__.py,sha256=qNdrji0JlmDp6nW9wFngT_38FpsSgCMkaKhRLpTZERk,2158
|
|
60
61
|
klaude_code/core/tool/file/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
61
62
|
klaude_code/core/tool/file/_utils.py,sha256=LLmdEOJnC7MgdiAlWtBPZR0h23oM9wD_UsKqU1Nfkbs,774
|
|
62
63
|
klaude_code/core/tool/file/apply_patch.py,sha256=LZd3pYQ9ow_TxiFnqYuzD216HmvkLX6lW6BoMd9iQRs,17080
|
|
@@ -76,7 +77,7 @@ klaude_code/core/tool/memory/memory_tool.py,sha256=xasFf1IQp1LFaL4ctDIQt5jfrd_z6
|
|
|
76
77
|
klaude_code/core/tool/memory/skill_loader.py,sha256=DOlfALn4GwSPHDubNhYtzxM5di29uE7_tOdRi3yxfDc,8726
|
|
77
78
|
klaude_code/core/tool/memory/skill_tool.md,sha256=UfjJK5EGAd3mf7ym5rIrRdPyV3kBTxNnwzOjNnHOBrE,973
|
|
78
79
|
klaude_code/core/tool/memory/skill_tool.py,sha256=8SC4asNZSKfExuhzbyGz4f2cr78PgCpNkut_31IHePw,3602
|
|
79
|
-
klaude_code/core/tool/report_back_tool.py,sha256=
|
|
80
|
+
klaude_code/core/tool/report_back_tool.py,sha256=KRZzQAIxniwXe58SDJcfK_DCf9TFFAx8XC75wPEjmpY,3246
|
|
80
81
|
klaude_code/core/tool/shell/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
81
82
|
klaude_code/core/tool/shell/bash_tool.md,sha256=ILKpnRCBTkU2uSDEdZQjNYo1l6hsM4TO-3RD5zWC61c,3935
|
|
82
83
|
klaude_code/core/tool/shell/bash_tool.py,sha256=qPB7W51LmFsRxWJoqKih1vNTGIOaXE4wfxnKPzBXs6g,4490
|
|
@@ -98,6 +99,8 @@ klaude_code/core/tool/web/mermaid_tool.md,sha256=Ketpxpr7lz8238p5Q7ZzcyWchWd4dU6
|
|
|
98
99
|
klaude_code/core/tool/web/mermaid_tool.py,sha256=Ok0A27oHLnV1c__74bheUuy3wpqDJ1zaXUSxuuqsNPI,2630
|
|
99
100
|
klaude_code/core/tool/web/web_fetch_tool.md,sha256=_5U-LSoI86rD26nPb0D5BQCr6hj8eyF0UELSiyLznCA,347
|
|
100
101
|
klaude_code/core/tool/web/web_fetch_tool.py,sha256=iu6kM_-90K8mqHbK9Loui96vICV7d8rmtss68rcFqw0,4958
|
|
102
|
+
klaude_code/core/tool/web/web_search_tool.md,sha256=l5gGPx-fXHFel1zLBljm8isy9pwEYXGrq5cFzzw1VBw,1135
|
|
103
|
+
klaude_code/core/tool/web/web_search_tool.py,sha256=riI5ugsrkg1kOaaQ-Q2CYyGYx6r8WRo1db0eoitSEH0,3829
|
|
101
104
|
klaude_code/core/turn.py,sha256=4v6cWUUMXA1VLSmkc6bwJzE0kdbOPv0IiqnwzKfyKOw,11472
|
|
102
105
|
klaude_code/llm/__init__.py,sha256=b4AsqnrMIs0a5qR_ti6rZcHwFzAReTwOW96EqozEoSo,287
|
|
103
106
|
klaude_code/llm/anthropic/__init__.py,sha256=PWETvaeNAAX3ue0ww1uRUIxTJG0RpWiutkn7MlwKxBs,67
|
|
@@ -122,23 +125,23 @@ klaude_code/llm/responses/client.py,sha256=OdvnFeEOUp5aYX5hEVVZzJ8aSB5t2sfBCVNOE
|
|
|
122
125
|
klaude_code/llm/responses/input.py,sha256=qr61LmQJdcb_f-ofrAz06WpK_k4PEcI36XsyuZAXbKk,6805
|
|
123
126
|
klaude_code/llm/usage.py,sha256=cq6yZNSKBhRVVjFqBYJQrK3mw9ZSLXaTpbDeal-BjBQ,4205
|
|
124
127
|
klaude_code/protocol/__init__.py,sha256=aGUgzhYqvhuT3Mk2vj7lrHGriH4h9TSbqV1RsRFAZjQ,194
|
|
125
|
-
klaude_code/protocol/commands.py,sha256=
|
|
126
|
-
klaude_code/protocol/events.py,sha256=
|
|
128
|
+
klaude_code/protocol/commands.py,sha256=II1YcxCEfENzO8FkpPy8tU_NDGfZrMwp5REP1o2vSz4,642
|
|
129
|
+
klaude_code/protocol/events.py,sha256=KUMf1rLNdHQO9cZiQ9Pa1VsKkP1PTMbUkp18bu_jGy8,3935
|
|
127
130
|
klaude_code/protocol/llm_param.py,sha256=cb4ubLq21PIsMOC8WJb0aid12z_sT1b7FsbNJMr-jLg,4255
|
|
128
131
|
klaude_code/protocol/model.py,sha256=JDWjN_GiUwJQxVA2HFXo2cryR_UOEjDBeVB3SwmrbE8,12584
|
|
129
132
|
klaude_code/protocol/op.py,sha256=hdQTzD6zAsRMJJFaLOPvDX9gokhtIBSYNQuZ20TusI4,2824
|
|
130
133
|
klaude_code/protocol/op_handler.py,sha256=_lnv3-RxKkrTfGTNBlQ23gbHJBEtMLC8O48SYWDtPjE,843
|
|
131
|
-
klaude_code/protocol/sub_agent/__init__.py,sha256=
|
|
132
|
-
klaude_code/protocol/sub_agent/explore.py,sha256=
|
|
134
|
+
klaude_code/protocol/sub_agent/__init__.py,sha256=Abap5lPLgnSCQsVD3axfeqnj2UtxOcDLGX8e9HugfSU,3964
|
|
135
|
+
klaude_code/protocol/sub_agent/explore.py,sha256=Z4M7i98XBLew38ClXiW-hJteSYjMUu2b548rkR7JW3A,2579
|
|
133
136
|
klaude_code/protocol/sub_agent/oracle.py,sha256=0cbuutKQcvwaM--Q15mbkCdbpZMF4YjxDN1jkuGVKp4,3344
|
|
134
137
|
klaude_code/protocol/sub_agent/task.py,sha256=fvj4i1vfWXivStQ-9urDS40wTWkmNRvl6D-A0exExJg,3608
|
|
135
|
-
klaude_code/protocol/sub_agent/
|
|
136
|
-
klaude_code/protocol/tools.py,sha256=
|
|
138
|
+
klaude_code/protocol/sub_agent/web.py,sha256=873AK6WRDS_yU-m1GJ6aZ5dZv3pIwvVQlbvgvab4vcY,2918
|
|
139
|
+
klaude_code/protocol/tools.py,sha256=QvFtVAGkA5elef3HWnSs7FcxcI0FOn4N_toCLT-S6Rw,401
|
|
137
140
|
klaude_code/session/__init__.py,sha256=oXcDA5w-gJCbzmlF8yuWy3ezIW9DgFBNUs-gJHUJ-Rc,121
|
|
138
141
|
klaude_code/session/export.py,sha256=bgljE-3vGH2fKl6d8UptGmG4sPoy8gdVgSstMBsMy9M,26783
|
|
139
142
|
klaude_code/session/selector.py,sha256=gijwWQkSV20XYP3Fxr27mFXuqP4ChY2DQm_YuBOTQKw,2888
|
|
140
143
|
klaude_code/session/session.py,sha256=NY5fbMe0E3WtZCN1U6MP_Xx6cKXZ93LO6GVX5KFEzUk,21789
|
|
141
|
-
klaude_code/session/templates/export_session.html,sha256=
|
|
144
|
+
klaude_code/session/templates/export_session.html,sha256=gsHhR_Vtu8Wa_0suWkIddtuBipYBiFPylddtlQ-krkk,49677
|
|
142
145
|
klaude_code/trace/__init__.py,sha256=cETWJZZJaJ8_kA5Uki0om5n-ZpBxO9ph6YGYsJDXOEk,234
|
|
143
146
|
klaude_code/trace/log.py,sha256=0H_RqkytSpt6AAIFDg-MV_8vA9zsR9BB1UqT6moTTTg,9134
|
|
144
147
|
klaude_code/ui/__init__.py,sha256=XuEQsFUkJet8HI04cRmNLwnHOUqaPCRy4hF7PJnIfCY,2737
|
|
@@ -155,10 +158,10 @@ klaude_code/ui/modes/repl/__init__.py,sha256=35a6SUiL1SDi2i43X2VjHQw97rR7yhbLBzk
|
|
|
155
158
|
klaude_code/ui/modes/repl/clipboard.py,sha256=ZCpk7kRSXGhh0Q_BWtUUuSYT7ZOqRjAoRcg9T9n48Wo,5137
|
|
156
159
|
klaude_code/ui/modes/repl/completers.py,sha256=1SZdliYseQk6JNpCZC5I3B-j7mTe4ooVyrrNqpZ77oU,18232
|
|
157
160
|
klaude_code/ui/modes/repl/display.py,sha256=0u4ISeOoYjynF7InYyV-PMOZqP44QBbjYOLOL18V0c0,2245
|
|
158
|
-
klaude_code/ui/modes/repl/event_handler.py,sha256=
|
|
161
|
+
klaude_code/ui/modes/repl/event_handler.py,sha256=YJjf9TclTJXGIvGUvVyyHHgmGyslRUhkJEyf4CuBQW0,23553
|
|
159
162
|
klaude_code/ui/modes/repl/input_prompt_toolkit.py,sha256=EAIAtcL9EHVPmVK6oOHg0xCeZ0IOnG5S5KsaL85OHOk,6368
|
|
160
163
|
klaude_code/ui/modes/repl/key_bindings.py,sha256=Fxz9Ey2SnOHvfleMeSYVduxuofY0Yo-97hMRs-OMe-o,7800
|
|
161
|
-
klaude_code/ui/modes/repl/renderer.py,sha256=
|
|
164
|
+
klaude_code/ui/modes/repl/renderer.py,sha256=qiB6wuk-bBroN1OCDDC-h09Mduo4Utj6xAZx6YmHu-Y,11660
|
|
162
165
|
klaude_code/ui/renderers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
163
166
|
klaude_code/ui/renderers/assistant.py,sha256=Dxy6v4pX28RyWhnrjBteY8_NvDIi_jQa-j0mWt-eqWY,569
|
|
164
167
|
klaude_code/ui/renderers/common.py,sha256=TPH7LCbeJGqB8ArTsVitqJHEyOxHU6nwnRtvF04nLJ4,184
|
|
@@ -166,16 +169,16 @@ klaude_code/ui/renderers/developer.py,sha256=dlap4Cdcx4cCtbixUEQLd4UoLDaT8VXGOQt
|
|
|
166
169
|
klaude_code/ui/renderers/diffs.py,sha256=iPQxxZW1JGPwtTdCKMEkDlNb5trLm9tdWjfMRmtj6yQ,7616
|
|
167
170
|
klaude_code/ui/renderers/errors.py,sha256=c_fbnoNOnvuI3Bb24IujwV8Mpes-qWS_xCWfAcBvg6A,517
|
|
168
171
|
klaude_code/ui/renderers/metadata.py,sha256=eo5vtAyo3IILtGMOvFluDLPiFjNTBjnGny_Vo1FJ564,7988
|
|
169
|
-
klaude_code/ui/renderers/sub_agent.py,sha256=
|
|
172
|
+
klaude_code/ui/renderers/sub_agent.py,sha256=grQ_9G_7iYHdCpxrM0qDAKEMQfXcxBv0bI0GPe3s0lE,4961
|
|
170
173
|
klaude_code/ui/renderers/thinking.py,sha256=OaM41EXbqSg8d7MBbkoZPW6878HCMxF-Fuq1a4eScDI,1181
|
|
171
|
-
klaude_code/ui/renderers/tools.py,sha256=
|
|
174
|
+
klaude_code/ui/renderers/tools.py,sha256=5B_NZDYpcdaWLRO2nRF_h07PICN17vjTVBbs1Vf4cbY,21409
|
|
172
175
|
klaude_code/ui/renderers/user_input.py,sha256=rDdOYvbgJ6oePQAtyTCK-KhARfLKytpTZboZ-cFIuJQ,2603
|
|
173
176
|
klaude_code/ui/rich/__init__.py,sha256=olvMm2SteyKioOqUJbEoav2TsDr_mtKqkSaifNumjwc,27
|
|
174
177
|
klaude_code/ui/rich/live.py,sha256=Uid0QAZG7mHb4KrCF8p9c9n1nHLHzW75xSqcLZ4bLWY,2098
|
|
175
178
|
klaude_code/ui/rich/markdown.py,sha256=5gZXSnQHPZ-Gvan2XOabOcYy3imWbcoYGh4aTf7ETcM,10773
|
|
176
179
|
klaude_code/ui/rich/quote.py,sha256=tZcxN73SfDBHF_qk0Jkh9gWBqPBn8VLp9RF36YRdKEM,1123
|
|
177
180
|
klaude_code/ui/rich/searchable_text.py,sha256=DCVZgEFv7_ergAvT2v7XrfQAUXUzhmAwuVAchlIx8RY,2448
|
|
178
|
-
klaude_code/ui/rich/status.py,sha256=
|
|
181
|
+
klaude_code/ui/rich/status.py,sha256=wNQUeR76HFhhJ_EyUFk76fSWI_SSL9Bx3YCSHTeLbjU,9768
|
|
179
182
|
klaude_code/ui/rich/theme.py,sha256=SXnV4NBmAXVPCWyLBOLapB0W_0qJ9msgw_qelpjhUzI,10151
|
|
180
183
|
klaude_code/ui/terminal/__init__.py,sha256=GIMnsEcIAGT_vBHvTlWEdyNmAEpruyscUA6M_j3GQZU,1412
|
|
181
184
|
klaude_code/ui/terminal/color.py,sha256=M-i09DVlLAhAyhQjfeAi7OipoGi1p_OVkaZxeRfykY0,7135
|
|
@@ -186,7 +189,7 @@ klaude_code/ui/utils/__init__.py,sha256=YEsCLjbCPaPza-UXTPUMTJTrc9BmNBUP5CbFWlsh
|
|
|
186
189
|
klaude_code/ui/utils/common.py,sha256=UCQMun23l-EREr3xkl-Bjx67yfi9ctRTw2gcGPsOM2c,2881
|
|
187
190
|
klaude_code/ui/utils/debouncer.py,sha256=x8AYxf48Xd6tabBvH8cVl1bIV8FzyeDo3HswDjtNfwU,1266
|
|
188
191
|
klaude_code/version.py,sha256=x2OeiACPdzS87EWtaSi_UP13htm81Uq7mlV3kFy5jko,4815
|
|
189
|
-
klaude_code-1.2.
|
|
190
|
-
klaude_code-1.2.
|
|
191
|
-
klaude_code-1.2.
|
|
192
|
-
klaude_code-1.2.
|
|
192
|
+
klaude_code-1.2.17.dist-info/WHEEL,sha256=eh7sammvW2TypMMMGKgsM83HyA_3qQ5Lgg3ynoecH3M,79
|
|
193
|
+
klaude_code-1.2.17.dist-info/entry_points.txt,sha256=7CWKjolvs6dZiYHpelhA_FRJ-sVDh43eu3iWuOhKc_w,53
|
|
194
|
+
klaude_code-1.2.17.dist-info/METADATA,sha256=IEr-eRq2S40hEcKYAaPyi54pkUXvV_rdKcKn2tapA0I,6847
|
|
195
|
+
klaude_code-1.2.17.dist-info/RECORD,,
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
You are a web content fetching and analysis specialist. Your job is to retrieve content from URLs and extract or analyze information according to the user's instructions.
|
|
2
|
-
|
|
3
|
-
Your available tools:
|
|
4
|
-
- WebFetch: Fetch content from a URL. HTML pages are automatically converted to Markdown.
|
|
5
|
-
- Read: Read files from the filesystem (useful when WebFetch output is truncated and saved to a file)
|
|
6
|
-
- Bash: Run shell commands (use `rg` to search through large saved files)
|
|
7
|
-
|
|
8
|
-
Workflow:
|
|
9
|
-
1. Use WebFetch to retrieve the URL content
|
|
10
|
-
2. Analyze the content according to the user's prompt
|
|
11
|
-
3. If the output was truncated and saved to a file, use Read or `rg` to search through the full content
|
|
12
|
-
4. If you need information from a linked page, use WebFetch to follow that link
|
|
13
|
-
5. Return a clear, structured summary of your findings
|
|
14
|
-
|
|
15
|
-
Guidelines:
|
|
16
|
-
- Focus on extracting the specific information requested
|
|
17
|
-
- For large pages, prioritize the most relevant sections
|
|
18
|
-
- If content is truncated, look for the saved file path in the system reminder and use rg to search it
|
|
19
|
-
- Return structured data when appropriate (lists, tables, key-value pairs)
|
|
20
|
-
- Be concise but comprehensive in your final response
|
|
21
|
-
- Use absolute file paths when referencing saved files
|
|
22
|
-
- Avoid using emojis
|
|
23
|
-
|
|
24
|
-
Following links:
|
|
25
|
-
- If a link on the page seems relevant to answering the question, use WebFetch to follow it
|
|
26
|
-
- You can fetch multiple pages in sequence to gather all needed information
|
|
27
|
-
- After fetching a link, analyze the content yourself to extract what's needed
|
|
28
|
-
- Remember to include any fetched URLs in your Sources section if they were helpful
|
|
29
|
-
|
|
30
|
-
Handling truncated content:
|
|
31
|
-
When WebFetch output is too large, it will be truncated and the full content saved to a temporary file.
|
|
32
|
-
The file path will be shown in a system-reminder tag. Use these approaches to access the full content:
|
|
33
|
-
- `rg "pattern" /path/to/file` to search for specific content
|
|
34
|
-
- Read tool with offset/limit to read specific sections
|
|
35
|
-
|
|
36
|
-
Response format:
|
|
37
|
-
Your response should be structured as follows:
|
|
38
|
-
|
|
39
|
-
[Your answer to the user's question]
|
|
40
|
-
|
|
41
|
-
## Sources
|
|
42
|
-
- [URL 1] (saved to local: /path/to/file if saved)
|
|
43
|
-
- [URL 2]
|
|
44
|
-
...
|
|
45
|
-
|
|
46
|
-
Only include URLs that actually contributed information to your answer. The main URL is always included. Add any additional URLs you fetched that provided relevant information.
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
from __future__ import annotations
|
|
2
|
-
|
|
3
|
-
from typing import Any
|
|
4
|
-
|
|
5
|
-
from klaude_code.protocol import tools
|
|
6
|
-
from klaude_code.protocol.sub_agent import SubAgentProfile, register_sub_agent
|
|
7
|
-
|
|
8
|
-
WEB_FETCH_AGENT_DESCRIPTION = """\
|
|
9
|
-
Launch a sub-agent to fetch and analyze web content. Use this when you need to:
|
|
10
|
-
- Retrieve and extract information from a webpage
|
|
11
|
-
- Analyze web page content based on specific instructions
|
|
12
|
-
- Get structured data from URLs
|
|
13
|
-
|
|
14
|
-
This is an autonomous agent with its own reasoning capabilities. It can:
|
|
15
|
-
- Follow links and navigate across multiple pages to gather comprehensive information
|
|
16
|
-
- Decide which related pages to visit based on the initial content
|
|
17
|
-
- Aggregate information from multiple sources into a coherent response
|
|
18
|
-
|
|
19
|
-
The agent will fetch the URL content, handle HTML-to-Markdown conversion automatically, \
|
|
20
|
-
and can use tools like rg to search through large responses that were truncated and saved to files.
|
|
21
|
-
|
|
22
|
-
Usage notes:
|
|
23
|
-
- Provide a clear prompt describing what information to extract or analyze
|
|
24
|
-
- Provide an `output_format` (JSON Schema) parameter for structured data back from the sub-agent
|
|
25
|
-
- Example: `output_format={"type": "object", "properties": {"main_content": {"type": "string", "description": "The main content extracted from the page, e.g. 'This article discusses...'"}, "key_insights": {"type": "array", "items": {"type": "string"}, "description": "Key takeaways from the content, e.g. ['Insight 1', 'Insight 2']"}}, "required": ["main_content", "key_insights"]}`
|
|
26
|
-
- The agent will return a summary of the findings
|
|
27
|
-
- For large web pages, the content may be truncated and saved to a file; the agent can search through it
|
|
28
|
-
- The agent can autonomously follow links to related pages if needed to complete the task\
|
|
29
|
-
"""
|
|
30
|
-
|
|
31
|
-
WEB_FETCH_AGENT_PARAMETERS = {
|
|
32
|
-
"type": "object",
|
|
33
|
-
"properties": {
|
|
34
|
-
"description": {
|
|
35
|
-
"type": "string",
|
|
36
|
-
"description": "A short (3-5 word) description of the task",
|
|
37
|
-
},
|
|
38
|
-
"url": {
|
|
39
|
-
"type": "string",
|
|
40
|
-
"description": "The URL to fetch and analyze",
|
|
41
|
-
},
|
|
42
|
-
"prompt": {
|
|
43
|
-
"type": "string",
|
|
44
|
-
"description": "Instructions for analyzing or extracting content from the web page",
|
|
45
|
-
},
|
|
46
|
-
"output_format": {
|
|
47
|
-
"type": "object",
|
|
48
|
-
"description": "Optional JSON Schema for sub-agent structured output",
|
|
49
|
-
},
|
|
50
|
-
},
|
|
51
|
-
"required": ["description", "url", "prompt", "output_format"],
|
|
52
|
-
"additionalProperties": False,
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
def _web_fetch_prompt_builder(args: dict[str, Any]) -> str:
|
|
57
|
-
"""Build the WebFetchAgent prompt from tool arguments."""
|
|
58
|
-
url = args.get("url", "")
|
|
59
|
-
prompt = args.get("prompt", "")
|
|
60
|
-
return f"URL to fetch: {url}\nTask: {prompt}"
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
register_sub_agent(
|
|
64
|
-
SubAgentProfile(
|
|
65
|
-
name="WebFetchAgent",
|
|
66
|
-
description=WEB_FETCH_AGENT_DESCRIPTION,
|
|
67
|
-
parameters=WEB_FETCH_AGENT_PARAMETERS,
|
|
68
|
-
prompt_file="prompts/prompt-sub-agent-webfetch.md",
|
|
69
|
-
tool_set=(tools.BASH, tools.READ, tools.WEB_FETCH),
|
|
70
|
-
prompt_builder=_web_fetch_prompt_builder,
|
|
71
|
-
active_form="Fetching Web",
|
|
72
|
-
output_schema_arg="output_format",
|
|
73
|
-
)
|
|
74
|
-
)
|
|
File without changes
|
|
File without changes
|