Appearance
rv-poc CLI
Sales-rep tool for bootstrapping and operating POC tenants. Single bash script, depends only on curl + jq.
Install
bash
curl -sSL https://docs.rapidvalue.be/rv-poc -o /usr/local/bin/rv-poc
chmod +x /usr/local/bin/rv-pocOr grab it directly from the repo at scripts/rv-poc.
Configure
The CLI reads config from ~/.rvpoc-config (or env vars override):
bash
# ~/.rvpoc-config
RV_CONTROL_PLANE_URL=https://api.rapidvalue.be
RV_ADMIN_TOKEN=rv_admin_xxx...
RV_SALES_REP_EMAIL=you@rapidvalue.beGet your RV_ADMIN_TOKEN from sales operations.
Commands
rv-poc bootstrap <slug>
Provision a new POC tenant.
bash
rv-poc bootstrap acme-corp \
--sector financial-services \
--contact alice@acme.com \
--duration 30Output:
✓ Tenant 'acme-corp' provisioned
✓ Sector pack 'financial-services' installed
✓ Agent registered: agent_xyz123
✓ POC expires: 2026-06-23
✓ Funnel stage: bootstrapped
Customer install one-liner (email this):
curl -sSL https://acme-corp.rapidvalue.be/agent/install | \
RV_AGENT_TOKEN=rv_agent_abc... bash
Customer login: https://acme-corp.rapidvalue.be
Admin dashboard: https://api.rapidvalue.be/admin/tenants/acme-corp
Funnel dashboard: https://api.rapidvalue.be/admin/poc/dashboardOptions:
--sector— one of:financial-services,healthcare,public-sector,manufacturing,mid-market,ai-enterprise--contact— primary customer email; gets the welcome message--duration— trial length in days, default 30--no-agent— skip the agent setup (for hosted-only POCs)--dry-run— print what would happen without making changes
rv-poc list
Show all POC tenants you've provisioned.
bash
rv-poc list
# or filter by stage:
rv-poc list --stage activatedOutput:
SLUG STAGE DAYS_LEFT AGENTS LAST_ACTIVITY
acme-corp formalized 18 1 ✓ 2h ago
beta-bank activated 22 1 ✓ 1d ago
gamma-health connected 27 1 ✓ 6h ago
delta-mfg bootstrapped 29 0 ✗ neverThe 1 ✓ / 0 ✗ agent column shows agent online status.
rv-poc status <slug>
Detailed status of one tenant.
bash
rv-poc status acme-corpShows funnel-stage timestamps, connector list, agent health, recent activity, and recommended next sales action.
rv-poc disable <slug>
Manually expire a POC (for canceled trials, support cases, etc.).
bash
rv-poc disable acme-corp --reason "customer asked to pause"The tenant flips to read-only immediately (same as natural expiry).
rv-poc installer <slug>
Re-generate the customer install one-liner (e.g. for resending the welcome email).
bash
rv-poc installer acme-corp
# Output: the curl ... bash commandrv-poc report <slug>
Trigger generation + download of the take-home report.
bash
rv-poc report acme-corp --format html --output /tmp/acme-report.html
rv-poc report acme-corp --format md --output /tmp/acme-report.mdUseful when sales needs to mail the report manually (rather than having the customer download it).
rv-poc help
bash
rv-poc help
rv-poc help bootstrap # per-command detailsTypical sales-call flow
bash
# 1. During the prep call, you've agreed to provision a POC.
rv-poc bootstrap acme-corp --sector financial-services --contact alice@acme.com
# 2. Copy the install one-liner from the output, email it to Alice.
# 3. Mid-call, check that her agent is online.
rv-poc status acme-corp
# → Agent: online ✓
# 4. End of call, generate the report for her CISO.
rv-poc report acme-corp --format html --output /tmp/acme-ciso-report.html
# Mail it.
# 5. Follow up next week.
rv-poc list --stage connected # who's stuck at 'connected'?
rv-poc list --stage activated # who's ready for the formalize conversation?Cross-tenant dashboard
The CLI is read-only against the same backend as the /admin/cross-tenant-dashboard view. If you prefer a UI: same data, different surface.
The CLI is the right tool for automation (mailshots, weekly digest emails, slack-bot integrations).
Troubleshooting
401 Unauthorized — your RV_ADMIN_TOKEN is wrong or expired. Refresh from sales ops.
Agent offline in status — customer's agent host can't reach the control plane. Check RV_CONTROL_PLANE_URL matches the tenant URL, and that outbound HTTPS is allowed from their network.
Funnel stage stuck at connected — customer hasn't run role-mining yet. The "activated" transition fires when at least one mining opportunity is surfaced. Suggest they try Role mining → Run.
HTTP 423 Locked — POC expired. Run rv-poc status to see the expiry date; if customer wants to continue, convert to paid via the admin console.