Services & Infrastructure
resume-service (working name: applywell)
Concierge auto-apply targeted at Workday/Ashby/Workable — the enterprise
Documentation
resume-service (working name: applywell)
Concierge auto-apply targeted at Workday/Ashby/Workable — the enterprise ATSes that LazyApply and Sonara cannot reliably submit to.
v0 architecture (what's shipped)
┌─────────────────┐ ┌─────────────────┐ ┌──────────────────┐
│ Next.js intake │ ─► │ Stripe Checkout │ ─► │ webhook handler │
│ (port 3030) │ │ │ │ writes ready/ │
└─────────────────┘ └─────────────────┘ └────────┬─────────┘
│
▼
┌──────────────────────┐
│ scripts/fulfill.py │
│ MANUAL --execute │
│ (operator-driven) │
└──────────┬───────────┘
│
▼
┌──────────────────────┐
│ .openclaw/apply/ │
│ (read-only subproc) │
└──────────────────────┘
Key v0 properties:
- No auto-fulfillment. Webhook sets
status: paidand copies the order toready/. The operator runsfulfill.py --executewhen ready. - No apply/ writes. Fulfillment shells out to
python -m applyonly. - Multi-tenant deferred. apply/ uses a hardcoded profile today; v1 refactor parameterizes it. v0 is one-customer-at-a-time concierge.
Run locally
# Web (intake form + Stripe)
cd C:\openclaw-products\resume-service\web
npm install
npm run dev # http://localhost:3030
# Without Stripe keys: form still works, redirects to /success?dev=1
# With Stripe keys: real Checkout flow, webhook writes the ready/ queue.
# Fulfillment
cd C:\openclaw-products\resume-service
python scripts\fulfill.py # preview pending orders
python scripts\fulfill.py --execute # process them (manual steps printed)
Stripe configuration
Set in _shared/.env.local:
STRIPE_SECRET_KEY=sk_test_...
STRIPE_WEBHOOK_SECRET=whsec_...
Webhook endpoint to register in Stripe dashboard:
https://your-domain.com/api/webhook
For local dev with Stripe CLI:
stripe listen --forward-to localhost:3030/api/webhook
Pricing tiers
| Plan | Apps | Cover letters | Price |
|---|---|---|---|
| Starter | 100 | template | $99 |
| Pro | 300 | per-role | $299 |
| Concierge | 500 | per-role + reviewer call | $799 |
v1 roadmap
- Multi-tenant apply/ — parameterize profile.yaml + BASE_RESUME.md path. Without this, fulfillment is manual. (Not a small change to apply/.)
- Email status report sender (Resend/SES).
- Per-order job-URL curation from verified-alive catalog, filtered by intake's titles/locations/salary.
- Refund automation for failed apps.
- Customer dashboard (login, status, screenshots).