Token导航 LogoToken导航TokenDH.com
aiter (Pranftw) logo
AI代理未说明官方级别未说明来源级核验

aiter (Pranftw)

MCP Server

基于OpenTUI和React构建的终端AI聊天界面,具有模块化代理系统和MCP集成功能,适用于开发者构建自定义AI工作流。

工具数

0

提示词数

0

GitHub Stars

8

资源数

0
开发工具TypeScriptClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

pranftw

提供方

pranftw

最后核验

2026/5/17 20:19

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

异步迭代器

一个强大的基于终端的人工智能聊天界面,由OpenTUI和React构建,具有模块化代理系统和模型上下文协议(MCP)集成。

aiter screenshot

为什么爱?

虽然像Claude Code和其他CLI AI代理这样的工具提供了强大的AI帮助,但aiter给了你一些不同的东西: 完全控制您与AI的交互方式.

建立在三个原则之上

可控性:拥有整个代理循环——决定迭代限制,控制工具执行流,并自定义流行为。构建与你的思维模式相匹配的人工智能工作流程,而不是供应商的。

可扩展性:通过Vercel AI SDK运行任何模型。轻松配置MCP服务器。定义自定义工具和命令。为不同的任务创建专门的代理。没有黑盒子,没有专有抽象。

可定制性:终端优先意味着可脚本化、可管道化和CI/CD就绪。用React修改UI。直接检查和编辑对话JSON。完全本地控制,无需遥测。

对于那些想用人工智能构建而不仅仅是使用它的开发人员来说。 非常适合实验、MCP测试、自定义工作流程以及了解AI交互的实际工作方式。

______________________________________________________________________

快速开始

安装

创建新的aiter应用程序:

bunx @aiter/cli create app my-chat-app
cd my-chat-app
bun install
# Set up environment variables
cp .env.template .env

# Start with the example agent
bun run src/index.tsx --agent example
# Resume an existing chat
bun run src/index.tsx --agent example --chat chats/abc123.json
# Start with an initial prompt
bun run src/index.tsx --agent example --prompt "Hello, how are you?"
# Pipe prompt from stdin
echo "Explain TypeScript generics" | bun run src/index.tsx --agent example -

______________________________________________________________________

特性

核心能力

  • 终端用户界面(TUI):由OpenTUI提供支持的美丽交互式聊天界面
  • 多代理系统:创建并在具有不同配置的自定义AI代理之间切换
  • 持续聊天会话:所有对话都保存为JSON文件,便于恢复
  • MCP集成:通过模型上下文协议连接到外部工具和服务

- 支持stdio、SSE和HTTP传输类型 - 从MCP服务器动态加载工具 - 每个代理配置简单

可扩展性

  • 基于文件系统的代理组织:Next.js-like基于约定的结构——代理按目录组织,并带有标准化的文件夹(命令/、工具/、mcps/、系统提示/)
  • 自定义Slash命令:使用yargs样式的参数解析定义特定于代理的或全局的斜线命令
  • 自定义AI工具:添加人工智能在对话中可以使用的本地工具
  • 灵活的系统提示:使用基于markdown的系统提示自定义AI行为
  • 自定义UI组件:用你自己的React组件覆盖聊天界面中的任何组件
  • 自定义数据架构:为特定于代理的状态管理定义类型化数据结构
  • Stdin支持:直接来自shell命令或脚本的管道提示

______________________________________________________________________

创建自定义代理

将新代理添加到您的项目中:

# Interactive mode (prompts for customizations)
bunx @aiter/cli add agent my-agent
# Non-interactive with specific customizations
bunx @aiter/cli add agent my-agent --customize commands,tools,mcps
# Add all customizations
bunx @aiter/cli add agent my-agent --customize all --interactive false

代理结构

每个代理目录包含:

src/ai/agents//
├── commands/           # Custom slash commands
│   └── index.ts       # Export all commands
├── mcps/              # MCP server configurations
│   └── main.json      # MCP servers for this agent
├── system-prompts/    # System prompts
│   └── main.md        # Main system prompt
├── tools/             # Custom AI tools
│   └── index.ts       # Export all tools
├── schema.ts          # Data schema for agent state
└── stream-function.ts # Custom stream processing logic

______________________________________________________________________

定制指南

添加自定义工具

