skillZs
LIVE SKILL TAGS
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
REAL INSTALL DATA
← back to all skills
lubusin/frappe-skills32 installs

frappe-manager

Use Frappe Manager (FM) for Docker-based development and testing environments. Use when setting up local dev, running isolated tests, or managing agent-driven Frappe development workflows.

How do I install this agent skill?

npx skills add https://github.com/lubusin/frappe-skills --skill frappe-manager
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    The skill provides a legitimate environment for Frappe development using the Frappe Manager (FM) CLI tool. It follows industry-standard practices for Docker-based development and utilizes reputable software sources.

  • Socketpass

    No alerts

  • Snykwarn

    Risk: MEDIUM · 1 issue

What does this agent skill do?

Frappe Manager

Manage Docker-based Frappe development environments using Frappe Manager (FM).

When to use

  • Setting up a local Frappe development environment
  • Creating isolated test environments
  • Agent-driven development (vibe coding) workflows
  • Quick prototyping without full bench setup
  • Reproducible environments across machines

Inputs required

  • Docker installed and running
  • Python 3.11+ with pipx
  • Site/bench name
  • Apps to install (frappe, erpnext, hrms, custom)
  • Environment type (dev/prod)

Procedure

0) Install Frappe Manager

# Install via pipx
pipx install frappe-manager

# Enable shell completion
fm --install-completion

1) Create a site

# Basic site (frappe only)
fm create mysite

# Site with ERPNext
fm create mysite --apps erpnext:version-15

# Site with multiple apps
fm create mysite --apps erpnext --apps hrms --environment dev

# Production site with SSL
fm create example.com --apps erpnext --env prod --ssl letsencrypt

2) Manage sites

# List all sites
fm list

# Start/stop site
fm start mysite
fm stop mysite

# View site info
fm info mysite

# View logs (follow)
fm logs mysite -f

# Delete site
fm delete mysite

3) Development workflow

# Access shell inside container
fm shell mysite

# Inside container - common commands:
bench new-app my_custom_app
bench --site mysite install-app my_custom_app
bench --site mysite migrate
bench build --app my_custom_app
bench --site mysite run-tests --app my_custom_app

# Exit shell
exit

# Open in VSCode
fm code mysite

# Open with debugger
fm code mysite --debugger

4) Agent-driven development

Perfect for AI agents developing Frappe apps:

# 1. Setup: Create fresh environment
fm create testsite --apps erpnext:version-15 --environment dev
fm start testsite

# 2. Develop: Enter shell, create app
fm shell testsite
bench new-app my_app
bench --site testsite install-app my_app
# ... make code changes ...
exit

# 3. Test: Run tests
fm shell testsite
bench --site testsite run-tests --app my_app
exit

# 4. Verify: Check logs
fm logs testsite -f

# 5. Reset if needed: Start fresh
fm stop testsite
fm delete testsite
fm create testsite --apps erpnext:version-15 --environment dev

5) Internal service management (fmx)

Inside the container, use fmx for service control:

fm shell mysite

fmx status      # Check service status
fmx restart     # Restart Frappe services
fmx start       # Start services
fmx stop        # Stop services

Verification

  • Site accessible at http://mysite.localhost
  • Can login with admin credentials (default: admin/admin)
  • Custom app installed and visible
  • Tests run successfully inside container
  • Logs show no critical errors

Failure modes / debugging

  • Docker not running: Start Docker daemon
  • Port conflict: Use different site name or check port 80/443
  • Site not accessible: Check fm list for status, try fm start
  • App not installing: Check fm logs for errors
  • Slow startup: First run downloads images—be patient

Escalation

References

Guardrails

  • Always backup before operations: Run fm backup <site> before major changes or updates
  • Use named sites: Avoid generic names; use descriptive site names for project identification
  • Check SSH access: Ensure SSH keys are configured for private repos before app installation
  • Verify Docker status: Run fm doctor to check Docker and FM health before operations
  • Use fm shell for commands: Always enter container shell before running bench commands

Common Mistakes

MistakeWhy It FailsFix
Running bench commands outside fm shell"Command not found" or wrong siteAlways fm shell <site> first
Wrong site contextOperations affect wrong siteCheck prompt shows correct site; use bench --site <site>
Missing volumes on recreateData lossUse fm recreate --keep-volumes or backup first
Not checking fm doctorSilent configuration issuesRun fm doctor to diagnose problems
Using localhost in site URLDNS resolution issuesUse <site>.localhost format for local access
Forgetting to fm start after rebootSite not accessibleRun fm start <site> or fm start --all

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/lubusin/frappe-skills/frappe-manager">View frappe-manager on skillZs</a>