Skip to content

feat: add QClaw agent support#524

Open
arbing wants to merge 3 commits into
kenn-io:mainfrom
arbing:qclaw
Open

feat: add QClaw agent support#524
arbing wants to merge 3 commits into
kenn-io:mainfrom
arbing:qclaw

Conversation

@arbing
Copy link
Copy Markdown

@arbing arbing commented May 21, 2026

  • Register QClaw as a supported OpenClaw wrapper with its own agent type, configuration keys, default directory, and frontend metadata.
  • Parse QClaw JSONL transcripts from qclaw.qq.com, including messages, thinking blocks, tool calls, tool results, and token usage.
  • Discover active and archived QClaw session files under .qclaw/agents while avoiding duplicate archived transcripts.
  • Wire QClaw path classification into incremental sync and cover active/archive classification behavior with tests.
  • Document QCLAW_DIR in CLI help so users can point agentsview at custom QClaw data directories.

- Register QClaw as a supported OpenClaw wrapper with its own agent type, configuration keys, default directory, and frontend metadata.
- Parse QClaw JSONL transcripts from qclaw.qq.com, including messages, thinking blocks, tool calls, tool results, and token usage.
- Discover active and archived QClaw session files under .qclaw/agents while avoiding duplicate archived transcripts.
- Wire QClaw path classification into incremental sync and cover active/archive classification behavior with tests.
- Document QCLAW_DIR in CLI help so users can point agentsview at custom QClaw data directories.
@roborev-ci
Copy link
Copy Markdown

roborev-ci Bot commented May 21, 2026

roborev: Combined Review (8e037ff)

PR has one medium issue to address before merge.

Medium

  • scripts/e2e-server.sh:57 - The e2e server wrapper does not isolate QClaw discovery. QClaw now adds a default ~/.qclaw/agents discovery root, but the script only overrides the older agent env vars, so developers with real QClaw sessions may have those sessions discovered during e2e runs. This breaks the script’s isolation guarantee and can make tests nondeterministic.

    Fix: Add QCLAW_DIR="$EMPTY_DIR" \ alongside OPENCLAW_DIR in scripts/e2e-server.sh.


Synthesized from 3 reviews (agents: codex, gemini | types: default, security)

- Set QCLAW_DIR to the empty e2e fixture directory so the server wrapper does not discover real local QClaw sessions.
@roborev-ci
Copy link
Copy Markdown

roborev-ci Bot commented May 21, 2026

roborev: Combined Review (ec0272d)

Summary verdict: One medium issue remains; no high or critical findings were reported.

Medium

  • internal/parser/qclaw.go:175 - QClaw toolResult messages compute ContentLength but do not populate ParsedToolResult.ContentRaw. As a result, pairToolResults cannot decode and store/display result content for matching tool calls, so QClaw tool output is silently dropped even for unblocked categories.
    • Fix: Set ContentRaw: content.Raw on ParsedToolResult and add a parser or sync test verifying a QClaw tool result appears on the paired tool call.

Synthesized from 3 reviews (agents: codex, gemini | types: default, security)

- Store raw QClaw toolResult content so paired tool calls can display output
- Add parser coverage for decoded QClaw tool result content
@roborev-ci
Copy link
Copy Markdown

roborev-ci Bot commented May 21, 2026

roborev: Combined Review (ff7f420)

No Medium, High, or Critical findings were reported.

All available review outputs agree the code is clean.


Synthesized from 3 reviews (agents: codex, gemini | types: default, security)

@roborev-ci
Copy link
Copy Markdown

roborev-ci Bot commented May 21, 2026

roborev: Combined Review (ff7f420)

Clean: all completed reviews report no Medium, High, or Critical findings.

No issues found.


Synthesized from 3 reviews (agents: codex, gemini | types: default, security)

@roborev-ci
Copy link
Copy Markdown

roborev-ci Bot commented May 21, 2026

roborev: Combined Review (ff7f420)

Verdict: No Medium, High, or Critical issues were reported.

All populated review outputs found the code clean.


Synthesized from 3 reviews (agents: codex, gemini | types: default, security)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant