npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@fastcar/aimetting

v0.0.1

Published

AI 头脑风暴会议 — 多 LLM 模型自动开会,npx 一键启动 Web 界面

Readme

AI Meeting

AI Meeting 是一个本地运行的 AI 头脑风暴会议应用,支持多个 OpenAI 兼容 LLM 一起开会、讨论议题、生成决策和会议纪要。

本项目定位为简单的 AI 会议评审引擎:负责发起会议、生成纪要、导出实现目标清单和提供 HTTP/Web 能力。它不会调用 Codex、Kimi CLI、Claude Code,也不负责需求到代码实现的自动化编排;这类闭环流程建议放在外部 orchestrator 项目中,通过 CLI 或 HTTP 调用本包。

特性

  • 多 LLM 参会:每个成员可配置独立模型、Base URL、API Key 和人设
  • 多会议模式:自由讨论、圆桌辩论、主持人主导、创意冲刺、决策评审
  • 本地持久化:成员、会议记录和 Markdown 纪要保存在本地 data/
  • 本地资料检索:会议可配置文件/目录作为参考资料
  • 上下文压缩:主持人 LLM 生成摘要 + 最近 N 轮上下文
  • 实现目标清单:填写实现目标后,主持人会在会议纪要后单独输出一份可执行清单
  • 并行会议:支持多场会议同时运行
  • Web UI:暗色科技风,按会议模式切换布局
  • npx 一键启动

快速开始

npx ai-meeting

启动后终端会输出实际访问地址。默认会在高位端口中随机选择一个可用端口,并尽量避开常见服务端口,例如:http://localhost:43127

自定义端口和数据目录:

PORT=8080 AI_MEETING_DATA=./data npx ai-meeting

等价显式启动命令:

ai-meeting serve --port 8080 --data ./data

CLI 用法

除启动 Web 服务外,CLI 也可以作为外部编排器调用的稳定入口,从需求文件发起一次会议评审并导出结果。

ai-meeting meeting:create --from docs/requirement.md --out review.md --mock-members
ai-meeting meeting:export --id <meeting-id> --out review.md
ai-meeting meeting:checklist --id <meeting-id> --out checklist.md

常用参数:

  • --from / -f:需求文件路径。
  • --goal:直接传入需求文本。
  • --data / -d:数据目录,默认 ./data 或环境变量 AI_MEETING_DATA
  • --member <id,id>:指定已有本地成员,至少 2 位。
  • --mock-members:本地无成员时创建两个 mock 成员,适合离线评审或自动化测试。
  • --kind markdown|checklistmeeting:create 后导出完整纪要或目标清单。
  • --json:输出机器可读 JSON,方便外部 orchestrator 解析会议 ID 和导出路径。

meeting:create 默认会等待会议结束并持久化结果;如果只想创建记录后由 Web/HTTP 侧继续处理,可传 --no-wait

HTTP API

Web 服务启动后,外部系统可以通过 HTTP 调用会议能力:

POST /api/meetings
GET  /api/meetings
GET  /api/meetings/:id
GET  /api/meetings/:id/markdown
GET  /api/meetings/:id/implementation-checklist
POST /api/meetings/:id/resume
POST /api/meetings/:id/recreate
POST /api/meetings/:id/stop

这些接口只负责会议生命周期和结果导出,不包含自动修改代码、调用 Coding Agent 或多轮实现编排。

本地开发

pnpm install
pnpm build
pnpm dev

使用 @ai-meeting/core

import { createMeeting, ParticipantStore } from '@ai-meeting/core';

const store = new ParticipantStore('./data');
const member = store.add({
  name: 'Mock 产品经理',
  model: 'mock',
  baseURL: 'mock',
  apiKey: 'mock',
  persona: '你是一位产品经理。',
  temperature: 0.8,
});

const meeting = createMeeting({
  topic: '讨论 MVP 功能范围',
  mode: 'free-discussion',
  participants: [
    { type: 'saved', memberId: member.id },
    { type: 'inline', config: { name: 'Mock 技术专家', model: 'mock', baseURL: 'mock', apiKey: 'mock', persona: '你是一位技术专家。', temperature: 0.8 } },
  ],
  maxRounds: 2,
  hostConfig: { name: '会议主持人' },
}, store);

for await (const event of meeting.run()) {
  console.log(event);
}

实现目标清单

创建会议时可以填写“实现目标”,例如“输出本周可落地的开发任务清单,包含验收标准和优先级”。填写后,会议收尾流程会分两步执行:

  1. 主持人先生成最终会议纪要,包含会议总结、关键决策和行动项。
  2. 主持人在会议纪要之后单独输出一份 ## 结合实现目标的清单,再结束会议。

这份清单不是只根据实现目标单独生成。主持人会结合以下上下文进行整理:

  • 用户填写的实现目标
  • 已生成的会议总结
  • 关键决策
  • 行动项
  • 阶段性小结、压缩摘要和精简会议发言材料

清单会以主持人发言事件单独出现在会议流程中,同时也会被保留在会议纪要面板和导出的 Markdown 中,便于后续执行和验收。

会议结束后可以导出两类 Markdown 文件:

  • 导出 Markdown:导出完整会议纪要,包含会议总结、关键决策、行动项、实现目标清单和完整发言记录。
  • 导出目标清单:只导出独立的实现目标清单文件,接口为 GET /api/meetings/:id/implementation-checklist。该文件优先使用主持人在会议纪要后单独输出的清单;如果历史会议没有这条独立主持人发言,则回退使用会议纪要里的 targetActionItems

安全说明

API Key 仅保存在本地 data/participants.jsondata/ 已加入 .gitignore。不要将该目录提交到仓库。