docs: document system.info tool and runtime context in README, CHANGELOG, and gap analysis

This commit is contained in:
William Valentin
2026-02-07 16:27:16 -08:00
parent 8bf88049bf
commit fcbab1e1ee
3 changed files with 19 additions and 5 deletions
+5
View File
@@ -63,6 +63,11 @@ All notable changes to Flynn are documented in this file.
- **CLI Shared Utilities** -- Config loading, data dir resolution, secret redaction, - **CLI Shared Utilities** -- Config loading, data dir resolution, secret redaction,
status formatting for all CLI commands status formatting for all CLI commands
- **CronJobConfig Type Export** -- `CronJobConfig` type available from `config/index.ts` - **CronJobConfig Type Export** -- `CronJobConfig` type available from `config/index.ts`
- **Agent Tool: system.info** -- Get current date, time, hostname, platform,
architecture, OS release, uptime, Node.js version, memory usage, and working
directory. Available in all tool profiles.
- **Runtime Context Injection** -- System prompt now automatically includes current
date and time via a `# Runtime Context` section in every session
### Changed ### Changed
+11 -3
View File
@@ -12,7 +12,7 @@ Self-hosted personal AI assistant with Telegram and Terminal interfaces.
- **Session Persistence**: SQLite-backed conversation history - **Session Persistence**: SQLite-backed conversation history
- **Fallback Chains**: Automatic failover when primary model fails - **Fallback Chains**: Automatic failover when primary model fails
- **Hook Engine**: Confirmation system for sensitive operations - **Hook Engine**: Confirmation system for sensitive operations
- **Tool Framework**: Shell, file, file patch, web-fetch, web-search, browser control, image analysis, media send - **Tool Framework**: Shell, file, file patch, web-fetch, web-search, browser control, image analysis, media send, system info
- **Docker Sandboxing**: Per-session container isolation for tool execution - **Docker Sandboxing**: Per-session container isolation for tool execution
- **Multi-Agent Routing**: Config-driven agent selection per sender/channel with tool profiles - **Multi-Agent Routing**: Config-driven agent selection per sender/channel with tool profiles
- **Media Pipeline**: Image analysis, outbound attachments, audio transcription across all channels - **Media Pipeline**: Image analysis, outbound attachments, audio transcription across all channels
@@ -564,14 +564,22 @@ src/
├── mcp/ # MCP tool server integration ├── mcp/ # MCP tool server integration
├── memory/ # Persistent memory store + vector search ├── memory/ # Persistent memory store + vector search
├── models/ # Model providers + router + media pipeline ├── models/ # Model providers + router + media pipeline
├── prompt/ # System prompt templating ├── prompt/ # System prompt templating (auto-injects current date/time)
├── sandbox/ # Docker sandboxing ├── sandbox/ # Docker sandboxing
├── session/ # SQLite persistence ├── session/ # SQLite persistence
├── skills/ # Skill packages ├── skills/ # Skill packages
├── tools/ # Builtin tools (shell, file, web, browser, process, media) ├── tools/ # Builtin tools (shell, file, web, browser, process, media, system.info)
└── automation/ # Cron scheduler, webhooks, heartbeat monitor, Gmail watcher └── automation/ # Cron scheduler, webhooks, heartbeat monitor, Gmail watcher
``` ```
## System Prompt
Flynn assembles its system prompt from layered template files (`SOUL.md`, `AGENTS.md`, `IDENTITY.md`, `USER.md`, `TOOLS.md`) searched in configurable directories. The first match per file wins.
A **Runtime Context** section is automatically appended to every system prompt with the current date and time, so the model always knows when "now" is without needing a tool call.
The `system.info` tool provides on-demand access to more detailed runtime information: current date/time, hostname, platform, architecture, OS release, uptime, Node.js version, memory usage, and working directory.
## Development ## Development
```bash ```bash
@@ -81,6 +81,7 @@ Flynn has **6 of ~15 channels** (Telegram, WhatsApp, Discord, Slack, WebChat, TU
| Tool profiles | minimal/coding/messaging/full | Full (4 profiles + per-agent + per-provider) | **MATCH** | | Tool profiles | minimal/coding/messaging/full | Full (4 profiles + per-agent + per-provider) | **MATCH** |
| Tool groups | `group:fs`, `group:runtime`, etc. | Full (group:fs, group:runtime, group:web, group:memory) | **MATCH** | | Tool groups | `group:fs`, `group:runtime`, etc. | Full (group:fs, group:runtime, group:web, group:memory) | **MATCH** |
| Tool allow/deny lists | Global + per-agent + per-provider | Full (global + per-agent + per-provider allow/deny) | **MATCH** | | Tool allow/deny lists | Global + per-agent + per-provider | Full (global + per-agent + per-provider allow/deny) | **MATCH** |
| System context / date awareness | -- | `system.info` tool + automatic date/time injection in system prompt | **MATCH** |
--- ---
@@ -241,7 +242,7 @@ Flynn actually has MCP support that OpenClaw doesn't emphasise — OpenClaw reli
|----------|:-----:|:-----:|:-------:|:-------:| |----------|:-----:|:-----:|:-------:|:-------:|
| Channels | 13 | 6 | 0 | 7 | | Channels | 13 | 6 | 0 | 7 |
| Model Providers | 14 | 10 | 0 | 4 | | Model Providers | 14 | 10 | 0 | 4 |
| Agent & Tools | 17 | 17 | 0 | 0 | | Agent & Tools | 18 | 18 | 0 | 0 |
| Sessions | 7 | 7 | 0 | 0 | | Sessions | 7 | 7 | 0 | 0 |
| Context/Compaction | 4 | 4 | 0 | 0 | | Context/Compaction | 4 | 4 | 0 | 0 |
| Memory | 7 | 6 | 0 | 1 | | Memory | 7 | 6 | 0 | 1 |
@@ -253,7 +254,7 @@ Flynn actually has MCP support that OpenClaw doesn't emphasise — OpenClaw reli
| Gateway/Infra | 11 | 4 | 1 | 6 | | Gateway/Infra | 11 | 4 | 1 | 6 |
| Chat Commands | 8 | 7 | 0 | 0 | | Chat Commands | 8 | 7 | 0 | 0 |
| Misc | 9 | 9 | 0 | 0 | | Misc | 9 | 9 | 0 | 0 |
| **TOTAL** | **116** | **87 (75%)** | **1 (1%)** | **27 (23%)** | | **TOTAL** | **117** | **88 (75%)** | **1 (1%)** | **27 (23%)** |
--- ---