Inspiration

Operating a Bitcoin Core-compatible node often means repeatedly checking synchronization, peer connectivity, chain state, and network warnings. The individual checks are simple, but interpreting several signals together can be time-consuming—especially for independent operators, developers, makers, and small cryptocurrency communities without dedicated infrastructure staff.

CoreWarden was built to automate that repetitive monitoring without giving an AI system control over the node.

What it does

CoreWarden is a local-first, read-only node health agent. It polls exactly four allow-listed JSON-RPC methods and evaluates the resulting observations using deterministic local rules.

When the node is healthy, CoreWarden does not contact an AI provider. When a meaningful degraded condition is detected, it can invoke a Strands Agent through Amazon Bedrock to produce a structured diagnosis with classification, confidence, evidence, and safe recommended next steps.

The agent cannot access wallets, send transactions, restart software, execute shell commands, modify files, or automatically remediate problems. Provider selection is explicit, credentials remain outside the application, and only a sanitized health projection may cross the privacy boundary.

Automatic investigations are constrained by deduplication, cooldowns, rolling call limits, turn limits, token limits, and timeouts. Recovery and unavailable states are recorded locally without unnecessary AI calls.

How we built it

CoreWarden is a Python desktop application with a Tkinter interface and a provider-neutral architecture.

The monitoring layer communicates with Core-compatible nodes through four narrowly scoped, read-only RPC adapters. Deterministic policy decides whether the state is healthy, degraded, recovered, unchanged, or unavailable.

For degraded-state investigation, CoreWarden constructs a genuine Strands Agent with four matching @tool functions. Amazon Bedrock is the primary demonstrated provider, using Claude Sonnet through the Strands Agents SDK. Pydantic validates the structured diagnosis before it is displayed or recorded.

The Windows application is packaged with PyInstaller. GitHub Actions builds and tests the release, performs responsive GUI startup checks, verifies the extracted ZIP, and publishes reproducible checksums. The repository also includes a cost-free synthetic acceptance path so judges can verify monitoring, deduplication, recovery behavior, privacy filtering, and provider-invocation policy without credentials or a live node.

Challenges we ran into

Packaging Tkinter for Windows exposed a difficult Tcl/Tk relocation issue: an early build contained the runtime DLLs but could not locate init.tcl. We corrected the build environment, pinned a validated Python version, and added startup smoke tests that verify the exact window title, responsiveness, and clean shutdown for both the direct build and extracted release archive.

Another challenge was balancing useful AI investigation with safety, privacy, and predictable cost. We addressed that by keeping normal monitoring deterministic, exposing only four read-only tools, sanitizing provider-bound observations, validating structured output, and enforcing multiple independent usage limits.

What we learned

Agentic software does not need broad permissions to be useful. A narrowly bounded agent can add meaningful judgment at the exact point where deterministic monitoring stops being enough.

We also learned that release validation must test whether the actual packaged application starts—not merely whether a build artifact was produced.

What's next

Future work could add additional Core-compatible node profiles, improved local trend analysis, signed Windows releases, and optional deployment integrations while preserving CoreWarden’s read-only security boundary and explicit provider control.

Built With

Share this project:

Updates

Submission history