feat: MCP server management and skills commands from chat, future-changes doc with UI/skills/MCP plans

- mcp list/add/remove commands to manage MCP servers from any channel
- skill list/show/create/remove/reload commands for skill management
- skill create generates a SKILL.md template, or ask the AI naturally
- Updated help text, commands.md with new commands
- future-changes.md: WebChat UI overhaul plan (OpenClaw-inspired), MCP management UI, skill creator system, ClawHub/GitHub skill import plans
This commit is contained in:
2026-02-18 23:27:00 -05:00
parent b8b3f44d52
commit 34dea65a07
3 changed files with 339 additions and 1 deletions

View File

@@ -188,6 +188,102 @@ Key files to study in `inspirations/nanoclaw/`:
## Other Planned Changes
### WebChat UI Overhaul
The current chat.html is a minimal single-file UI. Upgrade to match OpenClaw's design language:
**Design elements from OpenClaw to adopt:**
- Color palette: `--bg: #12141a`, `--card: #181b22`, `--accent: #ff5c5c` (or Aetheel's own brand color)
- Typography: Space Grotesk for body, JetBrains Mono for code
- Chat bubbles: user messages right-aligned with accent background, AI messages left-aligned with card background
- Streaming indicator: pulsing border on AI bubble while generating
- Tool cards: collapsible cards showing tool usage (web search, file ops, etc.)
- Compose area: multi-line textarea with send button, sticky at bottom
- Status bar: connection status, current engine/model display
**New panels (sidebar or tabs):**
- Settings panel: engine/model/provider switching, timeout config
- MCP Servers panel: add/remove/enable MCP servers
- Skills panel: view loaded skills, create new ones
- Usage panel: cost tracking, request history, rate limit status
- Sessions panel: active sessions, session history
### MCP Server Management
Add the ability to manage MCP servers from chat, CLI, and the WebChat UI.
**Chat commands:**
```
mcp list # List configured MCP servers
mcp add <name> <command> [args...] # Add a new MCP server
mcp remove <name> # Remove an MCP server
mcp enable <name> # Enable a disabled server
mcp disable <name> # Disable without removing
```
**Examples:**
```
mcp add brave-search uvx brave-search-mcp@latest
mcp add filesystem npx @anthropic-ai/mcp-filesystem /home/user/projects
mcp add github uvx github-mcp-server
mcp remove brave-search
```
**Implementation:**
- Chat commands write to `config.json``mcp.servers` section
- `write_mcp_config()` already generates `.mcp.json` (Claude) or `opencode.json` (OpenCode)
- After adding/removing, auto-call `write_mcp_config()` and notify user to reload
- WebChat UI: form with name, command, args fields + env vars
- CLI: `aetheel mcp add/remove/list` subcommands
**Popular MCP servers to suggest during setup:**
- `brave-search` — Web search
- `filesystem` — File system access
- `github` — GitHub API
- `postgres` / `sqlite` — Database access
- `puppeteer` — Browser automation
- `memory` — Persistent memory server
### Skills System Enhancement
#### Skill Creator (via chat)
The AI should be able to create new skills when asked. This works by having the AI write a `SKILL.md` file to the workspace.
**How it works today:**
- The system prompt already tells the AI: "You can create new skills by writing SKILL.md files to ~/.aetheel/workspace/skills/<name>/SKILL.md"
- The AI has file write access via its runtime tools (Bash, Write, Edit)
- So skill creation via natural language already works — just ask: "Create a skill for checking weather"
**What to add:**
- A `skill` chat command for explicit management:
```
skill list # List all loaded skills
skill create <name> # Interactive skill creation wizard
skill remove <name> # Remove a skill
skill reload # Reload all skills (same as /reload)
skill show <name> # Show a skill's SKILL.md content
```
- Skill templates: pre-built SKILL.md templates for common use cases
- Skill import from URL: `skill import https://github.com/user/repo/SKILL.md`
#### ClawhHub / Community Skills
Integration with external skill sources:
- **ClawHub.ai**: If they provide an API or registry, add `skill search <query>` and `skill install <name>` commands
- **GitHub Anthropic skills**: Import from `github.com/anthropics/claude-code/tree/main/skills/`
- **User-defined skill repos**: `skill import <git-url>` clones a repo's skills into the workspace
**Implementation:**
```
skill search weather # Search ClawHub/GitHub for skills
skill install clawhub/weather # Install from ClawHub
skill import https://github.com/user/skills-repo # Import from git
```
Each imported skill gets its own folder under `~/.aetheel/workspace/skills/<name>/` with a `SKILL.md` and optionally a `handler.py`.
### Security Fixes (from security-audit.md)
- Path containment check in `memory/manager.py` `read_file()`