chengyongru fc1c8ea770 fix(image-generation): let LLM deliver images via message tool instead of runtime media attachment
The runtime media-attachment mechanism was broken for streaming channels
(e.g. WebSocket): the _streamed flag caused _send_once to skip the final
OutboundMessage that carried generated media, so images were never delivered.

Rather than adding complex coordination between streaming and media delivery,
delegate image delivery to the LLM: after generate_image returns artifact
paths, the next_step prompt now instructs the LLM to call the message tool
with the paths in the media parameter. This works uniformly across all
channels, streaming or not.

Remove generated_media from TurnContext, _assemble_outbound, and _state_save.
Update prompts in identity.md, SKILL.md, message tool description, and
artifacts.py to reflect the new flow.
2026-05-19 15:35:19 +08:00
..
2026-02-01 18:45:42 +00:00
2026-02-01 18:45:42 +00:00
2026-02-01 18:45:42 +00:00

nanobot Skills

This directory contains built-in skills that extend nanobot's capabilities.

Skill Format

Each skill is a directory containing a SKILL.md file with:

  • YAML frontmatter (name, description, metadata)
  • Markdown instructions for the agent

When skills reference large local documentation or logs, prefer nanobot's built-in grep tool to narrow the search space before loading full files. Use grep(output_mode="count") / files_with_matches for broad searches first, use head_limit / offset to page through large result sets, and grep(glob="*.md") to filter by file name pattern.

Attribution

These skills are adapted from OpenClaw's skill system. The skill format and metadata structure follow OpenClaw's conventions to maintain compatibility.

Available Skills

Skill Description
github Interact with GitHub using the gh CLI
weather Get weather info using wttr.in and Open-Meteo
summarize Summarize URLs, files, and YouTube videos
tmux Remote-control tmux sessions
clawhub Search and install skills from ClawHub registry
skill-creator Create new skills
long-goal Sustained objectives: long_task, complete_goal, idempotent goals, modular project work, early research