bootstrap
Adom Hydrogen (platform base)
Public Made by Adomby adom
Layer Hydrogen's workspace onto a standard Adom workstation.
← Commit history
Merge PR #44: dock: apps.json is a list, nothing more (dock-list-only -> master) merge
Showing changes introduced by the merge (against its first parent).
1 file changed
+34−168
dock/apps.json+34−168@@ -1,21 +1,32 @@ { "manifest_version": "2.0.0", "_comment": [- "The global Hydrogen Desktop dock list. World-readable by design; HD polls it",+ "The global Hydrogen dock list. World-readable by design; Hydrogen polls it", "anonymously. WRITE access is the adom org: the adom team curates this file,", "and featured/order exist only here (an app cannot feature itself).",- "Display fields (name, brief, hero) are NOT in this file. The dock resolves",- "them from each wiki_repo page, one source of truth. Launch behavior comes",- "from each entry's launch block; the authoring contract for app publishers",- "is the public hd-dock skill (ships with HD) and the Dock section of the",- "adom/hydrogen-desktop wiki page. To request listing: open an issue on the",- "adom/hydrogen-desktop wiki page.",- "OMIT the launch block for any app that publishes its own dock.json: an",- "inline launch here ALWAYS wins, so pinning one freezes that app's launch",- "at whatever this file said and silently shadows the manifest its authors",- "maintain. That is exactly how kicad and fusion ended up still calling the",- "adom-desktop CLI months after it was renamed to adom-bridge-cli. Pin a",- "launch here only as a deliberate override, and say why."+ "",+ "THIS FILE IS ONLY A LIST. It answers one question: which apps appear in the",+ "dock, and in what order. It answers nothing else.",+ "",+ " Display (name, brief, hero) resolves from each wiki_repo page.",+ " Launch (steps, ai, webview) resolves from each app's own dock.json,",+ " per the adom/hydrogen-dock-sdk contract.",+ "",+ "DO NOT add a launch block here. An inline launch ALWAYS wins over the app's",+ "own manifest, so pinning one freezes that app's launch at whatever this file",+ "says and silently shadows the file its authors maintain. That is exactly how",+ "kicad and fusion sat broken: both published correct manifests pointing at",+ "their new dashboards while this file kept overriding them with a call to the",+ "adom-desktop CLI, renamed to adom-bridge-cli back on 2026-08-08. Every one of",+ "the 11 entries carried an inline launch, so no app's own manifest was ever",+ "read and the two-layer design was inert.",+ "",+ "Every launch block that used to live here now lives in the app's own page",+ "repo, migrated verbatim. An app changing how it launches needs no edit here.",+ "If an app has no dock.json yet, its card opens its wiki page, which is the",+ "correct degradation and better than a stale command.",+ "",+ "To request listing: open an issue on the adom/hydrogen-desktop wiki page." ], "poll_seconds": 21600, "manual_refresh_cooldown_seconds": 60,@@ -36,192 +47,47 @@ "id": "chip-fetcher", "wiki_repo": "adom/adom-chip-fetcher", "featured": true,- "order": 40,- "webview": {- "title": "Chip Fetcher"- },- "launch": {- "mode": "container_command",- "steps": [- {- "label": "Installing adom-chip-fetcher",- "run": "adom-wiki pkg install adom/adom-chip-fetcher",- "skip_if": "command -v chip-fetcher",- "timeout_seconds": 180- },- {- "label": "Starting Chip Fetcher",- "run": "chip-fetcher serve --print-url",- "await": "url",- "timeout_seconds": 60- }- ],- "on_ready": "navigate_placeholder"- }+ "order": 40 }, { "id": "pup", "wiki_repo": "adom/pup-bridge",- "order": 50,- "_comment": [- "No launch block on purpose. The old one called adom-desktop, which no",- "longer exists, so this card failed on every click. pup publishes no",- "dock.json yet, so with no launch the card opens its wiki page, which",- "is a better landing than a guaranteed error. Tracked as an issue on",- "adom/pup-bridge asking for a dock.json per adom/hydrogen-dock-sdk;",- "when that lands, this entry picks it up with no edit here."- ],- "webview": {- "title": "Pup"- }+ "order": 50 }, { "id": "project-manager", "wiki_repo": "adom/adom-project-manager",- "order": 60,- "webview": {- "title": "Adom Project Manager",- "url": "https://wiki.adom.inc/adom/adom-project-manager"- },- "launch": {- "mode": "webview"- }+ "order": 60 }, { "id": "symbol", "wiki_repo": "adom/adom-symbol",- "order": 70,- "webview": {- "title": "Adom Symbol"- },- "launch": {- "mode": "container_command",- "steps": [- {- "label": "Installing adom-symbol",- "run": "adom-wiki pkg install adom/adom-symbol",- "skip_if": "command -v adom-symbol",- "timeout_seconds": 180- },- {- "label": "Starting Adom Symbol",- "run": "adom-symbol serve --print-url",- "await": "url",- "timeout_seconds": 60- }- ],- "on_ready": "navigate_placeholder"- }+ "order": 70 }, { "id": "footprint", "wiki_repo": "adom/adom-footprint",- "order": 80,- "webview": {- "title": "Adom Footprint"- },- "launch": {- "mode": "container_command",- "steps": [- {- "label": "Installing adom-footprint",- "run": "adom-wiki pkg install adom/adom-footprint",- "skip_if": "command -v adom-footprint",- "timeout_seconds": 180- },- {- "label": "Starting Adom Footprint",- "run": "adom-footprint serve --print-url",- "await": "url",- "timeout_seconds": 60- }- ],- "on_ready": "navigate_placeholder"- }+ "order": 80 }, { "id": "lbr", "wiki_repo": "adom/adom-lbr",- "order": 90,- "webview": {- "title": "Adom LBR"- },- "launch": {- "mode": "container_command",- "steps": [- {- "label": "Installing adom-lbr",- "run": "adom-wiki pkg install adom/adom-lbr",- "skip_if": "command -v adom-lbr",- "timeout_seconds": 180- },- {- "label": "Starting Adom LBR",- "run": "adom-lbr serve --print-url",- "await": "url",- "timeout_seconds": 60- }- ],- "on_ready": "navigate_placeholder"- }+ "order": 90 }, { "id": "chipsmith", "wiki_repo": "adom/adom-chipsmith",- "order": 100,- "webview": {- "title": "Adom Chipsmith"- },- "launch": {- "mode": "container_command",- "steps": [- {- "label": "Installing adom-chipsmith",- "run": "adom-wiki pkg install adom/adom-chipsmith",- "skip_if": "command -v adom-chipsmith",- "timeout_seconds": 180- },- {- "label": "Starting Adom Chipsmith",- "run": "adom-chipsmith serve --print-url",- "await": "url",- "timeout_seconds": 60- }- ],- "on_ready": "navigate_placeholder"- }+ "order": 100 }, { "id": "parts-search", "wiki_repo": "adom/adom-parts-search",- "order": 110,- "webview": {- "title": "Parts Search"- },- "launch": {- "mode": "container_command",- "steps": [- {- "label": "Starting Parts Search",- "run": "adom-parts-search serve --print-url",- "await": "url",- "timeout_seconds": 60- }- ],- "on_ready": "navigate_placeholder"- }+ "order": 110 }, { "id": "hero-studio", "wiki_repo": "adom/hero-studio",- "order": 130,- "webview": {- "title": "Hero Studio",- "url": "https://wiki.adom.inc/adom/hero-studio"- },- "launch": {- "mode": "webview"- }+ "order": 130 } ]-}+}