forge-frappe-skill
forge-frappe-skill에는 sbknext에서 수집한 skills 11개가 있으며, 저장소 수준 직업 범위와 사이트 내 skill 상세 페이지를 제공합니다.
이 저장소의 skills
Customize Frappe desk forms and lists with client scripts — frappe.ui.form.on handlers, field events, set_query link filters, set_df_property, custom buttons, frappe.call, and list view settings. Use when adding form interactivity, dynamic filters, validation, or buttons in the desk UI. Trigger on: "client script", "frappe.ui.form.on", "form event", "set_query", "custom button", "frappe.call", "list view settings", "cur_frm".
Design well-structured Frappe DocTypes — field types, naming series, child tables, links, Single doctypes, dynamic links, fetch_from, depends_on, and JSON schema. Use when modelling data in Frappe/ERPNext, adding fields, building master/child relationships, or choosing a naming strategy. Trigger on: "design a DocType", "child table", "naming series", "Single doctype", "link field", "fetch_from", "DocType JSON".
Configure hooks.py correctly — doc_events, scheduler_events, override_whitelisted_methods, override_doctype_class, jinja, boot_session, permission_query_conditions, has_permission, and fixtures. Use when wiring app behaviour into Frappe's lifecycle without patching core. Trigger on: "hooks.py", "doc_events", "scheduler_events", "override method", "permission query conditions", "boot session", "fixtures".
Write and run tests for Frappe/ERPNext apps — FrappeTestCase, test records, fixtures, mocking, permission tests, running with bench run-tests, and CI. Use when adding test coverage, doing TDD on a DocType or API, or setting up a test pipeline. Trigger on: "Frappe test", "FrappeTestCase", "bench run-tests", "unit test DocType", "test fixtures", "TDD frappe".
Scaffold, architect, and build production-grade custom Frappe/ERPNext apps. Covers app structure, DocType design, hooks.py configuration, background jobs, service layers, REST APIs, permissions, and testing. Use when creating a new Frappe app, adding a module, setting up scheduler events, implementing doc_events, writing whitelisted APIs, or debugging Frappe-specific issues. Trigger on: "create Frappe app", "new DocType", "add a hook", "background job", "frappe.enqueue", "whitelist API", "custom app scaffold", "bench new-app".
Run async work in Frappe with frappe.enqueue and RQ — queues, timeouts, job dedup, enqueue_doc, long jobs, progress, retries, and scheduler integration. Use when an operation is slow, calls an external API, or should not block the web request. Trigger on: "frappe.enqueue", "background job", "RQ worker", "long running task", "queue", "async job", "job_id dedup".
Operate a Frappe bench from the command line — site creation, app install, migrate, build, backup/restore, scheduler, console, set-config, and multi-site management. Use when running or troubleshooting bench commands, deploying changes, or managing sites. Trigger on: "bench command", "bench migrate", "bench new-site", "bench backup", "bench console", "set-config", "bench build", "scheduler", "bench restore".
Query and mutate data in Frappe safely — get_doc/get_all/get_list, frappe.db.get_value/set_value, parameterized frappe.db.sql, Query Builder (frappe.qb), transactions, bulk ops, and performance. Use when reading or writing data, optimizing slow queries, or avoiding SQL injection. Trigger on: "frappe.db.sql", "frappe.get_all", "query builder", "frappe.qb", "bulk update", "N+1", "db transaction", "get_value set_value".
Implement Frappe's permission model correctly — roles, role permissions manager, permission levels (perm_level), user permissions, share, permission_query_conditions, has_permission hooks, and frappe.only_for / has_permission checks in code. Use when securing DocTypes, restricting rows per user, or field-level access. Trigger on: "permissions", "role", "user permission", "perm level", "restrict rows", "frappe.has_permission", "field level security", "permission query conditions".
Build Frappe reports — Query Reports (SQL), Script Reports (Python), filters, columns, charts, formatters, and report permissions. Use when creating analytics/listing reports, dashboards, or exportable views in Frappe/ERPNext. Trigger on: "query report", "script report", "Frappe report", "report filters", "report chart", "columns formatter", "report builder".
Build and consume Frappe REST APIs — @frappe.whitelist endpoints, the auto /api/resource and /api/method routes, token vs session auth, request/response handling, file uploads, and CORS. Use when exposing app functionality over HTTP or integrating an external system with Frappe. Trigger on: "whitelist API", "/api/resource", "/api/method", "Frappe REST", "token auth", "api_key api_secret", "call Frappe from outside".