Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
382 changes: 382 additions & 0 deletions agent-skills.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion app-development.html
Original file line number Diff line number Diff line change
Expand Up @@ -225,7 +225,7 @@
<div class="search"><input id="q" type="search" placeholder="Search the docs"
autocomplete="off" aria-label="Search the documentation"><kbd>/</kbd>
<div class="hits" id="hits"></div></div>
<div class="navlinks"><h2 class="navsec">Learn</h2><a href="index.html">Overview</a><a href="concepts.html">What is real</a><a href="getting-started.html">Getting started</a><a href="first-simulation.html">Your first simulation</a><a href="results.html">Reading a result</a><h2 class="navsec">Use</h2><a href="fixtures.html">Shipped networks</a><a href="importing.html">Importing a network</a><a href="debugging.html">Debugging packet delivery</a><a href="firmware-library.html">Firmware library</a><a href="firmware-development.html">Firmware development</a><a href="testing-repeaters.html">Testing a repeater</a><a href="app-development.html" class="here">App development</a><a href="testing.html">Testing your own code</a><a href="experiments.html">Running an experiment</a><a href="studies.html">Studies</a><a href="sdr-observer.html">Listening with SDR++</a><h2 class="navsec">Understand</h2><a href="architecture.html">Architecture</a><a href="native-vs-emulated.html">Native and emulated</a><a href="rf-simulation.html">RF simulation</a><a href="rf-chain.html">The RF chain</a><a href="waveform.html">Waveform mode</a><a href="timing.html">Time and determinism</a><a href="golden-vectors.html">Golden vectors</a><a href="emulation.html">Emulation</a><a href="firmware-integration.html">Running real firmware</a><a href="what-it-does-not-do.html">Accuracy and limits</a><h2 class="navsec">Automate</h2><a href="scripting.html">Scripting a session</a><a href="cookbook.html">Scripting cookbook</a><a href="reference-cli.html">CLI</a><a href="reference-control.html">Control socket</a><a href="reference-python.html">Python client</a><a href="reference-go.html">Go client</a><a href="reference-js.html">Node client</a><h2 class="navsec">Reference</h2><a href="settings.html">Settings</a><a href="resources.html">What gets downloaded</a><a href="tools.html">External tools</a><a href="quality-gates.html">What the build enforces</a><a href="repositories.html">Repositories and licences</a></div></nav>
<div class="navlinks"><h2 class="navsec">Learn</h2><a href="index.html">Overview</a><a href="concepts.html">What is real</a><a href="getting-started.html">Getting started</a><a href="first-simulation.html">Your first simulation</a><a href="results.html">Reading a result</a><h2 class="navsec">Use</h2><a href="fixtures.html">Shipped networks</a><a href="importing.html">Importing a network</a><a href="debugging.html">Debugging packet delivery</a><a href="firmware-library.html">Firmware library</a><a href="firmware-development.html">Firmware development</a><a href="testing-repeaters.html">Testing a repeater</a><a href="app-development.html" class="here">App development</a><a href="testing.html">Testing your own code</a><a href="experiments.html">Running an experiment</a><a href="studies.html">Studies</a><a href="sdr-observer.html">Listening with SDR++</a><h2 class="navsec">Understand</h2><a href="architecture.html">Architecture</a><a href="native-vs-emulated.html">Native and emulated</a><a href="rf-simulation.html">RF simulation</a><a href="rf-chain.html">The RF chain</a><a href="waveform.html">Waveform mode</a><a href="timing.html">Time and determinism</a><a href="golden-vectors.html">Golden vectors</a><a href="emulation.html">Emulation</a><a href="firmware-integration.html">Running real firmware</a><a href="what-it-does-not-do.html">Accuracy and limits</a><h2 class="navsec">Automate</h2><a href="scripting.html">Scripting a session</a><a href="cookbook.html">Scripting cookbook</a><a href="agent-skills.html">Agent skills</a><a href="reference-cli.html">CLI</a><a href="reference-control.html">Control socket</a><a href="reference-python.html">Python client</a><a href="reference-go.html">Go client</a><a href="reference-js.html">Node client</a><h2 class="navsec">Reference</h2><a href="settings.html">Settings</a><a href="resources.html">What gets downloaded</a><a href="tools.html">External tools</a><a href="quality-gates.html">What the build enforces</a><a href="repositories.html">Repositories and licences</a></div></nav>
<main id="content"><h1>Writing an application against a mesh</h1>
<p>One command gives you a running network and an address to point a client at.</p>
<div class="codewrap"><pre><code>meshbench serve</code></pre><button class="copy" type="button" aria-label="Copy this code">copy</button></div>
Expand Down
2 changes: 1 addition & 1 deletion architecture.html
Original file line number Diff line number Diff line change
Expand Up @@ -225,7 +225,7 @@
<div class="search"><input id="q" type="search" placeholder="Search the docs"
autocomplete="off" aria-label="Search the documentation"><kbd>/</kbd>
<div class="hits" id="hits"></div></div>
<div class="navlinks"><h2 class="navsec">Learn</h2><a href="index.html">Overview</a><a href="concepts.html">What is real</a><a href="getting-started.html">Getting started</a><a href="first-simulation.html">Your first simulation</a><a href="results.html">Reading a result</a><h2 class="navsec">Use</h2><a href="fixtures.html">Shipped networks</a><a href="importing.html">Importing a network</a><a href="debugging.html">Debugging packet delivery</a><a href="firmware-library.html">Firmware library</a><a href="firmware-development.html">Firmware development</a><a href="testing-repeaters.html">Testing a repeater</a><a href="app-development.html">App development</a><a href="testing.html">Testing your own code</a><a href="experiments.html">Running an experiment</a><a href="studies.html">Studies</a><a href="sdr-observer.html">Listening with SDR++</a><h2 class="navsec">Understand</h2><a href="architecture.html" class="here">Architecture</a><a href="native-vs-emulated.html">Native and emulated</a><a href="rf-simulation.html">RF simulation</a><a href="rf-chain.html">The RF chain</a><a href="waveform.html">Waveform mode</a><a href="timing.html">Time and determinism</a><a href="golden-vectors.html">Golden vectors</a><a href="emulation.html">Emulation</a><a href="firmware-integration.html">Running real firmware</a><a href="what-it-does-not-do.html">Accuracy and limits</a><h2 class="navsec">Automate</h2><a href="scripting.html">Scripting a session</a><a href="cookbook.html">Scripting cookbook</a><a href="reference-cli.html">CLI</a><a href="reference-control.html">Control socket</a><a href="reference-python.html">Python client</a><a href="reference-go.html">Go client</a><a href="reference-js.html">Node client</a><h2 class="navsec">Reference</h2><a href="settings.html">Settings</a><a href="resources.html">What gets downloaded</a><a href="tools.html">External tools</a><a href="quality-gates.html">What the build enforces</a><a href="repositories.html">Repositories and licences</a></div></nav>
<div class="navlinks"><h2 class="navsec">Learn</h2><a href="index.html">Overview</a><a href="concepts.html">What is real</a><a href="getting-started.html">Getting started</a><a href="first-simulation.html">Your first simulation</a><a href="results.html">Reading a result</a><h2 class="navsec">Use</h2><a href="fixtures.html">Shipped networks</a><a href="importing.html">Importing a network</a><a href="debugging.html">Debugging packet delivery</a><a href="firmware-library.html">Firmware library</a><a href="firmware-development.html">Firmware development</a><a href="testing-repeaters.html">Testing a repeater</a><a href="app-development.html">App development</a><a href="testing.html">Testing your own code</a><a href="experiments.html">Running an experiment</a><a href="studies.html">Studies</a><a href="sdr-observer.html">Listening with SDR++</a><h2 class="navsec">Understand</h2><a href="architecture.html" class="here">Architecture</a><a href="native-vs-emulated.html">Native and emulated</a><a href="rf-simulation.html">RF simulation</a><a href="rf-chain.html">The RF chain</a><a href="waveform.html">Waveform mode</a><a href="timing.html">Time and determinism</a><a href="golden-vectors.html">Golden vectors</a><a href="emulation.html">Emulation</a><a href="firmware-integration.html">Running real firmware</a><a href="what-it-does-not-do.html">Accuracy and limits</a><h2 class="navsec">Automate</h2><a href="scripting.html">Scripting a session</a><a href="cookbook.html">Scripting cookbook</a><a href="agent-skills.html">Agent skills</a><a href="reference-cli.html">CLI</a><a href="reference-control.html">Control socket</a><a href="reference-python.html">Python client</a><a href="reference-go.html">Go client</a><a href="reference-js.html">Node client</a><h2 class="navsec">Reference</h2><a href="settings.html">Settings</a><a href="resources.html">What gets downloaded</a><a href="tools.html">External tools</a><a href="quality-gates.html">What the build enforces</a><a href="repositories.html">Repositories and licences</a></div></nav>
<main id="content"><h1>Architecture</h1>
<p>MeshBench is one binary on one machine. There is no service, no worker, no backend. The only things that cross the network are *data*: terrain tiles, map tiles, and the optional CoreScope, Beacon and MQTT feeds. Nothing in the simulation depends on anything remote.</p>
<figure>
Expand Down
2 changes: 1 addition & 1 deletion concepts.html
Original file line number Diff line number Diff line change
Expand Up @@ -225,7 +225,7 @@
<div class="search"><input id="q" type="search" placeholder="Search the docs"
autocomplete="off" aria-label="Search the documentation"><kbd>/</kbd>
<div class="hits" id="hits"></div></div>
<div class="navlinks"><h2 class="navsec">Learn</h2><a href="index.html">Overview</a><a href="concepts.html" class="here">What is real</a><a href="getting-started.html">Getting started</a><a href="first-simulation.html">Your first simulation</a><a href="results.html">Reading a result</a><h2 class="navsec">Use</h2><a href="fixtures.html">Shipped networks</a><a href="importing.html">Importing a network</a><a href="debugging.html">Debugging packet delivery</a><a href="firmware-library.html">Firmware library</a><a href="firmware-development.html">Firmware development</a><a href="testing-repeaters.html">Testing a repeater</a><a href="app-development.html">App development</a><a href="testing.html">Testing your own code</a><a href="experiments.html">Running an experiment</a><a href="studies.html">Studies</a><a href="sdr-observer.html">Listening with SDR++</a><h2 class="navsec">Understand</h2><a href="architecture.html">Architecture</a><a href="native-vs-emulated.html">Native and emulated</a><a href="rf-simulation.html">RF simulation</a><a href="rf-chain.html">The RF chain</a><a href="waveform.html">Waveform mode</a><a href="timing.html">Time and determinism</a><a href="golden-vectors.html">Golden vectors</a><a href="emulation.html">Emulation</a><a href="firmware-integration.html">Running real firmware</a><a href="what-it-does-not-do.html">Accuracy and limits</a><h2 class="navsec">Automate</h2><a href="scripting.html">Scripting a session</a><a href="cookbook.html">Scripting cookbook</a><a href="reference-cli.html">CLI</a><a href="reference-control.html">Control socket</a><a href="reference-python.html">Python client</a><a href="reference-go.html">Go client</a><a href="reference-js.html">Node client</a><h2 class="navsec">Reference</h2><a href="settings.html">Settings</a><a href="resources.html">What gets downloaded</a><a href="tools.html">External tools</a><a href="quality-gates.html">What the build enforces</a><a href="repositories.html">Repositories and licences</a></div></nav>
<div class="navlinks"><h2 class="navsec">Learn</h2><a href="index.html">Overview</a><a href="concepts.html" class="here">What is real</a><a href="getting-started.html">Getting started</a><a href="first-simulation.html">Your first simulation</a><a href="results.html">Reading a result</a><h2 class="navsec">Use</h2><a href="fixtures.html">Shipped networks</a><a href="importing.html">Importing a network</a><a href="debugging.html">Debugging packet delivery</a><a href="firmware-library.html">Firmware library</a><a href="firmware-development.html">Firmware development</a><a href="testing-repeaters.html">Testing a repeater</a><a href="app-development.html">App development</a><a href="testing.html">Testing your own code</a><a href="experiments.html">Running an experiment</a><a href="studies.html">Studies</a><a href="sdr-observer.html">Listening with SDR++</a><h2 class="navsec">Understand</h2><a href="architecture.html">Architecture</a><a href="native-vs-emulated.html">Native and emulated</a><a href="rf-simulation.html">RF simulation</a><a href="rf-chain.html">The RF chain</a><a href="waveform.html">Waveform mode</a><a href="timing.html">Time and determinism</a><a href="golden-vectors.html">Golden vectors</a><a href="emulation.html">Emulation</a><a href="firmware-integration.html">Running real firmware</a><a href="what-it-does-not-do.html">Accuracy and limits</a><h2 class="navsec">Automate</h2><a href="scripting.html">Scripting a session</a><a href="cookbook.html">Scripting cookbook</a><a href="agent-skills.html">Agent skills</a><a href="reference-cli.html">CLI</a><a href="reference-control.html">Control socket</a><a href="reference-python.html">Python client</a><a href="reference-go.html">Go client</a><a href="reference-js.html">Node client</a><h2 class="navsec">Reference</h2><a href="settings.html">Settings</a><a href="resources.html">What gets downloaded</a><a href="tools.html">External tools</a><a href="quality-gates.html">What the build enforces</a><a href="repositories.html">Repositories and licences</a></div></nav>
<main id="content"><h1>What is real, and what is modelled</h1>
<p><strong>MeshBench runs real MeshCore firmware. MeshBench models the air.</strong></p>
<p>That one sentence is the whole design. MeshBench does not simulate the firmware&#x27;s behaviour: every node is the actual MeshCore application, compiled and running as its own process, keeping its own state, making its own routing decisions. What MeshBench provides is everything the firmware cannot bring with it: the radio spectrum, the terrain, the distances, the noise, and a clock all the nodes share.</p>
Expand Down
4 changes: 2 additions & 2 deletions cookbook.html
Original file line number Diff line number Diff line change
Expand Up @@ -225,7 +225,7 @@
<div class="search"><input id="q" type="search" placeholder="Search the docs"
autocomplete="off" aria-label="Search the documentation"><kbd>/</kbd>
<div class="hits" id="hits"></div></div>
<div class="navlinks"><h2 class="navsec">Learn</h2><a href="index.html">Overview</a><a href="concepts.html">What is real</a><a href="getting-started.html">Getting started</a><a href="first-simulation.html">Your first simulation</a><a href="results.html">Reading a result</a><h2 class="navsec">Use</h2><a href="fixtures.html">Shipped networks</a><a href="importing.html">Importing a network</a><a href="debugging.html">Debugging packet delivery</a><a href="firmware-library.html">Firmware library</a><a href="firmware-development.html">Firmware development</a><a href="testing-repeaters.html">Testing a repeater</a><a href="app-development.html">App development</a><a href="testing.html">Testing your own code</a><a href="experiments.html">Running an experiment</a><a href="studies.html">Studies</a><a href="sdr-observer.html">Listening with SDR++</a><h2 class="navsec">Understand</h2><a href="architecture.html">Architecture</a><a href="native-vs-emulated.html">Native and emulated</a><a href="rf-simulation.html">RF simulation</a><a href="rf-chain.html">The RF chain</a><a href="waveform.html">Waveform mode</a><a href="timing.html">Time and determinism</a><a href="golden-vectors.html">Golden vectors</a><a href="emulation.html">Emulation</a><a href="firmware-integration.html">Running real firmware</a><a href="what-it-does-not-do.html">Accuracy and limits</a><h2 class="navsec">Automate</h2><a href="scripting.html">Scripting a session</a><a href="cookbook.html" class="here">Scripting cookbook</a><a href="reference-cli.html">CLI</a><a href="reference-control.html">Control socket</a><a href="reference-python.html">Python client</a><a href="reference-go.html">Go client</a><a href="reference-js.html">Node client</a><h2 class="navsec">Reference</h2><a href="settings.html">Settings</a><a href="resources.html">What gets downloaded</a><a href="tools.html">External tools</a><a href="quality-gates.html">What the build enforces</a><a href="repositories.html">Repositories and licences</a></div></nav>
<div class="navlinks"><h2 class="navsec">Learn</h2><a href="index.html">Overview</a><a href="concepts.html">What is real</a><a href="getting-started.html">Getting started</a><a href="first-simulation.html">Your first simulation</a><a href="results.html">Reading a result</a><h2 class="navsec">Use</h2><a href="fixtures.html">Shipped networks</a><a href="importing.html">Importing a network</a><a href="debugging.html">Debugging packet delivery</a><a href="firmware-library.html">Firmware library</a><a href="firmware-development.html">Firmware development</a><a href="testing-repeaters.html">Testing a repeater</a><a href="app-development.html">App development</a><a href="testing.html">Testing your own code</a><a href="experiments.html">Running an experiment</a><a href="studies.html">Studies</a><a href="sdr-observer.html">Listening with SDR++</a><h2 class="navsec">Understand</h2><a href="architecture.html">Architecture</a><a href="native-vs-emulated.html">Native and emulated</a><a href="rf-simulation.html">RF simulation</a><a href="rf-chain.html">The RF chain</a><a href="waveform.html">Waveform mode</a><a href="timing.html">Time and determinism</a><a href="golden-vectors.html">Golden vectors</a><a href="emulation.html">Emulation</a><a href="firmware-integration.html">Running real firmware</a><a href="what-it-does-not-do.html">Accuracy and limits</a><h2 class="navsec">Automate</h2><a href="scripting.html">Scripting a session</a><a href="cookbook.html" class="here">Scripting cookbook</a><a href="agent-skills.html">Agent skills</a><a href="reference-cli.html">CLI</a><a href="reference-control.html">Control socket</a><a href="reference-python.html">Python client</a><a href="reference-go.html">Go client</a><a href="reference-js.html">Node client</a><h2 class="navsec">Reference</h2><a href="settings.html">Settings</a><a href="resources.html">What gets downloaded</a><a href="tools.html">External tools</a><a href="quality-gates.html">What the build enforces</a><a href="repositories.html">Repositories and licences</a></div></nav>
<main id="content"><h1>The scripting cookbook</h1>
<p>Seven runnable programs, the same seven in each client, that do a whole task end to end rather than showing one call. They are the worked answers behind <a href="scripting.html">Scripting a session</a>: read that for how a session is opened and what a verb is, then come here for a shape close to what you want and change it.</p>
<p>They live beside the clients they use, in the <a href="https://github.com/MeshBench/meshbench">meshbench repository</a>:</p>
Expand Down Expand Up @@ -995,7 +995,7 @@ <h2 id="the-seven">The seven<a class="hl" href="#the-seven" aria-label="Link to

<h2 id="what-a-scripted-result-still-is">What a scripted result still is<a class="hl" href="#what-a-scripted-result-still-is" aria-label="Link to this section">#</a></h2>
<p>Everything on the <a href="what-it-does-not-do.html">limits page</a> applies to a script&#x27;s output exactly as it does to the application&#x27;s: a simulated result is a best case, kinder than the air. A number a script prints is worth no more than the same number read off the screen, and the caveats travel with it. The <a href="scripting.html">Scripting a session</a> page ends on the two limits that belong to scripting itself - reproducibility, and what a script cannot see.</p>
<div class="pagenav"><a class="prev" href="scripting.html"><span>previous</span>Scripting a session</a><a class="next" href="reference-cli.html"><span>next</span>CLI</a></div>
<div class="pagenav"><a class="prev" href="scripting.html"><span>previous</span>Scripting a session</a><a class="next" href="agent-skills.html"><span>next</span>Agent skills</a></div>
<footer>MeshBench documentation. Built from the running application, not from
mock-ups. Screenshots are window-only captures; see CLAUDE.md for the rule that
keeps them current. <a href="https://github.com/MeshBench/docs/blob/main/pages/cookbook.md">Edit this page</a>.</footer>
Expand Down
Loading