question-and-answer

一个提供命令行问答功能的JavaScript库,支持AI辅助开发。

安装使用

复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:

帮我安装这个 AI Skill:question-and-answer。
它的用途是:一个提供命令行问答功能的JavaScript库,支持AI辅助开发。
完整的 Skill 内容见:https://321skill.com/skills/question-and-answer/raw/index.md
请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。

提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。

使用示例

“帮我在项目中集成一个命令行配置向导,收集用户的项目名称、技术栈偏好和部署环境。”,它会引导你安装question-and-answer库,并帮你编写一个定义了一系列问题(如单选、多选、文本输入)的审问包JSON文件,最终生成可交互的Node.js脚本。

介绍

question-and-answer 是一个用于在命令行环境中实现交互式问答功能的JavaScript库。它通过定义结构化的“审问包”来引导用户输入,收集并处理回答,适用于需要自动化收集用户配置或信息的场景。

使用该库,开发者可以创建一个包含问题、陈述、映射和审查等动作的JSON数组,通过实例化Questioner类并调用question方法来执行交互流程。库支持多种问题类型(如单选、多选、数字输入)和条件逻辑,并能将答案映射到指定的参数中。

该库非常适合需要构建命令行工具、自动化脚本或配置向导的开发者,尤其是那些希望程序能以一种结构化和可验证的方式与终端用户交互的场景。对于产品经理或运维人员,它也可以用来快速搭建内部工具的数据收集前端。

请注意,该项目目前处于Alpha阶段,基础接口稳定,但可能存在一些已知问题,建议在非关键生产环境中先行试用。其CLI工具主要用于测试和演示审问包的功能。

核心特点

与简单的命令行参数解析库不同,它提供了声明式的“审问包”格式来定义复杂的多步骤交互流程,支持条件分支、答案映射和回顾审查,更像一个轻量级的终端交互框架。同时,它原生集成了对AI助手(如Claude Code)的支持,提供了专门的技能和集成指南。

注意事项

不适合需要复杂图形界面或实时Web交互的场景,主要专注于终端环境下的结构化信息收集。

常见问题

如何定义带条件判断的问题?

在每个action中添加'condition'字段,使用condition-eval语法定义执行条件。

能否将用户的多个答案映射成新变量?

可以,使用'maps'类型的action,基于现有参数通过表达式计算新值。

给 AI 助手的安装指引

如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:

请访问 https://321skill.com/skills/question-and-answer/raw/index.md 读取 question-and-answer 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。