Skip to content

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 09 Sep 06:13
· 160 commits to main since this release

Feishu: the chat carries more than words (M86, ADR-0051)

  • Every message is heard. Rich post runs (links, code blocks, dividers, emoji, mentions), interactive cards, shared chats, merged forwards and stickers all reach the model as words; no message type is dropped any more.
  • Attachments in. A file, voice note or video lands under <data_dir>/channels/feishu/attachments/<message>/<name> and the message carries its path; a text or markdown file up to 100 KiB is inlined. Merged forwards are fetched (im:message scope) and flattened under the message.
  • Files out. A new SendFile { path, caption? } tool posts a file from disk into the chat the session lives in; it exists only while the channel surface runs. Feishu routes pictures, opus audio, mp4, office documents and everything else to the right endpoint.
  • Who may speak. channels.<adapter>.access — admins, a rule for direct chats, a rule for groups, per-chat overrides; policies open | allowlist | blocklist | admins | off, and mention: false engages a group on every message. The default is what ran before.
  • A working sign. The message you sent gets a Typing reaction while the bot works, loses it when done, and a ❌ marks a failed turn (im:message.reactions:write_only).

Fixed

  • The permission card was refused by card JSON 2.0 (action container), so every permission had fallen back to a numbered list; buttons are a column row now.
  • The streaming card never closed (settings must be a JSON string), so every answer was posted a second time as plain text.

Also since v0.6.0

  • Memory has one writer (M83, ADR-0049): the model writes memory; the extractor is gone.
  • The worked row (M84): ✻ Worked for 15m 11s · done 13:48 closes the transcript.
  • MCP servers that need signing in (M85, ADR-0050): OAuth 2.1 for HTTP MCP servers — /mcp login|logout|tools, bingo mcp list|get|add|remove|login|logout.
  • A command lists the words its argument takes; the command completion channel is gone.