fix: send plain string message in tau-rpc instead of structured object#25
Closed
tiagoefreitas wants to merge 1 commit intoopenclaw:mainfrom
Closed
fix: send plain string message in tau-rpc instead of structured object#25tiagoefreitas wants to merge 1 commit intoopenclaw:mainfrom
tiagoefreitas wants to merge 1 commit intoopenclaw:mainfrom
Conversation
Pi-agent-core's Agent.prompt() expects a plain string, not a structured
message object. The RPC handler passes input.message directly to agent.prompt(),
so sending { role: "user", content: [...] } causes "(command produced no output)"
errors.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Contributor
|
Appreciate the fix! I went all chaos-monkey on this while working on 2.0, so this was fixed without reviewing the PR in time. |
2 tasks
dgarson
referenced
this pull request
in dgarson/clawdbot
Feb 2, 2026
feat(ui): add empty state for overseer view when no goals exist
7 tasks
alexprime1889-prog
pushed a commit
to alexprime1889-prog/moltbot
that referenced
this pull request
Feb 8, 2026
slathrop
referenced
this pull request
in slathrop/openclaw-js
Feb 11, 2026
- Guard resolveUserPath against undefined/null input in paths.js and utils.js - Create src/agents/workspace-run.js with centralized workspace fallback - Create src/logging/redact-identifier.js for SHA-256 identifier redaction - Add classifySessionKeyShape to session-key.js for malformed key detection - Update cli-runner.js and pi-embedded-runner/run.js to use workspace-run - Pass agentId through all runner call sites (agent, cron, hooks, followup) - Replace inline sha256HexPrefix in status-all/channels.js with shared util
slathrop
referenced
this pull request
in slathrop/openclaw-js
Feb 11, 2026
Tasks completed: 2/2 (3 commits) - Task 1: resolveUserPath undefined guard + workspace-run module (#25) - Task 2: FAQ typo (#76) + .caf audio extension (#78) SUMMARY: .planning/phases/13-paths-config-refactoring/13-01-SUMMARY.md
frodo-harborbot
pushed a commit
to harborworks/openclaw
that referenced
this pull request
Feb 16, 2026
Add Cognito auth to frontend
dutch2005
added a commit
to dutch2005/openclaw
that referenced
this pull request
Feb 17, 2026
All database operations now handle async DatabaseAdapter: - seedEmbeddingCache() - async with transaction support - readMeta() / writeMeta() - return Promises - All stale file cleanup operations - awaited - All session file cleanup operations - awaited - Database close() - handle both sync/async variants - Added init() method for async post-construction All prepare().run/get/all() calls properly awaited. All linting errors resolved. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
dutch2005
added a commit
to dutch2005/openclaw
that referenced
this pull request
Feb 18, 2026
All database operations now handle async DatabaseAdapter: - seedEmbeddingCache() - async with transaction support - readMeta() / writeMeta() - return Promises - All stale file cleanup operations - awaited - All session file cleanup operations - awaited - Database close() - handle both sync/async variants - Added init() method for async post-construction All prepare().run/get/all() calls properly awaited. All linting errors resolved. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
songliu0403-rgb
pushed a commit
to songliu0403-rgb/openclaw
that referenced
this pull request
Feb 26, 2026
Co-authored-by: chatgpt-codex-connector[bot] <199175422+chatgpt-codex-connector[bot]@users.noreply.github.com>
ddupg
pushed a commit
to ddupg/openclaw
that referenced
this pull request
Feb 27, 2026
let5sne
pushed a commit
to let5sne/openclaw
that referenced
this pull request
Mar 1, 2026
Markdown files (SKILL.md, MEMORY.md, HEARTBEAT.md) are loaded as agent
context and treated as authoritative instructions. Before this change,
skill-scanner.ts only scanned JS/TS files — leaving the primary injection
vector undetected.
Changes:
- Add MD_SCANNABLE_EXTENSIONS (.md, .txt) and isMdScannable() helper
- Add MD_LINE_RULES with two injection detection patterns:
- 'injected-instruction': imperative openers (ignore/disregard/you are
now/override/execute/act as/pretend you are) at line start
- 'injected-instruction': hidden HTML comment instructions
(<!-- ignore / <!-- system / <!-- override)
- Wire MD_LINE_RULES into scanSource() for .md/.txt files
- Include .md/.txt files in walkDirWithLimit() directory traversal
Severity: warn (not critical) — markdown instructions are common in
legitimate skill docs; the rules flag suspicious imperative patterns
for human review rather than blocking.
Fixes improvement item openclaw#25 from openclaw-improvement-ideas.md.
benieralexis-sudo
pushed a commit
to benieralexis-sudo/openclaw
that referenced
this pull request
Mar 6, 2026
MOYENS (16): - openclaw#1 generateReactiveFollowUp maxLength string vs number — aligne sur string - openclaw#2 Multi-threading mort — filtre sur mappedLeads (avec score) au lieu de result.leads - openclaw#3 _checkEmailSpecificity null safety — (prospectIntel || '').match() - openclaw#4 totalContacts pre-dedup — utilise addedCount - openclaw#5 Bounces tous hard_bounce — distinction soft/hard, soft = retry pas blacklist - openclaw#8 _isSystemEmail includes() trop large — exact match + prefix patterns - openclaw#10 sendBatch bypass warmup — recordSend dans domain-manager apres chaque envoi - openclaw#11 Domain manager parsing ':' dans password — split limite a 4 segments - openclaw#12 prospectDomains jamais nettoye — cleanup LRU max 2000 entries - openclaw#13 trackNicheEvent('clicked') ignore — ajout compteur clicked - openclaw#14 apStorage.getLeads() inexistant — utilise automailer storage.getEmails() - openclaw#25 Interval HITL drafts jamais cleared — clearInterval dans gracefulShutdown FAIBLES (9): - openclaw#17 Retry skip prompt 25-35 mots → aligne sur 50-65 mots 4-blocs - openclaw#18 _scoreAndFilter gate 60 mots → 80 mots (coherent avec prompts) - openclaw#19 "curieux d'avoir ton retour" autorise dans follow-ups → remplace - openclaw#20 seniorities priorite inversee → brain > config - openclaw#21 data.growth jamais active → detecte via employee count + multi-country - openclaw#23 Fallback plan non-pondere → utilise icp-loader.getNicheForCycle() - campaign-engine: double updateEmailStatus pour opened → supprime appel redondant Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
elliot-ylambda
pushed a commit
to elliot-ylambda/magister-openclaw
that referenced
this pull request
Mar 7, 2026
Release: survey completion + scrollable options UX
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
tau-rpc.tsthat caused "(command produced no output)" errorsAgent.prompt()expects a plain string, not a structured message objectinput.messagedirectly toagent.prompt()Problem
When sending prompts through the tau-rpc client, the message was being sent as a structured object:
This caused the Pi agent to receive malformed input, resulting in "(command produced no output)" errors on Telegram relay responses.
Solution
Changed to send plain string directly:
message: promptTest plan
🤖 Generated with Claude Code