在中创建工具 src/ai/agents//tools/ 使用AI SDK tool() 功能。参见 src/ai/agents/template 对于基本结构和 src/ai/agents/example 用于实施示例。

添加自定义Slash命令

在中创建命令 src/ai/agents//commands/ 实施 SlashCommand 与yargs风格选项的界面。参见 src/ai/agents/template 对于基本结构和 src/ai/agents/example 用于实施示例。

配置MCP服务器

cp src/ai/agents//mcps/templates/main.json.template src/ai/agents//mcps/main.json

编辑 src/ai/agents//mcps/main.json:

{
  "mcpServers": {
    "server0": {
      "type": "stdio",
      "command": "npx",
      "args": ["path/to/server.js"],
      "env": {}
    },
    "server1": {
      "type": "http",
      "url": "https://api.example.com/mcp",
      "headers": {
        "Authorization": "Bearer token"
      }
    },
    "server2": {
      "type": "sse",
      "url": "https://api.example.com/sse",
      "headers": {}
    }
  }
}

自定义系统提示

编辑 src/ai/agents//system-prompts/main.md 定义AI的行为和个性。

自定义组件

您可以通过在中创建自定义版本来覆盖任何UI组件 src/components/组件系统会自动将您的自定义组件与核心组件合并。

自定义数据架构

编辑 src/ai/agents//schema.ts 为特定于代理的状态管理定义类型化数据结构。

______________________________________________________________________

CLI参考

命令行参数

选项别名类型默认值描述
--agent-a字符串example指定要使用的代理(必须存在于 src/ai/agents/)
--chat-c字符串null要恢复的现有聊天会话文件的路径
--prompt-p字符串null开始聊天时发送的初始提示
--help-h--显示帮助信息

特殊输入

使用 - 作为从stdin读取提示的位置参数:

cat question.txt | bun run src/index.tsx -
echo "My question" | bun run src/index.tsx -

注意:不能与 --prompt

______________________________________________________________________

建筑

包裹

  • @aiter/core -提供UI组件、触发系统、MCP管理和聊天会话处理的核心运行库
  • @aiter/cli -用于构建新应用程序和代理的CLI工具

关键组件

  • 聊天容器:管理聊天界面的主UI组件
  • 触发系统:可扩展的输入处理(命令、上下文等)
  • MCP经理:Singleton管理模型上下文协议客户端和工具
  • 命令注册表:动态加载内置命令和特定于代理的命令
  • 海关运输:UI和AI流媒体之间的桥梁
  • 组件上下文:合并核心组件和自定义组件的系统

代理系统

每个代理都有自己的隔离:

  • 工具集(MCP工具+本地工具)
  • 命令注册表(内置+特定于代理)
  • 系统提示和配置
  • 状态模式

组件系统

组件遵循合并模式:

  1. 核心组件由提供 @aiter/core
  2. 您在中的自定义组件 src/components/ 覆盖匹配的名称
  3. ComponentsProvider 使所有组件可通过 useComponents()
  4. 任何组件都可以定制,而不会影响其他组件

______________________________________________________________________

贡献

我们欢迎捐款!这是一个使用Bun工作区管理的monorepo。

存储库结构

aiter/
├── packages/
│   ├── core/          # @aiter/core - Core runtime library
│   ├── cli/           # @aiter/cli - CLI tool
│   │   └── template/  # Template for new projects (also dev workspace)
└── scripts/           # Build scripts

开发环境设置

# Clone the repository
git clone https://github.com/pranftw/aiter.git
cd aiter
# Install dependencies
bun install
# Create .env from template
cp packages/cli/template/.env.template packages/cli/template/.env

开发工作流程

此monorepo使用 直接来源进口 -开发过程中不需要构建步骤!

# Run the template workspace (development environment)
bun dev -a example
# Make changes to packages/core/src/* or packages/cli/template/src/*
# Changes are instantly reflected - no rebuild needed!
# Type check all packages
bun run typecheck
# Build packages (only needed for publishing)
bun run build
# Clean all builds
bun run clean

测试CLI命令

# Test the create command
bun run dev:cli create app test-app

______________________________________________________________________

许可证

请参阅每个包中的LICENSE文件。

目录标签

目录标签

开发工具TypeScriptClaude终端界面本地部署AI聊天模块化代理MCP集成开发者工具

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP