Add Wormhole tentacle with internal UI and transfer preferences

This commit is contained in:
ak47 committed 2026-10-13 20:45:20 -04:00
1 parent ba5876f57c
commit b02ce805ff
13 files changed
+1466 -73

No files matched your search

+19 -12
View File
@@ -1,15 +1,19 @@
# Cthulhu Tentacles
A repository of experimental Tentacles for Cthulhu-Go, maintained by Storm
Dragon. It currently contains one Tentacle: [Hello World](hello-world/README.md).
Repository material and Hello World are licensed under GPL-3.0-or-later; see
Dragon. It contains [Hello World](hello-world/README.md) and the development
[Wormhole tentacle](wormhole/README.md).
Repository material and both Tentacles are licensed under GPL-3.0-or-later; see
[LICENSE](LICENSE) and [CONTRIBUTING.md](CONTRIBUTING.md).
`repository.toml` identifies this source. `catalog.toml` explicitly lists its
Tentacles, each in a direct top-level folder with its own `tentacle.toml`.
The catalog lists native packages for Linux amd64 and arm64. Hello World 0.1.0 is
available from the [release page](https://git.stormux.org/storm/cthulhu-tentacles/releases/tag/hello-world-v0.1.0).
Local build artifacts live in the ignored `dist/` directory.
Wormhole 0.1.0 requires the matching reader with interactive Tentacle support.
Its test packages are served from an immutable commit on the separate
`packages/wormhole-0.1.0` branch. This keeps binary files out of the default source
tree, but does add them to Git storage. Local build artifacts live in the ignored `dist/` directory.
The discovery source URL is
`https://git.stormux.org/storm/cthulhu-tentacles`.
@@ -34,17 +38,19 @@ make build
make check
```
The executable is `hello-world/bin/hello-world`, which is ignored by Git.
The executables are `hello-world/bin/hello-world` and
`wormhole/bin/wormhole-tentacle`; both are ignored by Git.
Checks validate the TOML metadata, registration and suggested bindings, and
invoke Hello World through the actual Cthulhu-Go host. They produce no speech
invoke both Tentacles through the actual Cthulhu-Go host. They produce no speech
or Braille and leave the running reader alone.
## Repository installation
With the updated reader, open global Cthulhu Preferences → Tentacles → Add
repository and enter the HTTPS Git URL above. Refresh an already added source.
Select Hello World and press Space to review its source/version and requested
speech/Braille access, then **Install and enable**. **Install** instead downloads
Select Hello World or Wormhole and press Space to review its source/version and
requested access, then **Install and enable**. Wormhole requests internal forms
and focused-item/clipboard access as well as speech/Braille. **Install** instead downloads
and saves the package disabled. The reader verifies the catalog's SHA-256 digest,
package identity and native architecture before saving a launch entry. Catalogs
without a published compatible release show a clear message and remain unchecked.
@@ -310,9 +316,10 @@ and testing AI-assisted changes.
### 5. Create architecture-specific archives
The `make build`, `make check` and `tools/package.py` commands in **this**
repository currently target Hello World specifically. They do not automatically
discover or package a new folder. Its checker also pins the current example
version. Adapt those tools and checks when extending this repository, or use
repository build/check Hello World and Wormhole. `tools/package.py --tentacle wormhole`
packages Wormhole; the default still packages Hello World. The checker pins the
current versions and expected Tentacles. Adapt those tools and checks when
extending this repository, or use
this standalone procedure for Greeting.
From `greeting-tentacles`, stage the root manifest, documentation and license:
@@ -404,8 +411,8 @@ Replace the URLs and placeholders with published URLs and their actual
`[[tentacles]]`; each platform/architecture pair may appear once. Keep the
manifest version equal to the version inside the packages. Include only
architectures you actually publish. For several Tentacles, preserve the existing
entries: this repository's generated `dist/catalog.toml` lists only Hello World
and must not overwrite a larger catalog.
entries: this repository's generated `dist/catalog.toml` preserves catalog entries and prepares
release metadata for the selected Tentacles. Review it before publication.
Review and push the matching catalog and manifest together to the repository's
default branch, which discovery fetches. Never replace a release file with changed