docs: update gap analysis for tier 1 implementation (65% → 69%)

Mark 5 features as MATCH: tool groups, session pruning, /think,
/verbose, typing indicators. Update scorecard (80/116 features),
remove completed Tier 1 section from remaining gaps.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
William Valentin
2026-02-07 13:36:22 -08:00
parent 1c2f54fae3
commit d5694649bf
@@ -1,7 +1,7 @@
# Flynn vs OpenClaw — Feature Gap Analysis
**Date:** 2026-02-06
**Last updated:** 2026-02-07
**Last updated:** 2026-02-07 (post tier-1 implementation)
**Purpose:** Comprehensive comparison of Flynn's current implementation against OpenClaw's feature set, to guide prioritisation of future work.
## Legend
@@ -79,7 +79,7 @@ Flynn has **6 of ~15 channels** (Telegram, WhatsApp, Discord, Slack, WebChat, TU
| `sessions.*` tools | List/history/send/spawn across sessions | Full (list/history/create/delete) | **MATCH** |
| `agents.list` tool | Sub-agent discovery | Full (list configs with tiers/profiles) | **MATCH** |
| Tool profiles | minimal/coding/messaging/full | Full (4 profiles + per-agent + per-provider) | **MATCH** |
| Tool groups | `group:fs`, `group:runtime`, etc. | -- | **MISSING** |
| 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** |
---
@@ -92,7 +92,7 @@ Flynn has **6 of ~15 channels** (Telegram, WhatsApp, Discord, Slack, WebChat, TU
| Session isolation | Per-sender + group isolation | `{frontend}:{userId}` with agent config key | **MATCH** |
| Session transfer | Between channels | Between frontends | **MATCH** |
| Multi-agent routing | Isolated workspaces per agent | Full (AgentRouter + per-agent config/sandbox/tools) | **MATCH** |
| Session pruning | Tool result trimming (in-memory) | -- | **MISSING** |
| Session pruning | Tool result trimming (in-memory) | TTL-based auto-cleanup (configurable sessions.ttl) | **MATCH** |
| `/new` / `/reset` | Full | Full | **MATCH** |
| `/status` | Full (model + tokens + cost) | Full (model + tokens + cost) | **MATCH** |
@@ -211,8 +211,8 @@ Flynn actually has MCP support that OpenClaw doesn't emphasise — OpenClaw reli
| `/status` | Full | Full | **MATCH** |
| `/new` / `/reset` | Full | Full | **MATCH** |
| `/compact` | Full | Full (manual via command) | **MATCH** |
| `/think <level>` | Full (off to xhigh) | -- | **MISSING** |
| `/verbose` | Full | -- | **MISSING** |
| `/think <level>` | Full (off to xhigh) | `!!think` prefix (per-message, multi-provider) | **MATCH** |
| `/verbose` | Full | Full (toggle raw streaming + tool output) | **MATCH** |
| `/usage` | Full (off/tokens/full) | Full (per-tier breakdown + cost) | **MATCH** |
| `/local` / `/cloud` | -- | Full | Flynn-unique |
| `/model` | -- | Full (tier switching) | Flynn-unique |
@@ -224,7 +224,7 @@ Flynn actually has MCP support that OpenClaw doesn't emphasise — OpenClaw reli
| Feature | OpenClaw | Flynn | Status |
|---------|----------|-------|--------|
| Streaming & chunking | Full (per-channel limits) | Full (streaming + per-channel chunking) | **MATCH** |
| Typing indicators | Full | Telegram (built-in grammY) | **PARTIAL** |
| Typing indicators | Full | Telegram, Discord, WhatsApp (per-adapter) | **MATCH** |
| Presence tracking | Full | -- | **MISSING** |
| Usage tracking / cost | Full | Full (per-tier tokens, estimated cost via MODEL_COSTS) | **MATCH** |
| Markdown rendering | Per-channel formatting | Full (TUI markdown renderer + channel-specific) | **MATCH** |
@@ -241,8 +241,8 @@ Flynn actually has MCP support that OpenClaw doesn't emphasise — OpenClaw reli
|----------|:-----:|:-----:|:-------:|:-------:|
| Channels | 13 | 6 | 0 | 7 |
| Model Providers | 14 | 10 | 0 | 4 |
| Agent & Tools | 17 | 15 | 0 | 2 |
| Sessions | 7 | 6 | 0 | 1 |
| Agent & Tools | 17 | 16 | 0 | 1 |
| Sessions | 7 | 7 | 0 | 0 |
| Context/Compaction | 4 | 4 | 0 | 0 |
| Memory | 7 | 4 | 0 | 3 |
| MCP | 3 | 3 | 0 | 0 |
@@ -251,28 +251,24 @@ Flynn actually has MCP support that OpenClaw doesn't emphasise — OpenClaw reli
| Companion Apps | 6 | 0 | 0 | 6 |
| Skills/Plugins | 5 | 4 | 0 | 1 |
| Gateway/Infra | 11 | 3 | 1 | 7 |
| Chat Commands | 8 | 5 | 0 | 2 |
| Misc | 9 | 8 | 1 | 0 |
| **TOTAL** | **116** | **75 (65%)** | **2 (2%)** | **38 (33%)** |
| Chat Commands | 8 | 7 | 0 | 0 |
| Misc | 9 | 9 | 0 | 0 |
| **TOTAL** | **116** | **80 (69%)** | **1 (1%)** | **33 (28%)** |
---
## Remaining True Gaps (prioritized)
### Tier 1 — Quick Wins
### ~~Tier 1 — Quick Wins~~ (DONE — implemented 2026-02-07)
1. **`/think` command** — Toggle extended thinking/reasoning mode
2. **`/verbose` command** — Toggle verbose tool output display
3. **Typing indicators** — Discord, Slack, WhatsApp adapters could send typing indicators
4. **Session pruning** — Auto-cleanup old sessions by TTL
5. **Tool groups** — Syntactic sugar: `group:fs``[file.read, file.write, file.edit, file.list]`
All five Tier 1 items implemented: `!!think` prefix, `/verbose` command, typing indicators (Discord/WhatsApp), session pruning (TTL), tool groups. See `docs/plans/2026-02-07-tier1-quick-wins-design.md`.
### Tier 2 — Meaningful New Features
6. **Inbound webhooks** — HTTP endpoint that triggers agent processing
7. **Vector memory search** — Embed memory chunks, enable semantic retrieval
8. **Dockerfile** — Production container deployment
9. **Heartbeat** — Periodic self-check with optional notification
1. **Inbound webhooks** — HTTP endpoint that triggers agent processing
2. **Vector memory search** — Embed memory chunks, enable semantic retrieval
3. **Dockerfile** — Production container deployment
4. **Heartbeat** — Periodic self-check with optional notification
### Tier 3 — Additional Channels (if desired)
@@ -304,3 +300,5 @@ Flynn actually has MCP support that OpenClaw doesn't emphasise — OpenClaw reli
- **Configurable retry policy** with exponential backoff
- **Skill installer** with managed directory + upgrade support
- **Audio transcription pipeline** for voice messages
- **Per-message extended thinking** via `!!think` prefix (multi-provider: Anthropic, OpenAI, Gemini, GitHub)
- **Tool groups** for policy config (`group:fs`, `group:runtime`, `group:web`, `group:memory`)