Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add rules/jumpstarter-dev/jumpstarter/creating-new-driversgit clone --depth 1 https://github.com/jumpstarter-dev/jumpstarterWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00014 | $0.01404 |
| Opus 5 | $0.00007 | $0.00702 |
| Sonnet 5 | $0.00003 | $0.00281 |
| Haiku 4.5 | $0.00001 | $0.00140 |
Grade A, and why
creating-new-drivers scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 118 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Creating New Drivers
When asked to create a new driver, follow these steps:
1. Use the Driver Creation Script
Always use the provided script: ./python/__templates__/create_driver.sh
2. Required Information
Before creating a driver, ask the user for:
- Driver Package Name: The package name (e.g.,
mydriver,custom-power,device-controller)- Should be lowercase with hyphens for multi-word names
- Examples from existing drivers:
network,iscsi,ridesx,opendal,shell,gpiod,http-power,tasmota,tftp,uboot,snmp,sdwire,probe-rs,can,composite,corellium,dutlink,energenie,flashers,http,power,pyserial,qemu,ustreamer,yepkit
- Driver Class Name: The main driver class in CamelCase (e.g.,
MyDriver,CustomPower,DeviceController)- Should be descriptive and end with appropriate suffix based on functionality
- Examples:
TcpNetwork,ISCSI,RideSXDriver,Opendal,Shell,HttpPower,TasmotaPower,Tftp,UbootConsole,SNMPServer,SDWire,ProbeRs,Can,Composite,Corellium,Dutlink,EnerGenie,QemuFlasher,UStreamer,Ykush
- Author Name: Full name of the author
- Author Email: Email address of the author
3. Command Format
./python/__templates__/create_driver.sh <driver_package> <DriverClass> "<Author Name>" "<[email protected]>"
Always try to obtain the Author Name and Email from git, by checking the git configuration.
4. Examples
# Network driver
./python/__templates__/create_driver.sh network TcpNetwork "John Doe" "[email protected]"
# Power management driver
./python/__templates__/create_driver.sh custom-power CustomPowerDriver "Jane Smith" "[email protected]"
# Device control driver
./python/__templates__/create_driver.sh device-controller DeviceController "Bob Wilson" "[email protected]"
5. After Creation
Once the driver is created:
- Navigate to the new driver directory:
python/packages/jumpstarter-driver-<driver_package>/ - Register the package in the workspace by adding an entry to
python/pyproject.tomlunder[tool.uv.sources]:
Insert it alphabetically among the otherjumpstarter-driver-<driver_package> = { workspace = true }jumpstarter-driver-*entries. - Add the package to
jumpstarter-allby adding it to thedependencieslist inpython/packages/jumpstarter-all/pyproject.toml:
Insert it alphabetically among the other"jumpstarter-driver-<driver_package>",jumpstarter-driver-*entries. - Review the generated files and customize as needed
- Implement the driver logic in
driver.py - Add tests in
driver_test.py - Update the README.md with specific documentation
- Test the driver:
make pkg-test-<driver_package>
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 118 lines · 14 tokens per session scan A f6958bd582ab
creating-new-drivers is a cursor rule published in the GitHub repository jumpstarter-dev/jumpstarter (214 stars, last pushed 2d ago), licensed Apache-2.0. It adds 14 tokens to every session and 1,404 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other cursor rules, from other repositories
chiplab
Repository agent instructions for chiplab.
open-locker-domain
This project implements a digital locker sharing system for lending physical items. Follow these domain-specific conventions.
monorepo-architecture
This is a monorepo containing multiple interconnected components for the Open-Locker IoT system.
scramble-openapi
REST API OpenAPI Documentation Guidelines.
adr-decision-required
Require ADRs for architecture-significant decisions.
modbus-integration
The backend does not communicate with Modbus hardware directly. Physical locker control runs in locker-client (Raspberry Pi), which talks to hardware via Modbus and reports status back to the backend over MQTT.