Privacy, terms & refunds

Last updated 30 September 2026

The short version. The app collects nothing about you. The program you launch is built without the network entitlement, so macOS itself stops it opening a connection, and everything it knows lives on your Mac.

That includes the Claude Code integration added in version 0.3: what your agent is doing is shown in the notch and goes nowhere else. It is read on your machine, held in memory and forgotten when the session ends.

One request does leave, and it is not about you: once a day the updater bundled inside the app asks this site whether there is a newer version. No account, no machine profile, no usage data — and there is a switch for it in Settings → Updates.

Buying is the other part that involves anyone else, because someone has to take the payment. Refunds are 14 days, no reason needed.

This website is a different thing from the app, and it does count its visitors — no cookies, no way to identify you, and it is spelled out in full below.

Privacy policy

Dyno Chess is made and sold by Asatulla Dadabaev ("we", "us"), an individual seller based in the Republic of Kazakhstan. This policy covers the Dyno Chess application, this website, and buying a licence.

The application collects nothing

This is not a promise you have to take on faith. The app process — the program that draws the notch, runs the engine and holds your games — is built without the com.apple.security.network.client entitlement, which means macOS itself prevents it from opening a network connection. You can verify this on your own machine before trusting a word of this page:

codesign -d --entitlements :- "Dyno Chess.app"

There is no account, no sign-in, no telemetry, no analytics and no crash reporting. Your games, move history, PGN files, settings and licence key are stored only in the app's own container on your Mac. We never receive them and have no way to.

Licence keys are verified by checking a cryptographic signature locally. Activating a licence does not contact us or anyone else.

Since version 0.7.2 there is exactly one exception to all of this, and because the paragraphs above are the reason anyone trusts this page we would rather name it than have you find it: the app can now update itself, and the piece of it that does the asking runs outside the app's sandbox and does reach the network. It sends nothing about you. It is described in full under Checking for updates, and it does not change a word of the codesign output above.

The same command lists the permissions the app does hold, and none of them can move data off your Mac. Most are for the Claude Code integration described below: read-write access to ~/.claude and ~/.dynochess, and permission to send Apple Events to the terminal applications it can jump to. One is for the updater — the app is allowed to talk to the two helper services Sparkle runs, which is how it hands the network work to something else instead of doing it itself. Only the network entitlement could send anything anywhere, and it is not there.

Checking for updates

Dyno Chess is not sold through an app store, so from version 0.7.2 it updates itself, using Sparkle — the updater behind a large part of the Mac software you already run. The part of Sparkle that touches the network is a separate helper inside the app bundle, running outside the sandbox the app itself lives in. That split is deliberate and it costs us something to keep: it is the reason the app process can go on carrying no network entitlement at all, and the reason the command above still prints what it printed before.

What it does. Once a day, and whenever you press Check for Updates, the helper asks dynochess.bixxter.com for appcast.xml — a small file that lists the current version. If there is a newer one, the disk image comes from our releases page on GitHub — which sees your IP address for the length of the download, exactly as it would if you clicked the button on the front page — and nothing is installed until you say so.

What it sends. Nothing about you and nothing about your Mac. No account, no licence key, no identifier, no usage data and no machine profile: Sparkle can attach a hardware and operating-system profile to that request, and we do not switch it on. You can check that yourself without our help — right-click the app, Show Package Contents, and open Contents/Info.plist; the key that would enable it, SUEnableSystemProfiling, is simply not there. What our server unavoidably sees is what any web request carries: an IP address, and a User-Agent naming Sparkle and the version you are running. It is the same trace as opening this page in a browser, and it lands in the same GitHub Pages logs described under "This website" below.

Turning it off. Settings → Updates, "Check for updates automatically". With that switched off nothing is requested until you press the button yourself. Nothing else in the app behaves differently either way — the board, the engine, the puzzles and the licence check have never needed the network and still do not.

The Claude Code integration

Since version 0.3 Dyno Chess can show your Claude Code sessions in the island. This is off until you press Install, either on the welcome card the first time the app opens or in Settings → Agents, and it works entirely between two programs on your own machine.

What it sees. When you install the integration, Claude Code runs a small helper that ships inside the app and hands it the events Claude Code publishes: the session identifier, the working directory and project name, the model, the state of the session, the last assistant message, and — for a permission request — the tool being asked for and the command or file path it names. It also reads the small per-session files Claude Code keeps in ~/.claude so that sessions started before the app was launched still appear. It never opens your conversation transcripts, and it does not read your source code.

