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: