Files
flynn/CHANGELOG.md
T
William Valentin 6bb424cddc feat: add agent tools and sanitize tool names for Anthropic API
Add 8 new agent-callable tools (sessions.list/history/create/delete,
agents.list, message.send, cron.list/trigger) and sanitize tool names
at the API boundary (dots → underscores) to comply with Anthropic's
`^[a-zA-Z0-9_-]{1,128}` requirement. Reverse-maps sanitized names
back to internal names for hook callbacks and tool execution.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 12:23:09 -08:00

4.2 KiB

Changelog

All notable changes to Flynn are documented in this file.

[Unreleased]

Added

  • Agent Tools: sessions.* -- 4 new agent-callable tools (sessions.list, sessions.history, sessions.create, sessions.delete) wrapping SessionManager for runtime session management by the AI agent
  • Agent Tools: agents.list -- New tool exposing AgentConfigRegistry to the agent, listing all registered agent configurations with tiers, profiles, and sandbox status
  • Agent Tools: message.send -- Cross-channel messaging tool allowing the agent to proactively send messages to any connected channel (Telegram, Discord, Slack, etc.)
  • Agent Tools: cron.* -- 2 new tools (cron.list, cron.trigger) for runtime cron job management, allowing the agent to list and manually trigger scheduled jobs
  • Web UI Dashboard (P7) -- Full SPA control dashboard at the gateway web UI with four pages: Dashboard (health stats, channels, auto-refresh), Chat (session selector, streaming tool events, markdown rendering), Sessions (list, history viewer, delete), and Settings (hook pattern editor, tool list, config viewer). No build step — vanilla JS with ES modules, hash-based routing, and WebSocket JSON-RPC client with auto-reconnect.
  • Gateway: sessions.delete -- New handler to clear a session's message history
  • Gateway: sessions.switch -- New handler to switch a WebSocket connection to a different session
  • Gateway: system.channels -- New handler listing active channel adapters and their connection status
  • Gateway: system.usage -- New handler returning aggregated usage stats (uptime, sessions, connections, tools)
  • CLI Surface -- Full command-line interface via flynn binary with 6 commands: start, tui, send, sessions, doctor, config
  • Doctor Diagnostics -- flynn doctor validates config, YAML parsing, schema, env vars, data directory, session DB, model config, Telegram, MCP servers, and skills
  • Cron Scheduling -- automation.cron config for scheduled agent messages with output channel routing (e.g. fire a prompt at 9 AM, send the response to Telegram)
  • CronScheduler Channel Adapter -- Implements ChannelAdapter interface for cron-triggered messages through the standard agent pipeline
  • CLI Shared Utilities -- Config loading, data dir resolution, secret redaction, status formatting for all CLI commands
  • CronJobConfig Type Export -- CronJobConfig type available from config/index.ts

Changed

  • Gateway Server -- GatewayServerConfig now accepts channelRegistry for channel status reporting; static file server supports .mjs, .png, .ico, .woff2
  • Entry Points Refactored -- src/index.ts and src/tui.ts now delegate to the CLI module (src/cli/index.ts) instead of directly starting the daemon/TUI
  • Daemon Wiring -- CronScheduler auto-registers in the channel registry when automation.cron jobs are configured; channelRegistry passed to GatewayServer

[0.1.0] - 2026-02-05

Added

  • Core Agent -- NativeAgent with conversation history and iterative tool use
  • Model Providers -- Anthropic Claude, OpenAI, Ollama, llama.cpp with streaming
  • Model Router -- Intelligent routing with fallback chains and tier switching
  • Telegram Bot -- Full Telegram frontend with commands, confirmations, tool status
  • Terminal UI -- Minimal (readline) and fullscreen (React/Ink) modes with markdown rendering, streaming, model switching, and session transfer
  • Session Persistence -- SQLite-backed sessions with multi-frontend support
  • Hook Engine -- Pattern-based confirmation system for sensitive tool operations
  • Tool Framework -- Registry, executor, and builtin tools (shell, file, web-fetch)
  • Channel Abstraction -- Unified ChannelAdapter interface with Telegram and WebChat
  • WebSocket Gateway -- JSON-RPC protocol with API key auth and web UI dashboard
  • MCP Integration -- External tool server support via Model Context Protocol
  • Skills System -- Extensible capability packages (bundled, managed, workspace tiers)
  • Config System -- YAML config with Zod validation and env var expansion
  • Daemon Lifecycle -- Graceful shutdown with ordered cleanup handlers