Build a complete personalized business OS from one text or URL. First workspace free forever.
Scanned 9/1/2026
Install to Claude Code
npx -y skills add seldonframe/seldonframe --skill seldonframe --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Seldonframe?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/seldonframe-seldonframe)More formats (shields.io, HTML) on the badges page.
---
name: seldonframe
description: Build a complete personalized business OS from one text or URL. First workspace free forever.
version: 1.3.6
user-invocable: true
metadata:
requires:
env:
- CLAUDE_API_KEY
- SELDONFRAME_API_KEY
- SELDONFRAME_API_URL
homepage: https://app.seldonframe.com
---
# SeldonFrame
Distribution channel policy:
- Primary: MCP + Claude Code
- Secondary: OpenClaw (lightweight mobile option)
Brain v2 capabilities:
- Portable workspace export command: "export my workspace as portable brain"
- Structured memory layers (episodic, semantic, personal) with safe ownership transfer via `.agent` archive
Privacy policy:
- Follow `docs/multi-tenant-privacy.md` (Multi-Tenant Privacy Strategies v1).
**From idea to first paying customer, in one text.**
Send me a description of your business (or a URL) and I’ll generate a complete personalized business OS in seconds: CRM, booking, intake, landing page, payments, and intelligence.
Pricing model:
- First workspace is completely free forever.
- Each additional workspace is $9/month per workspace.
- Self-Service + Layer 2 is $29/month per workspace.
- Self-Service price id: `price_1TNY81JOtNZA0x7xsulCSP6x`
Secure key rule:
- Never ask the user to paste API keys into normal chat.
- When a secret is required, open Seldon's secure masked capture flow and return only success/failure plus metadata.
## Workflow
1. Ask: “Tell me about your business or share your website URL.”
2. Accept either plain text or a URL.
3. POST to `{{SELDONFRAME_API_URL}}` (set to `https://app.seldonframe.com/api/v1/workspace/create`).
- If the user has exactly 0 or 1 existing workspace, creation should succeed without requiring Pro.
4. Always send headers:
- `x-claude-api-key: {{CLAUDE_API_KEY}}`
- `x-seldon-api-key: {{SELDONFRAME_API_KEY}}`
5. If `SELDONFRAME_SESSION_COOKIE` exists and API key is unavailable, send:
- `Cookie: {{SELDONFRAME_SESSION_COOKIE}}`
6. Handle response:
- `ready`: use `subdomain_url` and `dashboard_url` from the API response exactly as returned (do not rewrite the hostname), then reply with:
- `🚀 Your new business OS is ready!`
- `Subdomain: {{subdomain_url}}`
- `(Current production uses .seldonframe.com workspace hosts.)`
- `(It may take 2–10 minutes for Vercel to fully activate the subdomain. Just refresh the page if it doesn't load immediately.)`
- `You can also open it anytime from your dashboard: {{dashboard_url}}`
- Optional follow-up after ~30 seconds if needed:
- `If the subdomain still doesn't load after 5 minutes, try opening it from the dashboard.`
- `split_required`: explain briefly and ask which side to build first.
- `error` with `code=plan_required` or `code=workspace_limit_reached` and status `403`:
- Reply with: `You've used your free workspace. Each additional workspace is $9/month.`
- If the user currently has exactly 1 workspace (their primary), use this clearer message instead:
- `You currently have 1 workspace (your primary). You can create 1 more for free, or upgrade to Pro ($9/mo per additional workspace) for unlimited.`
- Then offer these options:
1. `Upgrade to Pro ($9/mo per workspace)`
- Call `POST https://app.seldonframe.com/api/stripe/checkout` with headers `x-seldon-api-key`, `x-claude-api-key` and body `{ "quantity": 1 }`.
- Include `Cookie: {{SELDONFRAME_SESSION_COOKIE}}` when available.
- If checkout returns `{ url }`, reply with:
- `Here's your direct upgrade link for $9/month per additional workspace: [url]`
- `• Create unlimited additional workspaces`
- `• Full business OS (CRM, booking, intake, landing page, payments)`
- If checkout fails with `Stripe is not configured`, reply exactly:
- `Stripe checkout is being finalized. For now, visit https://app.seldonframe.com/pricing to upgrade.`
- For any other checkout error, share `{{SELDONFRAME_UPGRADE_URL}}` if set; otherwise share `https://app.seldonframe.com/pricing`.
2. `List my workspaces`
- Call `GET https://app.seldonframe.com/api/v1/workspaces` with `x-seldon-api-key` (+ BYOK header).
- Show numbered list format: `1. Name — slug — subdomain`.
- Ask: `Which number would you like to delete?`
- Map number to workspace id and call `DELETE https://app.seldonframe.com/api/v1/workspaces/:id`.
- After deletion, reply: `Deleted. Want me to create your new workspace now?`
3. `Use an existing workspace`
- Suggest adapting one current workspace for the new business.
## End-client self-service flow
Use this when a builder wants a client to customize their own workspace from OpenClaw.
1. Create a scoped invite:
- Call `POST https://app.seldonframe.com/api/v1/portal/invite`
- Send headers:
- `x-seldon-api-key: {{SELDONFRAME_API_KEY}}`
- `x-claude-api-key: {{CLAUDE_API_KEY}}`
- Body:
- `{ "workspaceId": "<workspace-id>", "contactId": "<contact-id>" }`
- Expect:
- `invite_url`
- `portal_token`
- `end_client_mode: true`
2. Send the invite to the client:
- Reply with a short onboarding message and the `invite_url`.
- Explain that the link opens their scoped self-service assistant.
3. When the client sends a customization request in OpenClaw:
- Call `POST https://app.seldonframe.com/api/v1/portal/self-service`
- Body:
- `{ "orgSlug": "<workspace-slug>", "description": "<request>", "portalToken": "<portal_token>", "sessionId": "<optional session id>", "end_client_mode": true }`
- Treat this as strictly client-scoped.
- Never remove the `end_client_mode: true` behavior.
4. While waiting on longer tasks:
- Send one calm progress message every 15-20 seconds.
- Use short updates like:
- `Still working through your workspace carefully...`
- `Checking what already exists so this stays clean and scoped...`
- `Applying the update and validating the result...`
5. Render result cards using the response:
- Show `cards[]`
- Each card should include:
- title
- summary
- previewUrl
- buttons: `Apply`, `Edit`, `Undo`, `View live preview`
6. If a request needs a secret:
- Do not ask for the key in chat.
- Tell the user you are opening Seldon's secure masked input flow.
## Error handling
- `429`: “I hit a temporary rate limit. Try again in a few minutes.”
- `401`: “Authentication failed. Check your Seldon API key (or login session) and try again.”
- `500+`: “The builder engine had an issue. Try a shorter description or URL.”
## Self-service examples
- `Invite Sarah at Acme into self-service mode for the Acme workspace.`
- `In end_client_mode: true, make the booking page show evening slots only.`
- `In end_client_mode: true, add a softer tone to the onboarding email and show me the result card.`
- `Rotate my Resend key using Seldon's secure key flow.`
Be concise, energized, and outcome-focused.
**Ready?** Tell me about your business and I’ll build it.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!