Effective 7 November 2026

Privacy policy for KERN

This Privacy Policy describes how HalfCycle (“we”, “us”) handles information in connection with KERN for Android, application package org.halfcycle.kern. It applies to the current KERN application. Our other products remain subject to the HalfCycle privacy notice.

KERN does not require an account. You may create, edit and save documents on the device without signing in and without an internet connection. For questions about this Policy, contact racy.gomes@halfcycle.org or use the contact page.

Information stored on the device

Documents that you open or create are stored according to the location you select. KERN may access files and folders that you grant through Android’s document and folder pickers. If you separately enable All files access in Android Settings, KERN may browse and edit shared storage in response to actions you take in the application. That permission does not extend to the private storage of other applications. KERN remains usable through the pickers if All files access is not enabled.

Unsaved drafts, undo and recovery data, file snapshots, preferences, snippets, Git working copies, connection settings and verified host keys are retained in KERN’s private application storage. That storage relies on Android’s application sandbox and on any device encryption provided by the operating system. It is not subject to a separate encryption layer within KERN. Clearing the application’s data or uninstalling KERN deletes that locally stored recovery information.

Android cloud backup and device-to-device transfer of KERN’s private application files are disabled. A copy leaves KERN’s private storage only when you export, share or save it to a destination you select. The receiving application or storage provider then controls that copy under its own terms.

KERN does not request access to contacts, the microphone or device location. It does not display advertising, does not collect an advertising identifier, and does not synchronize folders automatically.

Network communications

KERN does not provide a single control that disables every network function. Documents may nevertheless be created and edited on the device while it is offline. Network communications are limited to the circumstances described in this section.

Automatic update-policy requests

Where the installed build is configured for this function and the device is online, KERN requests its update policy when the application is opened or returned to the foreground. These requests continue when Cloud Services is disabled, and the application does not provide a setting to turn them off. A request may transmit a Firebase installation identifier and application and device metadata to Google. A policy already received may continue to apply while the device is offline. A device that has never connected cannot receive a new remote policy.

Optional cloud services

Settings, under Storage & privacy, provides a Cloud Services control and separate controls for announcements, crash reporting and usage analytics. On a new installation, those optional services are enabled. An existing installation retains its prior selections, including selections that were previously off. Disabling Cloud Services suspends the three optional services without altering their individual settings. These selections are excluded from the import and export of application settings.

Where a build is configured for them, crash reporting and usage analytics may begin at application launch, before the Welcome screen is shown. The Welcome screen discloses that processing and provides the relevant controls. Disabling a service stops further collection by that service. It does not delete information already transmitted to the recipient. Android’s notification permission is independent of these controls and is not granted by enabling a service.

Communications at your direction

The following communications occur only when you configure the relevant function and initiate the relevant action.

Credentials for Git, SFTP and the artificial-intelligence function are encrypted with AES-GCM under a non-exportable key held in the Android Keystore and are limited to the configured destination. Deleting stored credentials removes that ciphertext. It does not change the Firebase privacy settings. Host names, user names and verified host-key records are retained on the device as connection metadata. Private keys and tokens are excluded from settings export and from diagnostics.

Features that do not transmit document contents

Declarative extensions have no access to code execution, the file system, the network or stored secrets. The restricted terminal operates only within the application-private Git workspace and only through its documented built-in commands. It cannot start subprocesses or access Git metadata, the device root or external storage.

A diagnostics file exported from the application contains the application version, the Android API level, counts and Boolean settings. It does not contain document contents, paths, URIs, remote destinations or credentials. A message supplied by a connected service may be displayed in the application. That display is not an upload of the message through the diagnostics export.

Disclosure

We do not sell personal information. We do not receive the contents of your documents through the optional Google services described above.

Google processes update-policy requests and, where you leave the relevant service enabled, analytics, crash reports and announcement tokens, under Google’s applicable Firebase terms. A Git host, SFTP server, artificial-intelligence provider or share destination receives only the information transmitted to it at your direction. If you contact us for support, we receive the information you include in that communication.

Retention and deletion

Information stored on the device remains there until you delete it, clear the application’s data or uninstall KERN. Local history is limited by default to 100 snapshots and 100 MiB after a save. You may apply that retention limit in Settings. An editable file is limited to 10 MiB, and no more than eight documents may be open at one time. A separate read-only viewer may open a UTF-8 log of up to 100 MiB.

Information that has already been transmitted to Google, a Git host, an SFTP server or an artificial-intelligence provider is retained under that recipient’s terms. Disabling an optional KERN service stops further collection by that service and, in the case of analytics, resets analytics data stored locally. It does not require the recipient to delete information already received. To remove drafts and keys stored by KERN, clear the application’s storage or uninstall the application.

To inquire about a support communication that you sent to us, write to racy.gomes@halfcycle.org.

Children’s privacy

KERN is not directed to children under the age of 13, and we do not knowingly collect personal information from children through the application. If you believe that a child has provided personal information to us, contact us at the address above. Where we hold that information in our support records, we will delete it.

Changes to this Policy

If our practices for storing or transmitting information in KERN change, we will revise this Policy. The effective date above will be updated accordingly. Please review this Policy when you install or update the application.

This Policy is available in the application under Settings, then Help & diagnostics, and at https://halfcycle.org/kern/privacy.