Make AI actually work for you — your personal AI assistant.
Say it. It builds the tool. No programming required. Claude / GPT / Gemini auto-routed; lives in Telegram, Discord, and your terminal.
English · 繁體中文
A personal AI agent that runs on your own machine. Configure it once, talk to it from anywhere — Telegram, Discord, terminal TUI, or browser. Same memory, same tools, same skills across every channel.
Built for people who want their own always-on assistant, not another SaaS subscription.
Teach the agent to build its own tools — no programming required. Just describe what you need; the agent writes a script or wires up an API, sandboxes it, and loads it as a tool. Next time you ask, it just runs.
| Demo · Auto-generate tools | Demo · Skill-based scheduler | Demo · Sub-agents co-work |
|---|---|---|
![]() |
![]() |
![]() |
Out of the box it also:
- Chats anywhere — Telegram inline buttons · Discord select menus / modals · terminal TUI · browser canvas. One daemon, every surface.
- Generates images, speaks replies (TTS), transcribes audio / video.
- Schedules itself — say "every weekday 8am push a Hacker News top-stories digest to Telegram" and the agent builds the cron + push pipeline for you.
- Picks the right model per task — Claude for coding, Gemini for video, GPT for research, routed automatically.
- Searches your files semantically — KuraDB indexes your local docs / notes (file → embedding vector); the agent answers from your own knowledge base, not generic training data.
- Remembers across sessions — past conversations searchable by meaning, not just keywords.
curl -fsSL https://cloud.agenvoy.com/install.sh | bashSingle Go binary at /usr/local/bin/agen. macOS / Linux. No Node, no Python, no Docker.
Running the daemon on a MacBook?
sudo pmset -c sleep 0keeps the system awake while plugged in — prevents the daemon from being suspended on AC power.
Compared against the two closest peers — personal AI agent frameworks with daemon + chat-platform integration.
| You want… | Agenvoy | OpenClaw | Hermes |
|---|---|---|---|
| One-line install, single binary | ✅ Go | ❌ pnpm monorepo | ❌ pip + docker |
| Use Claude + GPT + Gemini in one chat | ✅ auto-routed by dispatcher | ✅ manual switch | ✅ manual switch |
| Native chat buttons / menus / modals | ✅ inline keyboard / select / modal | ||
| Agent builds & saves its own tools | ✅ FaaS-sandboxed scripts + APIs | ❌ | |
| First-contact verification on Telegram/Discord | ✅ 6-digit OTP | ❌ allowlist only | |
| Cross-session push (any session → chat) | ✅ send_to_telegram_chat / send_to_discord_channel |
❌ | ❌ |
| Image generation in chat | ✅ gpt-image-2 | ❌ | ❌ |
| Native document RAG (file → embedding) | ✅ KuraDB in-process (semantic + keyword) | ❌ (MCP only) | ❌ (MCP only) |
Looking for the full feature-by-feature breakdown? See What makes it different below.
- Dispatcher-based intelligent routing — a dispatcher model routes every task to the best-fit worker (Claude for coding, Gemini for video, GPT for research), instead of forcing one model to do everything.
- Agent that builds and persists its own tools — when a tool is missing the agent writes a script or API into
extensions/and loads it as a native tool on the next run; MCP servers are supported alongside. - One runtime across every channel — Telegram, Discord, TUI, Web, and cron all attach to the same daemon; sessions, memory, and the tool set are shared, not rebuilt per surface.
Agenvoy vs Mainstream Products: Full Detailed Comparison
| Agenvoy | OpenClaw | Hermes Agent | Claude Code | Codex CLI | Gemini CLI | |
|---|---|---|---|---|---|---|
| Language | Go | TypeScript | Python | TypeScript | Rust + TypeScript | TypeScript |
| License | Apache 2.0 | MIT | MIT | Proprietary | Apache 2.0 | Apache 2.0 |
| Author | Individual (pardnchiu) | Community | NousResearch | Anthropic | OpenAI | |
| Primary use | Multi-platform AI Agent framework | Multi-platform AI Agent | Multi-platform AI Agent | Terminal coding assistant | Terminal coding assistant | Terminal coding assistant |
| Architecture | Daemon + TUI + Chat | Daemon + TUI + Chat | Daemon + TUI + Chat | CLI session | CLI session | CLI session |
| Agenvoy | OpenClaw | Hermes Agent | Claude Code | Codex CLI | Gemini CLI | |
|---|---|---|---|---|---|---|
| Claude | ✅ | ✅ | ✅ | ✅ only | ❌ | ❌ |
| OpenAI / GPT | ✅ | ✅ | ✅ | ❌ | ✅ only | ❌ |
| Gemini | ✅ | ✅ | ✅ | ❌ | ❌ | ✅ only |
| Codex (OpenAI OAuth) | ✅ | ✅ | ❌ | ❌ | ✅ | ❌ |
| GitHub Copilot | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ |
| Nvidia NIM | ✅ | ❌ | ✅ | ❌ | ❌ | ❌ |
| OpenAI-compat | ✅ | ✅ Ollama/LM Studio | ✅ OpenRouter 200+ | ❌ | ❌ | ❌ |
| DeepSeek / Mistral / xAI | ❌ | ✅ | ✅ | ❌ | ❌ | ❌ |
| Dispatcher routing | ✅ dedicated dispatcher model | ❌ | ❌ | ❌ | ❌ | ❌ |
| Agenvoy | OpenClaw | Hermes Agent | Claude Code | Codex CLI | Gemini CLI | |
|---|---|---|---|---|---|---|
| TUI | ✅ bubbletea | ✅ openclaw tui |
✅ React Ink | ✅ ink | ✅ | ✅ |
| CLI | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HTTP API / Web UI | ✅ gin | ❌ | ✅ Web Dashboard | ❌ | ❌ | ❌ |
| Daemon mode | ✅ native --daemon |
✅ systemd/launchd | ✅ gateway daemon | ❌ | ❌ | ❌ |
| Session Canvas (HTML+SSE) | ✅ update_page |
❌ | ❌ | ❌ | ❌ | ❌ |
| Named sessions | ✅ | ❌ | ✅ session picker | ❌ | ❌ | ❌ |
| Agenvoy | OpenClaw | Hermes Agent | Claude Code | Codex CLI | Gemini CLI | |
|---|---|---|---|---|---|---|
| Telegram | ✅ native daemon | ✅ native daemon | ✅ native daemon | ❌ | ❌ | |
| Discord | ✅ native daemon | ✅ native daemon | ✅ native daemon | ❌ | ❌ | |
| iMessage | ❌ | ✅ BlueBubbles | ✅ BlueBubbles | ❌ | ❌ | |
| WhatsApp / Slack / LINE | ❌ | ✅ 50+ platforms | ✅ 20+ platforms | ❌ | ❌ | ❌ |
| Always-on receiving (no session needed) | ✅ daemon | ✅ | ✅ | ❌ | ❌ | ❌ |
| Cross-session send (any session → chat) | ✅ send_to_telegram_chat / send_to_discord_channel |
❌ | ❌ | ❌ | ❌ | ❌ |
| First-contact verification | ✅ 6-digit OTP (crypto/rand) | ✅ pairing code (dmPolicy: pairing) | ❌ (allowlist only) | ❌ | ❌ | ❌ |
| Native platform UI (buttons / menus / modals) | ✅ inline keyboard / select menu / modal | ❌ | ❌ | ❌ |
Platform layer: Agenvoy's Telegram and Discord integrations are both built on pardnchiu/go-bot, independently maintained and open source. go-bot encapsulates the bot protocol details for both platforms — Agenvoy only implements business logic, while the platform API layer is entirely handled by go-bot.
Key difference: Claude Code Channels requires an active session. OpenClaw and Hermes have daemons but their in-chat confirmations are text-based. Agenvoy uses native platform UI — Telegram inline keyboards and Discord select menus / modals. Additionally, Agenvoy's cross-session send tools allow any session type (CLI, TUI, HTTP, scheduled script) to push messages to Telegram/Discord — no competitor exposes this capability.
| Feature | Agenvoy | OpenClaw | Hermes Agent | Claude Code Channels |
|---|---|---|---|---|
| Send text reply | ✅ | ✅ | ✅ | ✅ |
| Send voice (TTS) | ✅ Gemini TTS → OGG | ✅ ElevenLabs/Hume | ✅ Edge TTS/ElevenLabs | ❌ |
| Send file attachments | ✅ [SEND_FILE:] |
✅ | ✅ | ❌ |
| Receive user attachments | ✅ photo/doc/voice/video | ✅ | ✅ | ❌ |
| Voice-to-text (STT) | ✅ Gemini, 14 formats | ✅ Whisper/Gemini | ✅ faster-whisper (local) | ❌ |
| Tool confirm (interactive) | ✅ native inline keyboard | ❌ | ||
| ask_user (picker) | ✅ native button/modal | /models picker |
❌ | |
| Format reference (lazy-load tool) | ✅ telegram_format |
❌ | ❌ | ❌ |
| Scheduler output push | ✅ | ✅ | ✅ | ❌ |
| Cross-session push (from any session) | ✅ send_to_telegram_chat |
❌ | ❌ | ❌ |
| Offline receiving (daemon) | ✅ | ✅ | ✅ | ❌ |
| Feature | Agenvoy | OpenClaw | Hermes Agent | Claude Code Channels |
|---|---|---|---|---|
| Send text reply | ✅ | ✅ | ✅ | ✅ |
| Send voice (TTS) | ✅ Gemini TTS → OGG/OPUS | ✅ | ✅ | ❌ |
| Send file attachments | ✅ batch 10/message | ✅ | ✅ | ❌ |
| Receive user attachments | ✅ photo/doc/voice/video | ✅ | ✅ | ❌ |
| Tool confirm (interactive) | ✅ select menu button | ✅ /model picker |
❌ | |
| ask_user (modal) | ✅ select/multi-select/modal | ❌ | ||
| Format reference (lazy-load tool) | ✅ discord_format |
❌ | ❌ | ❌ |
| Guild mention guard | ✅ | ✅ | ✅ | ❌ |
| Discord Markdown aware | ✅ full spec as lazy-load tool | ❌ | ||
| Character limit aware | ✅ 1600 char hard limit in prompt | ❌ | ❌ | ❌ |
| Cross-session push (from any session) | ✅ send_to_discord_channel |
❌ | ❌ | ❌ |
| Agenvoy | OpenClaw | Hermes Agent | Claude Code | Codex CLI | Gemini CLI | |
|---|---|---|---|---|---|---|
| Cron jobs | ✅ SKILL.md + cron | ✅ built-in | ✅ built-in | ✅ cloud-assisted cron/task | ❌ | ❌ |
| One-shot tasks | ✅ | ✅ at format |
✅ natural language | ✅ cloud-assisted | ❌ | ❌ |
| TUI CRUD | ✅ | ✅ openclaw cron |
✅ cronjob tool |
❌ | ❌ | ❌ |
| fsnotify hot-reload | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Push output to Telegram/Discord | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
| AI tool management (add/list/remove) | ✅ | ❌ | ✅ cronjob tool |
❌ | ❌ | ❌ |
| Local execution (no cloud required) | ✅ | ✅ | ✅ | ❌ cloud-dependent | ❌ | ❌ |
Scheduler layer: Agenvoy's scheduler is built on pardnchiu/go-scheduler, a self-maintained ecosystem package providing cron expression parsing, one-shot tasks, fsnotify hot-reload, and full output routing back to chat platforms.
| Agenvoy | OpenClaw | Hermes Agent | Claude Code | Codex CLI | Gemini CLI | |
|---|---|---|---|---|---|---|
| MCP support | ✅ client | ✅ client | ✅ client + server | ✅ client | ❌ | ✅ client |
| Custom tools (script-tool-add) | ✅ AI-generated | ❌ | ✅ auto-creates skill | ❌ | ❌ | ❌ |
| API tool discovery (search-api → add) | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Skill system | ✅ SKILL.md lazy-load | ✅ SKILL.md 5400+ community | ✅ SKILL.md agentskills.io | ✅ CLAUDE.md | ❌ | ❌ |
| Format reference as lazy-load tool | ✅ telegram_format / discord_format |
❌ | ❌ | ❌ | ❌ | ❌ |
| Image generation | ✅ DALL-E/Codex Image | ❌ | ❌ | ❌ | ❌ | ❌ |
| Document RAG (external knowledge base) | ✅ KuraDB (in-process vector + semantic/keyword) | ❌ (conversation memory only) | ❌ (conversation memory only) | ❌ | ❌ | ❌ |
| Media transcription STT | ✅ Gemini, 14 formats | ✅ Whisper/Gemini | ✅ faster-whisper (local) | ❌ | ❌ | ❌ |
| TTS voice output | ✅ Gemini TTS | ✅ ElevenLabs/Hume/MS | ✅ Edge TTS/ElevenLabs/OpenAI | ❌ | ❌ | ❌ |
| Computer use / browser | ✅ go-rod + Playwright MCP | ✅ Chrome CDP | ✅ Playwright (Chromium/Firefox) | ✅ beta | ❌ | ❌ |
Tool sandbox architecture: Agenvoy's Python/JavaScript/API custom tool interfaces are built on the pardnchiu/go-faas (Function as a Service) concept. Each AI-generated tool runs as an isolated function unit with its own lifecycle and security boundary. This is the only FaaS-level sandbox design for tool extension among all compared products.
| Agenvoy | OpenClaw | Hermes Agent | Claude Code | Codex CLI | Gemini CLI | |
|---|---|---|---|---|---|---|
| Instruction file system | ✅ SKILL.md | ✅ SKILL.md | ✅ SKILL.md | ✅ CLAUDE.md | ❌ | ❌ |
| Conversation history search | ✅ ToriiDB vector search | ✅ SQLite vector | ✅ SQLite FTS5 | ❌ | ❌ | ❌ |
| External document RAG (native, in-process) | ✅ KuraDB (semantic + keyword, OpenAI embeddings) | ❌ (use MCP) | ❌ (use MCP) | ❌ | ❌ | ❌ |
| Error memory | ✅ ToriiDB | ❌ | ❌ | ❌ | ❌ | ❌ |
| Action log | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Long-term persistent memory | ✅ Wiki-style MEMORY.md | ✅ MEMORY.md + USER.md | ❌ | ❌ | ||
| Cross-session memory | ✅ built-in cross-session | ✅ built-in cross-session |
ToriiDB is a self-developed embedded vector database (pardnchiu/ToriiDB) in the Agenvoy ecosystem. It requires no external service and runs in-process. Agenvoy uses ToriiDB as its memory infrastructure, currently powering semantic conversation history search and error memory, and serving as the foundation for future long-term cross-session memory expansion.
| Agenvoy | OpenClaw | Hermes Agent | Claude Code | Codex CLI | Gemini CLI | |
|---|---|---|---|---|---|---|
| Direct external dependencies | 12 | large (pnpm monorepo) | 30–40 core + 60+ optional | 50+ | 40+ | 40+ |
| Self-maintained ecosystem packages | 6 (go-bot / go-pkg / go-scheduler / ToriiDB / go-faas / KuraDB) | 0 | 0 | 0 | 0 | 0 |
| Runtime | Go (static binary) | Node.js | Python | Node.js | Node.js + Rust | Node.js |
| Deployment | single binary | npm install | pip + docker/VPS | npm install | npm install | npm install |
| Dimension | Detail |
|---|---|
| Clear advantages | Single Go binary, 12 dependencies, self-maintained ecosystem (pardnchiu universe), dispatcher model routing, Session Canvas, native platform UI (real buttons/modals), OTP verification, cross-session send to Telegram/Discord from any session, API tool auto-discovery, image generation, format reference as lazy-load tool, local-only scheduler (no cloud required) |
| On par with competitors | Telegram/Discord daemon, TTS/STT, scheduler output push, Skill system, MCP, browser automation, inbound attachment handling |
| Where competitors lead | OpenClaw 50+ platforms, Hermes MCP server mode, Hermes local STT, OpenClaw/Hermes built-in cross-session memory, Claude Code Computer Use beta, Claude Code cloud cron/task |
| Codex CLI | Fewest features — CLI + TUI + OpenAI OAuth only, no daemon, no chat platforms, no scheduler |
CLI commands
Run as
agen <sub>.make <sub>wrappers exist in the repo Makefile for development.
| Command | Description |
|---|---|
agen |
Attach interactive TUI; forks daemon (HTTP + Discord + Telegram + scheduler + summary cron) if not running. |
agen cli <input> |
One-shot agent run; every tool call asks for confirmation. |
agen run <input> |
One-shot agent run; auto-approves every tool call. |
agen stop |
Stop the running daemon (SIGTERM 5s grace → SIGKILL → clear runtime.uid). |
agen update |
Fetch latest release, rebuild, stop daemon — re-attach to load the new binary. |
agen model {add|remove|list|dispatcher|reasoning} |
Manage providers / worker models, pick dispatcher model, set reasoning level. |
agen mcp {list|add|remove} |
Manage MCP servers (stdio / HTTP) across global and per-session scope. |
agen session {new|switch|config} [name] |
Manage CLI sessions; bare switch / config opens an interactive picker. |
TUI slash commands
Available inside
agen's TUI prompt. Type/to filter; popup commands transition cleanly back to the prompt.
| Command | Description |
|---|---|
/switch |
Switch active session via picker (current session pre-selected). |
/new [name] |
Create a new session; optional name pins it to the registry. Name is conflict-checked against existing sessions; abort on duplicate. |
/bot |
Edit the current session's bot via two sequential popups: name textfield (conflict-checked against other sessions; abort on conflict) → description textarea (Ctrl+S confirms, Enter newline, Esc cancels). |
/model [global|session] |
Scope picker; global → [add, remove] (registry), session → pick a configured model. Inline arg skips the scope popup. |
/mcp [add|remove] |
Action picker; add walks a chained popup form (name → transport → command/args/env or url/headers → scope → optional session pick), remove lists configured servers across global and session scopes. Restart the daemon to apply changes. Inline arg skips the action popup. |
/dispatcher |
Pick the dispatcher model from cfg.Models via popup. No inline arg. |
/reasoning [global|session] |
Pick low / medium / high for the dispatcher (global) or the active session. Inline arg skips the scope popup. |
/discord [enable|disable] |
Toggle Discord bot connection (token entry, verification, keychain write, daemon reload all happen in-TUI). Inline arg switches without the popup. |
/telegram [enable|disable] |
Toggle Telegram bot connection (same in-TUI popup chain as /discord; first chat to message the bot must pass an in-chat verification code). Inline arg switches without the popup. |
/kuradb [enable|disable] |
Toggle KuraDB RAG service. enable runs install.sh via tea.ExecProcess (sudo TTY handed back), prompts for OPENAI_API_KEY (stored in keychain), and writes kuradb_enabled=true — daemon picks up via fsnotify and spawns the child + endpoint file. disable removes /usr/local/bin/kura and clears the flag. Inline arg switches without the popup. |
/cron [add|remove|edit] |
Manage recurring schedules. add opens a multiline requirement textarea → dispatches /scheduler-skill-creator <requirement> (asks for missing when/what via ask_user). remove lists crons → confirm popup → runtime.RemoveCron + trashes the skill dir. edit lists crons → requirement textarea → agent picks patch_cron or rewrites the SKILL.md body. Inline arg skips the action popup. |
/task [add|remove|edit] |
Manage one-shot scheduled tasks (mirrors /cron; uses add_task / patch_task / remove_task). Picker shows <YYYY-MM-DD HH:MM> <skill>. |
/sched-<name> |
Execute an existing scheduler skill body inline (manual trigger). Surfaced at the bottom of the / picker after regular skills; label rendered in warn-purple to mark it as an invocation. The dispatch wraps the body with an explicit "execute, do NOT activate scheduler-skill-creator" preamble. |
/mode [cli|web] |
Switch between cli (TUI rendering) and web (browser page). Inline arg switches without the popup. |
/update |
Confirm popup → agen stop && agen update via tea.ExecProcess → quit TUI. |
/history |
Reload visible transcript — clear screen, reprint header, render the last 100 entries from the session's action.log. |
/log |
Open the raw action.log in $PAGER (fallback less -Rf +G, jumps to bottom). \x1F markers are expanded back to newlines for readability. |
/clear |
Clear the current window display only — like terminal clear; conversation memory is untouched. |
/exit, /quit |
Exit TUI (daemon keeps running; re-attach with agen). |
Built-in tools
Tools auto-load on demand; stub names appear first, full schema activates on use. See Tools wiki for parameters and routing.
| Tool | Description |
|---|---|
| File | |
read_file |
Read a text, PDF, DOCX, PPTX, CSV/TSV, or image file. |
write_file |
Write content to a file, overwriting if it exists. |
patch_file |
Replace an exact string match inside a file. |
list_files |
List directory entries; recursive=true walks subtree files. |
glob_files |
Find files matching a glob pattern within a directory. |
search_files |
Search file contents by RE2 regex within a directory. |
| Web | |
fetch_page |
Fetch a web page and return its content as Markdown. |
save_page_to_file |
Fetch a web page and save its content to a local file. |
search_web |
Search the web via DuckDuckGo Lite; returns top 10 results. |
fetch_google_rss |
Search Google News RSS and return article titles, summaries, links. |
fetch_yahoo_finance |
Query Yahoo Finance quotes and K-line (OHLCV). |
fetch_youtube_transcript |
Transcribe a YouTube video with timestamps. (gemini needed) |
transcribe_media |
Transcribe a local audio / video file (ogg, mp3, wav, m4a, flac, aac, mp4, mov, webm, mpeg, 3gp, …) up to 20 MiB. (gemini needed) |
send_http_request |
Send an HTTP request to a specified URL. |
| Shell | |
run_command |
Run a binary with argv; returns combined stdout/stderr. |
| Render | |
update_page |
Overwrite the rendered HTML page for the current session; tabs auto-reload. |
generate_image |
Generate an image via gpt-image-2 (size & quality picked by user). (codex needed) |
| Channel | |
list_telegram_chat |
List authorized Telegram chats (id + name). (telegram needed) |
send_to_telegram_chat |
Send an HTML-formatted message to an authorized Telegram chat by chat_id. (telegram needed) |
telegram_format |
Return the Telegram HTML formatting reference (allowed tags, escape rules, file/voice markers). (telegram needed) |
list_discord_channel |
List authorized Discord channels (id + name). (discord needed) |
send_to_discord_channel |
Send a markdown-formatted message to an authorized Discord channel by channel_id. (discord needed) |
discord_format |
Return the Discord markdown formatting reference (allowed markdown, special tokens, file/voice markers). (discord needed) |
| Calc | |
calculate |
Evaluate a mathematical expression and return the exact result. |
| Discovery | |
list_tools |
List all currently available built-in and dynamically loaded tools. |
search_tools |
Search available tools by keyword and inject matches into the request. |
activate_skill |
Fetch a skill's reference material by exact name. |
| Interactive | |
ask_user |
Ask the user one or more questions and return their answers. |
store_secret |
Prompt the user for a secret with masked input and persist to the system keychain. |
| Memory | |
search_conversation_history |
Search the session's past messages by keyword and semantic similarity. |
search_error_memory |
Semantically search past tool-error records; hits refresh 3-month TTL. |
read_error_memory |
Fetch a prior tool-error record by hash. |
remember_error |
Persist a tool-error record for future retrieval. |
| RAG (KuraDB) | |
rag_list_db |
List available KuraDB databases (e.g. notes, inbox, code). (kuradb needed) |
rag_search_keyword |
Keyword search a KuraDB database via gse tokenization. (kuradb needed) |
rag_search_semantic |
Semantic search a KuraDB database via OpenAI embeddings. (kuradb needed) |
| Agent | |
invoke_subagent |
Run a subtask in an internal subagent session and return its final text. |
invoke_external_agent |
Invoke one external CLI agent (codex / copilot / claude / gemini) for a second opinion. |
cross_review_with_external_agents |
Cross-review a completed result across all available external agents in parallel. |
review_result |
Review a result against the original input and return issues and improvements. |
| Scheduler | |
add_task |
Bind an existing scheduler skill to fire once at a specific time (+5m / HH:MM / YYYY-MM-DD HH:MM / RFC3339). |
add_cron |
Bind an existing scheduler skill to a recurring 5-field cron expression. |
patch_task / patch_cron |
Reschedule an existing task / cron by skill name (changes only the time, leaves the bound skill body untouched). |
remove_task / remove_cron |
Cancel a scheduled task / cron by skill name; the bound scheduler skill dir is moved to .Trash/. |
| Skill Git | |
skill_git_commit / skill_git_log / skill_git_rollback |
Commit, list, or roll back the ~/.config/agenvoy/skills git history. |
Dynamic tool families (auto-registered, not listed above): mcp__<server>__<tool> from configured MCP servers, api_<name> from extensions/apis/*.json, script_<name> from extensions/scripts/<name>/.
This project is licensed under the Apache License 2.0.
Just open an issue to share an idea.
When the curve trends up — that's the signal we want to see. Hit ★ to push it along.
©️ 2026 邱敬幃 Pardn Chiu