Where it goes. Nowhere. It is held in memory to draw a row in the notch, and it is dropped when the session ends or the app quits. It is not written to a log, not saved to disk, and — the app process having no network entitlement — cannot be transmitted at all. The update check described above carries none of it: it asks one question about version numbers and nothing else. We never receive any of it.

What it writes. Only when you press Install: hook entries in ~/.claude/settings.json, after a timestamped backup of that file, appended alongside your own entries rather than replacing them. Remove takes out only the entries we added. The app also keeps a launcher, a local key and its own settings in ~/.dynochess. If the app is deleted, the launcher removes our hook entries itself.

Jumping back to the terminal. Clicking a session asks macOS to bring the right terminal forward. macOS asks for your permission the first time you do this for a given terminal application, and you can withdraw it in System Settings → Privacy & Security → Automation. We use it to raise a window and select a tab, nothing else.

Dyno Chess is not affiliated with, endorsed by or sponsored by Anthropic. Your use of Claude Code is governed by Anthropic's own terms and privacy policy; we are not a party to it and have no visibility into your account.

This website

This site is a static page hosted on GitHub Pages. GitHub records standard server logs, including your IP address, in the course of serving the page; that processing is governed by the GitHub Privacy Statement. We do not have access to those logs. The app's daily update check asks this same host for one file, so it lands in the same logs and nowhere else.

One picture on the home page is not served from here. The TinyShelf badge in the footer is the directory's own file, held on tinyshelf.co, and loading the page asks their server for it — so their logs get what any web request carries: an IP address, a User-Agent and the address of the page that asked. It sets no cookie, it reports nothing back to us, and we learn nothing from it. Blocking tinyshelf.co removes the badge and changes nothing else on the page.

The page also counts its visitors, using Umami. This is the one part of Dyno Chess that measures anybody at all, so here is the whole of it. It records which page you are on, the site or search that sent you here, your country, and your browser, operating system, device type and screen size.

It also records a fixed list of named actions, and this is all of them: following a link to the download or to the release notes, reaching the pricing section, pressing Buy, whether the checkout then opened or was blocked by your browser, whether the payment succeeded, failed or was abandoned, arriving at the thank-you page, opening a question in the FAQ and which one, playing a move on the chess board in the header, opening the notch mock, using "Send this to my Mac", and clicking one of our email addresses. Nothing else. No keystrokes, no mouse movements, no session replay, and nothing you type anywhere on the site.

The checkout deserves its own sentence, because it is the one place where real personal data is on screen. Paddle tells the page when a payment succeeds or fails, and that message contains your email address, your billing address and a transaction number. None of it is passed to the analytics. What gets recorded is that a payment succeeded — not who made it, not for how much, not from where. The purchase itself is handled by Paddle and is described under "Buying a licence" below.

What it does not do: no cookies, and nothing else written to or read from your device. No advertising or marketing tags. No tracking across other websites. And no way to work out who you are — your IP address is used to derive your country and an anonymous visitor identifier that cannot be turned back into an address, and is not stored by us or by Umami. We do not sell, rent or share any of it. Umami's own handling of the data is governed by the Umami Privacy Policy.

Our basis for this is our legitimate interest in knowing which parts of the site work (GDPR Article 6(1)(f)). Because nothing is stored on or read from your device, the rule that puts a cookie banner in front of you does not apply here — and if your browser sends Do Not Track, the script does nothing at all.

None of this is in the app. No analytics of any kind ships inside Dyno Chess: the app process still carries no network entitlement and still cannot send anything anywhere, and codesign still proves it. The only request made from inside the bundle is the once-a-day version check described above, which counts nothing and identifies nobody.

Buying a licence

Payments are processed by Paddle.com Market Ltd, which acts as the merchant of record and is the reseller and seller of record for your purchase. Paddle collects the information it needs to take payment and meet its tax obligations — typically your name, email address, billing country and payment details. We never see or store your card details. Paddle's handling of that data is governed by the Paddle Privacy Policy.

From Paddle we receive your email address and an order reference. We use them for exactly two things: issuing your licence key, and re-sending it if you lose it. We do not send marketing email, and we do not sell, rent or share this data with anyone.

