@nalvietnam/avatar-po-cli
v0.5.7
Published
Product Owner CLI for NAL Vietnam (avatar-po)
Downloads
4,696
Readme
@nalvietnam/avatar-po-cli
Product Owner CLI for NAL Vietnam — fork của @nalvietnam/avatar-cli.
Cài song song với avatar gốc: binary riêng avatar-po, config store riêng ~/.avatar-po/.
avatar-po là gì
avatar-po là biến thể CLI dành cho Product Owner. Khác với avatar (dev):
- Pack nguồn = po-ai-pack (không phải team-ai-pack) — tải tarball ký số từ edge
function
get-pack-po(signed URL, xác thựcid_tokenGoogle NAL), giải nén vào.claude/pack/. - Config tách biệt tại
~/.avatar-po/— PO chạy đượcavatar+avatar-pocùng lúc với 2 tài khoản độc lập. - PO chỉ gõ tay 3 lệnh:
login→init→gitlab-connect. AI setup và freeze (ẩn terminal/git/source-control qua.vscode/settings.json) chạy tự động tronginit. - Init gọn: không cài GitNexus, không chạy security-scanner, không hỏi ai-orchestrator. Workspace PO ship đúng 3 tool của pack.
Cài đặt
# Local development (clone repo)
cd avatar-po-cli
pnpm install
pnpm build
npm link # makes `avatar-po` available globally pointing at this checkout
# Sau này khi đã publish:
npm install -g @nalvietnam/avatar-po-cliSử dụng
avatar-po --help # liệt kê các lệnh PO
avatar-po --version # 0.5.6
# 1) Đăng nhập Google SSO (workspace @nal.vn / nal-software.com)
avatar-po login
# 2) Khởi tạo workspace PO (tạo workspace + tải po-ai-pack + AI setup + freeze)
avatar-po init # interactive wizard
avatar-po init my-workspace --yes # auto-confirm tất cả prompt
avatar-po init --pack-version 0.2.5 # pin pack vào version cụ thể
# 3) Kết nối GitLab (PAT scope `api` + project id) → ghi .gitlab/credentials.json
avatar-po gitlab-connect
# Cập nhật pack
avatar-po sync
# Snapshot + chẩn đoán
avatar-po status
avatar-po doctor
avatar-po doctor --fixBộ lệnh PO
| Command | Trạng thái |
|---|---|
| login / logout | ✅ Google OAuth Device Flow |
| init | ✅ tạo workspace + tải po-ai-pack + AI setup + freeze |
| sync | ✅ tải pack tarball Supabase (po-ai-pack) |
| ai | ✅ cấu hình AI provider (setup/status/test/reset) |
| status | ✅ snapshot project/pack |
| doctor | ✅ chẩn đoán + --fix |
| tools | ✅ enable/disable/list/add/remove |
| pack | ✅ version / status check |
| update | ✅ self-update CLI qua npm i -g (hỗ trợ dist-tag) |
| uninstall | ✅ gỡ avatar-po + backup |
| gitlab-connect | ✅ token + project id → .gitlab/credentials.json |
| comm-connect | ✅ Mattermost bot token + channel → .mattermost/credentials.json |
Fork bỏ các lệnh dev-only của
avatargốc (add/remove/listrepo,scan,review,gitnexus,debate,mcp-run,restore) — PO không cần.
Google OAuth setup
Client ID và Client Secret hardcode trong src/lib/google-oauth-device-flow.ts.
OAuth Client trong Google Cloud Console:
- Application type: TV and Limited Input devices
- Hosted domain:
nal.vnvànal-software.com(xemALLOWED_HOSTED_DOMAINS)
Rotate secret: Console → APIs & Services → Credentials → OAuth client → Reset Secret →
cập nhật GOOGLE_CLIENT_SECRET trong source.
Dev workflow
pnpm dev # tsup --watch
pnpm test # vitest
pnpm lint # biome check
pnpm build # production bundle vào dist/Liên quan
- Pack nguồn: po-ai-pack — tải tarball ký số từ Supabase edge function
get-pack-po(signed URL, xác thựcid_tokenGoogle NAL) khiavatar-po init/avatar-po sync. - CLI gốc:
@nalvietnam/avatar-cli(dev / team-ai-pack).
