用途:为 Frappe Framework v15 生成具备多层架构的新应用骨架,遵循企业级实践,适合启动新的 Frappe/ERPNext 定制应用,或需要 Controller→Service→Repository 分层、代码组织清晰可维护的项目。
主要能力:按参数 /frappe-app <app_name> [--module <module_name>] 生成应用结构,例如 /frappe-app inventory_management 或 /frappe-app hr_extension --module Human Resources。生成内容包括 hooks.py、modules.txt、patches.txt、pyproject.toml、README.md、license.txt,以及模块下的 doctype、api、services、repositories、report 目录,public、templates、www、tests 等目录。同时创建基础服务类 BaseService(权限检查、必填校验、活动日志)与基础仓储类 BaseRepository(get、get_cached、get_or_throw、get_list、get_all、create、update、delete、get_value、set_value 等),并提供测试工具 test_utils.py。
使用方式:先收集应用名(snake_case)、标题、主模块名与用途描述,确认当前目录位于 frappe-bench/apps 下(pwd、ls -la),展示结构预览并等待用户确认后再创建文件,最后用 ls -la <app_name>/ 验证。后续可安装:bench get-app /path/to/<app_name>、bench --site <site> install-app <app_name>,运行测试:bench --site <site> run-tests --app <app_name>。
限制:所有代码须兼容 Frappe v15,使用 Python 类型注解,控制器不写业务逻辑,应用名必须 snake_case,未经用户明确批准不得创建文件。资料未提供收费、价格、平台与效果信息。