When you arrive at the checkout from a Buy link inside the app, the link names the screen it was on (the welcome card, Settings, or the note at the end of the trial). That one word is attached to the checkout event in the analytics and to the order at Paddle, and it is used for one thing: counting which screen leads to a purchase. It identifies nobody.

Support email

If you email us, that correspondence sits in our mailbox so we can answer you and refer back to it later. Nothing more is done with it.

Your rights

You can ask what we hold about you, ask for it to be corrected, or ask for it to be deleted. Write to dyno@bixxter.com and we will act within 30 days. Deleting your purchase record means we can no longer re-issue a lost licence key, so keep a copy first. For data held by Paddle, contact Paddle directly.

You can also object to the website analytics described above. There is nothing to unsubscribe from, because there is no record with your name on it to find — switching on Do Not Track, or blocking cloud.umami.is, stops the page counting you, and nothing on the site behaves any differently when you do. The update check has its own switch, in Settings → Updates, and turning it off stops the app asking anything of anyone.

Terms of sale

These terms apply when you buy a Dyno Chess Pro licence. The seller is Asatulla Dadabaev, an individual seller based in the Republic of Kazakhstan. Purchases are transacted by Paddle.com Market Ltd as merchant of record, and Paddle's buyer terms also apply to the transaction itself.

What you are buying

A one-time licence to the Pro features of Dyno Chess. Payment is once, not recurring. There is no subscription to cancel.

The free tier of Dyno Chess remains free and fully functional whether or not you ever buy anything. The 14-day trial of Pro starts at first launch and, when it ends, the app becomes the free version rather than stopping.

Where a feature is metered rather than absent on the free tier — three puzzles a day — Pro removes the limit. That number is what the current version ships; we may change it for future versions, but never for a licence already sold, and the free tier will never become unusable.

Delivery

Your licence key is emailed to the address given at checkout, normally within a few minutes. If it has not arrived within a few hours, check your spam folder and then write to us; we will re-issue it.

Stockfish and the GPL

Dyno Chess bundles the Stockfish chess engine, which is free software licensed under the GNU General Public License version 3. Stockfish runs as a separate process communicating over the UCI protocol; it is not linked into the application. The full GPLv3 text ships inside the disk image alongside a link to the exact source revision the bundled binary was built from, and nothing in these terms restricts any right the GPLv3 grants you over that engine.

The Claude Code integration

Dyno Chess can display your Claude Code sessions and let you approve or reject an agent's permission request from the island. Three things follow from that, and we would rather say them here than have you find them out.

Claude and Claude Code are trademarks of Anthropic PBC, used here only to identify the software Dyno Chess works with. Dyno Chess is an independent product, not affiliated with, endorsed by or sponsored by Anthropic.

What we do not promise

The software is provided "as is". To the fullest extent permitted by law we disclaim implied warranties of merchantability and fitness for a particular purpose, and we do not warrant that the software will be uninterrupted or error-free. Our total liability arising out of or in connection with the software or these terms is limited to the amount you actually paid for the licence.

Nothing here limits liability that cannot be limited by law, and nothing here affects any statutory consumer rights you have in your own country.

Governing law

These terms are governed by the laws of the Republic of Kazakhstan, without regard to conflict-of-law rules.

Changes

We may update these terms for future sales. The version in force for your purchase is the one published on the day you bought, and the date at the top of this page tells you when it last changed. We will not apply a later change retroactively to a licence you already own.

Refund policy

14 days, no reason required. If Dyno Chess is not what you wanted, write to dyno@bixxter.com within 14 days of purchase, or request the refund through Paddle directly, and we will refund the purchase in full. You do not have to explain yourself and we will not try to talk you out of it.

Refunds are issued by Paddle to the original payment method. Depending on your bank the money typically appears within 5–10 business days.

We ask that you stop using the licence key after a refund. Because licences are verified offline, a refunded key keeps working, which means this is a request rather than something we enforce — we would rather trust people than build software that polices them.

Requests after 14 days are not guaranteed, but write to us anyway. If the app is broken for you, we would rather fix it or refund you than have you stuck with something that does not work.

Contact

Asatulla Dadabaev, individual seller, Republic of Kazakhstan.
Email: dyno@bixxter.com

Support, refunds, licence recovery, privacy requests and anything else all go to that address, and it is read by a person.