frappe-system-console
Frappe System Console Code Writer
Write code that executes inside Frappe's System Console (/app/system-console), which runs through frappe.utils.safe_exec using RestrictedPython.
System Console specifics:
- Only System Manager role can access
- Output comes from
print()andfrappe.log()— shown in the output pane - The Commit checkbox controls whether changes are committed or rolled back after execution
frappe.db.commit()/frappe.db.rollback()/frappe.db.add_index()are available (unlike doc-event Server Scripts where they're removed)
Forbidden syntax
These cause immediate compile or runtime errors:
| Blocked | Why |
|---|---|
import x / from x import y / from x import * |
All imports forbidden |
exec() / eval() / compile() / open() / breakpoint() |
Dynamic code, I/O, debugging blocked |
async def / await / async for / async with |
Async not allowed |
More from kehwar/skills
tdd
Test-driven development with red-green-refactor loop. Use when user wants to build features or fix bugs using TDD, mentions "red-green-refactor", wants integration tests, or asks for test-first development. Tracks progress in Beads Issue Tracker.
12setup-workflow-skills
Sets up an `## Agent orientation` block in AGENTS.md/CLAUDE.md so the engineering skills know this repo uses Beads for issue tracking. Run before first use of `to-tasks`, `to-prd`, `tdd`, `improve-codebase-architecture`, or `zoom-out`.
12to-prd
Turn the current conversation context into a PRD and publish it to Beads Issue Tracker. Use when user wants to create a PRD from the current context.
11write-a-skill
Create new agent skills with proper structure, progressive disclosure, and bundled resources. Use when user wants to create, write, or build a new skill.
9to-tasks
Break a plan, spec, or PRD into independently-grabbable tasks/issues on Beads Issue Tracker using tracer-bullet vertical slices. Use when user wants to convert a plan into tasks, create implementation tickets, or break down work into tasks.
9grill-me
Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree. Use when user wants to stress-test a plan, get grilled on their design, or mentions "grill me".
8