jhack

Sync code, inspect relations, and replay events for Juju charms.

3|Updated Aug 3, 2025
One-click install
npx skills add https://github.com/tonyandrewmeyer/charming-with-claude --skill jhack
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: jhack
Source: https://github.com/tonyandrewmeyer/charming-with-claude/tree/main/claude-instructions/.claude/skills/jhack
Command: npx skills add https://github.com/tonyandrewmeyer/charming-with-claude --skill jhack

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill provides expert guidance for using jhack, a collection of developer utilities that streamline Juju charm development, debugging, and testing workflows.

Core Features & Use Cases

  • Rapid development workflows: Sync code and test in seconds
  • Debugging utilities: Inspect relations, state, and events
  • Event replay & scenario testing: Capture, replay, and analyze production events
  • Complete command reference: All jhack commands documented
  • Troubleshooting guide: Solutions for common issues

Quick Start

Use the jhack skill to rapidly iterate on charms by syncing code to units, tailing events, and replaying captured events; e.g., jhack sync src/ myapp/0, jhack tail myapp/0, jhack replay install myapp/0.

Frequently Asked Questions about jhack

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I sync code to a running Juju charm unit for rapid testing?▼

jhack sync pushes your local charm code to running units in seconds, enabling fast iteration without redeployment. Use `jhack sync src/ application/0` to mirror changes instantly and test them live.

Can I replay captured Juju events to debug charm behavior?▼

Event replay in jhack captures production events and re-fires them against your charm code, letting you reproduce and debug issues without redeploying. Use `jhack replay install application/0` to replay specific events.

What's the best way to inspect Juju charm relations and state during development?▼

jhack provides utilities to inspect relation data, unit state, and event streams in real time. Tail events with `jhack tail application/0` or query relations directly to validate charm behavior during debugging.

How do I run scenario-based tests for Juju charms?▼

Scenario testing in jhack lets you simulate charm events and relations in controlled conditions before deploying. This validates charm logic against expected behavior without a live Juju model.

Does jhack work for debugging charm relation hooks and event sequences?▼

Yes, jhack includes debugging utilities specifically for inspecting relations, tracing event sequences, and replaying events to identify issues in relation hooks and charm state transitions.