Skip to content

Repository files navigation

AetherConsole

一个支持多智能体、自定义技能(Skills)和语义记忆(Memory)的智能代理控制台(Agentic Assistant)。提供安全的自然语言交互、自动化工作流、语义记忆管理和任务调度功能。

🌟 核心特性

🧠 高级认知系统

  • 语义记忆系统 (Semantic Memory):基于 txtaiBAAI/bge-small-zh 模型的智能记忆管理
    • 持久化 Markdown 存储,自动记录重要信息
    • 语义检索与模糊匹配,让记忆具有智能联想能力
    • 记忆工具集:支持增删改查、语义搜索、记忆管理
    • 上下文感知:自动保持会话上下文,提升多轮交互体验

🤖 多智能体架构

  • 主智能体 (Main Agent):负责协调任务和管理会话
  • 子智能体系统 (Sub-Agent System):异步委托子任务,支持并发执行
  • 技能系统 (Skills):可扩展的技能库,支持 Python、PowerShell、bash 脚本
  • 智能调度:自动分配任务到最合适的智能体执行

🛠️ 强大的工具生态

  • Shell 工具集:命令执行、文件操作、选项提案
  • 记忆工具集:记忆管理、语义检索、信息组织
  • 子智能体工具:异步任务委托、并发执行
  • 定时任务系统:支持 cron 表达式和间隔调度

⚡ 智能工作流程

  • 自然语言理解:精准解析用户意图,转化为可执行动作
  • 交互式确认:命令执行前确认机制,支持 dry-run 模式
  • 工作区管理:安全的工作目录隔离,防止误操作
  • 跨平台支持:Windows (PowerShell), Linux/macOS (bash)

📅 定时任务调度

  • 灵活调度:支持 cron 表达式、间隔调度、每日任务
  • 思考任务:定时执行 AI 思考任务,自动处理复杂工作流
  • 记忆索引维护:定时检测记忆文件变化并重建语义索引
  • 交互式管理:完整的定时任务 CLI 管理工具

🚀 快速开始

环境要求

  • Python 3.11+
  • uv (推荐包管理器)
  • OpenAI 兼容 API 接口

安装与配置

使用 uv(推荐)

# 同步依赖
uv sync

# 运行 AetherConsole
uv run aether "你的自然语言查询"

传统方式

pip install -e .
cp .env.example .env
# 编辑 .env 文件,配置 API 密钥
aether "你的自然语言查询"

基本使用

# 单次查询
uv run aether "查看项目目录结构"

# 交互式模式
uv run aether -i

# 预览模式(不执行命令)
uv run aether "清理临时文件" --dry-run

# 定时任务管理
uv run aether cron list
uv run aether cron add daily-report --func run_thinking_agent --schedule "daily" --prompt "总结今日工作"
uv run aether cron start

📚 技能系统 (Skills)

技能架构

每个技能包含:

  • SKILL.md:技能定义(YAML 前导,包含 name、description、triggers)
  • scripts/:可执行脚本(Python、PowerShell、bash)
  • references/:参考文档
  • assets/:资源文件

内置技能

  • sysinfo:系统信息查询
  • docx:Word 文档操作
  • canvas-design:Canvas 设计工具

开发自定义技能

# skills/my-skill/SKILL.md
---
name: my-skill
description: 我的自定义技能
triggers: ["我的技能", "自定义功能"]
---

这是我的自定义技能说明...

🔧 配置选项

环境变量配置 (.env)

# OpenAI 配置
OPENAI_API_KEY=your-api-key
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_MODEL=glm-4-5-flash

# 显示配置
SHOW_REASONING=false
SHOW_TOOLCALLING=false

# 工作区配置
WORKSPACE=./workspace

# Shell 配置
SHELL=powershell  # Windows
SHELL=/bin/bash   # Linux/macOS

🏗️ 项目架构

aetherconsole/
├── src/
│   └── nlcmd/               # 主包(保持兼容性)
│       ├── __init__.py      # 包入口
│       ├── main.py          # CLI 入口
│       ├── llm.py           # Agent 定义与组装
│       ├── config.py        # 配置管理
│       ├── utils.py         # 工具函数
│       ├── ui.py            # 控制台输出
│       ├── shell_toolset.py # Shell 工具集
│       ├── sub_agent.py     # 子 Agent 工具集
│       ├── cron/            # 定时任务模块
│       │   ├── cli.py       # 定时任务 CLI
│       │   ├── scheduler.py # 任务调度器
│       │   └── tasks.py     # 任务函数
│       └── memory/          # 记忆模块
│           ├── store.py     # 记忆存储
│           ├── indexer.py   # 语义索引
│           └── toolset.py   # 记忆工具集
├── skills/              # 技能目录
├── workspace/           # 工作目录
├── pyproject.toml       # 项目配置
└── README.md            # 项目文档

📖 核心概念

智能体 (Agent)

AetherConsole 的核心是一个智能体系统,负责:

  1. 理解用户意图
  2. 规划执行步骤
  3. 调用适当的工具
  4. 管理记忆和上下文
  5. 提供反馈和结果

语义记忆 (Semantic Memory)

基于 AI 的记忆管理系统,通过语义理解而非简单存储实现智能回忆。记忆内容自动分类、关联,支持自然语言查询。

技能 (Skill)

可复用的功能模块,支持多种脚本语言,通过 YAML 配置文件定义。技能库是 AetherConsole 的核心扩展机制。

工作区 (Workspace)

安全的文件操作区域,防止误操作和污染系统环境。所有文件操作都在工作区中执行。

🔐 安全特性

  • 命令执行确认:所有命令执行前需要用户确认
  • 工作区隔离:防止误操作系统文件
  • 内存安全:限制执行权限,防止代码注入
  • 环境隔离:独立的依赖和配置空间

🚀 高级用法

自定义智能体行为

# 在 config.py 中配置智能体行为
class AgentConfig:
    model = "glm-4-5-flash"
    temperature = 0.7
    max_tokens = 2048
    timeout = 30

扩展技能库

# skills/my_skill/scripts/main.py
from nlcmd.shell_toolset import execute_command

def my_custom_skill():
    result = execute_command("dir")
    return f"目录内容: {result}"

🌈 未来规划

  • 多语言支持增强
  • 可视化工作流设计器
  • 插件市场集成
  • 企业级部署方案
  • 协作式智能体系统
  • 高级数据分析技能

📄 许可证

MIT License - 详见 LICENSE 文件


AetherConsole - 让 AI 智能体变得简单而强大!

About

一个支持多智能体、自定义技能(Skills)和语义记忆(Memory)的控制台AI助手(Agentic Assistant)

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages