openclaw - 💡(How to fix) Fix Sub-Agent Activity: show human-readable task labels instead of raw session IDs [3 comments, 1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#51030Fetched 2026-04-08 01:05:21
View on GitHub
Comments
3
Participants
1
Timeline
5
Reactions
0
Participants
Timeline (top)
commented ×3cross-referenced ×2

Code Example

agent:main:cron:7c98cfc0-eeb2-453e-befa-4aa5db87d51f:run:d55
a241fac6-396
RAW_BUFFERClick to expand / collapse

Problem

The Sub-Agent Activity panel currently shows internal session keys:

agent:main:cron:7c98cfc0-eeb2-453e-befa-4aa5db87d51f:run:d55
a241fac6-396

This is database exhaust, not useful information. Users have no idea what's actually running.

Goal

Replace raw session IDs with human-readable task descriptors. The data already exists — it just needs to flow into the session label at spawn time.

Proposed Display

Each sub-agent entry should show:

FieldExample
Label/summaryCron job: morning summary / Coding agent: fix sessions sort
Kind badgecron, coding-agent, heartbeat, sub-agent
Statusrunning, done, failed
Started2m ago

Raw session key moves to a secondary debug view (hover tooltip / expandable row) — not the default display.

Examples

Instead of agent:main:cron:7c98cfc0..., show:

  • Cron job: morning summary
  • Coding agent: fix dashboard session sorting
  • Heartbeat: inbox/calendar check
  • Sub-agent: investigate Convex localhost rebuild bug

Data Sources

The label info is already available at spawn time:

  • Cron jobs: carry a name and payload — should flow into session label automatically
  • Sub-agents: spawned with a task/prompt — first N chars is a natural descriptor
  • Kind: session type is already tracked internally

Related

  • Part of the broader dashboard session UX: #51028 (ordering by last meaningful activity)

extent analysis

Fix Plan

To replace raw session IDs with human-readable task descriptors, we need to modify the code that generates the session labels. Here are the steps:

  • Modify the cron job spawn code to pass the job name and payload to the session label generator
  • Update the sub-agent spawn code to extract the first N characters of the task/prompt as the session label
  • Use the internal session type tracker to determine the kind badge
  • Update the UI to display the new session label, kind badge, status, and started time

Example Code

# Cron job spawn code
def spawn_cron_job(job_name, payload):
    session_label = f"Cron job: {job_name}"
    # ... spawn session with session_label ...

# Sub-agent spawn code
def spawn_sub_agent(task):
    session_label = f"Sub-agent: {task[:20]}"  # extract first 20 characters
    # ... spawn session with session_label ...

# Session label generator
def generate_session_label(session_type, session_data):
    if session_type == "cron":
        return f"Cron job: {session_data['job_name']}"
    elif session_type == "sub-agent":
        return f"Sub-agent: {session_data['task'][:20]}"
    # ... handle other session types ...

# UI update
def update_session_display(session):
    label = generate_session_label(session['type'], session['data'])
    kind_badge = session['type']
    status = session['status']
    started = session['started']
    # ... update UI with new session label, kind badge, status, and started time ...

Verification

To verify that the fix worked, check the Sub-Agent Activity panel and ensure that the session labels are now human-readable and match the expected format. For example:

  • Cron job: morning summary
  • Coding agent: fix dashboard session sorting
  • Heartbeat: inbox/calendar check
  • Sub-agent: investigate Convex localhost rebuild bug

Extra Tips

  • Make sure to handle cases where the session data is missing or incomplete
  • Consider adding a fallback label or default value for unknown session types
  • Use a consistent naming convention for session labels and kind badges to ensure readability and maintainability.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix Sub-Agent Activity: show human-readable task labels instead of raw session IDs [3 comments, 1 participants]