Skip to main content

Deploy SkillFlaw on Hugging Face Spaces

SkillFlaw can be packaged for Hugging Face Spaces, but it does not provide a first-party Space that you can duplicate and run as-is.

The old “duplicate a prebuilt SkillFlaw Space” workflow is not part of the supported deployment path and should not be treated as supported guidance.

What Spaces would need to provide

SkillFlaw's current deployment contract still applies on Hugging Face Spaces:

  • a running backend on port 7860
  • PostgreSQL for persistent application data
  • Redis when SKILLFLAW_CACHE_TYPE=redis
  • writable storage for SKILLFLAW_CONFIG_DIR
  • a real file for SKILLFLAW_SECRET_KEY_FILE

That means a useful Space deployment must be treated as a custom container deployment, not as a copy of an upstream demo.

If you use Spaces at all, keep the goal narrow:

  • internal demos
  • short-lived validation environments
  • experiments where you control the data and traffic profile

For long-lived editor deployments or production traffic, prefer platforms that map more naturally to SkillFlaw's multi-service runtime, such as a VM with reverse proxying or Kubernetes.

Choose the deployment shape carefully

Backend-only is the simplest viable option

If your Space is only meant to expose API or MCP functionality, a backend-only shape is the least surprising model:

  • publish the backend service
  • point it at external PostgreSQL and Redis
  • mount persistent storage for SKILLFLAW_CONFIG_DIR
  • provide the secret key file required by SKILLFLAW_SECRET_KEY_FILE

Full editor deployments are a poor fit for a single copied Space

SkillFlaw publishes separate images for backend, frontend, and docs.

If you need the full browser UI, docs, and backend in a way that mirrors the reference deployment, a single duplicated Space is usually the wrong operational shape. Use a platform that can host those services intentionally instead of squeezing them into a fake one-click flow.

Minimum checklist for a custom Space

Before treating a Space deployment as valid, confirm all of the following:

  • the Space uses a custom Docker-based runtime
  • PostgreSQL is externalized
  • Redis is externalized if enabled
  • SKILLFLAW_CONFIG_DIR is writable and persistent enough for your use case
  • SKILLFLAW_SECRET_KEY_FILE points to a real file inside the runtime
  • /health responds successfully
  • any public API or MCP endpoints are authenticated appropriately

Better alternatives when you need more than a demo

If your real goal is reliable internet exposure rather than “run it somewhere with a URL”, start with one of these instead: