Agent skill
renode-development
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/renode-development
SKILL.md
Renode Development Workflow (TMNL)
When to Use
- Editing
.rescscripts or swapping firmware. - Debugging UART output or monitor commands.
- Troubleshooting silent telemetry.
Canonical Sources
embedded/renode/nrf52840/nrf52840-telemetry.rescembedded/renode/scripts/renode-init.shembedded/renode/README.md
Standard Loop
- Update
.resc(firmware path, UART port, or board). - Restart Renode via
renode-init.sh. - Verify monitor access (
nc 127.0.0.1 1234). - Verify UART traffic (
nc 127.0.0.1 5501).
Pattern 1: Swap Firmware
When: You need a different ELF or build.
sysbus LoadELF @path/to/firmware.elf
Restart the tmux session after editing:
tmux kill-session -t tmnl-renode
embedded/renode/scripts/renode-init.sh
Pattern 2: Adjust UART Port
When: Port collision or multi-session debugging.
CreateServerSocketTerminal 5501 "uart_socket" false
connector Connect sysbus.uart0 uart_socket
Set the matching environment override before launch:
export TMNL_RENODE_UART_PORT=5501
embedded/renode/scripts/renode-init.sh
Pattern 3: Monitor Commands
When: You need control over machine state.
help
machine Start
machine Reset
sysbus.uart0
Pattern 4: Inject Monitor Commands (tmux)
When: You need to drive the monitor without switching panes.
embedded/renode/scripts/renode-send-keys.sh "machine Reset"
embedded/renode/scripts/renode-send-keys.sh "machine Start"
Decision Tree: UART Silence
UART silent?
├─ Monitor reachable? -> nc 127.0.0.1 1234
├─ Connector present? -> ensure "connector Connect sysbus.uart0 uart_socket"
└─ Firmware loaded? -> verify LoadELF path in .resc
DO NOTs (Strict)
- DO NOT use PTY UART terminals. Use TCP sockets + nc.
- DO NOT run Renode with GUI in tmux workflows.
- DO NOT start multiple Renode sessions on the same ports.
- DO NOT bypass
.rescscripts with manual monitor setup.
Guardrails (Mandatory)
- Keep
CreateServerSocketTerminalin every.rescscript. - Use
--disable-gui(handled byrenode-init.sh). - Keep UART and monitor ports documented in README.
- Use one tmux session per Renode instance.
Highly Suggested
- Keep firmware paths relative to
embedded/renode/. - Validate the monitor socket before debugging UART.
- Keep a known-good
.rescfor quick rollback.
Files to Edit
embedded/renode/nrf52840/nrf52840-telemetry.rescembedded/renode/scripts/renode-init.shembedded/renode/scripts/renode-send-keys.shembedded/renode/README.md
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?