pythonclaw 0.6.2__py3-none-any.whl → 0.6.3__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.
@@ -334,18 +334,11 @@ class TelegramBot:
334
334
  await live_msg.edit_text(before[:4096])
335
335
  else:
336
336
  await update.message.reply_text(before[:4096])
337
+ sent_any = True
337
338
  except Exception:
338
339
  pass
339
340
  live_msg = None
340
341
  live_text = ""
341
- tools = marker.group(1)
342
- try:
343
- await update.message.reply_text(
344
- f"\U0001f527 {tools}\u2026"
345
- )
346
- except Exception:
347
- pass
348
- sent_any = True
349
342
  buf = [raw[marker.end():].lstrip()]
350
343
  last_edit = now
351
344
  continue
pythonclaw/core/agent.py CHANGED
@@ -323,23 +323,32 @@ class Agent:
323
323
  - **Memory**: `remember(key,val)`, `recall(query)`, `memory_get(path)`, `memory_list_files()`, `forget(key)`, `update_index(content)`
324
324
  - **Skill creation**: `create_skill` — create generic reusable skills when none fit{web_search_section}
325
325
 
326
+ ### Task Execution Modes
327
+ Choose your approach based on task complexity:
328
+
329
+ **ReAct** (simple tasks, 1-2 steps): Act directly — call tools and respond immediately.
330
+
331
+ **Plan & Execute** (complex tasks, 3+ steps, research, multi-source analysis):
332
+ 1. Output a short numbered plan (3-6 steps) as your first response
333
+ 2. Execute each step using tools — call multiple tools in parallel when steps are independent (up to {self.MAX_PARALLEL_SKILLS} parallel skills)
334
+ 3. After each step, briefly summarize what you found before moving on
335
+ 4. After all steps, synthesize a concise final answer
336
+
337
+ You decide which mode fits. Don't announce the mode name.
338
+
326
339
  ### Rules
327
- - **Parallel skill execution**: For complex tasks, call multiple `use_skill` in ONE response (up to {self.MAX_PARALLEL_SKILLS} skills). They run in parallel for speed. Example: researching a topic? Activate `news`, `web_search`, and `summarize` simultaneously.
328
340
  - Batch independent tool calls in one response (parallel execution).
329
341
  - Minimize search rounds (1-3 max). Combine queries. Don't repeat.
330
342
  - Proactively `remember` user preferences, decisions, key facts.
331
343
  - Use `recall` when user references past context.
332
344
  - Memory auto-loaded at session start. INDEX.md = curated system info.
333
-
334
- Always verify command output.
345
+ - NEVER output tool calls as XML or text. Always use the function calling API.
335
346
 
336
347
  ### Response Guidelines
337
348
  - Answer the user's question directly and concisely.
338
- - For complex multi-step tasks: share a **brief plan** first (2-4 bullet points), then work step by step. Report progress after each major step — don't wait until the end.
339
- - Keep responses focused and concise — under 300 words when possible. Break long answers into short paragraphs.
349
+ - Keep responses focused under 300 words when possible. Break long answers into short paragraphs.
340
350
  - Do NOT mention what skills or tools you have available, unless explicitly asked.
341
351
  - Do NOT list other things you can do at the end of your response.
