{"_id":"@aillive/cli","name":"@aillive/cli","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@aillive/cli","version":"0.1.0","description":"Aillive Code command line AI assistant for terminal chat, project context, OpenAI-compatible APIs, and OpenClaw tasks.","type":"module","workspaces":["apps/*","packages/*"],"bin":{"aillive":"src/index.js","aillive-code":"src/index.js"},"scripts":{"dev":"node ./apps/cli/src/index.js","check":"npm run check:workspace && npm run check:syntax","check:workspace":"node ./scripts/verify-workspace.mjs","check:syntax":"node ./scripts/check-syntax.mjs","check:release":"node ./scripts/check-release.mjs","test":"node --test","test:integration":"node --test test/cli.test.js","smoke:npx":"npm run pack:smoke","pack:smoke":"node ./scripts/pack-smoke.mjs","pack:dry":"npm pack --dry-run","publish:check":"npm run check && npm run check:release && npm test && npm run pack:smoke && npm run pack:dry"},"engines":{"node":">=18"},"keywords":["aillive","aillive-code","ai","cli","agent","terminal","openai","openclaw"],"repository":{"type":"git","url":"git+https://github.com/amine123max/Aillive-Code.git"},"bugs":{"url":"https://github.com/amine123max/Aillive-Code/issues"},"homepage":"https://github.com/amine123max/Aillive-Code#readme","publishConfig":{"access":"public"},"license":"MIT","dependencies":{"@mimo-ai/plugin":"^0.1.4"},"gitHead":"226a6df5667466e72c8dc626822a32dc0ae186c8","_id":"@aillive/cli@0.1.0","_nodeVersion":"24.12.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-bepejZhc8ZpxDaS3bqmVS0qmSc1Ud1dHpalGhDVZm+zbnWdHxj0XjybQsKABrK71qtDCl4i1BFZn8NVzUsjZdA==","shasum":"fcb8ccce6e9d71c31bbba013fbab0d47b02fbb18","tarball":"https://registry.npmjs.org/@aillive/cli/-/cli-0.1.0.tgz","fileCount":26,"unpackedSize":241573,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAebCwu4mV2WVmP+Uw76yG1jwv+6yDI+54QLRRuKocRVAiEAm2brkpTvamM+ZM0s9rVKO8xEr9rRxqcY2TncY7O7Ypk="}]},"_npmUser":{"name":"yooodi","email":"di1737083@gmail.com"},"directories":{},"maintainers":[{"name":"yooodi","email":"di1737083@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_0.1.0_1783414116238_0.7475656118280467"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-07T08:48:36.117Z","0.1.0":"2026-07-07T08:48:36.393Z","modified":"2026-07-07T08:48:36.600Z"},"maintainers":[{"name":"yooodi","email":"di1737083@gmail.com"}],"description":"Aillive Code command line AI assistant for terminal chat, project context, OpenAI-compatible APIs, and OpenClaw tasks.","homepage":"https://github.com/amine123max/Aillive-Code#readme","keywords":["aillive","aillive-code","ai","cli","agent","terminal","openai","openclaw"],"repository":{"type":"git","url":"git+https://github.com/amine123max/Aillive-Code.git"},"bugs":{"url":"https://github.com/amine123max/Aillive-Code/issues"},"license":"MIT","readme":"<div align=\"center\">\n\n# Aillive Code\n\n<img src=\"docs/assets/aillive_code.png\" alt=\"Aillive Code 标志\" width=\"920\" />\n\n**Aillive Code：用于对话、Agent、API 和项目工作的终端 AI 助手。**\n\n中文 | [English](README.md)\n\n[Website](https://www.aillive.xyz) | [Docs](https://www.aillive.xyz/docs/) | [GitHub](https://github.com/amine123max/Aillive-Code)\n\n</div>\n\nAillive Code 是 Aillive 的独立 npm CLI。它把 Aillive 对话、项目上下文、OpenAI 兼容 API、OpenClaw 任务、用量查询、本地会话和专业终端界面整合到一个命令里。\n\n这个仓库用于发布 npm 包 `@aillive/cli`。安装后可使用两个命令：\n\n- `aillive`\n- `aillive-code`\n\n产品结构参考成熟 AI Coding CLI 的开发者体验：快速安装、浏览器登录、slash commands、项目记忆、单次执行、本地配置和适合 CI 的 JSON 输出。Aillive Code 保留自己的命令命名、认证流程、API 协议和本地目录结构。\n\n## 快速开始\n\nnpm 发布后可这样安装：\n\n```bash\nnpm install -g @aillive/cli\naillive install managed\naillive --version\naillive auth login\naillive doctor\naillive\n```\n\n免安装运行：\n\n```bash\nnpx @aillive/cli chat \"Hello Aillive\"\n```\n\n如果希望 CLI 程序本体也由用户目录统一管理，可以安装到 Aillive 托管目录：\n\n```bash\nnpx @aillive/cli install managed\n```\n\n这会创建 `~/.aillive/cli` 存放包文件，并创建 `~/.aillive/bin` 存放命令 shim。把 `~/.aillive/bin` 加入 `PATH` 后，shell 会优先使用这个托管版本的 `aillive`。\n\nnpm 发布前，可以直接从 GitHub 安装：\n\n```bash\nnpm install -g github:amine123max/Aillive-Code\naillive --help\n```\n\n从本地仓库安装：\n\n```bash\ngit clone https://github.com/amine123max/Aillive-Code.git\ncd Aillive-Code\nnpm install -g .\naillive doctor\n```\n\n## 终端体验\n\n在任意项目目录运行 `aillive` 即可进入交互式终端。\n\n![Aillive Code 交互式终端](docs/assets/aillive-code-terminal.png)\n\n未登录时也可以打开终端。Aillive Code 只会在真正需要 API 的动作中触发浏览器认证，例如 chat、models、usage 或 OpenClaw。\n\n常用 slash commands：\n\n```text\n/help        查看交互命令\n/status      查看 auth、model、context、home、authFile、workspace\n/login       打开浏览器登录，回调自动保存 ~/.aillive/auth.json\n/models      列出服务端模型\n/context     查看项目上下文状态\n/context on  为当前终端会话附加项目记忆\n/usage       查看账号用量\n/doctor      检查本地配置和 API 可用性\n/sessions    查看本地 CLI 会话\n/clear       清空当前终端上下文\n/exit        退出\n```\n\n也支持脚本和快速提问：\n\n```bash\naillive \"总结这个项目\"\naillive chat --stream \"写一个发布 checklist\"\naillive run --project \"生成简洁的 README 大纲\"\n```\n\n## 认证\n\n推荐使用浏览器登录：\n\n```bash\naillive auth login\n```\n\n浏览器回调会自动写入 `~/.aillive/auth.json`。登录过程中请保持终端打开，直到 Aillive 打印认证成功信息。\n\n```bash\naillive auth status\naillive auth path\n```\n\nCI 环境可以使用环境变量：\n\n```bash\nset AILLIVE_API_KEY=ail_xxx\nset AILLIVE_BASE_URL=https://www.aillive.xyz/api/v1\naillive chat --json \"Hello\"\n```\n\n本地配置命令：\n\n```bash\naillive config set base-url https://www.aillive.xyz/api/v1\naillive config set api-key ail_xxx\naillive config set model qwen2.5:0.5b\naillive config list\n```\n\nAPI Key 和 auth 文件属于敏感信息，请勿提交到 GitHub。\n\n## 本地文件\n\nAillive Code 会把用户级配置存放在电脑用户目录：\n\n```text\n~/.aillive/\n  bin/\n    aillive\n    aillive-code\n  cli/\n    node_modules/\n      @aillive/cli/\n  auth.json\n  config.json\n  stats.json\n  sessions/\n    index.json\n  checkpoints/\n    index.json\n  traces/\n    index.json\n  projects/\n    <project-key>/\n      project.md\n```\n\nWindows 上可以直接打开目录：\n\n```bash\naillive home\naillive home --open\n```\n\n项目上下文存放在 `~/.aillive/projects/<project-key>/project.md`。CLI 不会自动上传本地文件内容，只有显式启用时才会发送项目上下文：\n\n```bash\naillive init\naillive context path\naillive context show\naillive run --project \"总结当前项目\"\n```\n\n## 命令\n\n| 模块 | 命令 |\n| --- | --- |\n| 启动 | `aillive`, `aillive interactive`, `aillive setup`, `aillive doctor` |\n| 认证 | `aillive auth login`, `aillive auth import`, `aillive auth status`, `aillive logout` |\n| 对话 | `aillive ask`, `aillive chat`, `aillive chat --stream`, `aillive \"prompt\"` |\n| Agent | `aillive agent plan \"task\"`, `aillive agent run \"task\"`, `aillive agent run --verify \"task\"`, `aillive agent verify`, `aillive agent resume [checkpoint]` |\n| 项目 | `aillive init`, `aillive run --project`, `aillive context status/show/path/init` |\n| 模型 | `aillive models` |\n| 用量 | `aillive usage --from 2026-07-01 --to 2026-07-31 --json` |\n| OpenClaw | `aillive openclaw run \"生成微信客服自动回复流程\"` |\n| 本地 | `aillive home`, `aillive session list`, `aillive stats` |\n| 架构 | `aillive runtime status`, `aillive provider status`, `aillive mcp status`, `aillive lsp status`, `aillive git status`, `aillive memory status` |\n| Shell | `aillive completions powershell`, `aillive completions bash`, `aillive completions zsh` |\n| 管理 | `aillive admin promote admin@example.com --data-dir \"../Web/data\"` |\n\n## 开发\n\nAillive Code 现在按 npm workspace 组织，同时由根包发布 `@aillive/cli` npm 包。可执行 CLI app 位于 `apps/cli`，根目录 `src/index.js` 保留为兼容 shim，方便旧测试和旧导入路径继续工作。\n\n```text\napps/cli              CLI app 和命令入口\npackages/core         config、path、parser、error、formatting 等共享工具\npackages/tui          终端渲染和交互式 UI primitives\npackages/provider     Aillive 与 OpenAI-compatible Provider client\npackages/mcp          MCP registry 和 tool invocation contracts\npackages/lsp          Language Server integration contracts\npackages/git          Git 仓库检查和 checkpoint metadata\npackages/memory       本地 sessions、stats、project memory 和 checkpoint\npackages/agent-runtime planning、tool routing、verification 和 task trace\n```\n\n第一批架构改造只建立包边界，并保持现有命令行为不变。\n架构状态命令同时支持 human 和 JSON 模式，便于在深入 Agent 执行前检查 subsystem readiness。\n稳定工具层已经开始进入 packages：Core 负责 config/path/parser/JSON/auth helpers，TUI 负责终端渲染工具，Memory 负责本地 sessions、stats 和 project context stores。\nProvider 调用已经由 `packages/provider` 承担：模型列表、标准化模型元数据、chat completion、SSE streaming、usage、OpenClaw task、timeout/retry policy、状态检查和脱敏 request trace。\nGit、LSP 和 Agent Runtime 现在也具备可离线测试的核心契约：只读仓库检查、mock JSON-RPC 代码智能、带 trace/checkpoint event 的 Agent 状态机。\n`aillive agent plan|run|resume` 会离线运行这套 runtime，将 checkpoint/trace memory 写入 `~/.aillive`，无需浏览器登录即可安全执行。`aillive agent verify` 和 `aillive agent run --verify` 会运行配置的 syntax、test 和 pack-smoke verification hooks。\nAillive MCP 对外暴露自己的 Aillive tool contract。底层仅把一个 MIT 第三方 contract 包作为内部实现来源复用；公开 API 命名、命令、认证、协议和本地数据布局都保持 Aillive 自有体系。\nAgent runtime 也内置安全门：破坏性 shell 命令、包含 secret 的 trace、大文件编辑、dirty Git worktree 和高风险 MCP 工具都会按策略拒绝或要求确认。\n\n```bash\nnpm install\nnpm run check\nnpm run check:release\nnpm test\nnpm run smoke:npx\nnpm run pack:smoke\nnpm run pack:dry\nnpm run publish:check\n```\n\n`npm run check:release` 会检查发布元数据、changelog 版本覆盖、bin alias、package files allowlist 和发布文档。\n`npm run pack:smoke` 会创建临时 npm tarball、检查 tarball 文件清单、启动 mock Aillive API，并通过 npm 执行路径验证 `aillive` 和 `aillive-code`。`npm run smoke:npx` 保留为同一 pack smoke 的兼容别名。\n\n## 发布\n\nnpm 包名是 `@aillive/cli`。\n\n发布前：\n\n```bash\nnpm whoami\nnpm run check:release\nnpm run pack:smoke\nnpm run publish:check\nnpm publish\n```\n\n如果 `npm whoami` 失败，先登录：\n\n```bash\nnpm adduser\n```\n\n发布后用户可以安装：\n\n```bash\nnpm install -g @aillive/cli\naillive install managed\nnpx @aillive/cli chat \"Hello\"\n```\n\n## GitHub 发布清单\n\n1. 确认 `package.json` 版本。\n2. 确认 `CHANGELOG.md` 有同版本标题。\n3. 运行 `npm run publish:check`。\n4. 确认 `npm pack --dry-run` 只包含 CLI app、兼容 shim、内部包、docs assets、README、LICENSE 和 package metadata。\n5. 推送 `main`。\n6. 创建类似 `v0.1.0` 的 GitHub release tag。\n7. npm 登录后发布。\n\n手动触发的 GitHub Actions `Release` workflow 会运行 `npm run publish:check` 并生成 tarball artifact，默认不会发布。只有在确认要发布 npm 且已配置 `NPM_TOKEN` 时，才把 `publish_to_npm` 设置为 `true`；workflow 会使用 npm provenance 发布。\n\n## 安全\n\n- 不要提交 `.env`、`auth.json`、API Key、Provider Key、本地数据库、日志或 `.aillive/`。\n- API Key 泄露后请立即在 Aillive Console 撤销。\n- 本地开发、CI、生产环境建议使用不同 API Key。\n- 自动化场景建议使用 `--json`，避免在日志中打印敏感信息。\n\n## 许可证\n\nMIT\n","readmeFilename":"README.zh.md","_rev":"1-aace7f5fff8047f76f65ca1ee76791e5"}