342
- - NEVER output tool calls as XML or text. Always use the function calling API.
343
352
  """
344
353
  # ── Auto-inject memory context ────────────────────────────────────
345
354
  boot_mem = self.memory.boot_context(max_chars=3000)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pythonclaw
3
- Version: 0.6.2
3
+ Version: 0.6.3
4
4
  Summary: OpenClaw reimagined in pure Python — autonomous AI agent with memory, RAG, skills, web dashboard, and multi-channel support.
5
5
  Author-email: Eric Wang <wangchen2007915@gmail.com>
6
6
  License: MIT
@@ -8,10 +8,10 @@ pythonclaw/onboard.py,sha256=X6ViAduToi9P9J_WdWm9mKQtTb48IwGj5DiqS4jjt0Y,13921
8
8
  pythonclaw/server.py,sha256=zUV09uNTmzK597swGwt45gdmVxuHPsF7ogVV0DHBIhA,4521
9
9
  pythonclaw/session_manager.py,sha256=LKRolNa2i3evb6Ps1zRbajlk4AfvujbR1iPlhfAMBj8,5981
10
10
  pythonclaw/channels/discord_bot.py,sha256=95IJcBJlcnOSbsg0LILq6uBYfhdpb-iLLlRw_41Xz7U,11744
11
- pythonclaw/channels/telegram_bot.py,sha256=Yb2kKQy9V1VAJWJzHNvCtGAxircxi4h7fImh7Qg1A3U,22183
11
+ pythonclaw/channels/telegram_bot.py,sha256=WGZFgDcHIOLKNSphMT79ZrpC_6XbsZ-WU8t9Yto8LsQ,21944
12
12
  pythonclaw/channels/whatsapp_bot.py,sha256=60n6W3ONEIKAdpmI6gCS9RWf5KkLtMUU4J5NJH8vQEY,10650
13
13
  pythonclaw/core/__init__.py,sha256=G5LCqUcCIcYYbMv6SreqS-kj8T9n-IvBAhHEG7wDF5w,661
14
- pythonclaw/core/agent.py,sha256=rzZdB8RJehife0hBIgxa0omgP-vsiTmYwZniPpdM1D8,49995
14
+ pythonclaw/core/agent.py,sha256=75cLwIF2HH9-IH9YpHoujyPGg9Sapg6vCTMMfHRY1vk,50158
15
15
  pythonclaw/core/compaction.py,sha256=b3zrqwBhPmsmQdfRjrvKK6j0hcfNLpiRrZ8qFxY1h1U,8966
16
16
  pythonclaw/core/persistent_agent.py,sha256=nnY1vaZFsn0Wd_MQ27wbG7sRjO1v2ZxbwXjnJGKsBZc,4932
17
17
  pythonclaw/core/session_store.py,sha256=V44wMBbMpbDCh1aiCa5lb0_iXrKA_7VrR1rOHGGZYhs,9458
@@ -112,9 +112,9 @@ pythonclaw/web/app.py,sha256=uudrxieo5oGwhQUBLzkmn6GU6SnR4VKlRYOg1bFAYQg,32208
112
112
  pythonclaw/web/static/favicon.png,sha256=zJA13uE8mSe6lOlR5NyAhiOmnZkfv7ZlBbSBNCH7iTM,2557
113
113
  pythonclaw/web/static/index.html,sha256=wU4Lw0NcenS0i0HsJS6a6ceFefDxpRsUQnCXVUXYWVU,93734
114
114
  pythonclaw/web/static/logo.png,sha256=h7v0HHllD23FtmCL2UvjjTDt0UgqKjGy5jOhI3rb7lM,28359
115
- pythonclaw-0.6.2.dist-info/licenses/LICENSE,sha256=wbYsm5Ofe8cnxHgWSnSG1vUJDNiY1DIeTyxHSbo1HqM,1066
116
- pythonclaw-0.6.2.dist-info/METADATA,sha256=YgdWePd76TK3ypl8RECUMqkDI4E2JxY_xUDdFoUb0hM,14919
117
- pythonclaw-0.6.2.dist-info/WHEEL,sha256=YCfwYGOYMi5Jhw2fU4yNgwErybb2IX5PEwBKV4ZbdBo,91
118
- pythonclaw-0.6.2.dist-info/entry_points.txt,sha256=4uGCuBw-id_22IRdkoxPVOOcwgiPX5lNEpD1XKQWE4I,52
119
- pythonclaw-0.6.2.dist-info/top_level.txt,sha256=S_lM2VH3gP3UeZbSWHXIrBOCNtoqn5pk491IAzgsV7M,11
120
- pythonclaw-0.6.2.dist-info/RECORD,,
115
+ pythonclaw-0.6.3.dist-info/licenses/LICENSE,sha256=wbYsm5Ofe8cnxHgWSnSG1vUJDNiY1DIeTyxHSbo1HqM,1066
116
+ pythonclaw-0.6.3.dist-info/METADATA,sha256=7uJE3m-kzB0X-DKqlHM5D2GLGfSY7yFrmx-6Xb3NiJc,14919
117
+ pythonclaw-0.6.3.dist-info/WHEEL,sha256=YCfwYGOYMi5Jhw2fU4yNgwErybb2IX5PEwBKV4ZbdBo,91
118
+ pythonclaw-0.6.3.dist-info/entry_points.txt,sha256=4uGCuBw-id_22IRdkoxPVOOcwgiPX5lNEpD1XKQWE4I,52
119
+ pythonclaw-0.6.3.dist-info/top_level.txt,sha256=S_lM2VH3gP3UeZbSWHXIrBOCNtoqn5pk491IAzgsV7M,11
120
+ pythonclaw-0.6.3.dist-info/RECORD,,